【20170520注:这篇文章是我刚来聚宽没多久作为新手写的,肯定是有毛病的,不必当真】
我在 基于魔法公式的简单策略,加上基于黄金分割线止盈及重建仓的机制。 初见成效。
1)运行的第一天首次建仓
2)如果沪深300指数高于建仓的点数50%,那么开始追踪高点
3)启动高点追踪后,如果回调到第一个黄金分割点(0.382),止盈清仓
4)如果继续回调第二个黄金分割点(0.618),重新建仓
5)如果重新建仓,回到第2)步
从 2006年开始,止盈清仓 和 重新建仓 一共发生了3对:
1) 2008-03-18 09:30:00 - INFO - 清仓。沪深300清仓点位3965.279;沪深300建仓点位964.29 沪深300区间高点5877.202
2008-10-21 09:30:00 - INFO - 建仓,当前沪深300点位1833.262
2) 2009-08-20 09:30:00 - INFO - 清仓。沪深300清仓点位3014.568;沪深300建仓点位1833.262 沪深300区间高点3787.033
2011-10-25 09:30:00 - INFO - 建仓,当前沪深300点位2507.877
3) 2015-06-30 09:30:00 - INFO - 清仓。沪深300清仓点位4191.549;沪深300建仓点位2507.877 沪深300区间高点5353.751
2015-10-23 09:30:00 - INFO - 建仓,当前沪深300点位3473.254
注意: 2015-06-30 的清仓,由于有好几只股票停牌,没有完全清仓,所以市值不是直线。
最后,如果你想测试其它时间段,为了避免破坏黄金分割的自相似性,我建议根据更前回测数据修改测试初始参数:
# 如果从20060101开始回测,采用这组设置
g.init_hs300 = 0 # 沪深300建仓点位
g.high_hs300 = 0 # 沪深300追踪高点
g.reinit_hs300 = None # 沪深300建仓的目标点位
# 如果想回测20150101-现在的情况
# 请先回测20060101-20141231的情况,
# 然后可从日志中获取最近的状态数据:
# 2014-10-23 09:30:00 - INFO - 满仓非追踪高点状态:沪深300建仓点2507.877
# 于是可填写成如下数据
#g.init_hs300 = 2507.877
#g.high_hs300 = 0
#g.reinit_hs300 = None
# 现在我想从20160418开始进入模拟盘(或者实盘跟踪)
# 请先根据上次回测(20150101-现在),获取最近的状态数据:
# 2016-04-15 09:30:00 - INFO - 满仓非追踪高点状态:沪深300建仓点3473.254
# 于是可填写成如下数据。作1天的回测就可以添加到模拟盘
# 注意:1)满仓非追踪高点状态,只需要填g.init_hs300
# 2)满仓追踪高点状态,需要填写g.init_hs300和g.high_hs300
# 3) 空仓等待状态,只需要填g.reinit_hs300
#g.init_hs300 = 3473.254
#g.high_hs300 = 0
#g.reinit_hs300 = None