最近在手搓魔改中低频回测代码,最初想用多进程跑然后拼接结果,最后发现行情数据格式的设计(long/wide_format等)就可以大幅提高回测速度,订单处理合理简化整个回测速度也可以起飞。改了一周后发现还可以向量化进一步加速…于是果断暂停下来,心中默念:“够用就行了”。
过去的一年过去感觉比往年慢, 可能是接受的信息密度和工作强度大幅强于往年。
-去年1月1号注册的deepseek,当时以为收费续了300块-
-2025年1月Pandaai在北京举办的量变学院(第三次?),得以进一步窥探量化投资世界
3月用重庆课上开源的回测框架实现了自己的一个rankIC+规则补丁的“四不像”策略。结果醒目但实则factor数据中有算子参数过拟合,未来信息通过参数强化了策略表现。
但不管怎么样先实盘走起来看看。我用了一个比较偷巧的办法就是在回测框架中插入了实盘的账户查询和交易模块,用回测当前运行的时间判断是否激活实盘交易动作。盘中随着行情数据更新不断进行回测,只要回测曲线稳定,不断更新的目标持仓减去当下账户持仓就是当下的交易动作。然后就是连续每天盘中按照既定办法开展更新因子,监控回测当天的目标仓并实盘。
-股票多因子与传统投资价值的取舍不矛盾
结果没有最初回测的那么理想但也不错,于是每天忙得不亦乐乎,直到交易到了一只退市标的(并且我主观上还有补仓),当月录得全年最大回撤。后来又是各种技术补丁/暴露风控/时序风控/一系列完善开发下来开始进入了9月。策略逐步稳固下来,我进一步自动化以减少日常工作量和手动干预引入的不确定性,后面又是一系列交易中窥探的灵感和正负反馈而引入的改进优化工作。实盘的反馈是即时直观且丰富的,遇到略微好的策略就可以早实盘,这种反馈/迭代的闭环无法取代(特别我这类惰性强的)。
课后知识消化和投研学习方面,收获最大的还是实践了一遍较专业的数据-模型-交易流程,老师们提到的无数模型思路和工程思路提供巨大帮助。代码方面以前觉得不可能得复现魔改在llm协助下变得可能,IDE, 面向对象编程,复杂功能拆解,类复用继承,缓存机制,线程/进程,GPU_pytorch, 虽然目前没有用上这些都是很好的知识技能储备(有可持续扩充低相关性策略的能力是王道)。
流水账快写完了。投研交易方面今年觉得收获很大的几句话(很多来自课上老师和同学交流):
- 机器学习在量化投资中的两个主要工作就是:有效信息获得(提纯降维等)和模型算法选择优化及匹配
- 不过于追求完美,尽早实盘小步快跑,牢记当下投研要解决的是什么问题,也就是:场景!场景!场景!(上过的四次课上不白老师说得最多的就是这两个字!)。这又与第1条关联上了。
- 凯利公式揭示的收益本质,所以投资宽度深度期限频率等很多问题的选择,再结合主观风险偏好客观限制,这些优先的问题决定了我们投资目标策略方向的取舍(如果在机构里则多由机构决定,但好的机构也会考虑个人个性偏好)。
- 不是直接给代码,但人与人的交流思想碰撞不会消失,StackOverflow上尽管提问少越来越少,但肯定不会消失(openai会给他续命fresh food for training)。一手的交流切磋不会过时,线下课线下活动社群等等。
就这样,新年先唠到这里。