Earnings IV-Crush Engine
What this engine does
The earnings engine sells defined-risk premium into the IV ramp that happens before a scheduled earnings release, harvesting the volatility crush that follows the report. The thesis: implied vol bid into earnings consistently overprices the realized move, and selling that premium has edge over many repetitions.
The expiry chosen must be strictly after the earnings date: never an expiry that contains earnings inside its life and extends past. If the only expiry in the DTE window falls before earnings, the engine skips. The entire point is to be holding through the crush, not into it.
Entry timing follows IV Rank, not a fixed number of days before the report. The engine may enter a full week out or just two days out, depending on when IV crosses the 50 threshold. Size is intentionally smallest here, since this is a binary overnight event, and position count matters more than per-trade size.
Entry conditions
- Confirmed earnings date inside a usable window, sourced from the tastytrade earnings calendar.
- IV Rank ≥ 50 on the underlying at the time of evaluation.
- Entry proximity: the report must be within entry_max_days_before_earnings days (default 3), this is what actually controls how close to the event the trade opens; the DTE band alone no longer forces early entry.
- Expiry strictly after the earnings date, within the configured DTE band.
- Liquid options chain: defined-risk wings must have tight bid/ask at the proposed strikes.
- Position size capped per-trade at a smaller fraction than mechanical, because each earnings trade is binary.
- Risk layer clears: VIX kill switch, sector cap, position count cap.
Exit rules (priority order)
- Profit target hit: close at 50% of max profit. After the crush, this typically fires the morning after earnings.
- Tested-side defense: if the underlying gapped through a short strike, the roll engine evaluates; defined-risk earnings positions usually close rather than roll.
- News gate fires: a high-confidence post-earnings headline can force a close.
- Post-report close: the position holds through the report and closes the following session, regardless of P&L.
When to use it / when to disable it
Use it: when you want exposure to the most-documented edge in options premium selling: the consistent overpricing of earnings vol. Best when earnings season is in full swing.
Disable it: during personal time off when you do not want gap risk in the account, or if you want to limit the bot to non-binary trades only.
Naked variants (uncovered puts) are allowed only when explicitly enabled per-symbol, at 16 delta (approximately one standard deviation beyond the expected move). Off by default. The default is always defined-risk.
Settings that control this engine
- earnings_entry_trigger_iv_rankearnings-entry-trigger-iv-rank
- earnings_target_dte_minearnings-target-dte-min
- earnings_target_dte_maxearnings-target-dte-max
- earnings_entry_max_days_before_earningsentry-max-days-before-earnings
- earnings_defined_risk_short_deltaearnings-defined-risk-short-delta
- earnings_spread_widthearnings-spread-width
- earnings_naked_symbolsearnings-naked-symbols