Buy ATM call + sell ATM put — replicates stock ownership with options.
| Parameter | Default | Description |
|---|---|---|
| dte | 45 | Days to expiration |
A synthetic long buys an ATM call and sells an ATM put at the same strike and expiration, replicating the payoff of owning the underlying stock. The net debit is small (call premium minus put premium). It provides full upside participation and full downside exposure, just like owning the stock, but with less capital tied up. Backtested with 45 DTE cycles, P&L expressed as a percentage of the underlying entry price.
# Synthetic Long: buy ATM call + sell ATM put
for entry in monthly_entries:
S = spot_at_entry
K = round(S / 5) * 5 # ATM strike
T = 45 / 365.25
call_prem = black_scholes_call(S, K, T, r, sigma)
put_prem = black_scholes_put(S, K, T, r, sigma)
net_debit = call_prem - put_prem # small, near zero
S_exp = spot_at_expiry
call_payoff = max(0, S_exp - K)
put_loss = max(0, K - S_exp)
pnl = call_payoff - put_loss - net_debit
pnl_pct = pnl / S * 100| Symbol | Return % | Sharpe | Max DD % | Win % | Avg/trade % | Trades |
|---|---|---|---|---|---|---|
| SPY | +45.9% | 0.46 | +17.1% | +79.0% | +2.4% | 19 |
| QQQ | +51.6% | 0.39 | +22.3% | +68.4% | +2.7% | 19 |
| IWM | +46.2% | 0.30 | +37.6% | +63.2% | +2.4% | 19 |
| DIA | +41.1% | 0.47 | +16.3% | +68.4% | +2.2% | 19 |
| Avg | +46.2% | 0.41 | +23.3% | +69.7% | — | 19 |