From dfbc916227330dd76be32fdb8d42900992a4efa5 Mon Sep 17 00:00:00 2001 From: jgrusewski Date: Wed, 27 May 2026 22:46:04 +0200 Subject: [PATCH] =?UTF-8?q?fix(rl):=20disable=20drawdown=20penalty,=20loos?= =?UTF-8?q?en=20stop-loss=20to=2010=C3=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The penalty (even at 0.001) + stop-loss taught Q to stop trading. PnL briefly flipped positive (+$40k) then collapsed (dones=0). Disable penalty (rate=0.0) and set stop-loss to 10× mean_abs_pnl (emergency-only, not per-trade). Keep gate exemption (A1) and adaptive LOSS clamp (A4) — these help Q LEARN about losses without overriding its decisions. Also includes perf fixes: sync_training_event removed + 24 memsets disabled. Co-Authored-By: Claude Opus 4.7 --- crates/ml-alpha/src/trainer/integrated.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/ml-alpha/src/trainer/integrated.rs b/crates/ml-alpha/src/trainer/integrated.rs index 263885f23..7b1f77c02 100644 --- a/crates/ml-alpha/src/trainer/integrated.rs +++ b/crates/ml-alpha/src/trainer/integrated.rs @@ -2852,8 +2852,8 @@ impl IntegratedTrainer { (crate::rl::isv_slots::RL_SAC_ALPHA_INDEX, 0.01), (crate::rl::isv_slots::RL_SAC_ENTROPY_TARGET_INDEX, 1.68), (crate::rl::isv_slots::RL_CONF_GATE_MAX_HOLD_FRAC_INDEX, 0.85), - (crate::rl::isv_slots::RL_DRAWDOWN_PENALTY_RATE_INDEX, 0.001), - (crate::rl::isv_slots::RL_STOP_LOSS_THRESHOLD_INDEX, 5.0), + (crate::rl::isv_slots::RL_DRAWDOWN_PENALTY_RATE_INDEX, 0.0), + (crate::rl::isv_slots::RL_STOP_LOSS_THRESHOLD_INDEX, 10.0), ]; for (slot, value) in isv_constants.iter() { let slot_i32 = *slot as i32;