关于 trader-alerts
trader-alerts 是用于监控股价和 NYSE 开市时间的 Python 技能,可按用户设定的规则发出提醒。它只报告提醒,不会下单,将通知与交易决策分开。
主要功能
- 01价格阈值与止损提醒
- 02百分比变动提醒
- 03NYSE 开盘提醒
- 04获取报价并更新价格文件
- 05记录已触发的提醒
适用场景
- 01监控股票是否达到指定价格
- 02跟踪相对参考价的每日变动
- 03检查 NYSE 是否开市
- 04为相关 trader 技能刷新价格
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ jakeschincariol/ trader-skill --skill trader-alerts安装后在 Claude Code 中输入/trader-alerts确认已加载。
附带文件alerts.example.jsonalerts.py
详细介绍
trader-alerts
Price Alerts 会监控价格,让用户不必亲自盯着。提醒只是信息,绝不是订单:止损提醒响起时,不会卖出任何东西。如果用户想要采取行动,仍会走正常流程(规模、风险,以及用户的同意)。
${CLAUDE_SKILL_DIR} 指此技能的文件夹(即 SKILL.md 所在的位置)。
python3 "${CLAUDE_SKILL_DIR}/alerts.py" clock # NYSE open or closed, next open
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote AAPL KO --write # -> trader/prices.json
python3 "${CLAUDE_SKILL_DIR}/alerts.py" quote --holdings --write # portfolio + targets tickers
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol AAPL --above 350
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol BAC --stop 50 --note "my stop"
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --symbol KO --pct 3
python3 "${CLAUDE_SKILL_DIR}/alerts.py" add --opening-bell
python3 "${CLAUDE_SKILL_DIR}/alerts.py" check # exit 0 = something rang
python3 "${CLAUDE_SKILL_DIR}/alerts.py" list
python3 "${CLAUDE_SKILL_DIR}/alerts.py" reset aapl-above-350
读取和写入的内容
| 文件 | 用途 |
|---|---|
trader/alerts.json | 规则(本文件夹中的 alerts.example.json) |
trader/state/alerts.json | 哪些规则何时响过,这样每条规则只会响一次 |
trader/prices.json | 合并后的最新报价,供 trader-budget、trader-risk、trader-tax 和 trader-rebalance 使用 |
规则类型
| 类型 | 触发条件 | 再次触发条件 |
|---|---|---|
above | 价格达到或高于 price | 重置后;或者当 "rearm": true 且价格回落时自动再次触发 |
below / stop | 价格达到或低于 price | 同上 |
pct_move | 相较前一收盘价(或 ref)变动了 pct 百分比,可选 direction 为 up 或 down | 每天最多一次 |
opening_bell | NYSE 开市 | 每个交易日一次 |
报价
yahoo(默认):query1.finance.yahoo.com/v8/finance/chart/<TICKER>,非官方的免费 JSON 接口,每个代码请求一次,间隔半秒。stooq:stooq.com/q/l/?s=aapl.us&f=sd2t2ohlcv&h&e=csv,Stooq 的免费 CSV。撰写本文时(2026-10-13)该接口返回 404;解析器会保留,以便接口恢复后使用。可用--source stooq尝试。- 免费报价有延迟。可用于提醒和检查规模,但不适合把握下单时机。最终成交价以经纪商报价为准。
- 如果两者都不可用,请从经纪商连接器读取价格(Alpaca
get_stock_snapshot、IBKRget_price_snapshot),并将其写入trader/prices.json,格式为{"as_of": "...", "prices": {"AAPL": 341.27}}。
NYSE 时钟
常规交易时段为纽约时间上午 9:30 至下午 4:00;周末以及以下节假日休市。信息来源:nyse.com/markets/hours-calendars(读取日期:2026-10-13):
- 2026 年:1 月 1 日、1 月 19 日、2 月 16 日、4 月 3 日(耶稣受难日)、5 月 25 日、6 月 19 日、7 月 3 日(独立日补休)、9 月 7 日、11 月 26 日、12 月 25 日。11 月 27 日和 12 月 24 日提前至下午 1:00 收市。
- 2027 年:1 月 1 日、1 月 18 日、2 月 15 日、3 月 26 日(耶稣受难日)、5 月 31 日、6 月 18 日(六月节补休)、7 月 5 日(独立日补休)、9 月 6 日、11 月 25 日、12 月 24 日(圣诞节补休)。11 月 26 日提前至下午 1:00 收市。
工具会处理夏令时,因此不需要时区文件。对于其他年份,工具会提示节假日列表未知。
步骤
- 询问用户想关注什么,按用户原话记录(“告诉我苹果跌破 320 美元时提醒我”),并添加规则。向用户确认代码、类型和价格。
- 立即运行
check;如果用户需要,也可按计划运行(Claude 定时任务或 cron,在市场交易时段每 15 分钟运行一次就足够)。每次运行只会获取规则中涉及的代码,并让每条提醒响一次。 - 每条响起的提醒用一行告诉用户。如果用户想采取行动,请引导他们进行规模评估并查看
/trader-risk。绝不要代替用户采取行动。
示例:reel 的投资组合
买入复制的投资组合后,运行 add --opening-bell、add --symbol AAPL --above 350 和 add --symbol BAC --stop 50。2026-10-13,AAPL 收于 341.27 美元,BAC 收于 53.96 美元,因此当晚运行 check 会输出“Nothing hit”,并以状态码 1 退出。第二天早上 9:30,开市提醒会响一次。
它绝不会做的事
它绝不会下单、取消订单或更改订单,不会声称报价是实时的,也不会预测价格走势。
安全
- 本项目用于教育和提供工具,不构成财务建议。警报反映的是价格事实,不是交易信号。
- 默认使用模拟交易(
"paper": true)。是否开始实盘交易由用户自行决定,并在自己的配置中设置。 - 除 trader-broker 外,本套件中的其他工具都不会下单;trader-broker 也只有在同时满足以下三项时才会下单:trader-risk 当天已通过该笔确切订单的检查;用户在聊天中为该笔订单明确输入了 yes;由于订单工具设置为“需要批准”(Customize > Connectors > tool permissions),用户在 Claude 自己的卡片上点击了一次 Allow。切勿将订单工具设为“始终允许”。
- 除非配置允许且用户确认,否则不得进行期权、保证金、卖空或杠杆交易。
- 经纪商密钥应存放在环境变量或 Claude Desktop 配置中,绝不可放在聊天中。
评论
支持 Markdown