CC Income Manager
● CACHED CHAINS · 4h
GENERATEDJul 23, 2026 01:23
Insight 2 candidates from the cc_scanner scan Jul 22, 21:35 · 4h ago (fortress_rebuild cc_picks as fallback). Coverage + CC-SS from the fortress_rebuild scan · Jul 22, 21:52 · 4h ago. Insight 1: IBKR offline — replaying last live snapshot (0h old).
Jul'26 INCOME · CC + PUTS + INTEREST
floor $30,000 · ideal $50,000 · 9 days left · ideal reached
$7,354 interest
$77,240 booked
$23,877 pipeline
floor
ideal
dark teal = interest posted (last month's accrual, cash now) · solid = booked CC income · faded = projected pipeline (open CCs, net-adj)
Goal tracker - active target: Jul'26
| Month | Gross | Net-adj | Gap to ideal |
|---|
| Jul'26 projected | $111,876 | $101,117 | $0 |
| Aug'26 forecast | $-3,933 | $-2,711 | - |
The forward (open-CC) premium is GROSS - it assumes every open call expires worthless. Historically only 69% is kept (the rest is bought back when stocks run), so the Net-adj column haircuts the forecast to match the realized number. Gap is measured on Net-adj.
Tracking to goal - projected Jul'26 income
reaches idealfloor $30,000 · ideal $50,000
Interest $7,354Booked $77,240
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 ($6,491/mo full rate) × 9/30 days left = $1,947 · 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 200 income covered calls you sold and closed, you came out even-or-ahead on 92%; only 16 “ran over” (the stock jumped past your strike, so you had to buy the call back at a loss). You hold each one about 7 days and keep about 69% of every premium dollar after the early buy-backs. That 69% “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 | 200 (47 expired full / 153 bought back / 16 run over) |
| Avg time CC stays open | 6.7 days |
| Win rate (kept >= 0) / run-over rate | 92% / 8% |
| Typical premium given up (per bought-back CC) | $215 · mean $530 (skewed by a few big run-overs) |
| Give-up ratio (buyback / premium) | 30.4% dollar-weighted · typical trade gives back 20% (median, size-free) |
| Mean keep (blended) | 70% |
| Forecast keep (median complete month) | 69% · 2026-04 92%, 2026-05 65%, 2026-06 69%, 2026-07 69% |
Early-cover read: MODERATE - keeping ~70% of premium; some room to widen strikes.
Excluded 12 structural ticker(s) (net CC < 0 over all history = un-caps, not income): ARM, AVGO, BMNR, CIFR, CLSK, GDX, HOOD, IBIT, MARA, NOW, 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 (Jul'26) | $0 |
| Gross premium to sell (grossed up 70%) | $0 |
| Avg CC hold | 6.7 days |
| Cycles that still fit this month | 1.3 |
Actuals by account - Jul'26 realized
| Account | Realized | Accruing MTD (info, stale) | Share |
|---|
| Main | $29,124 | $2,356 | |
| Neville | $28,276 | $760 | |
| RetireInc | $20,664 | $783 | |
| Joint | $-824 | $44 | |
| TOTAL | $77,240 | $3,943 | |
Interest posted this month: $7,354 (last month's accrual as of Jun 30) → Realized + posted: $84,594
accruing now: $3,943 → posts next month
Realized NET income booked this Jul'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, 110 matched), 1 qty-fingerprinted, 1 split pro-rata. 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 (31 open, 0 to close, bank $0, 2 check rebuild)▾
| Ticker | Spot | Strike | CT | DTE | Surv | Collected | Outstanding | Exit Today | Action | Why |
|---|
| MSTRJoint | 100.0 | 125.0C | 10 | Jul 318d | 96% | $1,000 | $445 | $555 | hold | 56% banked, 44% to decay |
| MSTRRetireInc | 100.0 | 130.0C | 4 | Aug 0715d | 94% | $-576 | $300 | $-876 | hold | underwater, 94% safe |
| IRENMain | 42.1 | 55.0C | 20 | Jul 318d | 94% | $-220 | $800 | $-1,020 | hold | underwater, 94% safe |
| SPYNeville | 749.1 | 758.0C | 12 | Jul 274d | 92% | $792 | $510 | $282 | hold | 36% banked, 64% to decay |
| SPCXNeville | 120.7 | 165.0C | 5 | Aug 0715d | 92% | $-125 | $1,000 | $-1,125 | hold | underwater, 92% safe |
| COINRetireInc | 169.1 | 215.0C | 3 | Aug 1422d | 89% | $-795 | $831 | $-1,626 | hold | underwater, 89% safe |
| HIMSMain | 32.3 | 39.5C | 15 | Jul 318d | 89% | $1,005 | $675 | $330 | hold | 33% banked, 67% to decay |
| IRENNeville | 42.1 | 55.0C | 20 | Aug 0715d | 89% | $-220 | $1,920 | $-2,140 | hold | underwater, 89% safe |
| IRENRetireInc | 42.1 | 55.0C | 20 | Aug 0715d | 89% | $-220 | $1,920 | $-2,140 | hold | underwater, 89% safe |
| MUNeville | 978.7 | 1040.0C | 2 | Jul 241d | 88% | $1,600 | $2,050 | $-450 | hold | underwater, 88% safe |
| APPRetireInc | 412.8 | 465.0C | 1 | Jul 318d | 87% | $1,081 | $450 | $631 | hold | 58% banked, 42% to decay |
| COINMain | 169.1 | 210.0C | 25 | Aug 1422d | 87% | $-145 | $8,312 | $-8,458 | hold | underwater, 87% safe |
| IRENJoint | 42.1 | 51.0C | 20 | Jul 318d | 87% | $1,960 | $1,680 | $280 | hold | 14% banked, 86% to decay |
| RKLBRetireInc | 71.8 | 83.0C | 6 | Jul 318d | 87% | $-57 | $606 | $-663 | hold | underwater, 87% safe |
| QCOMRetireInc | 176.8 | 207.5C | 5 | Aug 0715d | 86% | $-70 | $1,470 | $-1,540 | hold | underwater, 86% safe |
| NEMMain | 95.4 | 106.0C | 5 | Aug 0715d | 86% | $-705 | $528 | $-1,232 | hold | underwater, 86% safe |
| INTCNeville | 104.7 | 116.0C | 5 | Jul 241d | 85% | $1,750 | $1,263 | $487 | hold | 28% banked, 72% to decay |
| AMZNJoint | 243.2 | 265.0C | 10 | Jul 318d | 84% | $3,500 | $2,580 | $920 | hold | 26% banked, 74% to decay |
| BMNRRetireInc | 17.6 | 20.5C | 50 | Aug 0715d | 84% | $1,300 | $1,825 | $-525 | hold | underwater, 84% safe |
| COPXJoint | 79.9 | 85.0C | 20 | Jul 318d | 81% | $820 | $1,600 | $-780 | hold | underwater, 81% safe |
| IGVMain | 89.3 | 93.5C | 12 | Jul 318d | 80% | $960 | $870 | $90 | hold | 9% banked, 91% to decay |
| COINMain | 169.1 | 200.0C | 8 | Aug 2129d | 80% | $-1,712 | $4,880 | $-6,592 | hold | underwater, 80% safe |
| GOOGNeville | 347.5 | 370.0C | 15 | Jul 318d | 80% | $7,815 | $6,262 | $1,552 | hold | 20% banked, 80% to decay |
| CRWVNeville | 83.7 | 97.0C | 5 | Aug 0715d | 78% | $115 | $1,600 | $-1,485 | hold | underwater, 78% safe |
| UAMYRetireInc | 5.9 | 7.0C | 25 | Aug 1422d | 78% | $250 | $750 | $-500 | hold | underwater, 78% safe |
| MDBNeville | 303.5 | 325.0C | 1 | Jul 318d | 75% | $610 | $690 | $-80 | hold | underwater, 75% safe |
| MUMain | 978.7 | 1050.0C | 5 | Jul 318d | 70% | $10,000 | $20,500 | $-10,500 | hold | underwater, 70% safe |
| GLDMain | 380.2 | 390.0C | 10 | Aug 2129d | 67% | $-650 | $5,850 | $-6,500 | hold | underwater, 67% safe |
| NVDANeville | 213.3 | 220.0C | 5 | Aug 0715d | 67% | $610 | $2,088 | $-1,478 | hold | underwater, 67% safe |
| DELLRetireInc | 443.1 | 475.0C | 3 | Aug 2129d | 66% | $372 | $8,970 | $-8,598 | CHECK REBUILD | 66% safe + underwater - rebuild: ROLL CC (moderate itm rollable) |
| METAMain | 629.0 | 660.0C | 3 | Aug 1422d | 66% | $-42 | $7,290 | $-7,332 | CHECK REBUILD | 66% safe + underwater - rebuild: ROLL UP (CREDIT) (offensive roll up) |
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).
Insight 2 - CCs to sell, ALL available contracts (DTE 5-14, survival >= 80%)▾
| Ticker | Spot | CC-SS | Strike | DTE | Surv | Sell all |
|---|
| GOOGJoint | 346.6 | 339.2 | 372.5 | Aug 019d | 81% | |
| RIOTJoint | 21.7 | 21.5 | 27.0 | Aug 019d | 92% | |
Sell all: 55 contract(s) on 2 ticker(s) → $1,515/wk · $6,491/mo · blended surv 91% · ✓ 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 |
|---|
| MARAMain | deep drawdown (safe floor 21% above spot) |
| NOWMain | structural - you un-cap this name (net-CC < 0) |
| CLSKRetireInc | structural - you un-cap this name (net-CC < 0) |
| GLXYMain | deep drawdown (safe floor 31% above spot) |
Deferred by CSV - 8 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 |
| ETHAMain | 13 | 50 | - | Skip | deferred upstream |
| IBITJoint | 75 | 50 | - | Skip | deferred upstream |
| MARAJoint | 20 | 50 | 25 of 50 | Half Max; Skip | deferred upstream |
| MARAMain | 20 | 200 | 100 of 200 | Half Max; Skip | deferred upstream |
| MARANeville | 25 | 250 | - | 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 Jul'26 end)▾
| Ticker | Spot | Strike | DTE | Surv | Contracts | Collected | Cycles | Gross | E[income] |
|---|
| MU uwNeville | 978.7 | 1040.0 | Jul 241d | 88% | 2 | $1,600 | 1.4x | $1,544 | $1,354 |
| INTCNeville | 104.7 | 116.0 | Jul 241d | 85% | 5 | $1,750 | 1.2x | $1,407 | $1,194 |
| SPYNeville | 749.1 | 758.0 | Jul 274d | 92% | 12 | $792 | 0.7x | $364 | $334 |
Gross $3,316 → E[rollover] $2,882 to Jul'26 end
Held CCs are not dead weight: a covered name expiring before Jul'26 end frees its shares to be re-written. Cycles come from your real re-write cadence (STEP A median hold, ~7d), not the residual DTE. Income is expected value = collected × 69% 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 | 33.3 | 28.0 | ⚠ below | Aug 019d | 76% | 123 | recommended | $7,995 | $26,650 | $18,372 |
| ENPHRetireInc | 40.1 | 59.2 | 43.5 | ⚠ below | Jul 252d | 87% | 10 | recommended | $230 | $3,450 | $2,378 |
Deep-name income: $8,225 this cycle · gross $30,100 / mo → E[net] $20,750 / mo · 0 of 2 at/above CC-SS (safe)
Read from fortress_fight --all run Jul 22, 23:04 · 2h 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 69% 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 |
|---|
| GOOGJoint | 346.6 | 390.0 | Aug 019d | 93% | 5 | $1,576 |
Max-safety alternative (swap, not add): $1,576
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 |
|---|
| MARAMain | 12.2 | 14.8 | 16.0 | Aug 2937d | 84% | 200 | $6,649$8,200/cycle | $4,624 |
| GLXYMain | 25.3 | 33.2 | 34.0 | Aug 2937d | 86% | 125 | $5,169$6,375/cycle | $3,595 |
Recovery income: gross $11,818 → net-adj $8,219 / 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.
Read-only and advisory. Places no orders.