PyPortfolioOpt · 第 9 章 后处理与离散分配 章节摘要:前面所有优化器输出的都是连续权重(如 0.2347),但真实交易要买整数股。本章讲 的后处理:把连续权重 + 总预算 + 最新价格,转成「买多少股」的离散分配。PyPortfolioOpt 提供两种算法:贪婪法(greedy)按比例逐步凑整,简单快速;整数线性规划(integer LP)在离散约束下求最优,更精确。配套的 getlatestprices 从价格表取最新价。本章共 3 节,前置依赖为「第 48 章」(任一优化器输出权重即可)。 学习目标 阅读完本章,你应当能够: 用 DiscreteAllocation 把连续权重转整数股。 区分 greedy 与 integer LP 两种算法。
章节摘要:前面所有优化器输出的都是连续权重(如 0.2347),但真实交易要买整数股。本章讲
discrete_allocation.py的后处理:把连续权重 + 总预算 + 最新价格,转成「买多少股」的离散分配。PyPortfolioOpt 提供两种算法:贪婪法(greedy)按比例逐步凑整,简单快速;整数线性规划(integer LP)在离散约束下求最优,更精确。配套的 get_latest_prices 从价格表取最新价。本章共 3 节,前置依赖为「第 4~8 章」(任一优化器输出权重即可)。
阅读完本章,你应当能够:
从数学权重到真实下单,中间隔着「整数化」这一步——这一步处理不好,优化得再精也会失真。
DiscreteAllocation 的构造、输入输出、greedy 与 integer 参数。
两种离散算法的原理、精度与速度权衡、short_positions 处理做空。
从价格 DataFrame 取最新价、与 DiscreteAllocation 配合。
第 04~08 章(任一优化器输出连续权重) │ ▼ 第 01 节(DiscreteAllocation 容器) │ ├──► 第 02 节(greedy / integer LP 选算法) │ └──► 第 03 节(get_latest_prices 取价格) │ ▼ 整数股分配 + 剩余资金 → 第 10 章(可视化与扩展)
前置知识:
后续延伸: