← ATRChannel_MM

ATRChannel_MM — Fixes

ENGINEERING COMPLETEAudited 2026-09-13· mm-dca engine· gunbot-quant· spot

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_MM audit and measured on every one. Recorded here so this strategy's report stands on its own rather than only by reference.