Every market in history has been a negotiation between information and nerve. What has changed, over roughly a hundred and fifty years, is how much of that negotiation a human being is still personally required to conduct.

I want to trace that arc briefly, because it explains why I ended up building three fully automated trading systems — and why “fully” is the word that matters.

How trading has actually changed

For most of its existence, a market was a room. Buyers and sellers stood in a ring and shouted. Price discovery was a physical, social act, and the edge belonged to whoever was closest to the information and quickest with their hands.

The first great shift was electronic matching. Screens replaced rings; an order book became a data structure rather than a crowd. The second was algorithmic execution — once the book was data, software could read it and act on it faster and more consistently than a person. The third, in the developed markets, was the arrival of latency as an asset class: co-location, microwave links, and a competition measured in microseconds.

India travelled the same road, and remarkably quickly.

The Bombay Stock Exchange dates to 1875 and traded in a ring for over a century. The National Stock Exchange arrived in 1994 with fully screen-based trading and, in doing so, compressed a decades-long transition elsewhere into a few years. Dematerialisation in the late 1990s turned share certificates into electronic records. Derivatives followed in 2000, with index futures and then options. Algorithmic trading was formally permitted in 2008, co-location soon after, and a retail participation boom from 2020 onwards brought millions of new participants into markets that were, by then, largely machine-mediated.

The result is a curious asymmetry. The infrastructure is fully electronic. Institutional participation is substantially automated. And a very large share of retail participation is still a human being, on a phone, deciding.

The instruments, briefly

Shares are the simplest claim: part-ownership of a business, with a return driven by that business over time. The holding period is naturally long and the decision count is naturally low.

Mutual funds solved a delegation problem — most people lack the time, the temperament or the diversification to hold shares directly, so the selection is handed to a manager under a mandate. The rise of index funds and ETFs was itself an admission with real evidence behind it: much of what active selection produced was cost, not skill.

Futures and options are a different category altogether. They are contracts about an underlying rather than a claim on it. They introduce leverage, a fixed expiry, and — in the case of options — a payoff that is deliberately non-linear. That non-linearity is their point: an option lets you express a view on magnitude, direction and time separately, and lets you cap what you can lose on a directional bet.

It also makes them unforgiving. A share that falls can be waited out. An option has a clock, and the clock only runs one way.

What “algorithmic” is supposed to mean

Algorithmic trading, properly understood, means the decision is made by a specified procedure. Not the order entry — the decision. Given this state of the market, this rule produces this action, every time, whether or not anyone is watching.

The value is not speed. For most participants speed is irrelevant. The value is determinism: the same inputs produce the same output on a good day and a bad one, at 9:30 in the morning and at 11 at night, after a winning streak and after a losing one.

Where much of the retail “algo” offering sits

A great deal of what is marketed as algorithmic trading to retail participants is not that. It is, variously:

  • a signal service — software identifies a setup and sends an alert, and a human decides whether to take it;
  • one-click execution — the software pre-fills an order and a human presses the button;
  • strategy templates — a human configures parameters, and re-configures them when results disappoint;
  • semi-automation — entries are automated but exits, sizing or overrides are not.

None of these are dishonest, and some are genuinely useful. But every one of them reinserts a human being at precisely the moment the human is least reliable: after a loss, during a drawdown, in the middle of a fast move. The discipline the software was supposed to provide is returned to the person who wanted software because they lacked it.

Any system with a human in the decision loop inherits that human’s state. That is not a character flaw. It is well-documented behaviour — loss aversion, disposition effect, recency bias, overconfidence after a run — and it does not yield to resolve.

The case for removing the human entirely

If you accept that the failure mode is the intervention, then the design follows: the human belongs in the specification, not the execution.

Which means the system must decide the entry, the size, the venue, the stop, the target, the time limit and the exit — and must do all of it without asking. A rule that can be overridden mid-position is not a rule; it is a suggestion with extra steps.

That is a demanding standard, and it moves the burden somewhere uncomfortable: onto the mathematics. If nobody is going to intervene, then the model has to be right about the things it claims, and honest about the things it does not know. Which in practice means:

  • estimates carry confidence intervals, and a strategy whose expectancy cannot be distinguished from zero is treated as exactly that, not as promising;
  • costs are modelled explicitly — brokerage, statutory charges, slippage, and the expected adverse move while an order is in flight — because in short-horizon trading the cost model is not a detail, it is frequently the whole result;
  • volatility and mean-reversion are measured, not assumed, from the instrument’s own data;
  • risk limits are derived from capital and measured volatility rather than chosen as round numbers;
  • every failure mode fails closed — an unknown state produces caution, not optimism.

Architecture: multi-broker and single-broker designs

The three systems

I run three deliberately separate automated trading systems, sharing a common philosophy of measurement, sizing, execution, risk management and reconciliation — but with architectures adapted to the characteristics of the markets and brokers they operate through.

The Equity and MCX bots share the same multi-broker architecture. The Crypto Bot follows a different, single-broker architecture.

Index options (India). The Equity Bot trades options on the major Indian indices — NIFTY, BANKNIFTY, SENSEX, FINNIFTY and others. It operates through a multi-broker architecture using Zerodha and Kotak Neo.

MCX options. The MCX Bot trades commodity futures and options across MCX, including instruments such as crude oil, natural gas and the metals complex. It uses the same multi-broker architecture as the Equity Bot.

Zerodha is used primarily for robustness, reliability and market-data availability. Its APIs provide access to historical data, tick data, candles, market depth and a broad instrument set, making it the richer source for market data and system-level validation.

Kotak Neo is used as the cost-optimised execution broker. Its API execution offers zero brokerage on transactions executed through the API, which can materially reduce transaction costs for high-frequency or short-horizon strategies. The architecture therefore separates data robustness from execution-cost optimisation, while retaining broker redundancy and failover capability.

Crypto Bot. The Crypto Bot follows a single-broker architecture using Delta Exchange. Unlike the Equity and MCX systems, it does not need a multi-broker routing layer; the broker abstraction, execution, position reconciliation, monitoring and data pipeline are built around a single crypto-derivatives venue.

Crypto is a continuous market with no expiry, no session boundary, and volatility that makes the equity indices look sedate. The absence of a close removes an entire category of assumptions that Indian market systems quietly rely on. The single-broker architecture is therefore deliberately simpler, while still retaining the same discipline around risk, execution, reconciliation and system health.

Each system runs the same core discipline — measure, size, execute, manage, reconcile — with no human in the loop during a session.

What suits what

Rather than claim outcomes, it is more useful to say what each design is built to suit:

  • Mean-reversion models suit instruments that oscillate around a level and revert after displacement. They tend to want range-bound or choppy conditions, and they suffer in sustained trends.
  • Trend and breakout models want the opposite: persistent directional movement, and they bleed in ranges through repeated false starts.
  • Volatility and convexity models care less about direction than about whether movement is being priced correctly, and they suit environments where realised and implied volatility diverge.
  • Spread and relative-value models trade the relationship between two related instruments rather than either one, and suit markets where a structural link is stable enough to measure.

Which family is appropriate is an empirical question about the instrument and the regime, not a matter of preference — and the honest answer for any given period is often “none of them convincingly”, which a system built on confidence intervals will tell you plainly.

Where this leaves me

I did not automate to trade more. I automated to trade consistently, and to make my own reasoning falsifiable. A system that logs every decision, prices every cost and reports its own uncertainty can be argued with. A person recalling why they exited a position three weeks ago cannot.

Whether that produces a durable edge is a separate question, and one the mathematics answers over a longer horizon than any of us would like.


Disclaimer. This article is a personal account of a software engineering project and is published for informational and educational purposes only. It is not investment advice, not a research report, and not a recommendation to buy, sell or hold any security, commodity, derivative or digital asset. It is not an offer or solicitation to manage money, to provide advisory services, or to sell any product or software. I am not registered with SEBI as an Investment Adviser or a Research Analyst, and nothing here should be construed as a service falling under those regulations. The systems described are built and operated solely for my own account. No performance figures, returns or success rates are stated or implied anywhere in this article, and none should be inferred. Trading and investing in securities, commodity derivatives and digital assets involve substantial risk of loss, including loss of capital exceeding the amount invested in leveraged products. Derivatives are complex instruments and are not suitable for every participant. Automated systems carry their own distinct risks, including software defects, connectivity failure, data errors and unintended behaviour in conditions their designers did not anticipate. Past behaviour of any market or system is not indicative of future results. Please consult a SEBI-registered investment adviser and consider your own financial circumstances, risk tolerance and objectives before making any investment decision.