|
|
@@ -0,0 +1,95 @@
|
|
|
+# Dragon Stage 3 Stability Report
|
|
|
+
|
|
|
+## Baseline
|
|
|
+- trades: `107`
|
|
|
+- win_rate: `44.86%`
|
|
|
+- avg_return: `2.52%`
|
|
|
+- profit_factor: `3.31`
|
|
|
+- real BUY overlap: `106`
|
|
|
+- real SELL overlap: `105`
|
|
|
+
|
|
|
+## Holding Structure
|
|
|
+- `00-05d`: trades `30`, win_rate `0.00%`, avg_return `-2.03%`, avg_mfe `0.95%`, avg_mae `-2.61%`
|
|
|
+- `06-10d`: trades `35`, win_rate `34.29%`, avg_return `-0.81%`, avg_mfe `3.01%`, avg_mae `-2.94%`
|
|
|
+- `11-20d`: trades `21`, win_rate `80.95%`, avg_return `1.45%`, avg_mfe `4.36%`, avg_mae `-2.01%`
|
|
|
+- `21-40d`: trades `10`, win_rate `80.00%`, avg_return `6.33%`, avg_mfe `10.18%`, avg_mae `-3.36%`
|
|
|
+- `41d+`: trades `11`, win_rate `100.00%`, avg_return `24.13%`, avg_mfe `35.03%`, avg_mae `-2.56%`
|
|
|
+
|
|
|
+## Sample Split
|
|
|
+- `2016-2020`: trades `56`, avg_return `1.95%`, profit_factor `2.83`
|
|
|
+- `2021-2025`: trades `51`, avg_return `3.15%`, profit_factor `3.81`
|
|
|
+
|
|
|
+## Regime Structure
|
|
|
+- `mid_regime`: trades `55`, avg_return `3.49%`, profit_factor `4.31`
|
|
|
+- `low_oversold_regime`: trades `32`, avg_return `0.35%`, profit_factor `1.27`
|
|
|
+- `rebound_after_sell_regime`: trades `8`, avg_return `1.50%`, profit_factor `2.44`
|
|
|
+- `crash_probe_regime`: trades `6`, avg_return `4.62%`, profit_factor `10.52`
|
|
|
+- `high_regime`: trades `6`, avg_return `4.49%`, profit_factor `5.56`
|
|
|
+
|
|
|
+## Rule Ablation
|
|
|
+- `disable_entry_non_glued_positive_expansion_buy`: delta_avg_return `0.00%`, delta_profit_factor `0.00`, delta_aux_sell_overlap `0`
|
|
|
+- `disable_exit_knife_take_profit_1`: delta_avg_return `0.00%`, delta_profit_factor `0.00`, delta_aux_sell_overlap `0`
|
|
|
+- `disable_exit_knife_take_profit_2_glued`: delta_avg_return `0.00%`, delta_profit_factor `0.00`, delta_aux_sell_overlap `0`
|
|
|
+- `disable_exit_crash_protection_exit`: delta_avg_return `0.00%`, delta_profit_factor `0.00`, delta_aux_sell_overlap `0`
|
|
|
+- `disable_aux_same_side_cycle_cap`: delta_avg_return `0.00%`, delta_profit_factor `0.00`, delta_aux_sell_overlap `0`
|
|
|
+- `disable_knife_take_profit_2_wait_ql`: delta_avg_return `0.00%`, delta_profit_factor `0.00`, delta_aux_sell_overlap `0`
|
|
|
+
|
|
|
+## Candidate Pressure Points
|
|
|
+- `disable_entry_deep_oversold_rebound_buy`: delta_avg_return `0.54%`, real BUY `93`, real SELL `92`
|
|
|
+- `disable_entry_dual_gold_resonance_buy`: delta_avg_return `0.18%`, real BUY `92`, real SELL `93`
|
|
|
+- `disable_entry_glued_buy`: delta_avg_return `0.16%`, real BUY `44`, real SELL `50`
|
|
|
+- `disable_exit_predictive_b1_break_exit`: delta_avg_return `0.07%`, real BUY `105`, real SELL `104`
|
|
|
+- `disable_entry_early_crash_probe_buy`: delta_avg_return `0.03%`, real BUY `105`, real SELL `104`
|
|
|
+- `disable_entry_oversold_reversal_after_ql_buy`: delta_avg_return `0.03%`, real BUY `105`, real SELL `104`
|
|
|
+
|
|
|
+## Deep Oversold Subtypes
|
|
|
+- `positive_b1_rebound`: trades `2`, win_rate `0.00%`, avg_return `-2.98%`, fast_failures `1`
|
|
|
+- `shallow_false_start`: trades `3`, win_rate `33.33%`, avg_return `-2.63%`, fast_failures `2`
|
|
|
+- `deep_capitulation`: trades `1`, win_rate `0.00%`, avg_return `-2.05%`, fast_failures `1`
|
|
|
+- `mixed_oversold`: trades `3`, win_rate `33.33%`, avg_return `-1.80%`, fast_failures `2`
|
|
|
+- `classic_oversold`: trades `5`, win_rate `60.00%`, avg_return `0.04%`, fast_failures `1`
|
|
|
+
|
|
|
+## Focused Deep Oversold Experiments
|
|
|
+- `baseline`: deep trades `14`, delta_avg_return `0.00%`, real BUY `106`, real SELL `105`
|
|
|
+- `block_positive_b1_rebound`: deep trades `12`, delta_avg_return `0.10%`, real BUY `104`, real SELL `103`
|
|
|
+- `block_shallow_false_start_without_ql`: deep trades `11`, delta_avg_return `0.15%`, real BUY `103`, real SELL `102`
|
|
|
+- `block_both_remaining_weak_subtypes`: deep trades `9`, delta_avg_return `0.26%`, real BUY `101`, real SELL `100`
|
|
|
+
|
|
|
+## Predictive Break Experiments
|
|
|
+- `baseline`: predictive trades `1`, delta_avg_return `0.00%`, real BUY `106`, real SELL `105`
|
|
|
+- `short_b1_looser`: predictive trades `3`, delta_avg_return `-0.17%`, real BUY `106`, real SELL `104`
|
|
|
+- `short_b1_tighter`: predictive trades `1`, delta_avg_return `0.00%`, real BUY `106`, real SELL `105`
|
|
|
+- `long_b1_looser`: predictive trades `1`, delta_avg_return `0.00%`, real BUY `106`, real SELL `105`
|
|
|
+- `long_b1_tighter`: predictive trades `0`, delta_avg_return `0.07%`, real BUY `105`, real SELL `104`
|
|
|
+
|
|
|
+## Threshold Sensitivity
|
|
|
+- `predictive_b1_break_short_b1_max`: stable_real_alignment `False`, avg_return_range `0.17%`, profit_factor_range `0.15`
|
|
|
+- `deep_oversold_entry_c1_max`: stable_real_alignment `False`, avg_return_range `0.10%`, profit_factor_range `0.18`
|
|
|
+- `deep_oversold_entry_b1_min`: stable_real_alignment `False`, avg_return_range `0.09%`, profit_factor_range `0.06`
|
|
|
+- `predictive_b1_break_long_b1_max`: stable_real_alignment `False`, avg_return_range `0.07%`, profit_factor_range `0.04`
|
|
|
+- `glued_high_weak_rebound_high_b1`: stable_real_alignment `True`, avg_return_range `0.16%`, profit_factor_range `0.21`
|
|
|
+- `glued_high_weak_rebound_high_c1`: stable_real_alignment `True`, avg_return_range `0.09%`, profit_factor_range `0.14`
|
|
|
+- `post_exit_confirmation_window_days`: stable_real_alignment `True`, avg_return_range `0.00%`, profit_factor_range `0.00`
|
|
|
+- `aux_sell_high_zone_kdj_only_block_c1`: stable_real_alignment `True`, avg_return_range `0.00%`, profit_factor_range `0.00`
|
|
|
+
|
|
|
+## Fragile Parameters
|
|
|
+- `predictive_b1_break_short_b1_max`: minimum real BUY overlap `106`, minimum real SELL overlap `104`
|
|
|
+- `deep_oversold_entry_c1_max`: minimum real BUY overlap `104`, minimum real SELL overlap `103`
|
|
|
+- `deep_oversold_entry_b1_min`: minimum real BUY overlap `102`, minimum real SELL overlap `101`
|
|
|
+- `predictive_b1_break_long_b1_max`: minimum real BUY overlap `105`, minimum real SELL overlap `104`
|
|
|
+
|
|
|
+## Robust Parameters
|
|
|
+- `aux_sell_high_zone_kdj_only_block_c1`: avg_return_range `0.00%`, aux_sell_overlap_range `1`
|
|
|
+- `post_exit_confirmation_window_days`: avg_return_range `0.00%`, aux_sell_overlap_range `1`
|
|
|
+- `glued_high_weak_rebound_high_c1`: avg_return_range `0.09%`, aux_sell_overlap_range `0`
|
|
|
+- `glued_high_weak_rebound_high_b1`: avg_return_range `0.16%`, aux_sell_overlap_range `2`
|
|
|
+
|
|
|
+## Quant Judgment
|
|
|
+- `glued_buy` remains the structural backbone. Disabling it destroys alignment and does not produce a credible upgrade path.
|
|
|
+- `non_glued_positive_expansion_buy` is redundant in the current sample window: its aligned dates are now absorbed by `dual_gold_resonance_buy`, so it should not be treated as an independent alpha family.
|
|
|
+- `deep_oversold_rebound_buy` is the clearest weak entry family: removing it improves average return materially, but at a significant alignment cost.
|
|
|
+- Within the deep-oversold family, the weakest subtypes are `positive_b1_rebound` and `shallow_false_start`; this is now a subtype redesign problem, not a whole-rule deletion problem.
|
|
|
+- Safe default improvement was limited to rerouting 4 weak subtype dates to same-day fallback rules; blocking the remaining weak subtypes raises return modestly but degrades real-trade overlap too much for the current objective.
|
|
|
+- `knife_take_profit_2_glued` did not improve results when disabled in rerun form, which implies the current drag is partly replaced by alternative same-cycle exits rather than removed cleanly.
|
|
|
+- `predictive_b1_break` is now effectively a frozen bridge rule: loosening it worsens results, tightening it marginally helps but breaks workbook alignment.
|
|
|
+- Auxiliary sell compression parameters are relatively robust; major remaining optimization leverage is not in the aux layer.
|