以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  为什么我的图表套利策略会出现单腿开仓的情况  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=155222)

--  作者:2879993977
--  发布时间:2017/6/19 16:52:22
--  为什么我的图表套利策略会出现单腿开仓的情况

C1:"P00$CLOSE";//棕榈油连续
C2:="Y00$CLOSE";//豆油连续
价差中枢: MA(C2-C1,Z);
价差: C2-C1;
B: ABS(价差-价差中枢);

UPPER: 价差中枢 + K*STD(价差,Z);//布林上轨
LOWER: 价差中枢 - K*STD(价差,Z);//布林下轨

//交易条件
开多条件:=CROSS(价差,LOWER) ;//开多条件
平空条件:=CROSS(价差,价差中枢);//平空条件
开空条件:=CROSS(UPPER,价差) ;//开空条件
平多条件:=CROSS(价差中枢,价差);//平多条件

//交易系统

IF STRCMP(STKLABEL,\'P00\') = 0 THEN
BEGIN
   SELL(平空条件 AND HOLDING>0, 0,LIMITR,C);     //平空价差
   SELLSHORT(平多条件 AND HOLDING<0,0,LIMITR,C);        //平多价差
  
   BUYSHORT(开多条件 AND HOLDING=0,6,LIMITR,C); //做多价差
   BUY(开空条件 AND HOLDING=0,6,LIMITR,C);             //做空价差
END

IF STRCMP(STKLABEL,\'Y00\') = 0 THEN
BEGIN
   SELL(开空条件 AND HOLDING>0,0,LIMITR,C);            //平多价差
   SELLSHORT(开多条件 AND HOLDING<0,0,LIMITR,C);//平空价差
  
   BUYSHORT(开空条件 AND HOLDING=0,5,LIMITR,C);    //做空价差
   BUY(开多条件 AND HOLDING=0,5,LIMITR,C);  //做多价差
END


图片点击可在新窗口打开查看此主题相关图片如下:9)c$b1i1c@1)`zh7e)(uwmb.png
图片点击可在新窗口打开查看

--  作者:2879993977
--  发布时间:2017/6/19 16:53:38
--  
从代码的逻辑上来说,两个品种间的开平仓逻辑都是一多一空同时平仓的啊,为什么会出现这种单腿开仓的情况
--  作者:2879993977
--  发布时间:2017/6/19 16:56:06
--  

回测是在图表上进行回测的,是否应该转换成后台回测才不会出现这种情况


--  作者:pyd
--  发布时间:2017/6/19 17:21:55
--  

y00的平仓条件和p00的平仓条件不对应。

 

IF STRCMP(STKLABEL,\'P00\') = 0 THEN
BEGIN
   SELL(平空条件 AND HOLDING>0, 0,LIMITR,C);     //平空价差
   SELLSHORT(平多条件 AND HOLDING<0,0,LIMITR,C);        //平多价差
  
   BUYSHORT(开多条件 AND HOLDING=0,6,LIMITR,C); //做多价差
   BUY(开空条件 AND HOLDING=0,6,LIMITR,C);             //做空价差
END

IF STRCMP(STKLABEL,\'Y00\') = 0 THEN
BEGIN
   SELL(平多条件 AND HOLDING>0,0,LIMITR,C);            //平多价差
   SELLSHORT(平空条件 AND HOLDING<0,0,LIMITR,C);//平空价差
  

 
   BUYSHORT(开空条件 AND HOLDING=0,5,LIMITR,C);    //做空价差
   BUY(开多条件 AND HOLDING=0,5,LIMITR,C);  //做多价差
END


[此贴子已经被作者于2017/6/19 17:23:02编辑过]