完整五行代码玩转基金定投--代码及解读

用户头像Reflecti0N
2023-08-04 发布
def init(context):
  #set_subportfolios([{'cash':1000000,'type':'fund'}])
  run_weekly(trade,date_rule=-2)

def trade(context, bar_dict):
   order_fund('000311.OF', 100)

'''
1.def init(context)与def trade(context, bar_dict)是两个函数,函数格式固定为:def 函数名(参数),其中def后面带空格键,函数末尾必须带冒号
2.init函数只在回测开始时运行一次
3.trade函数是自定义函数,主要进行定投申购,需要被调用才能执行
4.set_subportfolios函数是设置子账户函数,可同时设置多个账户,比如股票账户、期货账户,我们这边需要设置场外基金账户,账户为字典格式,cash,type是键,分别为账户资金和账户类型,值为相应参数,其中cash的值22500,代表账户金额为22500,type的值是fund,代表场外基金账户。
5.run_weekly是每周定时运行函数,需要传入两个参数,分别是定时执行的函数和执行时间date_rule,我们这边需要输入trade函数,让其每周定时执行,date_rule为1代表周一,2代表周二,同理,-1代表周五,-2代表周四,这边我们周四定投,则选择date_rule=-2
6.order_fund是申购函数,需要传入申购标的和申购金额,我们这边输入景顺长城沪深300增强(000311),场外基金代码为:“000311.OF”,金额为100元。
'''

收益&风险
源码

评论