Why most 'algo trading' setups for Indian retail traders fail (and what actually works)
I spent the last few months building automation tools on top of Zerodha's Kite Connect API, and the biggest lesson wasn't about strategy — it was about plumbing.
Most retail traders in India who try to "go algo" hit the same wall: they get a Python script working in a notebook, it looks great on backtest, then it falls apart live because of things nobody warns you about:
Token refresh hell. Kite Connect's daily token expiry breaks unattended scripts. If your bot isn't handling re-auth gracefully, it silently stops trading and you don't find out until you check your P&L at night.
Order state lag. There's a gap between when you place an order and when Kite confirms it. If your bot doesn't poll order status properly, you end up with duplicate orders or a trailing SL that never actually attaches.
PCR and Max Pain get quoted wrong. Most "free" PCR calculators pull stale option chain snapshots. For 0DTE/weekly expiry trades, a 5-10 min delay on PCR data makes the number close to useless — you need it computed off a live chain pull, not a cached one.
Backtests lie without slippage + STT/brokerage modeling. A strategy that returns 30% CAGR on a naive backtest can go negative once you model realistic entry/exit slippage plus actual Indian transaction costs (STT, stamp duty, exchange charges). Most homegrown backtesting scripts skip this entirely.
None of this is exotic — it's just unglamorous engineering that most people don't want to do before they've even validated a strategy. That's the actual gap in the market right now: not more indicators, but reliable execution infrastructure that handles the boring failure modes correctly.
That's what pushed me to package this up properly instead of keeping it as personal scripts — screeners, options analytics with live chain pulls, a Kite Connect automation layer that handles token refresh + order-state polling + trailing SL, and a backtester that models Indian-specific costs by default.
Curious what others here are running into — if you've built your own Kite Connect bot, what broke first for you in live trading vs backtest?
