One lot too big: why a 0.5% risk rule rejected 99.5% of stock-futures trades
A sensible-looking plan, ₹20 lakh of capital and 0.5% risk per trade, produced one trade in nearly six years when we tested it on real stock-futures contracts. The strategy was not the first thing that failed. The contract size was.
What we tested
The study compared two swing-trading ideas on the 50 most liquid stock futures: a breakout above a recent high or below a recent low, and a pullback to a moving average within a trend. Each was tested for longs and shorts, with a maximum hold of five sessions. Signals came from daily data, and entries needed confirmation from a 15-minute bar the next session.
We used real contract data from the NSE F&O bhavcopy from 2017 to September 2025, including lot sizes and open interest. Expired futures have no intraday history we could reach, so intraday prices were estimated from the stock's own 15-minute bars. The median error of that estimate against the real contract close was 0.26%. This makes it a hybrid test rather than an executable one, and the full method is on the research page.
The arithmetic of one lot
A risk rule says how much you may lose if the stop is hit. For a futures position, that amount depends on three numbers: the lot's value, the stock's volatility, and how many multiples of volatility the stop sits away.
| Year | Median value of one lot | Median risk of one lot at a 1.5-ATR stop |
|---|---|---|
| 2018 | ₹7.2 lakh | ₹33,322 |
| 2019 | ₹6.0 lakh | ₹28,352 |
| 2020 | ₹6.9 lakh | ₹38,493 |
| 2021 | ₹9.1 lakh | ₹39,701 |
| 2022 | ₹7.7 lakh | ₹30,980 |
| 2023 | ₹7.7 lakh | ₹24,285 |
| 2024 | ₹8.4 lakh | ₹34,111 |
| 2025 | ₹6.6 lakh | ₹24,519 |
The median average true range was about 2.8% of price, so a 1.5-ATR stop sits about 4.2% away. On a ₹7.7 lakh lot, that is about ₹32,000.
A 0.5% rule on ₹20 lakh allows ₹10,000. Across all stock-days in the universe, only 0.2% of one-lot positions fitted within ₹10,000. Only 2.9% fitted within ₹15,000, and 13.8% within ₹20,000.
You can turn this around to find the capital a rule really needs. Divide the risk of one lot by the percentage. A ₹30,000 lot risk at 0.5% needs ₹60 lakh, and at 1% it needs ₹30 lakh. That is the minimum for a single position, before holding more than one at a time.
What happened at ₹20 lakh
We ran the out-of-sample trades of the one leg that was above zero, pullback longs, through a portfolio simulator with whole lots and limits on open risk, positions, sectors and margin.
| Risk per trade | Trades filled (of 192) | Annual return | Max drawdown |
|---|---|---|---|
| 0.5% | 1 | 0.1% | 0% |
| 1.0% | 21 | 1.3% | 2.1% |
| 1.5% | 36 | 1.8% | 5.4% |
| 2.0% | 33 | -1.0% | 7.2% |
| 3.0% | 46 | -0.4% | 9.0% |
Above 2%, the portfolio's own 8% drawdown suspension began to trigger, and trading largely stopped. Raising the risk limit made the strategy trade. It did not make it profitable, because raising risk only magnifies whatever edge exists.
Would more capital fix it?
More capital removes the rejection, but it does not create an edge. At ₹1 crore and 1% risk, pullback longs made 129 trades with an annual return of 1.7% and a 4.9% drawdown. Over the same period the Nifty 50 price index returned 13.1% a year. Unused capital in this simulation earned nothing, which is part of the gap, since most of the money sat idle.
And the strategy itself?
Independently of lot size, we measured each signal in R, where 1R is the initial risk on a trade. In walk-forward tests from 2020 to September 2025, with each three-month test period using only earlier data to choose settings, the results at today's cost schedule were as follows.
| Leg | Trades | Net R per trade | At double execution costs |
|---|---|---|---|
| Pullback long | 192 | +0.064 | +0.039 |
| Breakout long | 226 | -0.037 | -0.061 |
| Breakout short | 135 | -0.057 | -0.081 |
| Pullback short | 98 | -0.056 | -0.080 |
The best leg's 95% interval ran from -0.05R to +0.21R, so it could not be separated from zero. An overfitting check across all the settings tried gave p = 0.88. We recorded the result as no demonstrated edge.
What to take from this
- Test feasibility first. Before any back-test, compute the risk of one lot for your universe and compare it with your budget. It takes minutes, and it can end the question.
- Never round up to one lot. A rule that is broken whenever it binds is not a rule. If one lot does not fit, the honest outcome is no trade.
- Measure the signal separately from the account. Results in R tell you about the idea. Portfolio results tell you whether you can trade it with your capital. You need both.
- Tight stops are not a free fix. A narrower stop fits more lots, but in these tests a 1.0-ATR stop did worse on the long side than 1.5 ATR.
Limits of this study
Earnings dates were not excluded in the test, so trades held through results. The universe used futures turnover in place of historical Nifty 50 membership. Margin was assumed at 20% because we have no historical margin files, and execution cost was assumed at 0.05% per side. Five names with no intraday data were left out, including some that collapsed, and that flatters long results. Lot sizes, taxes and margins change over time, so the figures above describe this sample rather than any future period.
This is research on historical data, not a recommendation. See our disclaimer and editorial policy.