Community生產力與協作github.com

bhardwajaditya/trader-in-news

印度股市 (NSE / BSE) 新聞監控工具。追蹤您關注的每支股票的突發新聞,並標示價格異動原因:Yahoo Finance 和 Google News(印度版)標題、NSE 公司公告(含 BSE 備援),以及距前收盤價的差距。

trader-in-news 是什麼?

這是一個專為印度股市(NSE 和 BSE)設計的新聞監控 AI 技能,旨在協助交易者在交易前掌握可能影響股價的突發事件。它能自動從 Yahoo Finance 標題 RSS、Google News 印度版以及 NSE/BSE 的企業公告(包括財報、董事會決議、股利、買回、收購、信用評等、Key Managerial Personnel(KMP)異動、內部人交易、質押、籌資等)收集最新資訊,並只顯示自上次檢查以來的「新」項目,避免重複。技能會同時顯示每支股票距前收盤價的變動金額(盧比),並為每個新聞項目加上標籤(例如:財報、分析師、交易、資本、人事、暫停交易、監管、宏觀等),讓使用者能快速判斷重點。支援主要平台(Claude Code 等)與命令行工具,無需 API 金鑰即可執行。使用者可以透過自然語言指令如「Reliance 有什麼新聞」、「TCS 為什麼在動」、「我的 Nifty 觀察清單新聞」、「晨間簡報」或「檢查 NSE 公告」來觸發,也可與 /trader-in-scanner 等工具整合,形成完整的交易前流程。

相容平台✓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"                              # watchlist + plan + portfolio
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     # Yahoo headlines only

支援的代碼格式: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 記錄交易於此)
Yahoo Finance 標題 RSShttps://feeds.finance.yahoo.com/rss/2.0/headline?s=TCS.NS&region=IN&lang=en-IN。許多 NSE 股票可用,部分(如 RELIANCE.NS、HDFCBANK.NS 檢查時)無法取得,且常偏離主題
Google News RSS,印度版https://news.google.com/rss/search?q=<company>+share&hl=en-IN&gl=IN&ceid=IN:en;公司名稱來自您的觀察清單、交易所或 Yahoo 的圖表。未提及公司或其代碼的標題會被丟棄
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 的搜尋
Yahoo Finance 圖表端點最新價格相對於前收盤價,單位為 ₹(非官方,可能延遲;Yahoo 不支援數值 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、私募、認股權)、股利或分割、收購、合併或重組、辭職(尤其是總經理、CEO、CFO 或 auditor)、質押強制執行、信用評等下調、違約或破產、暫停交易。對於歸類為「一般更新」和「新聞稿」的公告,會透過內容文字判斷(例如以「一般更新」提交的總經理和 CEO 變更仍會標記 !)。
  • 例行公告會被隱藏(例如遺失股票憑證、報紙副本、Reg. 74(5) 憑證等);輸出時會計算其數量,並可透過 --routine 顯示。
  • MOVING 標記股價偏離前收盤價 3% 或以上的股票(可透過 --move-pct 調整)。沒有新聞但股價有波動的情況也值得特別說明。請記住 NSE 的價格限制:觸及漲停或跌停的股票無法進行任何交易。
  • Google News 以公司名稱比對,因此可能混入同名公司的新聞(例如在 M&M 下面出現 Kotak Mahindra 銀行的報導)。在轉述前請先閱讀標題。
  • 不提供預測。 僅報導已發布的內容以及股價距前收盤價的差距。永遠不要說股價接下來會如何。

步驟

  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,或設定每天上午在 09:15 IST 開盤前(盤前時間為 09:00 至 09:08)排程執行。

範例

2026-10-27 週二,在 15:45 IST 使用 --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 Bank 在 08:02 IST 向 NSE 申報其總經理兼 CEO 將變更。請先開啟 PDF 再決定今日是否交易該股。Reliance:Jio Platforms 的 IPO 明天掛牌,預計集團相關股票將有波動。TCS 下跌 1.5%,無公司公告;資訊科技類股今日普遍下跌。」如果某個代碼沒有新聞,請直接說明,而不是為了補足篇幅而編造內容。

永遠不做的事

  • 絕不編造或誇大故事、引言或數字。
  • 絕不根據新聞進行交易,也絕不建議使用者因標題而買入或賣出。
  • 絕不轟炸伺服器:每個資料源對每個代碼僅請求一次,請求之間有間隔,每次執行僅做一次 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…

相關技能