Tradingview Reader

作者 himself6501fc7b4b34ae无许可证3.3K 个星标收录于 2026年10月8日更新于 2026年10月8日仓库3天前更新

Read the user's local TradingView desktop app through opencli: quotes, options chains with greeks and per-strike IV, options expiries, screener results across stocks, crypto, forex, futures, and bonds, gainers and losers, news headlines and full stories, alerts (active, fired, offline fires), watchlists including colored flag lists, symbol search, chart state, and chart screenshots. Use this skill whenever the user asks for any of these from TradingView ("TV") — for example an options chain, puts, or IV skew for a ticker, an oversold-stock screen, their red flag list, which alerts fired, or a screenshot of their chart. For plain quotes, TA readouts, scans, or futures without the desktop app, prefer tradingview-mcp. Read-only: it never places trades or edits watchlists, alerts, or layouts.

AI 生成的概览

通过 opencli 读取本地 TradingView 桌面应用,获取行情、期权链、筛选器、新闻、自选列表、警报和图表截图。

功能
该技能通过 opencli 命令行工具,经由 Chrome DevTools 协议读取正在运行的 TradingView 桌面应用。它可以获取现货行情、含希腊字母和逐行权价隐含波动率的期权链、到期日、覆盖股票、加密货币、外汇、期货和债券的筛选器结果、涨跌幅榜、新闻标题与完整报道、警报、自选列表(含彩色标记列表)、代码搜索、图表状态和图表截图。该技能为只读,可输出表格、JSON、YAML、Markdown 或 CSV 等结构化格式,并涵盖 opencli TradingView 插件的安装、诊断和错误处理。
适用场景
当用户希望从自己的 TradingView 桌面应用获取数据时使用,例如含希腊字母或隐含波动率偏斜的期权链、超卖股票筛选、彩色标记自选列表、哪些警报被触发,或图表截图。它适用于需要账户绑定数据或希腊字母数据的请求,前提是桌面应用可用且用户已登录。对于不需要桌面应用的普通行情、技术分析读数、扫描或期货数据,文档建议改用单独的 tradingview-mcp 技能。
运行要求
需要 Node.js 24 或更高版本、全局安装的 opencli 包,以及通过 opencli 安装的独立 TradingView 插件。需要安装并登录 macOS 上的 TradingView 桌面应用,并以远程调试端口(9222)重新启动,以便 opencli 通过 CDP 连接。访问 TradingView HTTP API 需要网络连接。不附带脚本,仅为说明文档,另含 README 和命令参考文件。

TradingView Reader (Read-Only)

Reads TradingView's desktop macOS app for quotes, options chains, and chart state via opencli and a CDP attach to the running TradingView.app process. Powered by the tradingview plugin in this repo's opencli-plugins/tradingview tree (a separate plugin from opencli's built-in adapters, installed via opencli's monorepo subpath syntax).

This skill is read-only. Designed for analysis: pulling options chains, checking IV/greeks, capturing chart state. It does NOT place trades, post ideas, modify watchlists, or change chart layouts.

Headless alternative: for plain quotes, TA readouts, screeners, futures, or a greeks-free options chain, prefer the sibling tradingview-mcp skill (bundled MCP server, no desktop app, no CDP relaunch). Use this skill when you need greeks / per-strike IV skew, expiries with contract counts, or account-bound data (watchlists, alerts, charts, TV news).

Important: Unlike browser-based opencli readers (twitter, linkedin), this one talks directly to a running TradingView desktop app over Chrome DevTools Protocol. The user must (a) have TradingView.app installed, and (b) be logged in inside that app. The plugin handles relaunching with the debug port.

How it works: data commands read the app's session cookies over CDP and call TradingView's HTTP APIs from Node directly, so no Browser Bridge extension or apps.yaml registration is needed.


Step 1: Ensure opencli + Plugin Are Installed and Ready

Current environment status:

!`(command -v opencli && opencli tradingview status 2>&1 | head -5 && echo "READY" || echo "SETUP_NEEDED") 2>/dev/null || echo "NOT_INSTALLED"`

If the status above shows READY, skip to Step 2. Otherwise:

NOT_INSTALLED — Install opencli

bash
npm install -g @jackwener/opencli

Requires Node.js >= 24 — the tradingview plugin installed in the next step declares engines.node >= 24.

SETUP_NEEDED — Install the TradingView plugin and launch with CDP

The TradingView adapter is not built into opencli — it's a separate plugin:

bash
# Install the pluginopencli plugin install github:himself65/finance-skills/tradingview
# Relaunch TradingView.app with CDP enabled (one-time per session)opencli tradingview launch

The launch step quits the running TradingView and reopens it with --remote-debugging-port=9222. Warn the user to save chart layouts first if they have unsaved drawings.

Common setup issues

SymptomFix
opencli: command not foundnpm install -g @jackwener/opencli (Node ≥ 24)
Unknown command: tradingviewopencli plugin install github:himself65/finance-skills/tradingview
Cannot reach CDP at http://127.0.0.1:9222App not launched with debug port — run opencli tradingview launch
No tradingview.com cookies foundApp is open but logged out — log in inside the desktop app
No TradingView tab foundOpen any chart or symbol page in TradingView, then retry
Empty chain / 0 contractsSubscription tier on the logged-in account doesn't include options for this symbol

Step 2: Identify What the User Needs

Setup / chart inspection

User RequestCommandKey Flags
Setup / connection checkopencli tradingview status—
Relaunch app with CDPopencli tradingview launch--port 9222
What's on the chartopencli tradingview chart-state--tab <id>
Screenshot a chartopencli tradingview screenshot --output ~/charts/nvda.png--tab <id>

Quotes + options

User RequestCommandKey Flags
Spot quoteopencli tradingview quote --ticker X--exchange NASDAQ
Options chain (full)opencli tradingview options-chain --ticker X--exchange
Options chain (one expiry, ATM band)opencli tradingview options-chain --ticker X --expiry YYYY-MM-DD--type call|put, --strikes-around-spot N
List expiriesopencli tradingview options-expiries --ticker X—

Screener

User RequestCommandKey Flags
Generic screener (stocks/crypto/forex/futures/bonds)opencli tradingview screener --market america --columns ...--filter <json>, --sort field:desc, --limit N, --label-product
US stocks with RSI < 30, sorted by volumeopencli tradingview screener --market america --columns "name,close,RSI|60,volume" --filter '[{"left":"RSI|60","operation":"less","right":30}]' --sort volume:desc—
Top crypto by market capopencli tradingview screener --market coin --columns "name,close,change,market_cap_calc" --sort market_cap_calc:desc --limit 50—
Symbol search / autocompleteopencli tradingview search --query "nvidia"--type stock|funds|crypto|..., --exchange, --country

News

User RequestCommandKey Flags
Global news headlinesopencli tradingview news --limit 25--category, --area, --section, --provider
News for a specific tickeropencli tradingview news --symbol NASDAQ:AAPL--limit, --section analysis|press_release|...
Full story by idopencli tradingview news --id <story-id>--lang en

Watchlists + alerts

User RequestCommandKey Flags
List all watchlistsopencli tradingview watchlists—
Symbols in one watchlistopencli tradingview watchlists --id <wl-id>—
Colored-flag list (red/orange/yellow/green/blue/purple)opencli tradingview watchlists --color red—
List all alertsopencli tradingview alerts --type list—
Active alertsopencli tradingview alerts --type active—
Recently triggered alertsopencli tradingview alerts --type triggered—
Alerts that fired while offlineopencli tradingview alerts --type offline—
Full alert logopencli tradingview alerts --type log—

Step 3: Execute the Command

General pattern

bash
# Use -f json or -f yaml for structured outputopencli tradingview options-chain --ticker SNDK --expiry 2026-05-22 -f jsonopencli tradingview options-chain --ticker NVDA --strikes-around-spot 8 -f csvopencli tradingview quote --ticker SPY --exchange NYSEARCA -f json

Key rules

  1. Run opencli tradingview status first if connectivity is uncertain — it reports CDP connection state and active TradingView tabs.
  2. Use -f json for programmatic processing (LLM context, downstream skills).
  3. Filter by expiry and --strikes-around-spot — full chains can be 3,000+ rows; an unfiltered dump is rarely what the user wants.
  4. Default --exchange NASDAQ for US equities; require explicit --exchange for ETFs (e.g. SPY = NYSEARCA, QQQ = NASDAQ) or non-US listings.
  5. For screener, choose --columns deliberately — it controls both the request and the output table. Include name and any field used in --filter or --sort. Append |TF for an indicator's timeframe, e.g. RSI|60 for 1-hour RSI. The default columns are sensible for stocks but should be replaced for crypto / forex / futures (different field catalogs).
  6. For screener, --filter is JSON — array of {left, operation, right} clauses. Always single-quote the JSON in shell to avoid escaping issues. See references/commands.md for the operations cheat sheet.
  7. For news, narrow the feed early — the global feed is firehose-level. Use --symbol, --category, --section, or --provider before raising --limit.
  8. For search, prefer it over guessing — when the user gives an ambiguous ticker (e.g. "SPY" without exchange), run search --query SPY first to confirm the listing, then pass --exchange to subsequent commands.
  9. For watchlists and alerts, default to summary — a user asking "what's in my watchlists?" wants list names + counts, not every symbol.
  10. Read-only. No trades, no watchlist edits, no alert creation/deletion, no chart writes — the plugin intentionally does not expose write endpoints (/append, /replace, /create_alert, etc.), so don't look for workarounds.

Output format flag (-f)

FormatFlagBest for
Table-f table (default)Human-readable terminal output
JSON-f jsonProgrammatic processing, LLM context
YAML-f yamlStructured output, readable
Markdown-f mdDocumentation, reports
CSV-f csvSpreadsheet export

Output columns

  • quote — symbol, close, change, change_abs, currency, time
  • options-chain — expiry, dte, strike, type, bid, ask, mid, iv, delta, gamma, theta, vega, rho, theo, bid_iv, ask_iv, symbol
  • options-expiries — expiry, dte, contracts_count
  • screener — dynamic; one column per --columns entry, plus symbol. (Default: name, close, change, volume, market_cap_basic, sector.tr.)
  • search — symbol, description, type, exchange, country, currency
  • news (list mode) — id, published, provider, title, urgency, related_symbols, link
  • news (story mode, --id set) — id, published, provider, title, body, tags, link
  • watchlists — id, name, symbol_count, symbols
  • alerts — id, name, symbol, type, condition, value, active, status, fired_at
  • chart-state — layout_id, symbol, interval, url
  • screenshot — path, bytes

Step 4: Present the Results

  1. Lead with the structure summary — for an options chain, state spot price, expiry being shown, ATM strike, and IV regime first; then the table. For a screener, lead with the count of matches and the filters applied.
  2. Filter aggressively before showing — never paste a 3,000-row chain or a 500-row screener. Default to ATM ± 6 strikes per expiry for chains; for screeners cap to top 20 unless the user asks for more.
  3. Highlight skew — when showing both calls and puts, note IV skew direction if material.
  4. For chart-state, report layout id + symbol + interval + URL succinctly; offer to screenshot.
  5. For news (list mode), group by provider and lead with timestamps in the user's likely timezone (or always UTC ISO if uncertain). Include the link so the user can open the story. For story mode (--id set), the body is plain text — present it as-is, optionally trimmed.
  6. For watchlists, summarize counts before listing symbols (e.g. "3 watchlists: Earnings (24 syms), AI plays (12 syms), Hedges (8 syms)"). Don't dump 100-symbol watchlist contents unless asked.
  7. For alerts, group by status (active vs triggered/fired) and order recent firings by fired_at desc. Don't expose alert ids unless the user explicitly asks.
  8. For screener results, surface the top movers / extreme values in plain prose first (e.g. "highest market cap NVDA at $4.2T, 12 names below the RSI<30 threshold"), then the table.
  9. Treat sessions as private — never expose CDP target IDs, cookies, or layout IDs unless the user asks.

Step 5: Diagnostics

bash
opencli tradingview status

Returns CDP connection state and active TradingView tabs. If CDP is down, run opencli tradingview launch to relaunch with the debug port.


Error Reference

ErrorCauseFix
Unknown command: tradingviewPlugin not installedopencli plugin install github:himself65/finance-skills/tradingview
Cannot reach CDP at http://127.0.0.1:9222App launched without debug portopencli tradingview launch
No tradingview.com cookies foundLogged out of TradingViewLog in inside the desktop app
No TradingView tab foundApp open but no TradingView page loadedOpen any chart or symbol page, then retry
scanner 400 / Empty chain / totalCount=0Subscription tier doesn't cover this symbol's optionsCheck account tier in the desktop app
Symbol not foundWrong exchangePass --exchange explicitly, or run opencli tradingview search --query <name> first
Rate limitedToo many requestsWait a few seconds, then retry

Reference Files

  • references/commands.md — Every command with all flags, output examples, and analyst workflows

来源与署名

来源:himself65/finance-skills位于plugins/data-providers/skills/tradingview-reader提交01fc7b4

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架

更多来自 himself65/finance-skills 的技能

Yfinance Data

himself65

通过 yfinance Python 库从 Yahoo Finance 获取股票与市场数据并加以呈现。

Data & Analytics3.3K3天前更新

Stock Liquidity

himself65

Analyze how liquid a stock is using Yahoo Finance data (yfinance): bid-ask spreads, volume and dollar volume (ADTV), top-of-book and options depth, square-root market impact and slippage estimates, turnover ratio, and Amihud illiquidity, rolled into a liquidity grade. Use this skill whenever the user asks about liquidity or trading costs — how easily a position can be entered or exited, what a large order would do to the price, spread or execution-cost estimates, order book depth, volume patterns, or liquidity comparisons — especially for small caps, penny stocks, and thinly traded names.

待分类3.3K3天前更新

Stock Correlation

himself65

基于 Yahoo Finance 价格历史分析股票联动,找出相关个股、贝塔、聚类与滚动相关性。

Data & Analytics3.3K3天前更新

Sepa Strategy

himself65

使用 Mark Minervini 的 SEPA 方法分析股票:阶段分析、趋势模板、形态、入场点与仓位管理。

Business & Finance3.3K3天前更新

Saas Valuation Compression

himself65

分析私营 SaaS 公司各融资轮次的 ARR 估值倍数变化,并将变化归因于宏观、增长与叙事因素。

Business & Finance3.3K3天前更新

Yc Reader

himself65

Look up Y Combinator companies and batches from the public yc-oss API, a static JSON dataset refreshed daily: company profiles, batch rosters (e.g. W25, S24), companies by industry or tag, top companies, who is hiring, founder-diversity lists, and overall YC stats. Use this skill whenever the user asks about YC-backed startups, a YC batch, YC companies in a sector or tag or that are hiring, the Y Combinator portfolio, or startup and venture research that draws on YC data. Read-only.

待分类3.3K3天前更新