| Net ฮ (delta) | -266 | Long+SC kombinerat |
| ฮ (theta est./dag) | +$6,239 | SC-extรทDTE proxy |
| SC-ext kvar | $6,239 | unrealized SC-vรคrde |
| LEAP intrinsic | $389,532 | in-the-money-vรคrde |
| DIA | 1d โ roll imorgon | 2026-06-05 | ROLL-WEEK |
| IWM | 1d โ roll imorgon | 2026-06-05 | ROLL-WEEK |
| MSFT | 1d โ roll imorgon | 2026-06-05 | ROLL-WEEK |
| VOO | 1d โ roll imorgon | 2026-06-05 | ROLL-WEEK |
| XBI | 1d โ roll imorgon | 2026-06-05 | ROLL-WEEK |
| Ticker | Lockd | LEAP (strike ยท exp) | LEAP entry | LEAP cur | LEAP P&L | SC (strike ยท exp) | SC entry | SC cur | SC P&L | Total Unr. | Spot |
|---|---|---|---|---|---|---|---|---|---|---|---|
| DIA | 9 |
K 415.00 ยท 2027-06-17
ฮ 0.85
|
$111.00 | $112.00 | +$900 |
K 490.00 ยท 2026-06-05
ฮ 0.90 ยท ext entry $0.92
|
$17.55 | $18.50 | $-855 | +$45 | $508.26 |
| IWM | 13 |
K 230.00 ยท 2027-04-16
ฮ 0.86
|
$72.47 | $68.50 | $-5,155 |
K 278.00 ยท 2026-06-05
ฮ 0.91 ยท ext entry $0.65
|
$14.47 | $9.74 | +$6,149 | +$994 | $287.37 |
| MSFT | 7 |
K 310.00 ยท 2027-06-17
ฮ 0.85
|
$136.72 | $140.00 | +$2,293 |
K 400.00 ยท 2026-06-05
ฮ 0.91 ยท ext entry $1.12
|
$26.18 | $27.80 | $-1,138 | +$1,155 | $426.60 |
| VOO | 5 |
K 535.00 ยท 2027-06-17
ฮ 0.85
|
$188.00 | $188.00 | +$0 |
K 677.50 ยท 2026-06-05
ฮ 0.90 ยท ext entry $0.99
|
$16.65 | $16.85 | $-100 | $-100 | $690.61 |
| XBI | 24 |
K 100.00 ยท 2027-06-17
ฮ 0.85
|
$41.40 | $37.00 | $-10,560 |
K 129.50 ยท 2026-06-05
ฮ 0.89 ยท ext entry $0.35
|
$6.00 | $1.51 | +$10,776 | +$216 | $129.83 |
| TOTAL (5 positions) | $-12,522 | +$14,832 | +$2,311 | ||||||||
| Ticker | LEAP entry spot | LEAP strike | SC entry spot | SC strike | Spot nu | ฮ vs LEAP entry | ฮ vs SC entry |
|---|---|---|---|---|---|---|---|
| DIA | $506.63 | $415.00 | $506.63 | $490.00 | $508.26 | +0.32% | +0.32% |
| IWM | $291.82 | $230.00 | $291.82 | $278.00 | $287.37 | -1.52% | -1.52% |
| MSFT | $425.05 | $310.00 | $425.05 | $400.00 | $426.60 | +0.36% | +0.36% |
| VOO | $693.16 | $535.00 | $693.16 | $677.50 | $690.61 | -0.37% | -0.37% |
| XBI | $135.15 | $100.00 | $135.15 | $129.50 | $129.83 | -3.94% | -3.94% |
| Ticker | Contracts | SC entry ext $/sh | SC nu ext $/sh | Harvest % | Ext decay $ | SC target $ | LEAP P&L $ | Net P&L $ |
|---|---|---|---|---|---|---|---|---|
| DIA | 9 | $0.92 | $0.24 | 73.9% | $612 | $662 | +$900 | +$45 |
| IWM | 13 | $0.65 | $0.37 | 43.1% | $364 | $676 | $-5,155 | +$994 |
| MSFT | 7 | $1.12 | $1.20 | -6.7% | $-52 | $630 | +$2,293 | +$1,155 |
| VOO | 5 | $0.99 | $3.74 | -277.8% | $-1,375 | $396 | +$0 | $-100 |
| XBI | 24 | $0.35 | $1.18 | -237.1% | $-1,992 | $672 | $-10,560 | +$216 |
| TOTAL (5 positioner) | $-2,443 | $3,036 | $-12,522 | +$2,311 | ||||
| Datum | Extrinsic % | $/vecka | Momentum % | ROC-spread | Skip % | N-skippade | Total % | Market |
|---|---|---|---|---|---|---|---|---|
| 2026-06-04 | -0.5% | $-2,444 | 45.7% | 11.43pp | 0.0% | 0 | 45.2% | no |
| 2026-06-03 | -0.1% | $-388 | 45.7% | 11.43pp | 0.0% | 0 | 45.6% | yes |
Nรคr bot:n rullar SC eller stรคnger LEAPs visas roundtrip-historik hรคr:
| # | Ticker | Spot | SMA75 | ROC63d | Regim | Status |
|---|---|---|---|---|---|---|
| 1 | MSFT | $460.52 | $401.86 | +15.80% | BULL | ACTIVE |
| 2 | SPY | $758.54 | $696.08 | +10.81% | BULL | ACTIVE |
| 3 | IWM | $288.98 | $266.22 | +9.74% | BULL | ACTIVE |
| 4 | XBI | $133.62 | $129.24 | +5.59% | BULL | ACTIVE |
| 5 | DIA | $511.44 | $484.83 | +4.88% | BULL | ACTIVE |
| # | Ticker | Spot | SMA75 | ROC63d | Regim | Comment |
|---|---|---|---|---|---|---|
| 6 | PNC | $216.07 | $215.17 | +1.63% | BULL | backup om nรฅgon ovan ramlar ur |
| 7 | USB | $53.55 | $54.28 | -0.96% | NB | backup om nรฅgon ovan ramlar ur |
| 8 | DIS | $102.85 | $102.12 | -1.42% | BULL | backup om nรฅgon ovan ramlar ur |
| 9 | COP | $115.58 | $119.68 | -1.52% | NB | backup om nรฅgon ovan ramlar ur |
| 10 | XLC | $115.61 | $115.23 | -1.60% | BULL | backup om nรฅgon ovan ramlar ur |
| Rank | Ticker | Spot | SMA75 | ฮ vs SMA | ROC63d | Regim | Status |
|---|---|---|---|---|---|---|---|
| 1 | MSFT | $460.52 | $401.86 | +14.6% | +15.80% | BULL | ACTIVE |
| 2 | SPY | $758.54 | $696.08 | +9.0% | +10.81% | BULL | ACTIVE |
| 3 | IWM | $288.98 | $266.22 | +8.5% | +9.74% | BULL | ACTIVE |
| 4 | XBI | $133.62 | $129.24 | +3.4% | +5.59% | BULL | ACTIVE |
| 5 | DIA | $511.44 | $484.83 | +5.5% | +4.88% | BULL | ACTIVE |
| 6 | PNC | $216.07 | $215.17 | +0.4% | +1.63% | BULL | |
| 7 | USB | $53.55 | $54.28 | -1.3% | -0.96% | NB | |
| 8 | DIS | $102.85 | $102.12 | +0.7% | -1.42% | BULL | |
| 9 | COP | $115.58 | $119.68 | -3.4% | -1.52% | NB | |
| 10 | XLC | $115.61 | $115.23 | +0.3% | -1.60% | BULL | |
| 11 | XLI | $172.40 | $170.66 | +1.0% | -3.36% | BULL | |
| 12 | HON | $236.54 | $227.27 | +4.1% | -4.11% | BULL | |
| 13 | MRK | $115.17 | $116.82 | -1.4% | -4.44% | NB | |
| 14 | XLV | $147.84 | $148.96 | -0.8% | -6.36% | NB | |
| 15 | XLP | $82.03 | $84.15 | -2.5% | -7.01% | NB | |
| 16 | JNJ | $223.51 | $234.57 | -4.7% | -9.56% | NB | |
| 17 | PEP | $141.52 | $155.98 | -9.3% | -14.64% | NB | |
| 18 | HD | $310.69 | $337.09 | -7.8% | -15.65% | NB | |
| 19 | MCD | $276.11 | $305.38 | -9.6% | -17.07% | NB |
2026-06-04 05:08:38,828 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=XBI+++260605C00129500&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:08:38,866 [INFO] Tastytrade session created (production, underlying=DIA) 2026-06-04 05:08:39,230 [INFO] HTTP Request: POST https://api.tastyworks.com/oauth/token "HTTP/1.1 200 OK" 2026-06-04 05:08:39,233 [DEBUG] Refreshed token, expires in 900s 2026-06-04 05:08:39,393 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=DIA&cryptocurrency=InstrumentType.EQUITY "HTTP/1.1 200 " 2026-06-04 05:08:39,394 [INFO] DIA spot: 508.26 2026-06-04 05:08:39,550 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=DIA+++270617C00415000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:08:39,707 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=DIA+++260605C00490000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:08:39,707 [INFO] Total equity: $502,212.26 cash: $92,383.26 realized: $+0.00 n_open: 5 2026-06-04 05:08:39,711 [INFO] Signal saved: /Users/svennestrunt/pmcc_rotation_paper/state/signals/signal_2026-06-04.json 2026-06-04 05:08:39,711 [INFO] State saved: 2026-06-04T05:08:39 2026-06-04 05:08:39,713 [INFO] Alpha-snapshot logged: extrinsic-decay=$-2,443 (-0.49% of capital) 2026-06-04 05:08:39,713 [INFO] ============================================================ 2026-06-04 05:09:40,164 [INFO] ============================================================ 2026-06-04 05:09:40,164 [INFO] PMCC ITM Rotation Paper-Bot โ Daily Run 2026-06-04 05:09:40,164 [INFO] ============================================================ 2026-06-04 05:09:40,169 [INFO] asof: 2026-06-04 cash: $92,383.26 open: 5 2026-06-04 05:09:40,195 [INFO] Signal: top-5=['MSFT', 'SPY', 'IWM', 'XBI', 'DIA'] active=['MSFT', 'SPY', 'IWM', 'XBI', 'DIA'] skipped_nb=[] rebalance_day=False friday=False next_rebal=2026-06-30 2026-06-04 05:09:40,195 [INFO] --mtm-only mode: skipping rotation / roll logic 2026-06-04 05:09:40,195 [INFO] === Mark-to-market === 2026-06-04 05:09:41,435 [INFO] Tastytrade session created (production, underlying=IWM) 2026-06-04 05:09:41,842 [INFO] HTTP Request: POST https://api.tastyworks.com/oauth/token "HTTP/1.1 200 OK" 2026-06-04 05:09:41,843 [DEBUG] Refreshed token, expires in 900s 2026-06-04 05:09:42,009 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=IWM&cryptocurrency=InstrumentType.EQUITY "HTTP/1.1 200 " 2026-06-04 05:09:42,009 [INFO] IWM spot: 287.37 2026-06-04 05:09:42,182 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=IWM+++270416C00230000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:42,349 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=IWM+++260605C00278000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:42,386 [INFO] Tastytrade session created (production, underlying=VOO) 2026-06-04 05:09:42,744 [INFO] HTTP Request: POST https://api.tastyworks.com/oauth/token "HTTP/1.1 200 OK" 2026-06-04 05:09:42,744 [DEBUG] Refreshed token, expires in 900s 2026-06-04 05:09:42,904 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=VOO&cryptocurrency=InstrumentType.EQUITY "HTTP/1.1 200 " 2026-06-04 05:09:42,905 [INFO] VOO spot: 690.61 2026-06-04 05:09:43,063 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=VOO+++270617C00535000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:43,223 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=VOO+++260605C00677500&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:43,258 [INFO] Tastytrade session created (production, underlying=MSFT) 2026-06-04 05:09:43,651 [INFO] HTTP Request: POST https://api.tastyworks.com/oauth/token "HTTP/1.1 200 OK" 2026-06-04 05:09:43,653 [DEBUG] Refreshed token, expires in 900s 2026-06-04 05:09:43,823 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=MSFT&cryptocurrency=InstrumentType.EQUITY "HTTP/1.1 200 " 2026-06-04 05:09:43,823 [INFO] MSFT spot: 426.60 2026-06-04 05:09:43,992 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=MSFT++270617C00310000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:44,168 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=MSFT++260605C00400000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:44,205 [INFO] Tastytrade session created (production, underlying=XBI) 2026-06-04 05:09:44,610 [INFO] HTTP Request: POST https://api.tastyworks.com/oauth/token "HTTP/1.1 200 OK" 2026-06-04 05:09:44,611 [DEBUG] Refreshed token, expires in 900s 2026-06-04 05:09:44,814 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=XBI&cryptocurrency=InstrumentType.EQUITY "HTTP/1.1 200 " 2026-06-04 05:09:44,814 [INFO] XBI spot: 129.83 2026-06-04 05:09:44,982 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=XBI+++270617C00100000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:45,149 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=XBI+++260605C00129500&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:45,186 [INFO] Tastytrade session created (production, underlying=DIA) 2026-06-04 05:09:45,578 [INFO] HTTP Request: POST https://api.tastyworks.com/oauth/token "HTTP/1.1 200 OK" 2026-06-04 05:09:45,579 [DEBUG] Refreshed token, expires in 900s 2026-06-04 05:09:45,753 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=DIA&cryptocurrency=InstrumentType.EQUITY "HTTP/1.1 200 " 2026-06-04 05:09:45,754 [INFO] DIA spot: 508.26 2026-06-04 05:09:45,925 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=DIA+++270617C00415000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:46,100 [INFO] HTTP Request: GET https://api.tastyworks.com/market-data/by-type?equity=DIA+++260605C00490000&cryptocurrency=InstrumentType.EQUITY_OPTION "HTTP/1.1 200 " 2026-06-04 05:09:46,101 [INFO] Total equity: $502,212.26 cash: $92,383.26 realized: $+0.00 n_open: 5 2026-06-04 05:09:46,103 [INFO] Signal saved: /Users/svennestrunt/pmcc_rotation_paper/state/signals/signal_2026-06-04.json 2026-06-04 05:09:46,103 [INFO] State saved: 2026-06-04T05:09:46 2026-06-04 05:09:46,104 [INFO] Alpha-snapshot logged: extrinsic-decay=$-2,443 (-0.49% of capital) 2026-06-04 05:09:46,104 [INFO] ============================================================
Long ITM LEAP + Weekly DEEP-ITM Short Call pรฅ top-momentum tickers. Mรฅnatlig rotation frรฅn Medium_19-universumet, regim-filter SMA75, ROC63d ranking, 80%-extrinsic-roll pรฅ SC.
| Universum | Medium_19 (sektor-ETFs + medium-vol stocks) |
| Ranking | ROC63d desc (3-month return) |
| Top-N selection | Top 5 per mรฅnad (first trading day of month) |
| Regim-filter | spot > SMA75 = BULL ยท annars STRICT_SKIP |
| LEAP leg | Long call, ~365 DTE, ฮ 0.85, Friday preferred |
| LEAP roll | DTE<60 OR ฮ>0.92 OR ฮ<0.7 |
| SC leg | Short call DEEP ITM ฮ 0.9, weekly Friday ~7 DTE |
| SC roll | BTC nรคr current_ext โค 20% av opening_ext (= 80% capture) |
| Sizing | Equity-equal-weight, locked_contracts frozen till nรคsta mรฅnad |
| NB drop | Om spot < SMA75 mid-mรฅnad โ close LEAP + SC omedelbart |
| Friction | Tasty: $1/contract open (cap $10/leg) + $0.14 reg ยท $0.10 reg close |
| CAGR | +66.4% |
| Max Drawdown | โ12.5% |
| Calmar | 5.33 |
| Walk-forward IS Calmar | 3.66 |
| Walk-forward OOS Calmar | 3.77 (time-stable) |
| Final equity ($50k start) | $1.30M (26ร, 6.5 รฅr) |
~/memory/pmcc_itm_dpmcc.md~/orats_optionsdata/backtests/pmcc_itm_rotation.py~/orats_optionsdata/backtests/pmcc_itm_rotation_universes.pyโ ๏ธ Detta รคr PAPER-trading, INTE finansiell rรฅdgivning.
Backtest har survivor-bias i universum-valet (Medium_19 valdes posterior). Real deploy fรถrvรคntas ge lรคgre Calmar โ typiskt 25-35% CAGR efter friktion pรฅ small accounts.
Strategi har explicit tail-risk: gap-down stรถrre รคn SC-strike โ LEAP-strike (โ10% av spot) ger max-fรถrlust pรฅ en ticker i en dag. Diversifiering รถver 5 tickers mildrar.
| 03:50 CET (Mon-Fri) | com.matsahlgren.pmccrotation.plist โ daily_run.py |
| Var 5:e min, 15:30-22:00 CET | mtm_loop.sh โ MtM update |
| Always-on | com.matsahlgren.pmccrotation.dashboard.plist โ Flask app on :8881 |
| Open positions | state/positions.json |
| Equity-historia | state/equity.csv |
| Trades-historia | state/trades.csv |
| Daily signals | state/signals/signal_YYYY-MM-DD.json + latest.json |
| Logs | logs/daily.log |
| Open commission | $1.00/contract (cap $10/leg) |
| Open reg fee | $0.14/contract |
| Close fee | $0.10/contract (no commission) |
| Slippage | 10% av bid-ask spread (each side) |
| Data-kรคlla MtM | Tastytrade live mid (chain_cache_ttl 60s) |
| Data-kรคlla signal | ORATS parquet (dev) โ yfinance fallback (Mini) |
| Universum-storlek | 19 tickers (Medium_19) |
| Top-N selection | top-5 by ROC63 per mรฅnad |
| Regim-filter | SMA75 STRICT_SKIP |
| LEAP config | ฮ0.85 entry ยท DTE 300-450 (target 365) ยท roll triggers |
| SC config | ฮ0.9 DEEP ITM ยท DTE 4-9 (target 7, weekly Friday) |
| SC roll-rule | BTC + STO new nรคr current_ext โค 20% av opening_ext |