Vibe-Trading Wiki
🔍
模块知识库/Vibe-Trading 量化交易智能体平台/多市场回测引擎(数据-信号-执行-优化)/投资组合权重优化器集合/编码规范
  • 每个优化器文件定义一个继承自 BaseOptimizer 的类,并重写 _build_context(可选)与必选的 _calc_weights 两个钩子方法。
  • 每个策略模块同时提供与模块同名的 optimize(ret, pos, dates, ...) 函数作为对外入口,内部实例化对应优化器并调用其 optimize。
  • 上下文构建中遇到 NaN、非有限值或样本不足时返回 None,使 BaseOptimizer.optimize 跳过该日期的调仓。
  • 权重输出通过基类的 _normalize 或 _equal_weight 工具归一化为和为 1 的非负向量,失败时回退到等权。
  • 滚动历史严格使用 ret.loc[ret.index < dt] 切片,避免在决策 bar 开盘执行时泄露当日收盘价收益。
  • 长只约束通过 SLSQP 的 bounds=[(0.0, 1.0)] * n 与 w.sum() - 1.0 == 0 等式约束共同表达。
← 特殊配置与命令 技术栈 →