无脑基金定投不靠谱

无脑基金定投策略

  1. 定投目标:159912.XSHE(深300ETF)
  2. 参照基准:159912.XSHE(参照自身)
  3. 定投期限:2014年1月1日-2019年12月31日(72期)
  4. 定投频率:每月第一个交易日,买入3000元
  5. 回测平台:聚宽

回测代码如下

# 导入函数库
from jqdata import *

# 初始化函数,设定基准等等
def initialize(context):
   # 设定沪深300作为基准
   set_benchmark('159912.XSHE')
   # 开启动态复权模式(真实价格)
   set_option('use_real_price', True)
   # 输出内容到日志 log.info()
   log.info('初始函数开始运行且全局只运行一次')
   # 过滤掉order系列API产生的比error级别低的log
   # log.set_level('order', 'error')
   
   # 每期定投金额
   g.cash = 3000
   # 初始化绝对净值变化
   g.profit_percent = 0
   ### 股票相关设定 ###
   # 股票类每笔交易时的手续费是:买入时佣金万分之三,卖出时佣金万分之三加千分之一印花税, 每笔交易佣金最低扣5块钱
   set_order_cost(OrderCost(close_tax=0.001, open_commission=0.0003, close_commission=0.0003, min_commission=5), type='stock')

   ## 运行函数(reference_security为运行时间的参考标的;传入的标的只做种类区分,因此传入'000300.XSHG'或'510300.XSHG'是一样的)
     # 开盘前运行
   run_monthly(before_market_open, monthday=1, time='before_open', reference_security='159912.XSHE')
     # 开盘时运行
   run_monthly(market_open, monthday=1, time='open', reference_security='159912.XSHE')
     # 收盘后运行
   run_monthly(after_market_close, monthday=1, time='after_close', reference_security='159912.XSHE')

## 开盘前运行函数
def before_market_open(context):
   # 输出运行时间
   log.info('函数运行时间(before_market_open):'+str(context.current_dt.time()))

   # 给微信发送消息(添加模拟交易,并绑定微信生效)
   # send_message('美好的一天~')
   
   # 要操作的股票:(g.为全局变量)
   g.security = '159912.XSHE'
   

## 开盘时运行函数
def market_open(context):
   log.info('函数运行时间(market_open):'+str(context.current_dt.time()))
   order_value(g.security, g.cash)

  
  
## 收盘后运行函数
def after_market_close(context):
   log.info(str('函数运行时间(after_market_close):'+str(context.current_dt.time())))
   #得到当天所有成交记录
   trades = get_trades()
   for _trade in trades.values():
       log.info('成交记录:'+str(_trade))
   
   # 日志输出运行时间
   log.info(str('【收盘后】(after_market_close):'+str(context.current_dt.time())))
   log.info('持仓价值:%s元' % context.portfolio.positions_value)
   log.info('可用资金:%s元' % context.portfolio.available_cash)
   log.info('持仓成本:%s元' % context.portfolio.inout_cash)
   log.info('一天结束')
   log.info('##############################################################')

定投回测效果如下

在这里插入图片描述

本次回测结论

根据本次回测结果发现,无脑定投并不一定会获得较高的投资回报率,最大回撤达到41.5%,基准回撤也仅仅50.80%,收益也远远赶不上基准收益。可以看出,无脑定投并不可靠,并没有专家鼓吹的这么神奇。

改进方向

  1. 加大回测标的(回测市场上所有etf基金)
  2. 根据微笑曲线原理,优化定投策略,如埃德尔森的价值平均策略

欢迎大家批评指正

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值