Community生产力与协作github.com

trader-in-news

印度股市(NSE/BSE)新闻监控器。追踪您关注股票的突发新闻,并标记影响其走势的因素:雅虎财经和谷歌新闻(印度版)头条、各公司在NSE的企业公告(附BSE备用方案)、以及与前一收盘价的价差。

trader-in-news 是什么?

该工具是为AI代理(如Claude Code)设计的市场情报技能,专注于印度股票市场(NSE/BSE)。它从雅虎财经RSS、谷歌新闻(印度版)以及NSE/BSE官方企业公告中抓取最新动态,仅显示自上次检查以来新增的新闻,并按IST时间排序,避免重复。支持多种股票代码格式(如RELIANCE、RELIANCE.NS、500325.BO),并可与交易员工作流中的其他技能(如trader-in-scanner、trader-in-exit)集成。其核心规则包括:优先处理交易所申报(如财报、管理层变动、股票回购、收购),对价格变动超过3%的股票进行标记,并禁止基于新闻直接发出交易指令。该工具强调核实来源、链接PDF原文,并明确告知哪些内容因付费墙无法访问。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/bhardwajaditya/day-trader-skill-india/tree/main/trader-in-news

Installed? Explore more 生产力与协作 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

trader-in-news 是做什么的?

图表看起来可能完美无缺,但可能即将因财报日期、质押催缴或意外总经理辞职而产生跳空缺口。在交易策略成型之前,此技能会为投资组合中的每只股票读取携带这些信息的消息流,并仅告知您新增的内容。同时,它还会显示每只股票距前收盘价的差额,使头条新闻与价格变动一目了然。

本文件夹中的工具(标准库Python,无需密钥,无需注册):

python3 "${CLAUDE_SKILL_DIR}/news.py"                              # 监控列表 + 计划 + 投资组合
python3 "${CLAUDE_SKILL_DIR}/news.py" --tickers RELIANCE TCS M&M --hours 12
python3 "${CLAUDE_SKILL_DIR}/news.py" --tickers BSE:500325 HDFCBANK.NS --json
python3 "${CLAUDE_SKILL_DIR}/news.py" --no-filings --no-google     # 仅雅虎财经头条

股票代码:RELIANCE、RELIANCE.NS、NSE:RELIANCE、RELIANCE.BO、BSE:RELIANCE、500325.BO、BSE:500325。无后缀的代码默认指NSE(或trader-in/config.json中的default_exchange)。在Shell中对M&M加引号。

读取和写入的数据

文件 / 消息源内容
--tickers,否则为 trader-in/watchlist.json扫描仪的结果(trader-in-scanner)
trader-in/plan.json您正在计划的交易(trader-in-exit)
trader-in/portfolio.json您持有的仓位(trader-in-broker在此记录成交)
雅虎财经头条RSShttps://feeds.finance.yahoo.com/rss/2.0/headline?s=TCS.NS&region=IN&lang=en-IN。适用于许多NSE股票名称,部分为空(如检查时的RELIANCE.NS、HDFCBANK.NS),且通常偏离主题
谷歌新闻RSS(印度版)https://news.google.com/rss/search?q=<公司名称>+share&hl=en-IN&gl=IN&ceid=IN:en;公司名称来自您的监控列表、交易所或雅虎财经图表。不提及公司名称或其股票代码的标题会被丢弃
NSE企业公告https://www.nseindia.com/api/corporate-announcements?index=equities&symbol=RELIANCE&from_date=..&to_date=..,在NSE主页预热Cookie后(主页返回403但仍设置Cookie;这属正常现象)
BSE企业公告(备用)https://api.bseindia.com/BseIndiaAPI/api/AnnSubCategoryGetData/w?...&strScrip=500325,当NSE拒绝或用于BSE证券代码时使用。证券代码来自500325.BO、trader-in/config.json中的bse_codes(如{"RELIANCE": "500325"}),或BSE的搜索
雅虎财经图表接口最新价格与前收盘价之差,单位为₹(非官方数据,可能有延迟;雅虎财经不支持数字BSE代码的图表,请使用RELIANCE.BO)
trader-in/state/news.json已展示的新闻(保留30天)以及找到的BSE证券代码

NSE和BSE位于Akamai之后,可能拒绝机器访问(HTTP 401/403/429,或"Access Denied"页面)。该工具不会因拒绝而失败:它会记录NSE refused ... falling back to BSE,然后如果BSE也拒绝,则记录exchange filings skipped for X (...); headlines still run。在简报中说明("本次检查未能读取交易所文件"),并引导用户访问nseindia.com / bseindia.com上的公司页面。在此机器上,NSE有响应而BSE拒绝。

规则

  • 头条新闻只是线索,并非事实。 在告诉用户某事发生之前,请打开故事或申报PDF并阅读。引用来源并提供链接。切勿总结无法阅读的付费故事:请说明情况。
  • 申报优于头条新闻。 如果交易所公告与头条新闻不一致,则以公司在SEBI的LODR规则下向NSE/BSE提交的公告为准。
  • 说明影响范围。 每个项目列出其影响的股票代码及其标签:业绩、分析师、法律、交易、资本、人事、风险、停牌、监管、宏观。标有!的申报是那些会影响股价的:财务业绩、董事会会议结果、股票回购、融资(QIP、优先配售、供股)、分红或拆股、收购、合并或方案、辞职(尤其是MD、CEO、CFO或审计师)、质押催缴、信用评级下调、违约或破产、交易暂停。"一般更新"和"新闻稿"申报按其文本处理(以"一般更新"提交的MD和CEO变更仍会获得!标记)。
  • 常规申报被隐藏(遗失股票证书、报纸副本、Reg. 74(5)证书);输出会计算其数量,--routine参数可显示它们。
  • MOVING标记价格变动超过3%的股票(--move-pct可调整)。无头条新闻的价格波动也值得提及。请记住NSE的价格波段:卡在涨跌停板上的股票根本无法交易。
  • 谷歌新闻按名称匹配,因此可能混入同名公司(例如M&M可能看到Kotak Mahindra Bank的故事)。在重复之前请阅读标题。
  • 无预测。 仅报告已发布的内容以及价格与前收盘价的差距。切勿预测股票后续走势。

步骤

  1. 执行检查:python3 "${CLAUDE_SKILL_DIR}/news.py"。退出码1表示没有新内容。--all显示已看过的项目,--json提供机器可读格式(时间为UTC加上time_ist),--dry-run不更新状态文件。
  2. 阅读重要项目:每个!申报、任何标记为业绩、停牌、法律、监管或风险的项目,以及所有MOVING股票。对于任何!项目,打开申报PDF。
  3. 为每只股票撰写简短简报:发生了什么、来源和链接、以₹和百分比表示的价格变动、以及为什么对交易策略重要(例如"董事会于11月5日开会批准业绩:该跳空可能越过任何止损位,因此这仍为日内交易")。
  4. 如果故事改变了格局,请在/trader-in-entry和/trader-in-exit之前说明:交易期间的业绩日期、跌停板、质押催缴、融资。切勿仅凭头条新闻行动。

在会话期间:/loop 15m /trader-in-news,或每天IST时间09:15开盘前(预开盘为09:00至09:08)设置定时任务。

示例

2026年10月27日星期二,IST时间15:45使用--tickers RELIANCE TCS HDFCBANK检查:

RELIANCE.NS   ₹1,196.20 -0.47% vs previous close ₹1,201.80 at 15:28 IST
TCS.NS        ₹2,496.90 -1.50% vs previous close ₹2,535.00 at 15:28 IST

  2026-10-27 13:56 IST  RELIANCE.NS   Google News   Jio IPO draws INR 7.4 trillion as Reliance Industries stock awaits debut
      via ad-hoc-news.de  tags: capital  https://news.google.com/rss/articles/...
! 2026-10-27 08:02 IST  HDFCBANK.NS   NSE           General Updates: Reg. 30 disclosure: Change in Managing Director and Chief Executive Officer of the Bank
      tags: people  https://nsearchives.nseindia.com/corporate/HDFCBANK_27102026080232_SEIntimation_appt_of_AB.pdf

简报:"HDFC银行在IST时间08:02向NSE报告其MD & CEO正在变更。在今日交易前请打开PDF。Reliance:Jio Platforms IPO将于明日上市,因此预计集团层面将有波动。TCS下跌1.5%且无公司申报;IT板块当日下跌。" 如果某只股票没有新闻,请直接说明,而不是填充简报。

从不做的事

  • 从不编造或修饰故事、引用或数字。
  • 从不根据新闻进行交易,也从不因为头条新闻而告诉用户买入或卖出。
  • 绝不滥用服务器:每个消息源每只股票一次请求,调用间有暂停,每次运行仅一次NSE主页预热,一旦NSE或BSE拒绝,则在本次运行中停止向该交易所请求。

安全说明

教育和工具,非投资建议。如需建议,请咨询SEBI注册投资顾问。此技能仅读取和报告。除了/trader-in-broker(默认模拟:本地模拟账本)经过/trader-in-risk审核且用户为该订单明确输入"是"之外,不会有任何下单操作。

Individual skills in this repo

This repo contains 2 individual skills — each has its own dedicated page.

bhardwajaditya/trader-in-alerts

Price Alerts for Indian stocks (NSE, BSE). Rings when a price, a stop or the opening bell hits. Turns the trade plan into three alerts in one go (the stop, the target and "flat by" at your flat-by time, 15:10 IST by default, before brokers square off MIS at about 15:20), plus above / below / stop / target levels in rupees, percent moves from the previous close for stocks and for Nifty, Bank Nifty or Sensex, any time of day, the 09:15 IST opening bell and the 09:00 pre-open, each ringing once so you are not spammed. Reminds you that the stop and target are separate orders at Zerodha, Upstox and other Indian brokers (no OCO for MIS): when one fills, cancel the other. Knows NSE hours in IST with the 2026 NSE holidays, the Budget-day and Muhurat special sessions, fetches free delayed Yahoo quotes for .NS / .BO tickers one at a time, and writes trader-in/prices.json (INR) for sizing and the risk check. Use when the user says "alert me when", "tell me if Reliance hits 1,200", "watch my stop", "watch my trade",…

bhardwajaditya/trader-in-broker

Order Executor for Indian stocks (NSE, BSE). Turns orders that passed /trader-in-risk into plain tickets for Zerodha Kite (default) or Upstox, and never sends anything without your yes. Indian brokers dropped bracket orders, so one trade becomes three orders: the buy, then a SL-M stop and a LIMIT target. The ticket warns that those two are NOT linked (no OCO). Shows the exact JSON for Kite's place_order MCP tool or the Upstox place-order body (ISIN instrument_token), the estimated costs (brokerage, STT, stamp duty, GST) and the max loss at the stop including costs, in ₹. Paper by default: a local simulated ledger with realised P&L after costs, because Indian brokers have no paper account. Live needs "paper": false, your yes typed word for word, then Claude's own Allow once card. Builds the sell that closes an MIS trade by 15:10 IST, before the broker's ~15:20 auto square-off. Covers connecting the Kite MCP server (tokens never in chat). Use when the user says "place the order", "buy it", "execute", "send…

相关技能