欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件金字塔软件问题提交 → 测试对不上号

   

欢迎使用金字塔普通技术服务论坛,您可以在相关区域发表技术支持贴。
我司技术服务人员将优先处理 VIP客服论坛 服务贴,普通区问题处理速度慢,请耐心等待。谢谢您对我们的支持与理解。    


  共有5404人关注过本帖树形打印复制链接

主题:测试对不上号

帅哥哟,离线,有人找我吗?
gxx978
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/8/7 11:17:25 [显示全部帖子]

右键时间轴--锁定显示时段,严格与测试时段一致。K线数量不同,会造成历史上信号的不一致的。


 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/8/7 16:16:08 [显示全部帖子]

你回测的时候没有使用复权数据吧,你加载到图表上的时候是使用了复权数据的,需要勾上价格复权。


图片点击可在新窗口打开查看此主题相关图片如下:image 4.jpg
图片点击可在新窗口打开查看

 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/8/8 11:05:09 [显示全部帖子]

一般测试连续合约,都建议勾上价格复权,消除换月带来的价格跳空。价格反转就是测试K线相反的走势,看你测试需求了。

 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2017/8/9 8:46:21 [显示全部帖子]

你可以在K线图上右键--页面设置--K线反转,看下反转后的K线是什么样的。


 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2018/3/5 13:25:17 [显示全部帖子]

1、系统自带的asset是根据结算价进行每日结算的

2、如果你要用全局变量来表示资产曲线,只需要在平空和平多时计算下资产值,如下:

if 平空条件 AND holding<0 then begin
sellshort(1,holding ,LIMITR,OPEN+1*MINDIFF);//
A:=NUMPROFIT(1),NODRAW;//
numbuy:=numbuy+A;//平空后计算资产
end 
 
if 平多条件 AND holding>0 then begin
SELL(1,0,LIMITR,平多报价),ORDERQUEUE;
A:=NUMPROFIT(1),NODRAW;//
numbuy:=numbuy+A;//平多后计算资产
end
 
资产:numbuy;//输出当时的资产值。

 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2018/3/6 10:47:13 [显示全部帖子]

你说的最大回撤,是指每次平仓之后最大的亏损,还是指整个交易过程中,资产的波峰与波谷之间的差值?

 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2018/3/6 13:01:20 [显示全部帖子]

1、可以用全局变量标记资产的最大值与最小值。

 

 初始资金:=100000;
variable:numbuy=0,maxwin=0,maxlose=0;//maxwin记录最高资产,maxlose记录最低资产
  IF  holding=0 AND BARPOS=1  THEN  BEGIN
首空:BUYSHORT(c<o,首开,limitr,close);
 首多:BUY(c>o,首开,limitr,close);
numbuy:=初始资金; 
maxwin:=初始资金;
maxlose:=初始资金;
END


if 平空条件 AND holding<0 then begin
sellshort(1,holding ,LIMITR,OPEN+1*MINDIFF);//
A:=NUMPROFIT(1),NODRAW;//
numbuy:=numbuy+A;//平空后计算资产
if A>0 AND numbuy>maxwin then maxwin:=numbuy;
if A<0 AND numbuy<maxlose then maxlose:=numbuy;

end
 
if 平多条件 AND holding>0 then begin
SELL(1,0,LIMITR,平多报价),ORDERQUEUE;
A:=NUMPROFIT(1),NODRAW;//
numbuy:=numbuy+A;//平多后计算资产
if A>0 AND numbuy>maxwin then maxwin:=numbuy;
if A<0 AND numbuy<maxlose then maxlose:=numbuy;

end
 
资产:numbuy;//输出当时的资产值。
最大回撤:maxwin-maxlose;

 

2、按F11即可进行使用复权数据/不使用复权数据之间切换。


 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2018/3/21 13:38:40 [显示全部帖子]

1、这里的测试明细是根据你测试时自己填的合约单位、费率信息,或是使用了系统中的合约信息设置中zc的单位乘数和费率来计算的。如果是自己填的,你单位乘数填了多少,如果使用了系统预设的,合约信息设置中,zc的单位乘数是多少?可以截图看下。

回测中的盈亏=(平仓价-开仓价)*单位乘数-手续费

 

2、图表上的numprofit函数也是包含手续费的,是用合约信息设置中的单位乘数和手续费率来计算的。你回测的时候可能是自己填的费率设置,所以有差别。

 

3、盈亏计算不需要加上mindiff最小变动价位这个东西,且你没有把手续费计算在内。

     a1=平仓盈亏点*持仓*DYNAINFO(209);


 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2018/3/21 15:34:08 [显示全部帖子]

点击菜单栏上的交易--合约信息设置,可以查到ZQ市场下的ZC品种的合约信息设置。

 回到顶部
帅哥哟,离线,有人找我吗?
gxx978
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:4994 积分:0 威望:0 精华:0 注册:2016/9/1 10:46:51
  发帖心情 Post By:2018/3/21 16:41:51 [显示全部帖子]

截图看下你回测中第4项的费率设置,如下图,是不是自己填写的,没有用合约信息设置中的费率信息。本地测试正常。


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20180321163942.png
图片点击可在新窗口打开查看

 回到顶部
总数 13 1 2 下一页