Methodology
How the tracker calculates your trades
The dashboard organizes the trade records you enter so you can review positions, realized outcomes, and upcoming obligations in one place.
Recorded trade data
Results are based primarily on entries supplied by the user, including trade type, quantity, dates, strikes, premiums, fees, and closing details. Accuracy depends on the completeness of those records.
Open and realized results
Open-position figures are estimates and can change. Realized figures use the recorded closing, expiration, assignment, or roll information. Brokerage statements remain the authoritative record.
Expiration Watch
Open options approaching expiration are elevated on the dashboard and grouped by urgency so time-sensitive positions are easier to review.
Wheel-cycle organization
Related cash-secured puts, assignments, stock positions, and covered calls can be viewed as a connected cycle to show the history of the strategy.
Important limitations
Our Discord trading bots (separate from your subscription)
Every performance figure we publish links here. This page states what the numbers are, how they were calculated, what they exclude, and what could make them worse. If a number appears in a post, a video, or the Discord and isn't explained here, treat it as unverified.
The strategy being reported
A systematic screener for bull put credit spreads and cash-secured puts on large-cap US equities. It is rules-based and automated - there is no discretionary override.
Our proprietary scanner filters a universe of large-cap US equities on every run, through trend, pullback, financial quality, earnings-timing and liquidity screens, and produces a ranked, graded board of the best bull put spread and cash-secured put available on each name that survives. Most names don't survive.
In broad terms, the screens cover:
- Trend: the stock has to be in an established uptrend. We do not sell puts on broken charts.
- Pullback: it has to be pulling back within that uptrend rather than breaking down.
- Financial quality: a fundamental screen including positive earnings growth.
- Earnings avoidance: no scheduled earnings event inside the life of the trade.
- Liquidity: size and traded-volume floors, so positions can actually be closed.
The contract itself must then qualify against our standards for expiration window, delta, implied volatility and the credit received relative to the risk taken.
Risk limits bind before any trade is placed, and a trade that breaches one is trimmed to fit rather than forced through: a cap on open positions per ticker; one open spread per ticker per expiration, so a single gap through one week cannot take several at once; a cooling-off period before the same ticker can be taken again; caps on sector concentration and on total capital at risk; a per-trade risk budget scaled to the setup's grade; and position size held flat until the account is large enough to absorb a bad fill.
Risk is measured throughout as actual maximum loss, (width minus credit) x 100 x contracts, never notional width.
The specific filters, thresholds, bands, weights and parameter values behind these rules are proprietary and are not published.
Results
2026 — year to date (partial year). Period: 24 April 2026 to 30 September 2026, 110 trading sessions. 24 April 2026 was the bot's first day of record, so 2026 is a partial year. Results are updated quarterly; each completed calendar year will be shown as its own block, with the current year to date first.
Account: real money. Balance on 24 April 2026, the first day of this record, was $20,000.
Broker: tastytrade.
Gross realized P/L: $46,171.50
Commissions and fees: -$1,398.28
Net realized P/L: $44,773.22
Net return on starting capital: +223.9%
Total positions taken: 404. Closed: 360. Still open: 44. Winners: 322. Losers: 38. Win rate: 89.4%.
The numbers that matter more than the win rate
Average winning trade: $205.88
Average losing trade: -$529.51
Expectancy per trade: $128.25
Profit factor: 3.29
Maximum drawdown: -$2,990.00, which is -15.0% of starting capital
Read those together. A losing trade costs roughly two and a half times what a winning trade makes. That is normal and expected for credit spreads - you are collecting small premiums against occasional larger losses. The strategy is profitable because the win rate is high enough to carry that ratio, not because losses are small. Anyone quoting the 89.4% without the -$529.51 beside it is misleading you.
What these figures exclude, and other limitations
Read this section before drawing any conclusion from the numbers above.
- About five months (110 trading sessions). This is a short record by any standard, and short records flatter strategies that sell premium.
- No major volatility event occurred in this period. Premium selling performs well in calm and trending markets and poorly in sharp, correlated drawdowns. This record has not been tested by one. Expect materially worse results in a market shock.
- 44 open positions are not included. These are realized figures on closed trades only. Open positions can and will close at a loss.
- Part of the fee data is estimated. Fees are attached to all 360 closed trades, but 159 of them were calculated retroactively using this account's own measured per-contract rates rather than recorded at the time. Total fees came to $1,398.28, roughly 3% of gross P/L, so the effect either way is small. But part of it is an estimate and we would rather say so. From the 2027 reset onward, fees are recorded live from the first trade.
- The account grew during the period. Later trades were sized against a larger balance. The +195.8% is return on starting capital, which is the standard convention but not the return any single dollar earned throughout.
- These are the operator's own results, in the operator's own account. They are not the results of any subscriber, and no subscriber should expect to replicate them. Capital, timing, fills, sizing and discipline all change outcomes.
- Past performance does not indicate future results. Most retail options traders lose money.
Figures we deliberately do not publish
Our internal dashboard calculates a projected annual return by extrapolating the current run rate. We do not publish that number and it should not be quoted. It is a forward projection, not a result: it assumes conditions continue unchanged, which they will not. Any annualized or projected figure is hypothetical performance and we treat it as internal only.
Other live bots — reported separately
Each bot runs in its own account and its results are never combined with the screener's or with each other. Both are real money. For 2026 these two bots are shown in dollars without a percentage return, because their accounts had no fixed starting balance. From 1 January 2027 every bot's account resets to a fixed starting balance and each year's results will include a percentage return. Average win, average loss, expectancy, profit factor and drawdown are before fees; net P/L is after fees.
0DTE index spreads — 2026 year to date (partial year)
Period: 23 July 2026 to 30 September 2026, 49 trading sessions. Same-day-expiry credit spreads on SPX, NDX and RUT. Execution was fully automated on 25 August 2026; before that the same signals were placed by hand (59 of the 171 trades).
Gross realized P/L: $5,573.00
Commissions and fees: -$2,215.92
Net realized P/L: $3,357.08
Positions taken and closed: 171 (all close the same day). Winners: 141. Losers: 30. Win rate: 82.5%.
Average winning trade: $111.72
Average losing trade: -$339.33
Expectancy per trade: $32.59 before fees, $19.63 after fees
Profit factor: 1.55
Maximum drawdown: -$2,495.00
Fees matter much more here than for the screener: they took about 40% of gross P/L, because each trade is small and opens and closes the same day. 33 of the 171 fee figures were modelled from this account's own measured rates rather than recorded by the broker. Ten weeks is a very short record.
Monthly income put spreads — 2026 year to date (partial year)
Period: 11 August 2026 to 30 September 2026, 36 trading sessions. Bull put credit spreads on SPX and RUT expiring several weeks out.
Gross realized P/L: $2,277.00
Commissions and fees: -$165.12
Net realized P/L: $2,111.88
Total positions taken: 45. Closed: 33. Still open: 12. Winners: 31. Losers: 2. Win rate: 93.9%.
Average winning trade: $96.03
Average losing trade: -$350.00
Expectancy per trade: $69.00 before fees, $64.00 after fees
Profit factor: 4.25
Maximum drawdown: -$300.00
This is the shortest record on the page: 33 closed trades and only 2 losses in about seven weeks. A win rate on this few trades means very little. 12 open positions are not included and can close at a loss.
Strategies not included in these figures
- 0DTE index bot: live, real money. Reported in its own section above.
- Monthly income put spreads: live, real money. Reported in its own section above.
- Small Account Journey: in testing, unreleased, not reported.
- Daily Plan and Swing: paper trading forward tests only, never combined with live results.
- The operator's personal discretionary trading: excluded entirely and never reported.
Paper-traded results are never combined with live results in any figure we publish.
How results are recorded
Every position is written to the trade journal at open and at close by the bot itself, not entered by hand afterwards. Fees are attached per trade. Setups that were screened but never entered are not counted as trades. Setups rejected by a position cap are recorded as skipped, not as losses or wins.
From 1 January 2027, each bot's account is reset to a fixed starting balance at the beginning of every calendar year, so the reported journal stays reconcilable against the broker's own balance. Each year is then reported as its own discrete period from a known starting figure.
Corrections
If a figure on this page is found to be wrong, it is corrected here and the correction noted with its date. Published figures are not silently revised.
- 5 October 2026 - Results refreshed through 30 September 2026, and results for the 0DTE and monthly income bots added in their own section. Results are now updated quarterly, shown as the current year to date plus each completed year. Recomputing the earlier 24 April to 11 September screener window from the current journal gives 339 positions taken and 296 closed, against the 341 and 295 previously published, because the journal's records for that window have been revised slightly since. The new figures use the journal as it stands. The average loss and maximum drawdown for that window are unchanged.
- 5 October 2026 - Results refreshed through 30 September 2026. Results are now updated quarterly, shown as the current year to date plus each completed year. Recomputing the earlier 24 April to 11 September window from the current journal gives 339 positions taken and 296 closed, against the 341 and 295 previously published, because the journal's records for that window have been revised slightly since. The new figures use the journal as it stands. The average loss and maximum drawdown for that window are unchanged.
- 5 October 2026 - Monthly income put spreads were listed as unreleased. The strategy is now public and its positions are posted in Discord; the listing has been updated. The figures on this page are unchanged and still cover the bull put screener only.
- 16 September 2026 - the reporting period was described as 141 active trading days. That figure was the calendar-day count for 24 April to 11 September 2026, not a count of trading sessions, of which the period contains roughly 97. The day count has been removed rather than restated, because the reporting period is defined by its dates. The trade and P/L figures are unchanged.
Disclaimer
Options Income Harvester is a publisher of general market commentary and software for tracking your own trades. We are not a registered investment adviser, broker-dealer, or financial planner, and we do not provide personalized investment advice. Nothing here is a recommendation to buy or sell any security or to adopt any strategy, and nothing here accounts for your financial situation, objectives, or risk tolerance.
Options involve substantial risk and are not suitable for all investors. Selling credit spreads and cash-secured puts can produce losses substantially exceeding the premium received. Before trading options, read Characteristics and Risks of Standardized Options, available from your broker or at theocc.com.
Figures current as of 30 September 2026.