contact@digquant.com.cn
400-1860-552
官方群:463071731

历史回测

1. 回测逻辑

Auto-Trader针对策略内部的止盈、止损、跟踪止盈,均采用tick数据回测,同时满足止盈止损时,采用tick数据启动,更能客观的表现出策略的绩效。并且可以提供多种交易模式,如下一根bar开盘价,下一tick,对手价成交,下几个tick或下几个tick对手价等。针对大单行情提供vwap、twap算法单。目前仅机构版支持止盈止损设置以及 tick 级别数据回测。

回测脚本的编写逻辑一般如下图为例,StrategyspeculateMACD为策略名称,该策略需要输入的变量参数为:Freq,stopTar,profitTar,pct,shareNum,对StrategyspeculateMACD进行回测的调用方法如下图:


2. 回测设置


初始化信息设置,使用traderSetBacktest对回测过程中的各项配置提前赋值或选择。该函数仅限于期货策略使用,股票策略无需配置。

traderSetBacktest(InitialCash,Costfee,Rate,SlidePrice,PriceLoc,DealType,LimitType)


输入参数:

InitialCash:初始资本,默认为1000000

Costfee:手续费率,默认为0.0025

Rate:无风险利率,默认为0.02

SlidePrice:滑价,默认为0

PriceLoc:市价单成交位置:0-当前bar收盘价;1-下一个bar开盘价;2-下一个bar第二个tick;n-下一个bar第n个tick;默认为1,即下一个bar的开盘价;

DealType:市价单成交类型:0-成交价;1-对方最优价;2-己方最优价;默认0

LimitType:限价单成交方式:0-直接成交;1-下一个bar内没有该价格时,撤单处理;默认0


示例:

在回测时设置初始资本1000000元、手续费率0.0025、无风险利率0.02、滑价0、默认1下一个bar的开盘价、默认0成交价、默认0直接成交

则输入为:traderSetBacktest(1000000,0.0025,0.02,0,1,0,0);

回测账户设置,对AccountList入参,根据标的选择期货(FutureBackReplay)或证券回测账号(StockBackReplay)


示例:

针对期货策略进行回测:

AccountList(1) = {'FutureBackReplay'};

回测启动设置,使用traderRunBacktest对策略执行回测。

traderRunBacktest(StrategyName,TradeFun,varFunParameter,AccountList,TargetList,KFrequency,KFreNum,BeginDate,EndDate,FQ,AlgoTradeFun,varAlgoFunParameter)


输入参数: 

StrategyName:策略名称,字符串类型

TradeFun:策略函数,格式:@函数名称

varFunParameter:策略函数中用到的参数

AccountList:账户名称,cell 型

TargetList:策略标的列表,为结构体类型,格式为:

 Market :市场类型,字符串格式

 Code:交易品种代码,字符串格式,如'000002'

KFrequency:K线类型的整型,如 day, min

KFreNum:频率

BeginDate:开始日期,整型,如20140608

EndDate:结束日期,整型,如20140701

FQ:复权类型,'NA'为不复权,'FWard'向前复权,'BWard'向后复权

AlgoTradeFun:算法交易函数,格式:@算法交易函数

varAlgoFunParameter:算法交易函数中用到的参数


示例:

对策略strategy回测,策略参数为{var1,var2,var3},回测时间区间为2015年3月份,频率为1分钟,期货回测

AccountList(1) = {'FutureBackReplay'};

traderRunBacktest('strategy',@strategy,{var1,var2,var3},AccountList,TargetList,'min',1,20150301, 20150331,'FWard');

对策略strategy回测,策略参数为{var1,var2,var3},回测时间区间为2015年3月份,频率为1分钟,股票回测,行情数据前复权

AccountList(1) = {'StockBackReplay'};

traderRunBacktest('strategy',@strategy,{var1,var2,var3},AccountList,TargetList,'min',1,20150301, 20150331,'FWard');


3. 绩效报告


普通报告     

绩效报告以高效的计算方法展现给用户包括交易资料、周期分析、策略分析、交易分析四大维度,五十多个指标,让用户快速了解自己策略的业绩,优化参数,反复验证。


精细报告(仅限机构版本)

点击 ,一键形成精细报告,相对普通报告新增加一倍的指标,包括风险分析等众多维度,多维度绩效报告全面评测策略业绩,更加全面评估风险,分析策略。