Skip to content
All strategies

Strategies

SPY Option-Expiration-Week Long / Post-Expiration-Week Short (Stivers-Sun OpEx cycle), fixed-parameter replication on USEQ 1-DAY 1993-2026

Outcome: Abandoned

SpyOpexWeekLongPostOpexShort

Outcome Summary

SpyOpexWeekLongPostOpexShort was meant to test the published option-expiration-week effect on 33 years of SPY, going long through each OpEx week and short through the week after, with no tuning. The code never passed verification: across 3 iterations it kept failing the Layer 1.5 hypothesis/config consistency check because the optimization_plan fixes leverage at 1.0. The run was abandoned in that verification loop, so it never reached backtesting, optimization, analyst review or risk review. The falsification test the hypothesis promised was never carried out.

Hypothesis

Restates QuantConnect's 'Option Expiration Week Effect' (Strategy Library #102, from Quantpedia and Stivers & Sun, 'Returns and option activity over the option-expiration week for S&P 100 stocks', JBF 2013). The source buys OEF (S&P 100 ETF) at the start of the week that ends on the monthly equity-option expiration (third Friday, or the Thursday before it when that Friday is an exchange holiday) and holds cash otherwise. OEF is not in our USEQ universe, so this hypothesis uses SPY.USEQ (S&P 500 ETF, 1-DAY bars,……Show moreShow less

Restates QuantConnect's 'Option Expiration Week Effect' (Strategy Library #102, from Quantpedia and Stivers & Sun, 'Returns and option activity over the option-expiration week for S&P 100 stocks', JBF 2013). The source buys OEF (S&P 100 ETF) at the start of the week that ends on the monthly equity-option expiration (third Friday, or the Thursday before it when that Friday is an exchange holiday) and holds cash otherwise. OEF is not in our USEQ universe, so this hypothesis uses SPY.USEQ (S&P 500 ETF, 1-DAY bars, catalog span 1993-01-29 to 2026-09-30). SPY is the most heavily optioned underlying in the world, so the mechanism, if real, should be at least as strong there. Stivers & Sun also report the opposite drift in the week AFTER expiration, so the second leg (short SPY through the post-OpEx week, which Reg-T margin allows) is part of the same documented cycle. It makes the strategy long-short and doubles the sample. HONEST CAVEAT: lesson L179 lists option/VIX-expiry windows among date-keyed calendar effects that have died in the factory: SVXY pre-VIX-settlement (overfit, Sharpe 0.45) and ETH Deribit post-expiry fade (negative expectancy, 385 trades). The two differences here are the sample and the tuning. 33 years of SPY gives ~396 OpEx weeks plus ~396 post-OpEx weeks, ~790 trades, against the ~100-385 of the dead variants. And there is ZERO tuning: the plan has no tunable parameters, so there is nothing to search and the deflation step sees N=1. This is a one-shot falsification test of a published effect, not a search. If the fixed rule is not clearly positive, the family is closed for US equities as well.

The user's idea is concrete (type a), so it is replicated, not reinvented. I swapped OEF for SPY because OEF is not in config/us_equities_universe.txt, while SPY 1-DAY covers 1993-2026 in the catalog. USEQ (5.0%) and long-short (15.7%) are both under-represented, and the corpus is 63% BINANCE. I added the post-OpEx short leg because it comes from the same cited paper and puts a long-short bucket on the table. Lesson L179 argues against any calendar trigger. I keep the proposal only because the sample is 3-8x larger than the dead variants and the test has zero tunable degrees of freedom, so it cannot overfit. The success criteria are deliberately modest (OOS Sharpe 0.4). Priority 2 reflects the strong prior that the effect has decayed.

verification_loop: Verification failed (Layer 1.5 — hypothesis/config consistency) [class=hypothesis_mismatch]: - optimization_plan fixes leverage at 1.0

Implementation

Buys SPY for monthly option-expiration week, then shorts SPY for five trading sessions after expiration, with a 6% catastrophic stop.

The strategy code is unchanged. Setting config leverage to the research plan’s fixed 1.0 addresses the reported Layer 1.5 mismatch.

Verification Results

Verification failed (Layer 1.5 — hypothesis/config consistency) [class=hypothesis_mismatch]: - optimization_plan fixes leverage at 1.0

Outcome Summary

Before coding, make sure the strategy config's leverage agrees with the hypothesis's optimization_plan (which fixes leverage at 1.0), so a mechanical consistency mismatch does not block a test that has no tunable parameters.

It was abandoned in a verification loop after 3 iterations, failing Layer 1.5 (hypothesis/config consistency, class=hypothesis_mismatch) with the issue 'optimization_plan fixes leverage at 1.0'.

A fixed-parameter, zero-tuning replication of the Stivers & Sun option-expiration cycle on SPY.USEQ daily bars (1993-2026): long SPY through the monthly OpEx week and short it through the post-OpEx week, as a one-shot falsification test of a published calendar effect.

No performance was measured: the backtest report is empty and no optimization report exists, so there are no return, Sharpe or trade-count figures.

Analysis

Option Expiration Week Effect

Backtest and paper results are hypothetical. Trading involves risk of loss.