CC Income Manager
● CACHED CHAINS · 0h
GENERATEDSep 03, 2026 21:47
Insight 2 candidates from the cc_scanner scan Sep 03, 21:32 · 0h ago (fortress_rebuild cc_picks as fallback). Coverage + CC-SS from the fortress_rebuild scan · Sep 03, 21:46 · 0h ago. Insight 1 marks: live.
Sep'26 INCOME · CC + PUTS + INTEREST
floor $30,000 · ideal $50,000 · stretch $100,000 · 28 days left · ahead of pace
$4,602 interest
$4,815 booked
$21,418 pipeline
floor $30k
ideal $50k
dark teal = interest posted (last month's accrual, cash now) · solid = booked CC income · faded = projected pipeline (open CCs, net-adj)
⚡ For action — close 2 CCs · bank $1,212
AMD 475C x2 · Neville · bank $999INTC 96C x5 · Neville · bank $214
Goal tracker - active target: Sep'26
| Month | Gross | Net-adj | Gap to ideal |
|---|
| Sep'26 projected | $37,985 | $26,233 | $23,767 |
| Oct'26 forecast | $-5,246 | $-5,751 | - |
Ties to the headline: Net-adj $26,233 + $4,602 posted interest = $30,835 above. The tracker counts CC + put income only; interest stays out so the graded ledger stays clean.
The forward (open-CC) premium is GROSS - it assumes every open call expires worthless. Historically only 65% is kept (the rest is bought back when stocks run), so the Net-adj column haircuts the forecast to match the realized number. The haircut applies to premium you COLLECTED only: a leg opened at a net debit (a roll-up cost) is money already spent, so it carries into Net-adj at full weight rather than being shrunk by a keep rate that has nothing to buy back. Gap is measured on Net-adj.
Tracking to goal - projected Sep'26 income
reaches idealfloor $30,000 · ideal $50,000 · stretch $100,000 (optional)
Capital engine: 15 up-rolls in the last 30d unlocked
$332,850 of cap headroom,
$186,214 already reclaimed by spot (gains the old caps would have forfeited). Part of the low income pace is that toll; velocity resumes as the rolled legs roll off. Unrealized, lives in portfolio MTM, never counted in these income totals.
per-ticker ledger ↓ Interest $4,602Booked $4,815
floor $30k
ideal $50k
stretch $100k
Tap any segment or chip to jump to its panel below. Interest = posted cash interest (last month's accrual) · Booked = realized this month (done, no forecast) · Pipeline = open CCs' remaining premium × historical keep · New CCs = Insight 2 sell-all ($3,951/mo full rate) × 28/30 days left = $3,688 · E[rollover] = held CCs re-written before month-end, income survival-weighted (expected value) · E[fight] = every UNCOVERED deep-drawdown name at fight's near-term safe-yield strike (the tenor you actually sell), valued at your historical keep rate and prorated like New CCs - counted since 2026-07-14 because it lands in actuals when sold (70% of July's realized came from deep names). Each term covers a DISJOINT set: Booked = done, Pipeline / E[rollover] = open CCs (this cycle / re-written), New CCs = uncovered safe, E[fight] = uncovered deep. (2b/2c below are FYI-only references - they feed nothing.)
Step A - 3-month income-CC behaviour
In plain English. Over the last 297 income covered calls you sold and closed, you came out even-or-ahead on 89%; only 34 “ran over” (the stock jumped past your strike, so you had to buy the call back at a loss). You hold each one about 6 days and keep about 65% of every premium dollar after the early buy-backs. That 65% “keep” is exactly what the forecast up top uses to turn gross premium (if every call expired worthless) into the realistic net number.
| Metric | Value |
|---|
| Closed CC round-trips | 297 (73 expired full / 224 bought back / 34 run over) |
| Avg time CC stays open | 6.4 days |
| Win rate (kept >= 0) / run-over rate | 89% / 11% |
| Typical premium given up (per bought-back CC) | $240 · mean $526 (skewed by a few big run-overs) |
| Give-up ratio (buyback / premium) | 32.8% dollar-weighted · typical trade gives back 20% (median, size-free) |
| Mean keep (blended) | 67% |
| Forecast keep (maturity-weighted month) | 65% only the 3 month(s) from 2026-06 count: earlier months predate the mature stack (FIGHT, CC-SS floors) and describe a book you no longer trade. Across all 6 months this would read 66%. |
Premium sold vs kept, by month
| Month | CCs | Sold | Bought back | Kept | Keep % |
|---|
| 2026-03 | 44 | $122,850 | $-23,660 | $99,190 | 81% |
| 2026-04 | 46 | $88,788 | $-15,516 | $73,272 | 83% |
| 2026-05 | 30 | $46,060 | $-15,587 | $30,473 | 66% |
| 2026-06 MATURE | 70 | $91,755 | $-32,072 | $59,683 | 65% |
| 2026-07 MATURE | 148 | $190,138 | $-70,261 | $119,877 | 63% |
| 2026-08 MATURE | 75 | $73,608 | $-14,550 | $59,058 | 80% |
| TOTAL | | $613,199 | $-171,646 | $441,553 | 72% |
Read the KEPT column, not the rate. The keep % is efficiency per premium dollar sold, not income. A quiet month where most calls simply expire scores a high rate on little money; an active month where you buy winners back early scores lower and can still bank far more. Only the mature months (from 2026-06) feed the forecast keep above.
Early-cover read: MODERATE - keeping ~67% of premium; some room to widen strikes.
Excluded 6 structural ticker(s) (net CC < 0 over all history = un-caps, not income): AVGO, CLSK, HOOD, IBIT, SOFI, UAMY. Removed from BEHAVIOUR stats only (income totals count them since the 2026-07 NET methodology), so the give-up ratio reflects genuine income-CC behaviour, not the cost of intentionally un-capping Fortress winners.
Window: last 3 months by close date. Run over = an income CC bought back at a net loss (stock ran past the strike). DBB / defensive un-caps are NOT counted here.
Premium needed to reach ideal
| Quantity | Value |
|---|
| Gap to ideal (Sep'26) | $23,767 |
| Gross premium to sell (grossed up 67%) | $35,369 |
| Avg CC hold | 6.4 days |
| Cycles that still fit this month | 4.3 |
Actuals by account - Sep'26 realized
| Account | Realized | Accruing MTD (info) | Share |
|---|
| Main | $2,092 | $2,322 | |
| RetireInc | $1,397 | $41 | |
| Neville | $1,016 | $122 | |
| Joint | $310 | $-635 | |
| TOTAL | $4,815 | $1,850 | |
Interest posted this month: $4,602 (last month's accrual as of Aug 31) → Realized + posted: $9,417
accruing now: $1,850 → posts next month
Realized NET income booked this Sep'26 (losses included). The sheet has no account column, so each closed trade is attributed via: exact strike held in an account this month (book + history, 6 matched). CSV fortress sizes are the truth for the qty fingerprint (MU 5 contracts = Main, 2 = Neville) and the pro-rata fallback. Accruing MTD = live IBKR AccruedCash per account (posts as cash next month); interest posted (footer, total only) = last month's final accrual, paid early this month. Interest never counts in CC income totals or projections.
Insight 1 - open CC / put book (29 open, 2 to close, bank $1,212, 3 to roll, 2 check rebuild)▾
| Ticker | Spot | Strike | CT | DTE | Surv | Collected | Outstanding | Exit Today | Action | Why |
|---|
| INTCNeville | 89.6 | 96.0C | 5 | Sep 041d | 97% | $261 | $48 | $214 | CLOSE | 82% banked - bank it |
| AMDNeville | 448.3 | 475.0C | 2 | Sep 041d | 96% | $1,084 | $85 | $999 | CLOSE | 92% banked - bank it |
| HIMSMain | 28.4 | 36.0C | 15 | Sep 1815d | 94% | $450dr | $248 | $-698 | hold | opened at a $450 debit, 94% safe |
| CRWVNeville | 80.1 | 93.0C | 5 | Sep 118d | 93% | $430 | $172 | $258 | hold | 60% banked, 40% to decay |
| IGVMain | 106.3 | 125.0C | 12 | Nov 2078d | 89% | $3,204dr | $1,272 | $-4,476 | hold | opened at a $3,204 debit, 89% safe |
| COPXJoint | 90.2 | 100.0C | 20 | Sep 1815d | 88% | $220 | $1,300 | $-1,080 | hold | underwater, 88% safe |
| PATHMain | 18.8 | 23.0C | 35 | Sep 118d | 88% | $1,085 | $910 | $175 | hold | 16% banked, 84% to decay (off-roster) |
| MUJoint | 938.6 | 1050.0C | 1 | Sep 1815d | 86% | $1,650 | $960 | $690 | hold | 42% banked, 58% to decay |
| QCOMRetireInc | 166.8 | 180.0C | 5 | Sep 1815d | 82% | $920 | $792 | $128 | hold | 14% banked, 86% to decay |
| COINMain | 188.0 | 220.0C | 8 | Oct 0229d | 82% | $21 | $3,960 | $-3,939 | hold | underwater, 82% safe |
| MUMain | 938.6 | 1030.0C | 5 | Sep 1815d | 82% | $9,275 | $6,350 | $2,925 | hold | 32% banked, 68% to decay |
| MUNeville | 938.6 | 1030.0C | 2 | Sep 1815d | 82% | $3,710 | $2,540 | $1,170 | hold | 32% banked, 68% to decay |
| AMZNJoint | 258.9 | 267.5C | 5 | Sep 118d | 79% | $410 | $720 | $-310 | hold | underwater, 79% safe |
| GOOGNeville | 340.5 | 345.0C | 15 | Sep 041d | 78% | $1,324 | $1,523 | $-199 | hold | underwater, 78% safe |
| GOOGNeville | 340.5 | 345.0C | 5 | Sep 041d | 78% | $441 | $508 | $-66 | hold | underwater, 78% safe |
| GOOGJoint | 340.5 | 365.0C | 5 | Oct 1643d | 78% | - | $2,600 | - | hold | 78% safe |
| RKLBRetireInc | 64.8 | 69.0C | 6 | Sep 118d | 77% | $390 | $606 | $-216 | hold | underwater, 77% safe |
| SNDKNeville | 1522.5 | 1650.0C | 1 | Sep 1815d | 74% | $7,274 | $3,985 | $3,289 | hold | 45% banked, 55% to decay |
| MSTRRetireInc | 131.7 | 150.0C | 4 | Oct 1643d | 74% | $267 | $2,950 | $-2,683 | hold | underwater, 74% safe |
| MSTRJoint | 131.7 | 150.0C | 10 | Oct 1643d | 74% | $667 | $7,375 | $-6,708 | hold | underwater, 74% safe |
| GLDMain | 409.1 | 425.0C | 10 | Oct 0229d | 72% | $5,040dr | $5,875 | $-10,915 | hold | opened at a $5,040 debit, 72% safe |
| IRENMain | 39.8 | 42.0C | 20 | Sep 118d | 71% | $920 | $1,940 | $-1,020 | hold | underwater, 71% safe |
| IRENJoint | 39.8 | 42.0C | 20 | Sep 118d | 71% | $920 | $1,940 | $-1,020 | hold | underwater, 71% safe |
| METAMain | 618.8 | 665.0C | 3 | Nov 2078d | 68% | $438 | $9,615 | $-9,177 | hold | underwater, 68% safe |
| IRENNeville | 39.8 | 40.0C | 20 | Sep 041d | 55% | $500 | $1,620 | $-1,120 | CHECK REBUILD | 55% safe + underwater - rebuild: WAIT (MARGINAL) (cc expiring high touch) |
| IRENRetireInc | 39.8 | 40.0C | 20 | Sep 041d | 55% | $500 | $1,620 | $-1,120 | CHECK REBUILD | 55% safe + underwater - rebuild: WAIT (MARGINAL) (cc expiring high touch) |
| DELLRetireInc | 486.8 | 485.0C | 3 | Sep 041d | 48% | $1,254 | $3,112 | $-1,858 | ROLL | ITM run-over - roll, don't realize |
| NOWMain | 144.9 | 140.0C | 10 | Oct 1643d | 46% | $1,130dr | $13,400 | $-14,530 | ROLL | ITM run-over - roll, don't realize |
| NEMMain | 127.4 | 125.0C | 5 | Sep 1815d | 43% | $200dr | $2,812 | $-3,012 | ROLL | ITM run-over - roll, don't realize |
CLOSE = you have banked >= 80% of the premium - lock the win and free the shares (the last sliver is not worth the pin/tail risk), OR a still-OTM call whose survival has fallen below 67% (cut it before it breaches). ROLL = already ITM and losing: the LEAPS defends it, so roll up/out (see roll_calls) rather than realize the loss. CHECK REBUILD = still OTM but deteriorating AND underwater: closing would realize the loss, and roll-vs-cut on a fortress is fortress_rebuild's call - the row mirrors rebuild's own routing so you see its answer here. ACT TODAY = expires today ITM: buy back or roll before the close. Everything else HOLDS - a safe call with real premium still decaying to you. The decision is about THIS call's own premium, not whether a fresh CC exists (you find those in Insight 2). Surv colours mark the two levels that actually do something: red below 67% (holding has gone -EV, so the verdict flips), amber up to 80% (safe to hold, but you could not write this strike today), green at/above the 80% write floor.
Insight 2 - CCs to sell, ALL available contracts (DTE 5-30, survival >= 80%)▾
| Ticker | Spot | CC-SS | Strike | DTE | Surv | Sell all |
|---|
| SPYNeville | 768.4 | 702.1 | 776.0 | Sep 096d | 82% | |
Sell all: 12 contract(s) on 1 ticker(s) → $922/wk · $3,951/mo · blended surv 82% · ✓ floor · ✗ ideal
ONE view (per Abhi, 2026-07-10): sell every available contract at each fortress's income pick - the projection's New-CCs term uses exactly this number. Cell shows monthly / weekly income and contracts. CC-SS is the scalar safe floor; every strike passed fortress_rebuild's per-expiry exit-model safety check.
NOT BEING SOLD
| Ticker | Reason |
|---|
| SPCXNeville | deep drawdown (safe floor 32% above spot) |
| APPRetireInc | deep drawdown (safe floor 87% above spot) |
| GLXYMain | deep drawdown (safe floor 39% above spot) |
Deferred by CSV - 9 fortresses skipped (income deferred upstream)▾
| Fortress | LC | CT | Half-max cap | Tag | Net / mo (deferred) |
|---|
| BMNRMain | 25 | 50 | 25 of 50 | Half Max; Skip | deferred upstream |
| BMNRMain | 23 | 75 | 37 of 75 | Half Max; Skip | deferred upstream |
| BMNRJoint | 23 | 150 | 75 of 150 | Half Max; Skip | deferred upstream |
| CLSKRetireInc | 17 | 25 | - | Skip | deferred upstream |
| ENPHRetireInc | 45 | 10 | - | Skip | deferred upstream |
| ETHAMain | 13 | 50 | - | Skip | deferred upstream |
| IBITJoint | 75 | 50 | - | Skip | deferred upstream |
| MARAMain | 13 | 400 | - | Skip | deferred upstream |
| MARARetireInc | 40 | 500 | - | Skip | deferred upstream |
Income deferred: $0 / mo · NOT in the projection
These fortresses carry Skip; in the CSV Comments column, so they are held out of New CCs, E[rollover] and E[fight] - the projection forecasts income you will actually write, and you have deferred these. They are still fully live everywhere else: realized income, the Base pipeline and every buyback verdict in Insight 1 are unaffected, because those are about calls you ALREADY sold. The goal ($30,000 floor / $50,000 ideal) is deliberately NOT lowered to match - this is an income-for-safety trade and the number above is its price. Clear the tag in the CSV and the income returns on the next run.
Insight 2d - expected rollover income (held CCs re-written before Sep'26 end)▾
| Ticker | Spot | Strike | DTE | Surv | Contracts | Collected | Cycles | Gross | E[income] |
|---|
| MUMain | 938.6 | 1030.0 | Sep 1815d | 82% | 5 | $9,275 | 1.7x | $10,342 | $8,429 |
| SNDKNeville | 1522.5 | 1650.0 | Sep 1815d | 74% | 1 | $7,274 | 1.7x | $8,111 | $6,032 |
| MUNeville | 938.6 | 1030.0 | Sep 1815d | 82% | 2 | $3,710 | 1.7x | $4,137 | $3,372 |
| AMDNeville | 448.3 | 475.0 | Sep 041d | 96% | 2 | $1,084 | 3.7x | $2,619 | $2,520 |
| GOOG uwNeville | 340.5 | 345.0 | Sep 041d | 78% | 15 | $1,324 | 3.1x | $2,634 | $2,048 |
| PATH off-rosterMain | 18.8 | 23.0 | Sep 118d | 88% | 35 | $1,085 | 2.7x | $1,916 | $1,681 |
| MUJoint | 938.6 | 1050.0 | Sep 1815d | 86% | 1 | $1,650 | 1.7x | $1,840 | $1,573 |
| IREN uwMain | 39.8 | 42.0 | Sep 118d | 71% | 20 | $920 | 2.7x | $1,624 | $1,147 |
| IREN uwJoint | 39.8 | 42.0 | Sep 118d | 71% | 20 | $920 | 2.7x | $1,624 | $1,147 |
| QCOMRetireInc | 166.8 | 180.0 | Sep 1815d | 82% | 5 | $920 | 1.7x | $1,026 | $842 |
| CRWVNeville | 80.1 | 93.0 | Sep 118d | 93% | 5 | $430 | 2.7x | $759 | $706 |
| GOOG uwNeville | 340.5 | 345.0 | Sep 041d | 78% | 5 | $441 | 3.1x | $878 | $683 |
| IREN uwNeville | 39.8 | 40.0 | Sep 041d | 55% | 20 | $500 | 3.7x | $1,208 | $665 |
| IREN uwRetireInc | 39.8 | 40.0 | Sep 041d | 55% | 20 | $500 | 3.7x | $1,208 | $665 |
| INTCNeville | 89.6 | 96.0 | Sep 041d | 97% | 5 | $261 | 3.7x | $631 | $609 |
| AMZN uwJoint | 258.9 | 267.5 | Sep 118d | 79% | 5 | $410 | 2.7x | $724 | $573 |
| RKLB uwRetireInc | 64.8 | 69.0 | Sep 118d | 77% | 6 | $390 | 2.7x | $689 | $530 |
| COPX uwJoint | 90.2 | 100.0 | Sep 1815d | 88% | 20 | $220 | 1.5x | $215 | $189 |
Gross $42,184 → E[rollover] $33,411 to Sep'26 end
Held CCs are not dead weight: a covered name expiring before Sep'26 end frees its shares to be re-written. Cycles come from your real re-write cadence (STEP A median hold, ~6d), floored at a fresh CC's tenor (~7d) so a full weekly premium is never banked more than once a week. Income is expected value = collected × 65% keep × cycles × survival (you only re-write if you keep the shares), so there is no survival cliff - an uw (banked < 0) row simply carries a lower survival weight, not a different formula. Defensive and deep-drawdown names route to 2c instead.
Insight 3 - deep-drawdown income (near-term safe-yield; the E[fight] projection term)▾
| Fortress | Spot | CC-SS | Strike | vs CC-SS | DTE | Surv | CT | Rung | This cycle | Gross / mo | E[net] / mo |
|---|
| GLXYMain | 25.1 | 34.8 | 26.0 | ⚠ below | Sep 118d | 64% | 120 | 50% normal | $4,800 | $18,000 | $11,708 |
| SPCXNeville | 144.0 | 189.7 | 150.0 | ⚠ below | Sep 118d | 73% | 4 | 50% normal | $776 | $2,910 | $1,893 |
| APPRetireInc | 328.0 | 611.0 | 352.5 | ⚠ below | Sep 118d | 83% | 1 | 33% normal | $245 | $919 | $598 |
Deep-name income: $5,821 this cycle · gross $21,829 / mo → E[net] $14,199 / mo · 0 of 3 at/above CC-SS (safe)
Read from fortress_fight --all run Sep 03, 21:35 · 0h ago. THE panel for every uncovered deep-drawdown fortress, at the near-term safe-yield strike you actually sell weekly (survival >= 90%). ✓ safe = strike at/above CC-SS (assignment wouldn't lock a loss); ⚠ below = below CC-SS (assignment locks a loss - the risk you accept for the near-term tenor). This E[net] IS the projection's E[fight] term (prorated): you sell it, it lands in actuals. This cycle = the gross cash you collect on THIS sale (bid × 100 × contracts). Gross/mo is that ×(30/DTE), so a 2-3 DTE rung is a ×10-×15 extrapolation that assumes you re-sell it all month. E[net]/mo = gross × your 65% historical keep rate, the same rate the Goal Tracker net-adjusts with. (It is NOT fight's own vol-edge EV: on 3-DTE penny strikes that number is a difference of two near-equal pennies ×10 proration, so a single IV tick swung it $64k→$22k on an unchanged bid.) Skipped: names whose live book shows an open call (already in Base/E[rollover]). The 45-DTE at/above-CC-SS alternative is FYI in Insight 2c below. Trade plan / escape doors live on the FIGHT dashboard.
FYI / reference · not counted in the projection
FYI 2b - max-safety alternative (same contracts, safest strikes; not counted)▾
| Ticker | Spot | Strike | DTE | Surv | Contracts | Net / mo |
|---|
| SPYNeville | 768.4 | 782.0 | Sep 107d | 93% | 12 | $1,210 |
Max-safety alternative (swap, not add): $1,210
The SAME contracts as Insight 2, at the SAFEST strike (highest survival) whose whole-position income still clears $1,000/mo (a fixed ‘worth writing’ bar). Measuring the total, not per-contract premium, lets a big position reach a deeper, safer strike while still material. An alternative allocation for when you would rather maximise survival than income - a SWAP versus Insight 2, never additive (same inventory). Positions that can't clear the floor at any strike, or whose income pick already is the safest, are omitted.
FYI 2c - safe recovery strikes (at/above CC-SS, up to 45 DTE; not counted)▾
| Ticker | Spot | CC-SS | Strike | DTE | Surv | Contracts | Gross / mo | Net / mo |
|---|
| GLXYMain | 24.9 | 34.7 | 35.0 | Oct 1643d | 91% | 125 | $2,878$4,125/cycle | $1,934 |
Recovery income: gross $2,878 → net-adj $1,934 / mo
FYI ONLY - not counted in the projection. The fully safe alternative: the best CC at/above CC-SS out to 45 DTE that still pays >= 1000/cycle. Safe by construction (assignment can't lock a loss), but the tenor is far out - you sell these names near-term instead (see Insight 3, which IS counted). Kept here so you can see which deep names have a safe strike available. Income = 30/DTE monthly rate; Net / mo applies the keep haircut.
Escape hatches - cap headroom ledger▾
| Ticker | Old cap | Rolled to | Ct | Spot | Headroom $ | Banked by roll $ | Status |
|---|
| COINMain | 160C | 220COct 02 · 29d | 8 | 188.0 | $48,000 | $22,400 | through old cap |
| GLDMain | 377C | 425COct 02 · 29d | 10 | 409.1 | $48,000 | $32,050 | through old cap |
| MSTRJoint | 105C | 150COct 16 · 43d | 10 | 131.7 | $45,000 | $26,680 | through old cap |
| NOWMain | 104C | 140COct 16 · 43d | 10 | 144.9 | $36,000 | $40,880 | through old cap |
| IGVMain | 97C | 125CNov 20 · 78d | 12 | 106.3 | $33,600 | $11,184 | through old cap |
| COPXJoint | 85C | 100CSep 18 · 15d | 20 | 90.2 | $30,000 | $10,480 | through old cap |
| METAMain | 570C | 665CNov 20 · 78d | 3 | 618.8 | $28,500 | $14,631 | through old cap |
| MSTRRetireInc | 105C | 150COct 16 · 43d | 4 | 131.7 | $18,000 | $10,672 | through old cap |
| MUMain | 1000C | 1030CSep 18 · 15d | 5 | 938.6 | $15,000 | $0 | headroom only |
| NEMMain | 100C | 125CSep 18 · 15d | 5 | 127.4 | $12,500 | $13,690 | through old cap |
| MUNeville | 1000C | 1030CSep 18 · 15d | 2 | 938.6 | $6,000 | $0 | headroom only |
| HIMSMain | 33C | 36CSep 18 · 15d | 15 | 28.4 | $4,500 | $0 | headroom only |
| GOOGJoint | 357.5C | 365COct 16 · 43d | 5 | 340.5 | $3,750 | $0 | headroom only |
| DELLRetireInc | 475C | 485CSep 04 · 1d | 3 | 486.8 | $3,000 | $3,547 | through old cap |
| CRWVNeville | 91C | 93CSep 11 · 8d | 5 | 80.1 | $1,000 | $0 | headroom only |
| AMDNeville | 502.5C | 475CSep 04 · 1d | 2 | 448.3 | $-5,500 | $0 | net down over episode |
| SNDKNeville | 1900C | 1650CSep 18 · 15d | 1 | 1522.5 | $-25,000 | $0 | net down over episode |
| 15 up-rolls | | | | | $332,850 | $186,214 | |
One row per open LOT. Old cap = the start of the lot's ROLL CHAIN: buybacks link to the leg that replaced them (re-opened within 3d; an expiry gap breaks the chain), walked back from the most recent buyback - so a progressive escape (435 → 475 → 540) scores its ENTIRE move even when early steps predate the 30d window, which only decides whether the chain still counts as a live escape. DOWN-roll steps net through: a lot whose episode net-LOWERED its cap shows muted as “net down”, outside every total. Lots pair to chains by contract count (the sheet has no account column), so same-size lots share a chain start; unmatched sizes fall back to the ticker's highest recent buyback. A row tagged [roll] in the log links to its predecessor AUTHORITATIVELY (tag every rolled-to leg; fresh writes never), and a tagged chain STOPS at the first untagged leg: the cap that stood before the first tagged roll is where counting starts. Tagged escapes STAY VISIBLE while the leg is open and bypass the up-and-out tenor bar; the 30d recency window and the 21d tenor bar gate only the untagged heuristics; for untagged history an open leg links to a closed one only when the close was a PENNY/zero buyback (a roll: the cost lives in the successor's net premium or negok row) or a real buyback continued DOWNWARD (post-breach de-risk); a real buyback followed by a HIGHER fresh strike is an exit plus a new campaign and never links (BMNR 17.5 exited → fresh 20.5, one day apart), and an escape must go up AND OUT: tenor at entry >= 21d, so a next-weekly re-strike (MU 950→1000, IREN 40.5→45) is the income machine adapting, never an escape. Headroom = (new - old) cap × contracts: LEAPS upside the roll unlocked. Banked by roll = spot minus the OLD cap when spot trades through it: gains the old cap would have handed to the call buyer at expiry. Marked to spot, UNREALIZED - it firms up only as the LEAPS are monetized or spot holds. Puts and down-rolls never count. Never in income totals, projections or --score.
Realized by month — if closed through the new cap
| Month | Lots | Tickers | Realized $ |
|---|
| Sep 2026 | 7 | COPX, MU, NEM, HIMS, DELL, CRWV | $72,000 |
| Oct 2026 | 6 | COIN, GLD, MSTR, NOW, GOOG | $198,750 |
| Nov 2026 | 2 | IGV, META | $62,100 |
| TOTAL | | | $332,850 |
The flip side of the buyback toll: income given up NOW comes back as cap P&L on this schedule. Each up-roll lands in the month its rolled-to call expires; IF spot finishes that expiry through the new cap and the trade is closed (assigned / LEAPS monetized), the month realizes the lot's full headroom over the old cap. Conditional on the rally holding to expiry - a lot that finishes below the new cap realizes nothing here (and keeps the upside unrealized instead). Display-only, like the ledger above.
Reading Step A - plain English, with your own numbers
Step A looks at every income covered call you have closed in the last 3 months and asks one question: how much of the premium you sell do you actually get to keep? That single percentage is what turns the gross forecast at the top of this page into the net one. Calls still open are not here, they are in Insight 1.
1 · What happens to one covered call
Say you sell one call for $1,000. Three endings:
A. It expires worthless. You keep the whole $1,000. → counted in expired full (73 of yours).
B. You buy it back early for $200 to free the shares. You keep $800. → counted in bought back (224 of yours). That $200 is the “premium given up”.
C. The stock rips past your strike and you buy it back for $1,300. You are down $300. → still bought back, and also counted as run over (34 of yours).
The bit that trips everyone up: run-overs are a subset of buy-backs, not a third bucket. 73 + 224 = 297, your total. The 34 run-overs are the worst 34 of those 224 buy-backs, counted again so you can see how often it goes badly.
2 · Four percentages that all sound the same
| Number | The question it answers | Worked from your book |
|---|
Give-up ratio 32.8% | Of every premium dollar you sold, how much went back out? | You sold $359,165 of premium and paid $117,822 to buy calls back. 32.8% of what came in went back out. Your biggest trades dominate this one. |
Typical give-back 20% | For a normal single trade, what fraction came back? | Line your 224 buy-backs up by what share of their OWN premium they handed back. The middle one gave back 20%. Here a $18 SOFI call counts exactly as much as a $10,000 MU call. |
Mean keep 67% | The mirror of the give-up ratio. | Just 100% minus 32.8%. Nothing new, it is the same dollar-weighted view stated as what you keep. |
Forecast keep 65% | What a NORMAL MONTH keeps. | This is the only one that changes any number on this page. Work out the keep for each month on its own, then take the middle month. |
3 · Why the middle month, and why recent ones count more
Your months: 2026-03 81%, 2026-04 83%, 2026-05 66%, 2026-06 65%, 2026-07 63%, 2026-08 80%. Their plain average is 73%. The tool does not use the average, because one unusually good or bad month should not set the forecast for every month after it. It lines the months up and takes the middle one.
With one twist: only the months from 2026-06 onward are counted. That is when the toolset matured (FIGHT, CC-SS floors, the scanner's picks), so those are the only months describing a book you still trade. Counting all 6 months instead would read 66%; the mature months alone read 65%.
The current month is always left out, because it is only part finished.
3b · A high keep % is not a good month
This is the trap in the whole card. The keep % measures efficiency per premium dollar sold, not money. Your best rate was 2026-04 at 83%, which banked $73,272. Your best month was 2026-07 at 63%, a worse rate, which banked $119,877.
A quiet month where most calls simply expire scores a high rate on a small amount of premium. An active month where you buy winners back early scores lower by construction (buying back at 80% banked hands back the other 20%) and can bank far more. That is why the card now shows Sold / Bought back / Kept next to the rate: read the Kept column for how you did, and the rate only for how hard the premium worked.
4 · Why two numbers for “premium given up”
Of the 224 calls you bought back, the middle one cost $240 to close. The average is $526, pulled up by a handful of big run-overs. When those two are this far apart, the median is the honest one for “what does a normal buy-back cost me?”
5 · Where the early-cover read comes from
Two rules of thumb on the numbers above:
AGGRESSIVE if you hand back 40%+ of premium, or 30%+ of calls run over. Strikes are too tight; write further out.
HEALTHY if 80%+ come out ahead and you hand back under 25%.
MODERATE anything in between.
Yours: win rate 89% clears 80%, but give-up 33% is above 25%, so it lands in the middle band.
6 · Why some tickers are missing
6 ticker(s) are held out of these behaviour numbers: AVGO, CLSK, HOOD, IBIT, SOFI, UAMY. On those you deliberately buy the call back to let the stock run (an un-cap). That is a capital-gains decision, not a bad strike. Their money still counts in your income totals at the top of the page; it just should not pollute “how well do I pick strikes?”
Window: last 3 months by close date. Only CLOSED round-trips count. A buy-back tagged [DBB] (a deliberate un-cap) contributes its premium and no buy-back cost, so it never looks like a strike mistake.
Read-only and advisory. Places no orders.