Skip to main content

Strategy library · Options directional

Bull call spread: a bullish view with the cost capped

By Anoop Thomas · Last updated

In short

A bull call spread buys a call option and sells a higher-strike call on the same expiry. The sold call pays for part of the bought one, so the trade costs less than a plain call. The maximum loss is the net premium paid. The maximum profit is the gap between strikes minus that premium, reached if the underlying expires at or above the higher strike. Breakeven is the lower strike plus the net debit.

Buying a naked call is the most common first options trade in India, and theta decay is why a correct but slow view can still lose money. A bull call spread keeps the bullish bet and sells a higher-strike call against it. You give up gains above that strike. In return the sold call cuts your cost and offsets part of the time decay.

It suits a directional view with a rough target, something like “Nifty up 300 points before the monthly expiry”. It doesn’t suit a view that the market is about to run a long way, because the spread stops paying at the upper strike. And it doesn’t fix a bad entry. A defined loss is still a loss.

The rules, step by step

A sensible starting template, not a proven system. Change any number, then test it before trusting it.

  1. 1

    Setup

    Nifty options on the current monthly expiry, entered with 15–25 trading days left. Buy the ATM call and sell the call 300 points higher.

  2. 2

    Entry trigger

    Enter only after a daily close where Nifty is above its 20-day EMA and the 20-day EMA is above the 50-day EMA. Place both legs the next morning after 9:30 am, buying the long call first.

  3. 3

    Stop-loss

    Exit both legs if the spread’s value falls to half of what you paid, or if Nifty closes below its 50-day EMA.

  4. 4

    Target and exit

    Take profit when the spread is worth 80% of the strike gap (₹240 on a 300-point spread). Close both legs by 3:15 pm on expiry day regardless.

  5. 5

    Position sizing

    Treat the full net debit as money at risk, even with a stop, because gaps skip stops. One lot of the example spread risks ₹8,125; keep that within 1–2% of capital.

  6. 6

    Filters

    Skip entries in the week of a scheduled event you can’t price, such as the Budget or an RBI policy, unless that event is the reason for the trade.

Say it in plain English

Paste this into INDfolio’s AI strategy builder and it becomes a backtestable strategy.

When Nifty closes above its 20-day EMA and the 20-day EMA is above the 50-day EMA, buy one lot of the at-the-money Nifty call on the current monthly expiry and sell one lot of the call 300 points higher. Exit if the spread loses half its value or Nifty closes below the 50-day EMA. Take profit when the spread is worth 80% of 300 points, close everything by 3:15 pm on expiry day, and risk no more than 1.5% of capital per trade.
Backtest this free

Free plan · no card · NSE data included

Payoff at expiry: a 24,000/24,300 Nifty bull call spread

Hypothetical inputs: Nifty at 24,000. Buy the 24,000 call at ₹210 and sell the 24,300 call at ₹85, same monthly expiry. Net debit ₹125 × 65 = ₹8,125 (lot size 65 as of 2026). Max profit (300 − 125) × 65 = ₹11,375. Breakeven 24,125.

Nifty at expiry Long 24,000 call (₹) Short 24,300 call (₹) Net P&L per lot (₹)
23,800−13,650+5,525−8,125
24,000−13,650+5,525−8,125
24,125−5,525+5,5250
24,200−650+5,525+4,875
24,300+5,850+5,525+11,375
24,500+18,850−7,475+11,375

Illustrative premiums, not quotes and not a backtest; costs and slippage excluded. Reward to risk here is ₹11,375 to ₹8,125, about 1.4 to 1. The risk-reward ratio calculator works this out for any spread.

Strikes, width and expiry

The width sets your ceiling. A 300-point Nifty spread can never make more than 300 points minus the debit, however far the index runs. Buying ATM and selling OTM is the standard version. Buying a slightly in-the-money call costs more but pulls the breakeven closer to the current price; buying out of the money is cheaper and needs a bigger move.

Expiry matters more than people expect. A Nifty weekly expires on Tuesday (as of November 2026) and gives the view only days to work. A monthly gives it weeks and costs more. Bank Nifty now has monthly contracts only, expiring on the last Tuesday of the month. If your signal comes from a daily chart, I’d give it an expiry at least two or three weeks away.

What goes wrong

The obvious failure is that the market doesn’t go up and you lose the debit. The less obvious ones are about timing. The move comes after expiry, or it comes so slowly that the long call loses time value faster than the short call gives back. A spread decays more slowly than a naked call, but it still decays while the index sits below the lower strike.

Expiry handling is the other trap. Hold to the close with Nifty between the strikes and the long call is exercised, with STT on its intrinsic value (0.15% as of November 2026, per Zerodha’s charges page). Above the upper strike both legs are in the money and settle together, and the long leg still attracts that STT. Closing before 3:15 pm on expiry day keeps it simple.

On margin: brokers block the net debit plus margin on the short call. On Zerodha’s SPAN calculator on 4 November 2026, the short leg of a 300-point Nifty spread needed about ₹31,000 per lot, almost all of it exposure margin, on top of the premium you pay. Check your broker’s calculator before assuming a spread is cheap to carry.

Costs on a two-leg trade

A round trip is four orders: buy and sell to open, then sell and buy to close. That’s ₹80 of brokerage at ₹20 an order, plus GST. STT is 0.15% of premium on each sale, and you sell twice: the short call at entry and the long call at exit. Closing the example at ₹240 gives (240 − 125) × 65 = ₹7,475 gross. Charges come to about ₹160 a lot, and a point of slippage on each of the four fills adds ₹260.

Test the signal before the spread

There are two things to test here. First the directional signal, on Nifty’s own daily history: if the moving average crossover filter has no edge on the index, wrapping it in a spread won’t create one. Then the spread itself, using historical option prices for the strikes your rule would have picked on the day it would have traded.

Vary the spread width and the days to expiry you allow at entry. Distrust results that lean on two or three big rallies, or that fill illiquid strikes at a stale last traded price. INDfolio can test the Nifty signal and the options leg with Indian costs deducted, then paper trade it on live prices before anything goes live (we build it, so weigh that accordingly).

Educational content, not investment advice. The rules and numbers on this page are an illustrative template, not a backtest result or a recommendation. Derivatives carry a high risk of loss — SEBI’s own studies of F&O traders found that the large majority of individuals lose money. We build INDfolio AI, so weigh our view accordingly.

FAQ

Frequently asked questions

When should I use a bull call spread instead of buying a call?

When you expect a moderate rise with a target and would rather pay less and give up gains beyond that target. If you expect a very large move, a plain call keeps the upside open, at a higher cost and with more time decay.

What is the breakeven of a bull call spread?

The lower strike plus the net debit. Buying the 24,000 call and selling the 24,300 call for a ₹125 debit puts breakeven at 24,125 at expiry.

Is a bull call spread risky?

The most you can lose is the net debit, which you know at entry. You can lose all of it if the underlying finishes below the lower strike, so size each trade as if that will happen.

Do I need margin for a bull call spread?

Yes, beyond the premium. Brokers block margin on the short call; on Zerodha’s SPAN calculator on 4 November 2026 that was about ₹31,000 per Nifty lot for a 300-point spread.

Weekly or monthly expiry for a bull call spread?

Nifty weeklies (Tuesday expiry, as of November 2026) give a view only days to play out and decay fast; monthlies give it weeks. Match the expiry to how long your signal usually takes to work, which a backtest can tell you.

Describe your strategy. Backtest it in minutes.

Start on the free plan — AI strategy builder and NSE backtesting included, no card required.

Free · No card

Create your account

By continuing you agree to our Terms and Privacy Policy.