Pack roadmap
Every strategy in the pack, where it is in the audit, and what is still open against it. The audited-build pages report what an audit found on one strategy. This page answers the question that sits between them: for the 412 strategies nobody has reached yet, what is already known to be wrong?
Pack-wide workstreams
A defect found on one strategy is almost never confined to it. Each class below was found during a single strategy’s audit, then re-detected across the whole pack by the same pattern that identified it — so the count beside it is the number of files that still carry it today, not the number that carried it when it was found.
- A setting of zero is read as “unset”38 filesWARNING
Zero is how an operator turns these features off. The reader falls back to the baked default whenever the configured value is falsy, and zero is falsy — so a setting of zero silently becomes the default and the control appears to do nothing. The fixer skips any setting used as a divisor, where zero would introduce a new failure instead of removing one.
Zero is how these features are turned off. The fixer refuses any setting used as a divisor, where zero would introduce a new failure rather than remove one.
- The strategy switches itself off below one order size24 filesDEFECT
The strategy decides whether it MAY buy and then how much to buy with two tests that contradict each other. The first allows a cycle while holding a fraction of an order's worth of cash; the second refuses to place anything without a whole order, and never sizes down to what is there. Every balance in that band passes the first and fails the second — and because the order size never shrinks, an account that drifts into the band stays there and the strategy stops trading for the rest of the run, silently. It also makes trading activity a function of the fee rate, which is what the cost-independence invariant exists to catch.
The worst class found so far, because it terminates a result rather than degrading one. Two strategies are measured doing it: every market ends holding exactly one order size, which is the account reaching the floor and stopping, not a measurement of edge. On the rest it is latent — each strategy is measured at a capital calibrated to its own sizing, and at that capital most never dip into the band. An operator running a smaller account does.
- The strategy silences its own logger unconditionally6 filesDEFECT
The strategy silences its own INFO logger once per cycle, so LOG_LEVEL=DEBUG does nothing and no exit message it contains can ever be printed. The motivation is real at 1m, but the runtime already gates on LOG_LEVEL; this overrides the operator's choice in the direction they cannot undo.
A third spelling of the same line was found after the first repair reported success, so six files had never been fixed.
- Side-panel rows with no explanation3 filesWARNING
A row with a label and a number and no explanation is the commonest presentation gap in the pack. The fixer refuses to invent text for a label it has no glossary entry for, so a residue here is a glossary gap rather than a skipped file.
The fixer refuses to invent text for a label it has no glossary entry for, so what remains is a glossary gap rather than a skipped file.
- A published report measured at the wrong timeframe2 filesDEFECT
Measuring a 1-minute strategy on hourly bars measures a different strategy. Every number on the published page is for a strategy that is not this one.
Measuring a 1-minute strategy on hourly bars measures a different strategy. The report has to be re-run, not corrected.
- The “Round trips” counter only counts the wins1 fileDEFECT
Every exit path books its outcome on one line and increments roundTrips only in the winning branch. The side panel prints it under a label whose own tooltip says “each round trip is one win or one loss”, so the panel contradicts itself and reads as a 100% win rate.
Found while auditing adxTrendMM. Display-only everywhere except one strategy, where it is the divisor of the reported average holding time.
Cleared
- A daily reset keyed on the wall clock0 files
Never fires inside a backtest, so the guard it drives is untested by every number published for that strategy.
- The DCA ladder sits below an unconditional return0 files
Changes behaviour at the shipped defaults, so it is applied per strategy with a measurement beside it.
- The order path is called without being awaited0 files
The cycle returns before the order is placed, so the quote is priced off the previous bar.
Every strategy
The pack ships 429 selectable strategies. 17 have been through the full audit — three years of real market data at the timeframe each one declares, after fees and slippage, with every defect found and repaired. The rest carry whatever the pack-wide scan has found in them, which is a floor on what an audit would find, never a clean bill of health.
55 of 429 strategies
What “done” means here
An item leaves this page when the source no longer contains it. That is a narrower claim than it sounds, and worth stating plainly: it means the defect is gone, not that the strategy is good. A strategy with nothing open is one whose known defects have been repaired — its performance is a separate question, answered on its audited-build page if it has one, and unanswered if it does not.
How every audit is measured — window, cost model, fill model and the five correctness invariants →