如何将回测结果下载到本地?


(鲁鲁) #1

策略回测结果想要下载到自己电脑上进行深入研究,哪位知道怎么弄啊?


各位请问,如何将盈利的历史记录导出?
(小马哥) #2

其实这个很简单,只需两行代码

# 获取回测结果,DataFrame格式
df  = m.raw_perf.read_df()
# 存储到目录,文件保存为csv格式
df.to_csv('回测结果.csv')

当运行上面两行代码后,你的文件 回测结果.csv已经可以在左边目录看到,可直接点击下载到本地。

参考文档:如何上传本地数据到策略研究平台

具体策略如下:

克隆策略
In [1]:
instruments = ['600519.SHA', '000001.SZA', '000002.SZA']  
start_date = '2017-05-28'  
end_date = '2017-07-18'
bench_mark = '000300.SHA'

def initialize(context):
    context.set_commission(PerOrder(buy_cost=0.0003, sell_cost=0.0013, min_cost=5)) # 设置手续费
    context.date_record = {}

def handle_data(context, data):
    
    for k in instruments:
        sid = context.symbol(k) # 将标的转化为equity格式
        if  context.trading_day_index == 0:
            context.order(sid, 100) # 买入
            # 记录买入时间
            context.date_record[k] = int(context.trading_day_index)
    # 打印持仓时间
    for j in instruments:
        hold_days = context.trading_day_index - context.date_record[j] 
    
m=M.trade.v3(
    instruments=instruments,
    start_date=start_date,
    end_date=end_date,
    initialize=initialize,
    handle_data=handle_data,
    order_price_field_buy='open',
    order_price_field_sell='close',
    benchmark='000300.SHA',
    capital_base=1000000,
    )  
        
[2017-09-19 16:10:53.339899] INFO: bigquant: backtest.v7 开始运行..
[2017-09-19 16:10:54.498818] INFO: Performance: Simulated 35 trading days out of 35.
[2017-09-19 16:10:54.500179] INFO: Performance: first open: 2017-05-31 13:30:00+00:00
[2017-09-19 16:10:54.501151] INFO: Performance: last close: 2017-07-18 19:00:00+00:00
  • 收益率8.68%
  • 年化收益率82.06%
  • 基准收益率5.37%
  • 阿尔法0.34
  • 贝塔1.05
  • 夏普比率4.32
  • 收益波动率17.95%
  • 信息比率2.58
  • 最大回撤5.2%
[2017-09-19 16:10:54.965445] INFO: bigquant: backtest.v7 运行完成[1.62557s].

回测结果

In [3]:
# 获取回测结果,DataFrame格式
df  = m.raw_perf.read_df()
# 存储到目录,文件保存为csv格式
df.to_csv('回测结果.csv')

策略研究常用功能
(iQuant) #3

你好,可以参考这篇文章:如何上传本地数据到策略研究平台?!