历史文档

【历史文档】策略回测-设置回测基准

由clearyf创建,最终由small_q 被浏览 570 用户

更新

本文内容对应旧版平台与旧版资源,其内容不再适合最新版平台,请查看新版平台的使用说明

新版量化开发IDE(AIStudio):

https://bigquant.com/wiki/doc/aistudio-aiide-NzAjgKapzW

新版模版策略:

https://bigquant.com/wiki/doc/demos-ecdRvuM1TU

新版数据平台:

https://bigquant.com/data/home

https://bigquant.com/wiki/doc/dai-PLSbc1SbZX

新版表达式算子:

https://bigquant.com/wiki/doc/dai-sql-Rceb2JQBdS

新版因子平台:

https://bigquant.com/wiki/doc/bigalpha-EOVmVtJMS5

\

导语

回测时我们会关注策略收益和基准收益,对于对冲策略而言跑赢基准是至关重要。本篇教程讲解如何根据需要设置回测的基准

设置股票回测基准

以AI可视化模板策略为例

例1: 以沪深300指数为回测基准,我们设置Trade模块的基准代码为000300.SHA或000300.HIX

 {w:100}例2 :以指定指数日线数据为回测基准,我们只需在上面的窗口中输入所需的基准指数代码即可,如399002.ZIX、000001.HIX等。具体的指数代码可以查询文档

指数的日线行情可以通过下图方式获取查看:

 {w:100}例3:设置中证500期货主力连续合约指数为基准

此时我们需要先获取期货主力连续合约指数日线数据,然后传给回测模块的基准数据接口,此时Trade模块的基准会被输入的数据覆盖,变为设置的合约日线数据。

{w:100}{w:100}如上图所示,以IC8888.CFE合约日线数据作为回测基准为例:

自定义模块代码示例:

# Python 代码入口函数,input_1/2/3 对应三个输入端,data_1/2/3 对应三个输出端
def bigquant_run(input_1, input_2, input_3):
    # 示例代码如下。在这里编写您的代码
    start = input_1.read_pickle()['start_date']
    end = input_1.read_pickle()['end_date']
    bm = DataSource('bar1d_CN_FUTURE').read(instruments=['IC8888.CFE'],start_date=start,end_date=end)
    bm.index = range(len(bm)) 
    data_1 = DataSource.write_df(bm)
    return Outputs(data_1=data_1)

\

设置期货回测基准

例1:以连续合约指数日线数据为基准

如图所示,利用自定义函数模块获取连续合约指数日线数据,作为外部基准数据传给回测模块即可。 {w:100}{w:100}自定义模块代码示例:

# Python 代码入口函数,input_1/2/3 对应三个输入端,data_1/2/3 对应三个输出端
def bigquant_run(input_1, input_2, input_3):
    # 示例代码如下。在这里编写您的代码
    start = input_1.read_pickle()['start_date']
    end = input_1.read_pickle()['end_date']
    bm = DataSource('bar1d_CN_FUTURE').read(instruments=['RU8888.SHF'],start_date=start,end_date=end)
    bm.index = range(len(bm)) 
    data_1 = DataSource.write_df(bm)
    return Outputs(data_1=data_1)

附案例参考链接

{link}