Options Spread Backtest on SPY & SPX

Job ID: 38971505

Budget: $250 – $750 USD

I'm looking for a proficient quant trader or developer to build a backtest strategy using QuantConnect or a similar tool. The focus will be on options spreads, specifically calendar spreads with management, on SPY and SPX.

Key responsibilities:
- Design a backtest strategy targeting options on SPY and SPX.
- Concentrate on implementing and testing option spread strategies.
- Utilize QuantConnect or an equivalent tool for backtesting.

Ideal candidates should have:
- Extensive experience with options trading and strategy development.
- Proficiency in using backtesting tools, preferably QuantConnect.
- Strong understanding of calendar spreads, iron condors and other option spreads.
- Ability to deliver a comprehensive backtest strategy.

Deliver backtesting script at the end of the project. final payment after approval of the script working as expected

Initial Project description:
Global requirements:

All options expirations on Fridays

Abbreviations:

BTC Buy to Close
BTO Buy to Open
STO Sell to Open
STC Sell to Close
P/L profit/Loss

Required index: SPY
Options index: SPX

Parameters (with example values):

lowVIX (15)
highVIX (20)
trade time (1pm)
longhigh (10)
longlow (10)
shorthigh (5)
shortlow(5)
start date (1/1/2022)
end date (1/1/2024)
LEAP Date (400 days DTE)
Near DTE (14 days)
Manage DTE (1 days)
Correction DTE (5 days)
ITM value (10)

From “start date” check daily till “LEAP Date” – “Near DTE”

If (VIX < “lowVIX”)
On “trade time” open position:

10*BTO call on SPY: strike = current value + “longhigh” expiration date = “LEAP date” at “mid price”
10*BTO put on SPY: strike = current value - “longlow” expiration date = “LEAP date” at “mid price”
1*STO call on SPX: strike = current value - “shortlow” expiration date = “Near DTE” at “mid price”
1*STO put on SPX: strike = current value + “shorthigh” expiration date = “Near DTE” at “mid price”

Calculate intermediate P/L


If position opened (exists), monitor daily at “trade time”:

If VIX < lowVIX
If (short call strike < current SPY - “ITM value”) or (short put strike > current SPY - “ITM value”) or (expiration <” Manage DTE”)

Manage:
1* BTC Short Call
1* BTC Short Put
1* STO Call on SPX: strike = current value - “shortlow” expiration date = “Near DTE” at “mid price”
1* STO Put on SPX: strike = current value + “shortlow” expiration date = “Near DTE” at “mid price”
Calculate intermediate P/L


If VIX > highVIX or expiration >” Manage DTE” -> wait for next day

After “LEAP Date” calculate total strategy P/L
Related categories: Python Backtesting