ATRChannel_MM — Fixes
Every defect the audit found and how it was repaired — the same measurements as the engineering record, without the code.
2 issues found and repaired — 1 defect, 1 warning.
| # | Issue | Severity | Surface |
|---|---|---|---|
| 1 | No defect of its own — every automatic fixer found nothing to change | NOTE | all five |
| 2 | Three defects this file would have carried were repaired across its family | DEFECT | inherited |
Every fix was verified by re-running the full backtest across all 7 markets and comparing the result record against the pre-fix baseline. Where a fix is stated to change no behaviour, the two records are identical to the byte.
No defect of its own — every automatic fixer found nothing to change
Severity NOTE · Surface all five
Nothing. The audit is recorded here so the report is complete on its own terms rather than being silent about the surfaces that were checked.
Why it matters. A report with no fixes section reads as an audit that was not done. It was: five surfaces were checked and the three behavioural fixers ran and reported zero sites.
The five presentation surfaces, and what each fixer changed
| surface | state | fixer result |
|---|---|---|
| Console logging | 18 tagged calls via the tagged log emitter, 0 off-format, 7 exempt |
0 sites rewritten |
| Side panel | 6 rows → 9 rendered, all tooltipped | 0 tooltips added |
| Chart marks | fill-confirmed | — |
| Palette | 8 / 8 canonical | — |
| GUI inputs | 32 of 32 knobs read at runtime — 17 at shipped defaults, 15 once MM_signal changes |
0 inert, 0 untunable |
| Pyramid gate | not applicable to this engine | 0 files |
| Zero-holding knobs | already _qNum-style |
0 sites rewritten |
The fix. None applied. The re-measurement after the fix step was byte-identical across all seven markets, as it must be when nothing changed.
Effect on live behaviour. None.
Scope beyond this strategy. Second strategy in the queue to arrive clean, after
Donchian_Reversion_MM. Both are branches of the same shared mm-dca template.
Three defects this file would have carried were repaired across its family
Severity DEFECT · Surface inherited · Sites 3
ATRChannel_MM is the shared mm-dca template with MM_signal baked to atrchan, so it shipped with the same three defects as its fourteen siblings: an MM_fee setting exposed in the GUI and never read, leaving the profit target sitting exactly on the cost of trading; an MM_signal selector labelled "Signal length" and explained as a smoothing lookback, on the knob that decides which of fifteen engines runs; and an MM_fee tooltip that said "round-trip" where the file's own header says Fee % (per side).
Why it matters. The fee one is not cosmetic on this strategy. The profit target takes 82.2% of all its exits — 3,637 of 4,427 — so a target that could not clear the cost of exiting was the overwhelming majority of its behaviour. With the repair the operative target is 0.22% rather than 0.12%, and those target exits realise a mean +0.81%.
It is worth being precise about what the repair did and did not achieve. It moved the target from below the cost of trading to above it. It did not make the strategy profitable: fee drag is still 67.7% of the account, because the problem at this trade count is the number of round trips, not the width of any one of them.
Where the exits land, 3 years × 7 markets, after the family fee repair
| exit | count | share | mean gain | summed | worst |
|---|---|---|---|---|---|
| Gain Target | 3,637 | 82.2% | +0.81% | +2,947% | +0.22% |
| Indicator Exit | 669 | 15.1% | −1.41% | −943% | −6.98% |
| Stop Loss | 121 | 2.7% | −9.55% | −1,155% | −21.28% |
| TTL Exit | 0 | 0% | — | — | — |
MM_maxHold fired zero times in 4,427 exits. It is read, so it is not inert, but at these defaults it is unreachable. The worst Gain Target result is exactly +0.22%, which is MM_gain + MM_fee — the repaired target, landing precisely where it should.
The fix. MM_GAIN_NET: MM.gain + MM.fee derived once beside the config block (line 702) and used for both the exit test and the chart line, by the fee-target fixer; the selector and fee copy corrected in the GUI editor by the audit tooling. The full derivation and the family-wide measurement are in the the SuperTrend_MM audit's engineering record.
Effect on live behaviour. Changed behaviour at the shipped defaults, when it was applied during the SuperTrend_MM audit. It was applied because the previous target was the break-even line rather than a profit target, and because the GUI already promised the operator that the fee setting would widen it. Across the family the repair improved profit factor on 91 of 98 market runs.
Scope beyond this strategy. Applied to all 15 mm-dca strategies during the
SuperTrend_MMaudit and measured on every one. Recorded here so this strategy's report stands on its own rather than only by reference.