公众号

TSL课堂

登录
  • 目录
  • 资料
  • 介绍
  • 评论
  •  课时12019-06-13 策略回测框架
  •  课时22020-09-15 策略回测框架数量类组合详细配置
  •  课时32020-10-18 策略回测框架比例类组合详细配置
  •  课时42020-12-08 分红、分红再投资、送股、配股
  •  课时52020-12-08 用户自定义分红、送股、配股
  •  课时62021-01-28 自定义调仓时间序列
  •  课时72021-01-28 资金划拨、追加资金
  •  课时82021-01-28 止盈止损
  •  课时92021-03-01 交易约束
  •  课时102021-08-27 期权组合持仓申请
  •  课时112021-08-27 期权组合套利
  •  课时122021-08-27 期权备兑
策略回测框架
本视频从两个方面介绍如何使用天软业务框架-策略回测框架TSBackTesting
(1)介绍天软策略回测框架是什么及提供了哪些功能
(2)结合具体的案例讲解如何使用天软策略回测框架及注意事项
注:视频中演示范例function55对应天软客户端下模型:TrainVideo_TS04010_01
课程:'$CatalogInfo[0]['Name']$'X
160
精彩评论
暂无评论
发表评论
专题练习
1、(程序) 已知一个组合SH600000,投资40%,SZ000002,投资60%,回测时间2021-1-1到2021-12-31,每个月末调仓一次,请使用天软回测框架返回历史回测中的交易明细、资产配置、组合盈亏。回测条件有: 1、初始资金:1000000 2、成交价:日均价 3、成交量取整模型:按照证券类型取整 4、分红不再投资 5、交易费率:0.3%

查看解析 》
【参考答案】
Begin
begT:=20210101T;
EndT:=20211231T;
obj := createobject('MyPortfolio');

//********************回测基本设置***************************//
//回测开始时间
obj.FBegT:=BegT;
//回测截止时间
obj.FEndT:=EndT;
//调仓周期(以月线为例)
obj.FCycle:=cy_month();
//组合类别(比例类组合)
obj.FGroupType:=1;
//基准代码
obj.FIndexId:='SH000300';
//初始资金
obj.FIniCash:=1000000;
//资金配比方式:用户自定义
obj.FRateType:=-1;
//成交价类别:日均价
obj.FPriceType:=3;
//成交量取整模式:根据证券类型取整
obj.FVolModType:=-1;
//是否分红再投资:分红不再投资
obj.FDividendType:=0;
//是否参与配股:不参与配股
obj.FAllotmentType:=0;

//********************用户自定义参数***************************//
obj.FFeeRate:=0.3; //费率
//回测
obj.BackTest();

//获取返回结果(返回结果可根据需要选择)
return array(
//---组合基础
"交易明细":obj.GetTradeData(BegT,EndT),
"资产配置":obj.GetAssetData(BegT,EndT),
"持仓明细":obj.GetHoldData(BegT,EndT),

//---组合盈亏、交易
"组合盈亏":obj.GetGainandLoss(BegT,EndT)
);
End;
//新建类MyPortfolio继承回测基类TSBackTesting
Type MyPortfolio=class(TSBackTesting)
FFeeRate;
//重写GetTradeOrder,
function GetTradeOrder(vEndT);override;
begin
t := array();
t[0,'代码']:='SH600000';
t[0,'比例(%)']:=40;
t[0,'日期']:=vEndT;
t[1,'代码']:='SZ000002';
t[1,'比例(%)']:=60;
t[1,'日期']:=vEndT;
Update t set ['开仓费率(%)']=FFeeRate,['平仓费率(%)']=FFeeRate end;
return t;
end
End;

预约申请

×
*
*