| SPX C 5840 | -1 | assigned | -$577.77 |
| SPX C 5845 | +1 | exercised | +$138.23 |
| SPX P 5785 | +1 | expired | -$288.77 |
| SPX P 5790 | -1 | expired | +$351.23 |
The premium the put collected comes out of the share basis, so the lot cost $2,872.12 and not the strike. A journal that reports the strike overstates the basis of every wheel it ever recorded.
Sample data, not a real account: ten 0DTE index condors, a wheel, and one roll. Parsed through the same code your own file goes through, on this request.
| Opened | Underlying | Structure | Legs | Ended | Credit | At risk | Realised |
|---|---|---|---|---|---|---|---|
| 2026-03-23 | SPX | iron condor | C5890 C5895 P5835 P5840 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-03-20 | SPX | iron condor | C5880 C5885 P5825 P5830 | mixed (assigned, exercised, expired) | +$140.00 | -$367.08 | -$377.08 |
| 2026-03-18 | SPX | iron condor | C5870 C5875 P5815 P5820 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-03-16 | SPX | iron condor | C5860 C5865 P5805 P5810 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-03-13 | SPX | iron condor | C5850 C5855 P5795 P5800 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-03-11 | SPX | iron condor | C5840 C5845 P5785 P5790 | mixed (assigned, exercised, expired) | +$140.00 | -$367.08 | -$377.08 |
| 2026-03-10 | SOFI | short call | C33 | expired | +$74.00 | +$72.88 | |
| 2026-03-09 | SPX | iron condor | C5830 C5835 P5775 P5780 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-03-06 | SPX | iron condor | C5820 C5825 P5765 P5770 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-03-04 | SPX | iron condor | C5810 C5815 P5755 P5760 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-03-02 | SPX | iron condor | C5800 C5805 P5745 P5750 | expired | +$140.00 | -$367.08 | +$132.92 |
| 2026-02-24 | SOFI | short call | C32 | closed rolled | +$88.00 | +$54.76 |
| Strategy | n | Won | Win rate | Realised | Max drawdown |
|---|---|---|---|---|---|
| iron condor | 10 / 10 sessions | 8/10 | 80.0% 50.0% to 100.0% | +$309.20 | -$377.08 |
| single | 3 / 3 sessions | 3/3 | 100.0% no interval | +$260.52 | $0.00 |
Index and futures options. Split 60/40 whatever the holding period.
| Line | |
|---|---|
| 40 contracts, net | +$309.20 |
| Short-term, 40% | +$123.68 |
| Long-term, 60% | +$185.52 |
Real holding periods. Wash sales apply here and never to 1256.
| Line | |
|---|---|
| 2 dispositions, short-term | +$127.64 |
| Long-term | $0.00 |
| Loss disallowed by wash sales | $0.00 |
1 option position ended in assignment or exercise. Its premium is inside the share basis or proceeds and it is deliberately absent from Form 8949.
Form 6781 and Form 8949 from the same ledger, with wash sales, share lots carrying their option's premium, and an explicit list of what an export cannot answer.
Trades in one session share the day's move. Resampling by day rather than by trade roughly triples the width of an interval, and often moves it across zero.
Every fill compared with the quote at its own timestamp, so slippage is measured rather than assumed. Second release.
A broker file does not say that two fills were a roll, that four separate orders were one condor, or what an open index position was worth on 31 December. fillstub labels each of those and asks, rather than picking an answer that would look finished.