Verdict with every constant trained (Daily), stated plainly: the forcing
term fixes the flatline -- every re-excited variant holds a permanent non-zero floor -- and the LEARNED decay
profile lands within ~10-15% of the realized level (the analytic variant overshoots ~2x: the ACF-fitted damping
is far slower than the real post-peak drop). The learned CLOCK (hazard) makes the single-anchor forecast
genuinely oscillate (see the single-anchor panels below) and converges to the learned-profile model at long
horizons -- but at 1 candle ahead it is WORSE (146.1 vs 122.1 bps), because its expectation mixes the big
strike value into every forecast and |return|'s heavy tail punishes that in MAE. And the ceiling never moved:
no variant beats the anchor's own causal trailing-window mean (117.6 bps at 1 candle) at any horizon,
even 1 candle ahead. Decay shape, strike size, and strike timing are now all learned from the data --
the phase of the ~7-candle volatility cycle still carries no measurable forecast value over the local average
level. The re-excited model's honest value is structural (a forward projection that stays realistic forever,
usable as a sizing/take-profit envelope), not predictive edge.
Aggregate curves & horizon tables — every model, same anchors
The trained model vs BTC price — the candles it trained on and the candles it never saw
The model forecasts the |return| ENVELOPE (how big the next move
is), never direction — so against price it is a TUBE, not a line. Left of the divider: the last 150 Daily
candles of the training pool. Right of the divider (tinted): the 90-candle holdout continuation the model never
saw — every prediction there comes from a fit on that candle's own trailing window only, exactly as it
would run live. One-step MAE: 166.1 bps on the trained stretch vs
142.6 bps on the unseen stretch — no degradation crossing the boundary (a level
estimator doesn't overfit its pool; the unseen stretch simply ran calmer). The third chart is the harder test:
the model FROZEN at the boundary and projected 60 candles into the unseen future with no re-anchoring —
the envelope compounds into a bounding cone (price if every candle moved its full predicted size one way);
the real unseen price path stays inside it, which is what an envelope model is for — sizing the moves,
never calling their side.
Single real anchors, linear axis — where the oscillation actually lives
Why the aggregate curves above are flat while these oscillate: the
curves above average hundreds of anchors sitting at random phases of their own cycles (the wiggles cancel,
leaving level -- for the market's realized curve too), and even per-anchor the honest phase-diffusion weight
falls to ~0.12 after ONE cycle at the measured timing jitter (CV ~0.33). Below, single real Daily anchors:
the purple learned-clock path re-strikes and decays -- the sawtooth is real -- while the real |return| path
(grey bars) shows what it is up against. Note also the calibration gap: this stretch of the pool ran quieter
than its own trailing window, so every model sits high -- level error, not phase error, dominates.
The practical hookup, tested — envelope-scaled DCA ladder on the halving-cycle SHORT
Operator's "anticipated take-profit" idea, attached to the validated direction source and run through the
real ladder simulator (the operator's own baseline ladder, 24h re-center, halving SHORT window
2025-09-28 → 2026-05-04, funding off, nothing fitted to the window): at every re-center tick the rung
and take-profit distances multiply by the causal envelope scale (one-day-ahead learned-clock forecast ÷
trailing level, clamped [0.5, 2]). Results, full window / untouched final 15%:
| Arm | 1x full | 1x final 15% | 5x full | 5x final 15% |
| Baseline (operator's ladder) | +21.6% | −16.8% | +98.0% | −259% |
| Anticipated TP only (raw scale) | +17.9% | −17.8% | +56.2% | −247% |
| Entry + TP (raw scale, mean 1.40) | +15.8% | −14.5% | +64.8% | −184% |
| Anticipated TP only (bias-corrected) | +19.6% | −17.3% | +72.8% | −249% |
| Entry + TP (bias-corrected, mean 1.05) | +25.4% | −17.0% | +129.6% | −274% |
Honest read, per-slice decomposed before trusting the headline: the take-profit-only scaling
(the literal "anticipated TP") LOSES in every variant. The bias-corrected entry+TP arm's full-window win
decomposes into regime-correlated slices — at 1x the per-slice edges are noise (±0.5pp, split 2–2);
at 5x it gains in the three profitable slices (+2.8/+3.4/+11.6pp) and gives back MORE in the adverse final
slice (−15.3pp). That is "amplifies whatever the halving call is doing," not forecast skill — consistent
with the horizon tables above (envelope shape adds nothing beyond level). The one real, reproducible effect:
the RAW (systematically wider) scale is a de-risking knob — fewer fills (449→363), slower deployment,
smallest adverse-slice losses at both leverages — a risk dial, not an edge.
scripts/run_envelope_scaled_dca_ladder_check_v1.py · logs/envelope_scaled_dca_ladder_check_v1_summary.json
scripts/run_reexcited_damped_wave_check_v1.py · evolution/reexcited_damped_wave_v1.py ·
logs/reexcited_damped_wave_check_v1_summary.json · peaks: strict local max ±3 candles, confirmed-only
(causal); cycle stats, learned profile, and hazard clock from each anchor's own trailing 180-day window;
hazard forecast: exact renewal-process phase distribution propagated candle by candle, no Gaussian
approximation. Daily first per the operator; finer timeframes only if something here had won.