$25 Account

Every action, every backtest, every number. Generated 2026-11-08 05:35 UTC from the engine's own artifacts. No figure on this page is typed by hand, and verify_page.py recomputes each one from the source files and fails if any disagree.

Current state

Mode execute · Cash $0.00 · Positions 0 · Trades today 0

Broker-side trade approval required: False · Equity session open: False · Last tick 2026-11-08T05:33:24+00:00

Day P&L +$0.00 · Position book readable: True

Trades

No orders placed. The engine is running in observe mode and no cash has settled in the account yet.

Full-period backtest — 8 rules, 10 instruments, 6 years of daily bars

Signal computed on the close of bar t executes at the open of bar t+1. Costs charged at 5 basis points per side, both directions. Buy-and-hold is the comparison throughout, never a zero line. Drawdown is marked to market on every bar, including bars where a position is still open.

RuleMean CAGRBeat B&HMean max DDTrades
buy & hold22.3%——10 one per symbol
SMA 50/2009.5%0/1035.0%45
Mom1208.8%1/1046.1%266
Mom607.9%1/1047.2%364
SMA 20/504.2%1/1051.3%159
RSI2<102.4%1/1053.3%2007
Donchian202.3%1/1035.0%1065
RSI2<50.7%1/1053.9%1900
GapDown6%0.1%0/1040.0%886

Mean CAGR is the average across instruments, not a portfolio return. “Beat B&H” counts the instruments where the rule's CAGR exceeded buy-and-hold on the same symbol over the same dates.

Honest validation — in-sample / out-of-sample

Development used the first two-thirds of each series. The last two years were never touched while rules were chosen. Buy-and-hold below is measured over the same out-of-sample window, never the full period — comparing out-of-sample strategy returns to a full-period benchmark is the single easiest way to flip a verdict dishonestly.

A rule is only graded on symbols where it produced at least 20 out-of-sample trades. A win rate from three trades is noise, so those symbols are excluded and the exclusion is printed. ROBUST is unreachable on fewer than 5 judgeable symbols.

RuleOOS meanvs B&HJudged onVerdictBasis
Mom120+34.4%+85.6%0/0UNGRADEDnone of 10 symbols produced 20+ out-of-sample trades (best 12); not judgeable
Mom60+27.8%+85.6%0/1FRAGILEjudged on 1/10 symbols (9 excluded, under 20 OOS trades); beat buy-and-hold 0/1, positive 1/1, win-rate interval straddles 50% on 1/1; capped below ROBUST, needs 5 judgeable symbols
SMA 20/50+21.5%+85.6%0/0UNGRADEDnone of 10 symbols produced 20+ out-of-sample trades (best 6); not judgeable
RSI2<10+19.4%+85.6%3/10FRAGILEjudged on 10/10 symbols; beat buy-and-hold 3/10, positive 7/10, win-rate interval straddles 50% on 9/10
RSI2<5+16.2%+85.6%2/10FRAGILEjudged on 10/10 symbols; beat buy-and-hold 2/10, positive 7/10, win-rate interval straddles 50% on 8/10
GapDown6%+12.4%+85.6%3/7FRAGILEjudged on 7/10 symbols (3 excluded, under 20 OOS trades); beat buy-and-hold 3/7, positive 4/7, win-rate interval straddles 50% on 7/7
SMA 50/200+1.0%+85.6%0/0UNGRADEDnone of 10 symbols produced 20+ out-of-sample trades (best 2); not judgeable
Donchian20-0.0%+85.6%1/10FRAGILEjudged on 10/10 symbols; beat buy-and-hold 1/10, positive 3/10, win-rate interval straddles 50% on 10/10

8 rules graded: 5 FRAGILE, 3 UNGRADED. No rule earned ROBUST. The best judgeable rule, Mom60, returned +27.8% out of sample against +85.6% for simply holding the same instruments over the same window. It beat holding on 0 of 1 judgeable symbols.

Consequence, stated before any money is committed: there is no validated edge available at this size. Any trade that follows is an experiment with a high probability of total loss, not an investment.

Random-entry control — is the timing doing anything?

Each rule is re-run with the same number of trades, the same holding period and the same trend filter, but with entry dates drawn at random. If the real rule cannot beat randomly timed entries under identical conditions, the signal is not doing the work — the filter is.

RuleBeat randomShare
Mom607/1070%
RSI2<106/1060%

The strongest is Mom60 at 7/10 — better than a coin flip, but this is one control, on one window, with no multiple-testing correction across the rules tried. It is a reason to look closer, not a reason to fund.

Cost stress

The same rules over the full six years, with cost per side raised from 5 to 50 basis points. Figures are total return, not annualised, which is why buy-and-hold reads larger here than its compound annual figure above. The benchmark is re-priced at each cost so the comparison stays like-for-like. Fractional orders on a small account do not get institutional fills, so the right-hand columns are the realistic ones.

Rule5bp10bp25bp50bp
buy & hold+396.3%+395.8%+394.3%+391.8%
SMA 20/50+48.6%+46.2%+39.4%+28.7%
SMA 50/200+232.4%+231.3%+227.9%+222.4%
RSI2<10+61.4%+31.9%-28.0%-73.7%
RSI2<5+46.9%+21.3%-31.7%-73.8%
Donchian20+25.8%+13.3%-17.0%-50.2%
Mom60+135.5%+127.2%+104.1%+70.7%
Mom120+170.5%+164.7%+148.2%+123.0%
GapDown6%+7.2%-1.2%-21.5%-43.7%

At 50 basis points per side, 4 of 8 rules are negative outright (Donchian20, GapDown6%, RSI2<10, RSI2<5). Rules that beat buy-and-hold at every cost tested: none. Surviving a higher cost is not the same as beating the benchmark; the benchmark does not pay those costs because it trades once.

Post-earnings drift — tested and rejected

Real earnings dates, real reported versus consensus earnings per share, real daily bars. Entry at the first open after the report, exit 30 trading days later, 5 basis points per side. Win-rate intervals are Wilson 95 percent.

nMeanMedianWin rate95% interval
after an earnings beat34+3.10%-2.56%47.1%31–63%
after an earnings miss14+9.96%+7.84%85.7%60–96%

The same test, market-adjusted

Absolute return is misleading when every trade sits inside the same bull market. Below, each event's return has the return on SPY over the identical entry-to-exit window subtracted.

nMean excessMedian excessWin rate95% interval
after an earnings beat34+1.71%-0.50%47.1%31–63%
after an earnings miss14+7.26%+6.19%78.6%52–92%

The textbook prediction is the opposite of what happened. Buying after a beat produced a median of -2.56% and a 47.1 percent win rate. Buying after a miss did better: median +7.84%, 85.7 percent. The spread is -6.87 percentage points absolute and -5.54 after subtracting the market.

Sample limits, stated plainly: 48 observations across 8 instruments and 534 calendar days of a strong bull market in high-beta names. The miss bucket holds 14 observations, so its interval spans 60 to 96 percent. This is enough to reject a rule. It is not enough to establish one.

Independent review of this work

A second, stronger model was given the measured results and asked only to attack the method. Each criticism and its current status:

CriticismStatus
Eighty rule-symbol cells searched with no multiple-testing control and no reserved confirmation sampleopen — the out-of-sample split limits this but does not remove it
Mean CAGR across 10 correlated growth names is not an investable portfolio resultopen — stated on every table
CAGR compared without risk-matching; drawdown reduction is insurance, not alphapartly closed — drawdown now marked to market per bar on both sides
Earnings events treated as independent despite repeat companies and shared market windowsopen
Surprise divided by consensus EPS, which explodes when consensus is near zeroclosed for reporting — surprise is no longer displayed or ranked; the near-zero guard remains a real limit on any future use of it
Absolute PEAD results read off the mean while the median had the opposite signclosed — median and mean both reported, market-adjusted figures added
Returns not market-adjusted, so a bull-market rebound could fake the inversionclosed — excess of SPY over the identical window now reported
5 basis points per side is an assumption, not a measured execution costpartly closed — cost stress to 50bp now published
Drawdown measured on realised trades only, which hides intra-trade lossesclosed — mark-to-market every bar, exit cost charged
Verdict denominators differed from the numbers displayed beside themclosed — one verdict function, denominator printed, excluded symbols counted

10 methodological problems were named. 5 are closed, 2 are partly closed, and 3 remain open. Until the open ones close, no rule from this work is fit to be funded.

Candidates considered and not placed

None yet.

The strategy, and what it is expected to do

A balance this size has one path to a multiple: a single out-of-the-money call. One contract is the smallest unit, and premium is the whole cost, so $25 buys exactly one. Equity cannot get there — $25 of stock that doubles is $50.

Measured on six years of real daily bars across 16 high-beta names, with option premiums modelled from each name's own trailing 60-day realised volatility. Modelled, not quoted: no free source exposes delisted weekly contracts. Real implied volatility runs above realised volatility on these names, so live premiums would be higher and these numbers are probably kinder than reality.

MeasureValue
Median outcome of one affordable ticket0.530x
Mean outcome of one affordable ticket2.898x
Tickets that doubled or better20.3%
Tickets that returned five times or better13.3%
Tickets that lost everything5.8%
Best observed outcome554x

The rule actually wired in buys only when the underlying is above its 50-day average and up over five sessions. On the same data that raises the median ticket from 0.53x to 0.65x and the chance of a double from 20.3% to 27.4% on 179 observations. Eight filters were tried to find that, so treat it as the best of eight on one market regime, not as an established edge.

Starting from $25 and buying one contract at a time, 20,000 simulated paths of up to 60 attempts each give: median ending balance $5.25, 25.8% of paths finish above $25, 22.1% finish at double or more, and 8.5% are wiped out.

The median ticket loses money. That is stated here before the first order, not after. The mean is positive only because a small share of tickets pay many times over, and a single $25 account gets one draw at a time rather than the average of thousands.

Exit rules, enforced in code: sell at +100%, sell at -50%, and never hold inside 2 days of expiry. On a lottery-shaped payoff the exit matters more than the entry — an unrealised double is the rare good draw, and holding it back to zero is how the whole edge is given away.

Calls against puts, same structure

Puts are available and were tested identically. The result is not symmetric, so the rules are not symmetric either.

SideAll tickets: medianAll: 2x+Trend-aligned: medianTrend-aligned: 2x+
calls0.530x20.3%0.647x27.4%
puts0.664x17.6%0.624x16.5%

The trend filter helps calls (20.3% to 27.4%) and hurts puts (17.6% to 16.5%). So a call needs an uptrend, a put gets no trend condition at all, and calls are ranked ahead of puts. Puts exist so a day with no qualifying call is not wasted — not because the downside is the better bet, which it measurably is not.

Spreads and margin — tested, and rejected

The account is a limited-margin individual account with option level 3, which permits multi-leg strategies. A vertical debit spread was the obvious candidate: sell a further strike, use the proceeds to pay for a nearer one, and the same $25 buys a contract closer to the money. It was tested on the same six years, the same modelled premiums, the same $25 budget.

StructureMedian2x+Median ticketLong leg
naked call, trend filter0.647x27.4%up to $2510% out
call spread, no filter0.472x16.7%$6.2831% out
call spread, trend filter0.480x19.7%$6.2032% out
put spread, no filter0.974x6.5%$22.303% out
put spread, trend filter0.973x5.9%$21.993% out

Spreads lose on both counts. The short leg is cheap on the underlyings this account can afford, so it does not subsidise a nearer long strike — the cheap long leg ends up further out of the money than a naked call would be. And capping the payoff removes the fat tail that the whole positive average depends on. A put spread is the opposite failure: it holds its value (median 0.974x) precisely because it barely pays, with a 6.5% chance of a double.

Limited margin is not leverage. The broker's own description: it lets the account trade with unsettled funds, so proceeds from a closing sale can go straight into a new order before that sale settles, with no borrowing or leverage. Buying power never exceeds settled cash. The $25 is the ceiling, and the only thing limited margin buys is speed — which matters, because this strategy needs many independent draws and settlement would otherwise delay each one by a day.

Method and limits

Account state read 2026-11-08. This page is generated by build_site.py from the artifacts beside it, and audited by verify_page.py.