dragon_branch_configs.py 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. from __future__ import annotations
  2. from dragon_strategy_config import StrategyConfig
  3. def workbook_preserving_config() -> StrategyConfig:
  4. return StrategyConfig()
  5. def alpha_first_selective_veto_config() -> StrategyConfig:
  6. return workbook_preserving_config().with_updates(
  7. deep_oversold_selective_positive_b1_c1_max=15.3,
  8. deep_oversold_selective_shallow_c1_min=12.0,
  9. deep_oversold_selective_shallow_b1_min=-0.025,
  10. deep_oversold_selective_mixed_c1_max=10.2,
  11. deep_oversold_selective_mixed_require_no_ql=True,
  12. )
  13. def alpha_first_glued_selective_veto_config() -> StrategyConfig:
  14. return alpha_first_selective_veto_config().with_updates(
  15. glued_selective_hot_c1_min=40.0,
  16. glued_selective_hot_b1_min=0.10,
  17. glued_selective_low_c1_min=23.0,
  18. glued_selective_low_c1_max=28.0,
  19. glued_selective_low_b1_max=0.02,
  20. )
  21. def alpha_first_glued_refined_hot_cap_config() -> StrategyConfig:
  22. return alpha_first_selective_veto_config().with_updates(
  23. glued_selective_hot_c1_min=40.0,
  24. glued_selective_hot_c1_max=75.0,
  25. glued_selective_hot_b1_min=0.10,
  26. glued_selective_low_c1_min=23.0,
  27. glued_selective_low_c1_max=28.0,
  28. glued_selective_low_b1_max=0.02,
  29. )
  30. def alpha_first_glued_followthrough_probe_config() -> StrategyConfig:
  31. return alpha_first_glued_refined_hot_cap_config().with_updates(
  32. glued_followthrough_pending_enabled=True,
  33. glued_followthrough_confirm_window_bars=3,
  34. glued_followthrough_allow_mid_zone_very_weak_b1=True,
  35. glued_followthrough_allow_high_zone_weak_b1=False,
  36. glued_followthrough_allow_ql_rebound_weak_followthrough=False,
  37. glued_followthrough_require_ql_buy_reconfirm=True,
  38. glued_followthrough_require_close_break_signal_close=True,
  39. glued_followthrough_require_b1_repair=True,
  40. glued_followthrough_b1_repair_min=0.02,
  41. )
  42. def alpha_first_glued_followthrough_mid_exit_probe_config() -> StrategyConfig:
  43. return alpha_first_glued_followthrough_probe_config().with_updates(
  44. glued_followthrough_exit_hold_kdj_only_enabled=True,
  45. glued_followthrough_exit_hold_kdj_only_days_max=12,
  46. glued_followthrough_exit_hold_kdj_only_c1_low=55.0,
  47. glued_followthrough_exit_hold_kdj_only_c1_high=60.0,
  48. glued_followthrough_exit_hold_kdj_only_a1_min=0.0,
  49. glued_followthrough_exit_hold_kdj_only_b1_min=-0.02,
  50. )