系统不是一个策略函数
刚开始接触量化时,我容易把注意力放在策略本身:什么时候买,什么时候卖,指标如何计算。后来才意识到,策略只是系统中的一环。一个能被反复验证的系统,还需要稳定的数据、清晰的执行流程和可追溯的日志。
如果没有这些基础,策略结果很容易变成一张无法解释的曲线。涨了不知道为什么,跌了也不知道问题出在哪里。
模块拆分
我会把系统拆成几个层次:行情数据层负责采集和清洗,指标层负责计算特征,策略层负责生成信号,回测层负责模拟订单和资金变化,统计层负责输出结果和日志。
- 数据层要关注缺失、重复、时间戳和复权等问题。
- 策略层最好保持纯粹,尽量不要直接依赖外部环境。
- 回测层要明确手续费、滑点、成交规则和资金约束。
风险控制要前置
风控不应该是系统最后才补上的功能。仓位限制、最大回撤、单日亏损限制、异常行情保护,都应该尽早进入设计。因为真实市场里,最危险的往往不是策略没有收益,而是系统在异常情况下继续执行错误动作。
对个人学习来说,先把风险意识建立起来,比追求复杂模型更重要。一个普通但可解释的策略,通常比一个看起来很厉害但完全不可控的策略更适合长期学习。
一点小结
量化系统设计让我更重视工程纪律。数据要可追溯,策略要可复现,结果要可解释,风险要可限制。只有这些基础稳了,后续的研究才有意义。