Category: Backtests

Honest backtest results — including the strategies that failed. Methodology, slippage, and out-of-sample checks.

  • Selling Puts for Income: The Honest Report Card

    Futures get most of the attention around here, but a chunk of the account runs a much slower strategy: selling cash-secured puts on index ETFs and large caps — the front half of “the wheel.” We’ve been running it live, automated, for months. Here is the honest report card, because it is not the one the wheel-selling influencers give you.

    The pitch versus the ledger

    The pitch: collect premium every week, and either keep the cash or get assigned stock at a discount you already agreed to. Win-win, supposedly. The ledger after months of live, automated selling: roughly flat. Not a disaster — but not the effortless income stream it gets sold as, either.

    Why the easy money isn’t

    • You collect pennies in calm markets and hand them back in fast ones. Put selling is short volatility: the weeks that pay you are the weeks you didn’t need the money, and the week that hurts takes several winners with it.
    • Assignment clusters at the worst time. You get put the stock precisely when everything is falling — which is also when the “discount” you locked in stops looking like one.
    • Stale quotes will lie to you. A practical trap we hit with broker data: options marks based on a prior day’s close can be wildly wrong after a gap. If your bot quotes premium off a stale mark, it will happily sell risk for a fraction of its worth. Sanity-check every quote against a model before trusting it.

    Where options data has earned its keep

    The most valuable thing the options market gives our trading isn’t premium — it’s information. Dealer gamma positioning, computed from open interest, drives the daily NQ/ES levels in the sidebar of this site and tells us which regime the index is in before the session opens. That pipeline is documented in Dealer Gamma Levels Without Paying for Options Data.

    The verdict so far

    Premium selling stays on as a small, systematic sleeve — it teaches market structure and the flat result is real data, not failure. But if you’re choosing where an active trader’s attention goes, the futures strategies on the scoreboard have earned it more. As always: not advice, size small, and read the risk disclaimer.

  • Research Log: Turning a 98% Gap-Fill Statistic Into a Tradable System

    Research Log: Turning a 98% Gap-Fill Statistic Into a Tradable System

    This is a full research log — from raw statistic to finished strategy — so you can see exactly how we work and where the traps are. The starting point: on index futures, when the market gaps down at the open, price comes back to fill at least half the gap on the vast majority of sessions. On ES and YM the half-fill rate runs 98–99%. That number is so high it practically begs to be traded. The question is whether a statistic that strong survives contact with stops, targets, and real execution.

    Step 1: Define the trade before looking at results

    A fill statistic is not a strategy. We froze the rules first: on a gap-down open, go long at the opening print, take profit at the half-gap level, and cap risk with a fixed points stop. No re-entries, no discretion. Execution on 5-minute bars with slippage charged both ways. Freezing the rules before peeking prevents the quiet parameter-shopping that inflates most published results.

    Step 2: Sweep, but honestly

    The one free parameter is the stop distance, so we swept it across a grid on ~90 days of data per instrument — the same grid for every market, no per-market tuning beyond the stop itself. Results diverged sharply by instrument:

    • YM: the standout — profit factor near 3 with a wide stop, drawdown contained around $1.3k per contract
    • ES: strong with a tight stop — profit factor around 2.6
    • NQ: workable but weaker, around 1.8 with a mid-size stop
    • GC: dead. Gold’s gaps do not behave like index gaps, and no stop setting rescued it

    That instrument ranking mirrors the underlying fill rates, which is what you want to see: the strategy’s edge tracks the statistic it was built on. When a sweep produces a winner whose edge doesn’t line up with the underlying stat, that winner is usually noise.

    Step 3: Read the geometry honestly

    Notice what this trade is: a high-probability target with a protective stop that loses more per loss than a win makes per win — the tight-target, wide-stop shape we keep warning about. The 98% fill stat is what makes that geometry survivable. But it means the tail scenario — a gap-down that keeps falling all day — is where all the risk lives. The stop is not decoration; it is the entire risk model. Size accordingly.

    What would falsify this

    • A longer window (the 90-day sample is the weakest link — trend regimes flatter long-at-open systems)
    • A cluster of full-gap-and-go days, which concentrate the fat losses
    • Fill rates decaying as more traders lean on the same statistic

    We are treating this one as promising-but-in-sample until it clears a full-year retest. That verdict — and the retest — will get its own post either way. Nothing here is advice; the risk disclaimer applies in full.

  • That Viral Strategy Dashboard Probably Won’t Survive a Real Backtest

    That Viral Strategy Dashboard Probably Won’t Survive a Real Backtest

    A strategy dashboard made the rounds recently claiming +124R over a few months, a 61% win rate, a profit factor above 2, and a maximum drawdown of about six points of R. The equity curve was a nearly straight line. We rebuilt the strategy rule-for-rule and ran it through an honest backtest. The result: a profit factor of 0.86 — a losing system.

    How a losing strategy produces a beautiful dashboard

    • No transaction costs. Fast index futures strategies live or die on slippage. A backtest with perfect fills flatters every entry, and short-hold systems get flattered the most.
    • Cherry-picked conditions. The dashboard highlighted its “best hours.” When we tested exactly those hours, they performed worse than the rest — the classic signature of parameters selected after seeing the results.
    • An implausibly smooth equity curve. Real strategies breathe: they have losing weeks and flat months. A max drawdown of 6R against 124R of profit is not a sign of genius; it is a sign the curve was built by fitting to the data it is drawn on.

    The checklist we run before believing any result

    1. Reproduce it faithfully. Code the exact published rules — not your improved version — and confirm you get their trade count and win rate before you judge anything.
    2. Charge for every trade. Slippage on entry and exit plus commissions, scaled to the instrument. If the edge dies here, it was never an edge.
    3. Stretch the window. Anything under six months of data is a regime bet. Run a full year minimum, through both trend and chop.
    4. Test the claimed filters out-of-sample. If the “best conditions” only work in the sample they were discovered in, they are noise.
    5. Check the loss geometry. High win rates with small targets and wide stops hide rare catastrophic losses that a short backtest may simply never have hit.

    The uncomfortable takeaway

    Most shared strategies are not lies; they are honest overfitting. The author really did see those numbers — on the data the rules were tuned on, without costs. That is why we publish failures alongside winners here: the failure rate is the base rate. When something does survive slippage, a year of data, and out-of-sample checks, that survival means something. Everything else is a screenshot.