Summary¶
Computes the net expected value of an iron condor (short put spread + short call spread) held to the plan exit, over five expiry regions, with an explicit four-leg cost model and the mandatory baseline comparators. Blessed code per the EV contract.
Computation¶
EV = Σ over regions {below long put, put body, OTM band, call body, above long call} P(regionᵢ)·payoffᵢ − commissions − slippage.
Pseudo-formula:
net_credit = (short_put_px − long_put_px) + (short_call_px − long_call_px)
max_loss = max(wing_put, wing_call) − net_credit # the WIDER wing: at expiry at most one side is ITM
P(band) = P(short_put < S_T < short_call) real-world (GARCH/HAR, fat tails)
ev_gross = P(band)·net_credit − P(break)·E[partial loss]
costs = 4·fee_per_contract·n + slippage_pct·net_credit·100·n
ev_net = ev_gross − costs / (100·n)
baseline_vrp = iv − rv_window # variance risk premium, annualized vols
baseline_ev_rv = SAME structure's EV under the RV distribution (rv_window)
edge_vs_rv = ev_net − baseline_ev_rv
Parameters¶
| Name | Type | Req | Notes |
|---|---|---|---|
| spot | number | yes | underlying price at evaluation |
| iv | number | yes | blended IV at evaluation |
| dte | integer | yes | days to expiration (TOMIC-style ~60) |
| short_put / long_put | number | yes | lower short strike and wing |
| short_call / long_call | number | yes | upper short strike and wing |
| skew_put / skew_call | number | no | per-side IVs when the feed provides them |
| contracts | integer | no | size, default 1 |
| fee_per_contract | number | no | per leg per contract; four legs |
| slippage_pct | number | no | fraction of net credit; wide structures slip more |
| rv_window | number | yes | annualized real-world realized vol estimate (fail-closed) |
| garch_forecast | number | yes | annualized GARCH-class real-world vol forecast (fail-closed) |
What It Reports¶
ev_net, ev_gross, net credit, max loss, prob_otm_band, total_costs, baseline_vrp, baseline_ev_rv, edge_vs_rv, and a receipt for the run-ev skill. Condor EV is dominated by the tail-region probability model — see limitations.
Limitations¶
The physical distribution is lognormal under the GARCH forecast (garch_forecast) with equity-premium drift (r + 4% equity risk premium; dividends do not enter the index-price drift for total-return-ignored index options); region probabilities are exact lognormal CDF differences. A pure lognormal still understates both tails relative to the empirical density — fat-tailed, skew-aware density is TODO(data-feed). Early assignment on short ITM puts and exit management (TOMIC closes at 50–60% of credit) are not modeled. Context: condor setup, volatility selling.
References¶
- Chen & Sebastian, The Option Trader's Hedge Fund (Wiley, 2012) — iron condor playbook.
- Natenberg, Option Volatility and Pricing (McGraw-Hill, 1994) — vol selling and skew.
- Cont, R. (2001). Empirical properties of asset returns: stylized facts and statistical issues. Quantitative Finance, 1(2), 223–236.
- py_vollib documentation — https://py_vollib.readthedocs.io/