← Lab
S033

Rolling-income covered call on a held ETF (buy-write pillar)

roll-income-covered-call-etf-v1
passed Stage 1 (modeled screen — forward-pending) 2026-07-02
Share: Twitter / X LinkedIn

ID: S033 Slug: roll-income-covered-call-etf-v1 Run date: 2026-07-02 Stage: Stage 1 (modeled screen — forward-pending) Outcome: SPLIT, and a low-confidence one. DIA Δ30/Δ20 mechanically clear the frozen gate; QQQ Δ30/Δ20 are cut on the absolute 50% drawdown ceiling. But the DIA "pass" is dominated by a flat-IV modelling artifact — the modelled overwrite appears to beat the held index by ~5pp/yr, which is not credible for a covered call, and a realistic skew haircut removes most of it. So no edge is claimed: this is forward-only, not live, not promoted. Headline metric: flat-IV excess +5pp CAGR → +1.5pp after a 3-vol-pt skew haircut (skew-sensitive)

Positioning — honestly. Same low-alpha, risk-reducing (not tail-protected) character as S032, applied to a permanently-held ETF. On this modelled screen no edge is claimed — the apparent gain is largely a flat-IV artifact (see the skew-haircut exhibit). It is not low-risk in absolute terms: the full downside is retained, and on QQQ the permanent-hold tail (−82% in the dot-com crash) is exactly why those cells are cut. Forward-only; nothing live or promoted.

What we tested

The continuous / rolling variant deferred by S032. Where S032 writes one call and closes the whole position at expiry (episodic), S033 keeps the ETF permanently and writes a new ~30-DTE call every cycle — the covered call marketed to retail as "income". The core is established on the S027 RSI-2 pullback with a 4-unit cap and never sold (so the first few dips build the holding, after which entry timing is near-vacuous — a permanent holding is nearly start-date-independent by construction). Each cycle: write a call at the cell's delta, hold to expiry, keep the unit, cash-settle if in-the-money, immediately re-write. Fully invested / reinvested (BXM-style total return), net of friction on every write. The option leg is modelled (Black-Scholes fed with VXD/VXN as ATM IV). Matrix: DIA/QQQ × delta {30, 20} — four cells, four pillar trials (cumulative → 10).

Gate (frozen, risk-adjusted): Sortino(overwrite book) > Sortino(held-ETF baseline), max-drawdown (DD) ≤ the held baseline and ≤ an absolute 50% catastrophe ceiling.

What we found

Cell CAGR (flat-IV) CAGR (−3 vol skew) Sortino flat / skew vs held Max-DD Cap-hit Gate
DIA held, no call 8.7% 0.53 52%
DIA · Δ30 14.0% 10.2% 0.84 / 0.64 +0.31 37% 32% clears
DIA · Δ20 13.6% 10.7% 0.79 / 0.64 +0.26 43% 15% clears
QQQ held, no call 8.6% 0.43 82%
QQQ · Δ30 14.4% 10.5% 0.66 / 0.52 +0.24 68% 36% cut (50% ceiling)
QQQ · Δ20 14.4% 11.4% 0.64 / 0.54 +0.22 73% 17% cut (50% ceiling)

Two things are true at once. Mechanically, the DIA cells clear the frozen gate — higher Sortino, lower drawdown than just holding. But the magnitude is not trustworthy: the flat-IV overwrite beating the index by ~5pp/yr contradicts every real covered-call index (BXM/BXY historically match or lag the S&P), and the skew-haircut column shows why — most of the excess is premium the model over-collects because it prices OTM calls at ATM volatility, every cycle. The residual after a modest haircut (+1.5pp, Sortino 0.53→0.64 on DIA) is within the plausible variance-risk-premium range but swings wildly with the assumed skew, which only real chains can settle.

What we learned

The modelled result is dominated by a flat-IV artifact: pricing every out-of-the-money call at the at-the-money volatility index over-collects premium, and over hundreds of rolling cycles that error compounds into an implausible ~5pp/yr edge over the held index — which contradicts every real covered-call index (BXM/BXY historically match or lag the S&P). A modest 3-vol-point skew haircut removes about two-thirds of it (DIA Δ30 falls from +5.3pp to +1.5pp). The residual is within the plausible variance-risk-premium range but swings wildly with the assumed skew. The clean lesson: a rolling covered call cannot be validated on a flat-IV model — the modelling error is larger than the effect it is meant to measure.

Why QQQ is cut

The gate's absolute 50% drawdown ceiling exists precisely for this. A permanently-held QQQ position spanning 2000–02 drew down 82%; the monthly call trims that to ~68–73%, still far past a level any allocator would hold through. The call cushions by roughly the premium — it is not tail protection — so it cannot convert an uninvestable buy-and-hold tail into an investable one. That is the honest structural limit of the covered call, and it is why the left-tail overlay (collar / protective put) is a separate, distinct structure on the roadmap.

What this doesn't tell us yet

Because the surviving edge is skew-sensitive — it swings from "beats the index by 5pp" to "roughly matches with a small risk-adjusted tilt" under a plausible haircut — it cannot be pinned down without real option chains (real implied volatility, skew, fills, rolls). So this modelled screen says nothing reliable about the after-skew magnitude; only a forward test on real chains can settle it.

What happens next

No edge claimed. The rolling-income covered call cannot be validated on a modelled screen — flat-IV overstatement compounds every cycle and dominates the result, and a plausible skew haircut is enough to swing it from "beats the index by 5pp" to "roughly matches with a small risk-adjusted tilt". The DIA cells' mechanical pass moves to forward-paper (Stage 3) with real chains — real IV, skew, fills, and rolls — where the premium is what the market actually pays, not what flat ATM IV imagines. The QQQ cells are cut. Nothing here is live or promoted.

What we tested — the recipe

What we tested — rolling-income covered call on a held ETF
own the ETF permanently, write a fresh ~30-DTE call every cycle, forever
Core — buy DIA/QQQ on the S027 RSI-2 dip, cap 4 units, NEVER sellheld foreverOverwrite — write a ~30-DTE call at target delta, hold to expiryΔ 30 / 20Roll — at expiry keep the unit, cash-settle if ITM, re-write nextcontinuousFriction — 30 bps stock once + 1% of premium every writenet of costsGate: Sortino(overwrite) > Sortino(held) AND max-DD ≤ held & ≤ 50% · DIA 1998 / QQQ 2000 → 2026
Option leg MODELED with flat ATM IV — overstates the premium EVERY cycle, so the modeled income is an upper bound; a modeled fail is robust. Baseline = the same held units, no call.

Slice & dice

CAGR — held vs overwrite (flat-IV vs skew-haircut) — DIA
held ETF 8.7% (leftmost); the flat-IV overwrite 'beats' it only because ATM IV overstates the premium every cycle
heldΔ30 flatΔ30 −3vΔ20 flatΔ20 −3vflat = 11
The flat-IV overwrite appears to beat the held ETF by ~5pp — implausible for a covered call (real BXM/BXY match or lag the index). A 3-vol-point skew haircut on the write IV (OTM calls trade below ATM) cuts most of that excess away, leaving a small, skew-assumption-sensitive residual — which is exactly why this is forward-only.
CAGR — held vs overwrite (flat-IV vs skew-haircut) — QQQ
held ETF 8.6% (leftmost); the flat-IV overwrite 'beats' it only because ATM IV overstates the premium every cycle
heldΔ30 flatΔ30 −3vΔ20 flatΔ20 −3vflat = 11
The flat-IV overwrite appears to beat the held ETF by ~5pp — implausible for a covered call (real BXM/BXY match or lag the index). A 3-vol-point skew haircut on the write IV (OTM calls trade below ATM) cuts most of that excess away, leaving a small, skew-assumption-sensitive residual — which is exactly why this is forward-only.
Cumulative P&L at equal capital — DIA (overwrite Δ30)
overwrite CAGR 14.0% (DD −37%, Sortino 0.84) vs held 8.7% (DD −52%, Sortino 0.53)
0.9x2.2x5.6x14.2x36.0x199820002002200420062008201020122014201620182020202220242026overwrite (rolling call)held ETF — same capital
Growth of $1, net of costs, log scale. Same permanent holding either way — the only difference is the continuously-written call. On a trending index the cap surrenders the big up-moves, so the overwrite trades raw return for whatever risk reduction it buys.
Cumulative P&L at equal capital — QQQ (overwrite Δ30)
overwrite CAGR 14.4% (DD −68%, Sortino 0.66) vs held 8.6% (DD −82%, Sortino 0.43)
0.2x0.7x2.6x9.5x34.1x20002002200420062008201020122014201620182020202220242026overwrite (rolling call)held ETF — same capital
Growth of $1, net of costs, log scale. Same permanent holding either way — the only difference is the continuously-written call. On a trending index the cap surrenders the big up-moves, so the overwrite trades raw return for whatever risk reduction it buys.

Methodology appendix — gates, exact parameters, look-ahead audit — is visible to subscribers. See the plans →

← OlderRolling-income covered calls on a held ETF Newer →Mean-reversion on cointegrated ETF pairs

Mechaniq provides information, not investment advice. We do not execute trades. Past results are no guarantee for future performance. You are solely responsible for your trading decisions.

Lab · Methodology · Greeks Lab · About · FAQ · Glossary · Privacy · Terms · mechaniq.trade © 2026

21 Aug 2026, 09:08