成本不是报告末尾的一行备注,而是每次进出场都要面对的研究输入。若不同实验使用了不同成本假设,结果之间就不能直接比较。
先拆成三类
手续费
手续费通常按成交金额、成交数量或固定费率计算。需要记录费率、最低收费、买卖方向差异和取整规则。
点差
点差是买价和卖价之间的差异。使用只有一条中间价的历史数据时,应明确它不能直接代表真实的 Bid/Ask 成交条件。
滑点
滑点表示预期价格和实际成交价格之间的偏差。研究时至少应记录滑点单位、方向、是否固定,以及异常滑点时是否暂停新增交易。
把毛结果和净结果分开
对一笔交易,可以先记录不含成本的毛盈亏,再单独扣除每类成本:
net_pnl = gross_pnl - fee - spread_cost - slippage_cost
总成本应按每一笔成交计算,再汇总到区间结果。不能只在最后用一个比例粗略扣除,否则无法定位结论对哪一个假设敏感。
复盘报告应该写清楚什么
- 价格来源是成交价、Bid/Ask 还是中间价;
- 手续费率和计费单位;
- 点差的来源、时间范围和缺失处理;
- 滑点的单位、方向和上限;
- 成本参数是否在样本外保持不变;
- 成本变化对交易次数、净结果和最大回撤的影响。
一个可执行的检查
固定数据版本和成本参数后,先跑出基线;再只改变一个成本参数,比较净结果和风险指标的变化,不要同时修改多个条件。
边界说明
成本假设越接近实际,不代表历史结果就能预测未来。数据质量、样本外区间、参数稳定性、流动性和异常行情仍需单独验证。历史复盘和模拟训练不构成投资建议,也不代表未来收益。
