Disclaimer: Open-source educational and workflow-automation software only (MIT License). **Not SEBI-registered investment, financial, or tax advice.
** Most day traders lose money. You trade strictly at your own risk — review every line of code before running anything, and keep --paper mode on while testing.
If you ask an AI coding assistant to evaluate an NSE intraday stock setup, it can inspect moving averages, Opening Range levels, and RSI divergences remarkably well.
Ask that same model to calculate your share quantity after 2026 Securities Transaction Tax (STT), NSE turnover charges, Stamp Duty, GST, and Rs. 0.05 tick rounding — and things break fast.
That gap is why I built indian-day-trader-skill (nse-bse-hybrid-trader), taking inspiration from two MIT-licensed open-source repositories:
-
Bhala-Srinivash/nse-trading-skillsfor NSE/BSE technical frameworks and market conventions -
Jakeschincariol/day-trader-skillfor stdlib-only deterministic Monte Carlo verification and tamper-evident risk gating
The Architecture: AI Reasoning vs. Deterministic Math
Instead of mixing prompts and financial arithmetic, the skill splits the workflow across a strict 4-stage pipeline running purely on Python 3.10+ standard library (0 mandatory pip runtime dependencies):
nse_data_loader.py --> nse_timemachine.py --> indian_risk_gate.py --> broker_bridge.py (MTF + Confluence) (10k Monte Carlo + (INR Sizing + Taxes (SQLite Paper Ledger 15m ORB Backtest) + Circuit Breakers or Gated Live REST + SHA-256 Fingerprint) across 9 Brokers) - The AI Agent (
SKILL.md+references/) interprets market structure: Weekly/Daily/5m–15m alignment,0–6confluence scoring, RSI divergences, Fibonacci Golden Pocket (50%–61.8%), and SEBI flags (ASM/GSM, F&O ban list, circuit band proximity). - Deterministic Python Scripts (
scripts/) execute every calculation withDecimalprecision, deterministic RNG seeding (seed=19), SQLite persistence, and SHA-256 verdict signatures.
Real Example: When a 1.71R Trade Becomes 1.40R and -0.289R EV
Let's test SBIN.NS with Rs. 50,000 capital and 1% max risk (Entry = 850, Stop = 843, Target = 862) on Zerodha:
Mentally:
- Reward =
862 - 850 = Rs. 12 - Risk =
850 - 843 = Rs. 7 - Gross R:R =
12 / 7 = 1.714R— passes a>= 1.50filter on paper.
Now run the deterministic pipeline:
python .agents/skills/nse-bse-hybrid-trader/scripts/nse_timemachine.py \ --symbol SBIN.NS --entry 850 --stop 843 --target 862 \ --mode INTRADAY --broker zerodha --write python .agents/skills/nse-bse-hybrid-trader/scripts/indian_risk_gate.py \ --broker zerodha --symbol SBIN --capital 50000 --risk-pct 1.0 \ --entry 850 --stop 843 --target 862 --segment EQ_INTRADAY \ --timemachine-json .agents/skills/nse-bse-hybrid-trader/state/timemachine_result.json --write What the engine actually finds:
- 10,000-Path Time Machine (
59complete NSE5msessions,15:15 ISTsquare-off cutoff, stop-first check,Rs. 0.05adverse slippage): only 17.94% of paths hit target before stop, giving-0.2893Rnet expectancy (and only4/34historical 15m ORB hits). - Tax-Inclusive Position Sizing (
indian_risk_gate.py): caps quantity at63shares (Rs. 497.63total stop loss includingRs. 56.63round-trip charges). - 2026 Tax Drag: round-trip charges at target total
Rs. 57.40(7.59%tax drag), pullingNet R:Rdown to1.404 < 1.50. - Hard Block + Fingerprint: emits
BLOCK(NET_RR_TOO_LOW) signed with a SHA-256 fingerprint, sobroker_bridge.pyrejects any attempt to stage it.
Built-In Safety & Why Every File Is Auditable
- Zero Hidden Packages: Everything from Wilder RSI and VWAP to RFC-6238 TOTP generation, GZIP instrument master parsing, SQLite paper accounting, and REST adapters (
urllib.request+ HMAC signing) sits cleanly inside readable Python modules using stdlib only. - Paper First (
--paper): Default execution writes to a local SQLite database (state/paper_trades.db) and requires no demat account and no API keys. - Explicit Live Gating (
--live): Requires open IST market windows (09:30–14:30for primary entries), synced ScripMaster tokens where mandatory, local.envsecrets, and--confirm "CONFIRM LIVE". - Full Audit Guide:
README.mdincludes a file-by-file inspection checklist (including critical behavior like_strip_attached_fields()inbroker_bridge.py, which strips attached SL/target fields on non-bracket live orders so traders know to place separate SL/GTT legs).
Try It in 30 Seconds (Paper Mode)
Compatible with Claude Code, Google Antigravity, Cursor, GitHub Copilot, and Cline:
npx skills add aryanpardeshi11/indian-day-trader-skill Or run the test suite offline (12/12 unit & mocked 9-broker integration tests):
git clone https://github.com/aryanpardeshi11/indian-day-trader-skill.git cd indian-day-trader-skill python -m pytest -v GitHub: https://github.com/aryanpardeshi11/indian-day-trader-skill
Release: https://github.com/aryanpardeshi11/indian-day-trader-skill/releases/tag/v1.1.0
Feedback, PRs for updated broker fee tiers / NSE holiday calendars, and bug reports are very welcome!
