折腾了几天终于弄完了回测。感谢@安红,@软猫克鲁对于这篇帖子的讨论,互相学习~
其中有一些简化的地方,还有一些自己添加的部分。效果比较差强人意,感觉AO,AC这类动量指标用得不是很好,也不是很对。
关于交易系统的介绍和相关概念见上一篇:神奇的鳄鱼法则交易系统——避开盘整,抢占趋势先机
简要介绍
1.选股
- 选择沪深300指数成分股
- 沉睡的鳄鱼,RBG三线纠缠。(选择连续20交易日处于沉睡状态的股票,建立buy_stock池)
- 每6个月更新股票池
- benchmark沪深300指数
2.入场
- 存在有效碎形
- 有效碎形被突破
- AO指标连续5日上行
- AC指标连续3日上行
- 收盘价高于前一日收盘价
- 按g.amount=总资金/股票池股数×乘数因子3买入。
3.止损&止盈
- 大盘3日累计收益率下跌3%,全部股票清仓
- 个股累计收益率(以成本价为基准)超过30%,全部卖出
- 个股累计收益率下跌10%,全部卖出
4.加仓&减仓(感觉用处不大,暂没有使用,源代码保留在注释里)
- AO连续5日上行,AC连续3日上行加仓10%
- AO连续5日下跌,AC连续3日下跌减仓10%
5.退出
小结一下
关于组合仓位控制
股票池组合操作对于仓位控制的要求比较严格。目前这方面还没有太多系统的想法,包括建仓比例,调仓以及不同股票的仓位配置,资金利用效率等等。
举例:g.amount在赋值时,简单的认为根据(总资金/buy_stock股数)×乘数因子 对资金配比。乘数因子是避免不符合条件的股票太多导致仓位较低,影响资金利用效率。
个人感觉,可以根据市值、pe或则其他体现每只持仓股票差异的因素来进行仓位管理,这方面有好的建议的朋友可以留言一起探讨。
止损条件
止损和止盈条件纯属个人风格吧。也是每一个策略里必然会加上的。15年至今的回测结果来看,回撤控制的比较好。当然也就牺牲了一些较大获利的可能性。