mcpField
T
tradingview-reader

tradingview-reader

github.com/himself65数据与数据库3.5k1.2k 次安装3 天前更新
代码仓库

关于 tradingview-reader

tradingview-reader 是通过 opencli 读取 TradingView macOS 桌面应用数据的只读分析技能,可查看行情、期权链、图表状态及账户相关信息。它适用于需要期权希腊值和按行权价查看隐含波动率等数据的场景,不支持交易或修改设置。

主要功能

  1. 01读取行情报价和期权链
  2. 02查看期权希腊值与隐含波动率
  3. 03筛选股票、加密货币等市场
  4. 04查询新闻、观察列表和提醒
  5. 05检查图表状态并截取图表

适用场景

  1. 01分析期权链、希腊值和波动率偏斜
  2. 02按指标筛选股票或加密货币
  3. 03查看账户中的观察列表与提醒
  4. 04检查当前图表并保存截图

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/himself65/finance-skills --skill tradingview-reader

安装后在 Claude Code 中输入/tradingview-reader确认已加载。

附带文件README.mdreferences/commands.md

详细介绍

TradingView 阅读器(只读)

如果宿主尚未执行以下 shell 探测(例如在 Codex 中),请先使用其 shell 工具运行 ! 包裹的命令,再选择设置路径。请使用实际输出;如果无法访问 shell,请说明这一限制。

通过 opencli 和连接到正在运行的 TradingView.app 进程的 CDP,读取 TradingView macOS 桌面应用中的报价、期权链和图表状态。由本仓库 opencli-plugins/tradingview 目录中的 tradingview 插件提供支持(这是独立于 opencli 内置适配器的插件,通过 opencli 的 monorepo 子路径语法安装)。

此技能为只读。 专为分析而设计:获取期权链、检查 IV/Greeks、捕获图表状态。它不会下单、发布观点、修改关注列表或更改图表布局。

无头替代方案:对于普通报价、TA 读数、筛选器、期货或不含 Greeks 的期权链,优先使用同级的 tradingview-mcp 技能(捆绑的 MCP 服务,无需桌面应用,也无需通过 CDP 重新启动)。需要 Greeks/各行权价的 IV 偏斜、带合约数量的到期日,或账户绑定数据(关注列表、提醒、图表、TV 新闻)时,请使用此技能。

重要:与基于浏览器的 opencli 阅读器(twitter、linkedin)不同,此阅读器通过 Chrome DevTools Protocol 直接与正在运行的 TradingView 桌面应用通信。用户必须 (a) 安装了 TradingView.app,并且 (b) 已在该应用中登录。插件会负责通过调试端口重新启动应用。

工作原理:数据命令通过 CDP 读取应用的会话 Cookie,并直接从 Node 调用 TradingView 的 HTTP API,因此无需 Browser Bridge 扩展或 apps.yaml 注册。


第 1 步:确保 opencli 和插件已安装并就绪

当前环境状态:

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

如果上述状态显示 READY,请跳至第 2 步。否则:

NOT_INSTALLED — 安装 opencli
npm install -g @jackwener/opencli

需要 Node.js >= 24 — 下一步安装的 tradingview 插件声明了 engines.node >= 24。

SETUP_NEEDED — 安装 TradingView 插件并通过 CDP 启动

TradingView 适配器并未内置于 opencli 中,而是一个独立插件:

# Install the plugin
opencli plugin install github:himself65/finance-skills/tradingview

# Relaunch TradingView.app with CDP enabled (one-time per session)
opencli tradingview launch

launch 步骤会退出正在运行的 TradingView,然后使用 --remote-debugging-port=9222 重新打开。如果用户有未保存的绘图,请提醒他们先保存图表布局。

常见设置问题
症状解决方法
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:9222应用未通过调试端口启动 — 运行 opencli tradingview launch
No tradingview.com cookies found应用已打开但未登录 — 在桌面应用中登录
No TradingView tab found在 TradingView 中打开任意图表或标的页面,然后重试
期权链为空/合约数量为 0已登录账户的订阅等级不包含此标的的期权

第 2 步:确定用户的需求

设置/图表检查
用户请求命令关键标志
设置/连接检查opencli tradingview status—
通过 CDP 重新启动应用opencli tradingview launch--port 9222
查看图表内容opencli tradingview chart-state--tab <id>
截取图表opencli tradingview screenshot --output ~/charts/nvda.png--tab <id>
报价与期权
用户请求命令关键标志
即时报价opencli tradingview quote --ticker X--exchange NASDAQ
期权链(完整)opencli tradingview options-chain --ticker X--exchange
期权链(单个到期日、平值范围)opencli tradingview options-chain --ticker X --expiry YYYY-MM-DD--type call|put、--strikes-around-spot N
列出到期日opencli tradingview options-expiries --ticker X—
筛选器
用户请求命令关键标志
通用筛选器(股票/加密货币/外汇/期货/债券)opencli tradingview screener --market america --columns ...--filter <json>、--sort field:desc、--limit N、--label-product
RSI < 30、按成交量排序的美国股票opencli tradingview screener --market america --columns "name,close,RSI|60,volume" --filter '[{"left":"RSI|60","operation":"less","right":30}]' --sort volume:desc—
按市值排列的顶级加密货币opencli tradingview screener --market coin --columns "name,close,change,market_cap_calc" --sort market_cap_calc:desc --limit 50—
搜索/自动补全交易代码opencli tradingview search --query "nvidia"--type stock|funds|crypto|...、--exchange、--country
新闻
用户请求命令关键标志
全球新闻头条opencli tradingview news --limit 25--category、--area、--section、--provider
特定交易代码的新闻opencli tradingview news --symbol NASDAQ:AAPL--limit、--section analysis|press_release|...
按 ID 获取完整报道opencli tradingview news --id <story-id>--lang en
关注列表与提醒
用户请求命令关键标志
列出所有关注列表opencli tradingview watchlists—
某个关注列表中的交易代码opencli tradingview watchlists --id <wl-id>—
彩色旗标列表(红/橙/黄/绿/蓝/紫)opencli tradingview watchlists --color red—
列出所有提醒opencli tradingview alerts --type list—
活跃提醒opencli tradingview alerts --type active—
最近触发的提醒opencli tradingview alerts --type triggered—
离线期间触发的提醒opencli tradingview alerts --type offline—
完整提醒日志opencli tradingview alerts --type log—

第 3 步:执行命令

通用模式
# Use -f json or -f yaml for structured output
opencli tradingview options-chain --ticker SNDK --expiry 2026-05-22 -f json
opencli tradingview options-chain --ticker NVDA --strikes-around-spot 8 -f csv
opencli tradingview quote --ticker SPY --exchange NYSEARCA -f json
关键规则
  1. 如果无法确定连接状态,请先运行 opencli tradingview status——该命令会报告 CDP 连接状态和当前打开的 TradingView 标签页。
  2. 使用 -f json 进行程序化处理(LLM 上下文、下游技能)。
  3. 按到期日和 --strikes-around-spot 筛选——完整期权链可能有 3,000 多行;未经筛选的输出通常不是用户想要的。
  4. 美国股票默认使用 --exchange NASDAQ;ETF(例如 SPY = NYSEARCA、QQQ = NASDAQ)或非美国上市证券必须明确指定 --exchange。
  5. 对于 screener,请谨慎选择 --columns——它同时控制请求内容和输出表格。请包含 name 以及 --filter 或 --sort 中使用的任何字段。为指标添加 |TF 以指定其时间周期,例如用 RSI|60 表示 1 小时 RSI。默认列适用于股票,但加密货币/外汇/期货应更换为其他列(字段目录不同)。
  6. 对于 screener,--filter 使用 JSON——由 {left, operation, right} 子句组成的数组。在 shell 中始终用单引号括住 JSON,以避免转义问题。操作符速查表见 references/commands.md。
  7. 对于 news,请尽早缩小资讯源范围——全局资讯流内容量极大。提高 --limit 之前,请先使用 --symbol、--category、--section 或 --provider。
  8. 对于 search,优先搜索,不要猜测——当用户给出的股票代码含义不明确时(例如只提供“SPY”,未指定交易所),请先运行 search --query SPY 确认上市信息,然后在后续命令中传入 --exchange。
  9. 对于 watchlists 和 alerts,默认显示摘要——用户问“我的观察列表里有什么?”时,想要的是列表名称和数量,而不是每个股票代码。
  10. 只读。 不进行交易、不编辑观察列表、不创建/删除提醒、不写入图表——该插件有意不提供写入端点(/append、/replace、/create_alert 等),因此不要寻找变通方法。
输出格式标志(-f)
格式标志适用场景
表格-f table(默认)便于人类阅读的终端输出
JSON-f json程序化处理、LLM 上下文
YAML-f yaml结构化输出,易于阅读
Markdown-f md文档、报告
CSV-f csv电子表格导出
输出列
  • 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 — 动态;每个 --columns 条目对应一列,另加 symbol。(默认:name、close、change、volume、market_cap_basic、sector.tr。)
  • search — symbol、description、type、exchange、country、currency
  • news(列表模式)— id、published、provider、title、urgency、related_symbols、link
  • news(故事模式,已设置 --id)— 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

第 4 步:呈现结果

  1. 先概述结构——对于期权链,先说明现货价格、当前显示的到期日、平值行权价和隐含波动率(IV)状况,再给出表格。对于筛选器,先说明匹配数量和应用的筛选条件。
  2. 展示前积极筛选——绝不要直接贴出包含 3,000 行的期权链或包含 500 行的筛选结果。期权链默认每个到期日只显示平值行权价 ± 6 个行权价;筛选器默认最多显示前 20 条,除非用户要求更多。
  3. 突出偏斜——同时显示看涨期权和看跌期权时,如果隐含波动率偏斜明显,请注明其方向。
  4. 对于图表状态,简洁报告布局 ID、交易品种、时间间隔和 URL;并可提供截图。
  5. 对于新闻(列表模式),按提供方分组,并优先显示用户可能所在时区的时间戳(如不确定,则始终使用 UTC ISO 时间)。附上链接,方便用户打开报道。对于报道模式(已设置 --id),正文为纯文本——按原文呈现,可酌情删减。
  6. 对于自选列表,先概述数量,再列出交易品种(例如:“3 个自选列表:财报(24 个)、AI 主题(12 个)、对冲(8 个)”)。除非用户要求,否则不要倾倒包含 100 个交易品种的自选列表内容。
  7. 对于警报,按状态分组(活跃与已触发),并按 fired_at 降序排列最近触发的警报。除非用户明确要求,否则不要暴露警报 ID。
  8. 对于筛选结果,先用纯文本指出涨跌幅最大项或极端值(例如:“市值最高的是 NVDA,达 4.2T;有 12 个标的的 RSI 低于 30”),再给出表格。
  9. 将会话视为私密信息——除非用户提出要求,否则绝不要暴露 CDP 目标 ID、Cookie 或布局 ID。

第 5 步:诊断

opencli tradingview status

返回 CDP 连接状态和活跃的 TradingView 标签页。如果 CDP 未运行,请运行 opencli tradingview launch,使用调试端口重新启动。


错误参考

错误原因修复方法
Unknown command: tradingview未安装插件opencli plugin install github:himself65/finance-skills/tradingview
Cannot reach CDP at http://127.0.0.1:9222启动应用时未启用调试端口opencli tradingview launch
No tradingview.com cookies found已退出 TradingView在桌面应用中登录
No TradingView tab found应用已打开,但未加载 TradingView 页面打开任意图表或交易品种页面,然后重试
scanner 400 / Empty chain / totalCount=0订阅等级不支持此交易品种的期权在桌面应用中检查账户等级
Symbol not found交易所错误明确传入 --exchange,或先运行 opencli tradingview search --query <name>
请求频率受限请求过多等待几秒后重试

参考文件

  • references/commands.md — 所有命令及其全部标志、输出示例和分析师工作流

评论

支持 Markdown