mcpField
W
watchlist-manager

watchlist-manager

github.com/eli-alvarado其他310 次安装6 天前更新
代码仓库

关于 watchlist-manager

watchlist-manager 是用于维护美国市场股票观察列表文件的技能,供 price-alerts 和 watchlist-brief 技能读取。它可校验条目并支持添加、更新、删除和查看记录;不会下单或修改交易。

主要功能

  1. 01维护共享观察列表文件
  2. 02添加、更新、删除和查看股票
  3. 03校验代码与提醒设置
  4. 04记录价位、标签和投资理由
  5. 05通过脚本原子写入更改

适用场景

  1. 01维护提醒技能读取的股票代码
  2. 02记录入场、止损和目标价
  3. 03查看或筛选观察列表条目
  4. 04使用前校验观察列表

安装

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

$npx skills add https://github.com/eli-alvarado/us-watchlist-alerts --skill watchlist-manager

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

详细介绍

自选列表管理器(美国市场)

维护一个唯一事实来源自选列表文件,供 price-alerts 和 watchlist-brief 技能读取。 仅供参考的工具。**绝不下单、修改或取消交易。**编辑自选列表不属于交易。

文件位置

  1. 如果设置了 $WATCHLIST_FILE,则使用该文件;否则使用工作目录中的 ./watchlist.json(如果已安装 PyYAML,也支持 YAML 文件 watchlist.yaml)。
  2. 如果都不存在,则按照 examples/watchlist.json 的结构创建文件,并将 tickers 列表留空。覆盖现有文件前先询问。

架构(版本 1)

{
  "version": 1,
  "settings": { "cooldown_minutes": 240, "rearm_pct": 0.5, "sessions": ["regular"],
                "volume_spike_multiple": 2.0, "near_52w_pct": 2.0, "earnings_days": 3,
                "max_alerts_per_run": 20, "extra_closures": [], "stale_after_seconds": 900 },
  "tickers": [{
    "symbol": "NVDA",            // required, uppercase; class shares as BRK.B or BRK-B
    "side": "long",              // long | short | watch
    "added": "2026-10-15",
    "thesis": "AI datacenter capex",
    "entry": 160.0, "targets": [190.0, 220.0], "stop": 140.0,
    "tags": ["ai", "semis"],
    "alerts": [ {"type": "price_below", "value": 150, "cooldown_minutes": 60} ],
    "notes": ""
  }]
}

提醒 type 的取值及其 value 含义见 skills/price-alerts/SKILL.md。 设置 stop 会自动触发 stop_hit 提醒,设置 targets 会自动触发 target_hit 提醒。

操作(优先使用脚本;脚本会验证并以原子方式写入)

从仓库根目录运行(或在此技能的安装位置运行;脚本位于 scripts/ 中):

python scripts/watchlist.py add NVDA --thesis "AI capex" --entry 160 --target 190 --target 220 --stop 140 --tag ai --tag semis --alert price_below:150
python scripts/watchlist.py update NVDA --stop 145
python scripts/watchlist.py update NVDA --tag megacap --alert rsi_above:75 --append
python scripts/watchlist.py remove NVDA
python scripts/watchlist.py list [--tag semis]
python scripts/watchlist.py show NVDA
python scripts/watchlist.py validate

如果无法使用 Python,请按照架构和下方验证规则手动编辑 JSON。

工作流程

  1. **确认股票代码。**转换为大写。如果用户提供的是公司名称,请确认股票代码(例如“Alphabet”对应 GOOGL 还是 GOOG?)。拒绝非美国上市的股票,或说明默认数据不支持这些股票。
  2. 使用实时报价进行合理性检查:python scripts/quotes.py NVDA。如果用户为多头设置的止损高于当前价格(或目标价低于当前价格),请指出并询问。
  3. **记录理由。**如果用户未提供投资论点,询问一次,请其用一句话说明理由;如果用户拒绝,则存储 ""。不要编造投资论点。
  4. **建议提醒,不要强加。**可提供的合理默认值:止损/目标价、earnings_within: 3、pct_move: 5。仅当用户询问波动率或今日波动区间时,才提及 iv_above/intraday_range_pct,并说明 ATM IV 是非官方的 Yahoo 数据,不是 IV 排名。只添加用户同意的内容。
  5. **写入、验证并确认。**用一行简洁地显示最终条目(股票代码、入场价、止损价、目标价、提醒)。

验证规则

  • 股票代码须匹配 ^[A-Z]{1,5}([.-][A-Z]{1,2})?$;不得重复。
  • entry、stop、targets[] 必须为数字。side: long 时,止损价须低于入场价;side: short 时,止损价须高于入场价。
  • 如果存在 settings.sessions,则必须是包含 regular/pre/after 的非空列表。
  • 如果存在 settings.extra_closures,则必须是非预定的全天休市日期,格式为 ISO 日期(YYYY-MM-DD)。
  • 每个提醒的 type 都必须是已知类型。

列表格式

简洁表格:Ticker | Side | Entry | Stop | Targets | Tags | Thesis。仅当用户提出要求或你已在获取报价时,才添加实时价格列。

注意事项

  • 未经明确指示,不要删除股票代码;对于“清理我的列表”之类的请求,先提出拟删除项。
  • 不要给出买入/卖出建议。可以描述价位和风险(例如“止损价比入场价低 12%”)。

评论

支持 Markdown