feat: 适应度门槛95+swing_point策略+多项改进

- 新增适应度门槛: min_backtest_fitness=95, 适应度<95暂停开仓
- 新增 SwingPointRetest 策略替代 Turtle
- 新增 monday_reset.py 周重置脚本
- exit_rules: 拖尾止损相对回撤模式
- market_state: 趋势检测优化
- position: 一票制并发锁+合约规格缓存
- optimize: Optuna 替代 DEAP 遗传算法
- realtime_trader: 适应度门槛+同向递增
- weights: 动态权重管理
- cron_optimize: PYTHONPATH 修复
- .gitignore: 排除生成文件
This commit is contained in:
silencesdg
2026-05-21 20:26:55 +08:00
parent 218efef538
commit e1691c3c41
14 changed files with 699 additions and 449 deletions
+4 -3
View File
@@ -10,7 +10,7 @@ import strategies # noqa: F401 — 触发策略注册
from logger import logger
from core.risk.market_state import MarketStateAnalyzer
from core.signal.registry import StrategyRegistry
from config import SYMBOL, TIMEFRAME
import config
class DynamicWeightManager:
@@ -27,7 +27,7 @@ class DynamicWeightManager:
def _ensure_strategies(self):
if not self._strategies_initialized:
self.registry.instantiate_all(SYMBOL, TIMEFRAME,
self.registry.instantiate_all(config.SYMBOL, config.TIMEFRAME,
data_provider=self.data_provider)
self._strategies_initialized = True
@@ -46,7 +46,8 @@ class DynamicWeightManager:
return result
def get_current_weights(self) -> dict:
"""获取当前实时权重"""
"""获取当前实时权重 — ★ 热加载配置"""
config.reload()
market_state, confidence = self.analyzer.get_market_state()
return self.analyzer.get_strategy_weights(market_state, confidence)