⌂ Research Index · tradebotsecrets research record · evidence-first, negatives included
Damped Wave Horizon Check
BTC · Volatility envelope · Unforced fits vs the re-excited (forced) model
Damped Wave Horizon Check
Round 1 asked whether the unforced damped-wave equation models the market at the 7/30/90-day
horizons (it doesn't -- both the frozen and rolling fits ring down to zero while realized volatility never
decays). Round 2 adds the operator's fix: the FORCING TERM the equation is missing -- re-strike the oscillator
on the causally measured peak-timing clock. Round 3 (Daily first, per the operator) trains EVERY remaining
constant: the decay shape learned as an empirical post-peak profile, and the fixed median clock replaced by a
fully learned strike-arrival distribution (a renewal-process hazard, propagated forward candle by candle).
Every model is scored on the same real anchors.
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.