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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件公式模型编写问题提交 → 新手试写,模型遇到问题

   

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


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

主题:新手试写,模型遇到问题

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
新手试写,模型遇到问题  发帖心情 Post By:2016/12/6 15:48:00    Post IP:115.53.113.8[显示全部帖子]

大概思路是两个模型之间近期波动规律的价差套利,这两天看了看帮助说明试写了下,可是其中有不少的问题不甚了解,望指正!
可能其中有不少语法错误,但是大概的思路能体现出来,主要是A1705和M1705的5分钟周期套利
有什么不对的,希望大神纠正以下







Input:N(50,1,100,1),M(50,1,100,1),S(2,2,5,0.1),SS(2,1,5,0.2),CA(0,0,10,1)
//N线性计算周期,M标准差计算周期,S标准差框架,SS波动速度,CA标准差绝对值

//定义A,B两个品种的合约
A合约:'AY05';
B合约:'M05';

A5MIN收盘:=stkindi('A合约','MACD.CC',0,2,0);//A的五分钟周期当前收盘
B5MIN收盘:=CALLSTOCK('B合约',VTCLOSE,2,0);//B的五分钟周期当前收盘
A5SEC收盘:=CALLSTOCK('A合约',VTCLOSE,23,5);//A的五秒钟周期当前收盘
B5SEC收盘:=CALLSTOCK('B合约',VTCLOSE,23,5);//B的五秒钟周期当前收盘


VARIABLE:A收盘[100]=0,B收盘[100]=0;
FOR i=1 to 100 do A收盘[i]=CALLSTOCK('A合约',VTCLOSE,2,-i);
FOR i=1 to 100 do B收盘[i]=CALLSTOCK('B合约',VTCLOSE,2,-i);//定义A/B  100个  5分钟周期的收盘价


A:=COVAR(A收盘 ,'B收盘' ,N )/VARP('B收盘',N);
B:=INTERCEPT(A收盘,'B收盘',N);
PEARSONAB:=PEARSON(A收盘,B收盘,N);//定义线性回归系数以及pearson相关,A赋值给Y,B复制给A

SNOWCAN:=dynainfo2(34,'B合约')*A-B-dynainfo2(28,'A合约');//最新残差,B的卖一,A的买一,做多对价差
BNOWCAN:=dynainfo2(28,'B合约')*A-B-dynainfo2(34,'A合约');//最新残差,A的卖一,B的买一,做空对价差
OLDCAN:=B5MIN收盘*REF(A,1)-REF(B,1)-A5MIN收盘;//前残差


标准差:=STDP(REF(OLDCAN,1),M);

做多条件:=SNOWCAN/标准差<-S AND (SNOWCAN-OLDCAN)/标准差<-SS;
平多条件:=(BNOWCAN-OLDCAN)/标准差>SS OR BNOWCAN*OLDCAN<0;//缺少当前K线开仓后迅速波动
做空条件:=BNOWCAN/标准差>S AND (BNOWCAN-OLDCAN)/标准差>-SS;
平空条件:=(SNOWCAN-OLDCAN)/标准差<-SS OR SNOWCAN*OLDCAN<0;//缺少当前K线开仓后迅速波动

5秒价差:=A5SEC收盘-B5SEC收盘;//5秒价差

IF 做多条件 and every((5秒价差-REF(5秒价差,1))<=0,3) THEN BEGIN
TBUY(1,10,MKT,0,0,0,'A合约');
TBUYSHORT(1,10,MKT,0,0,0,'B合约');
END

IF 平多条件 THEN BEGIN
TSELL(1,10,MKT,0,0,0,'A合约');
TSELLSHORT(1,10,MKT,0,0,0,'B合约');
END

IF 做空条件 and every((5秒价差-REF(5秒价差,1))>=0,3) THEN BEGIN
TBUYSHORT(1,10,MKT,0,0,0,'A合约');
TBUY(1,10,MKT,0,0,0,'B合约');
END

IF 平空条件 THEN BEGIN
TSELL(1,10,MKT,0,0,0,'A合约');
TSELLSHORT(1,10,MKT,0,0,0,'B合约');
END




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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/6 16:32:24    Post IP:115.53.113.8[显示全部帖子]

两个问题
1.检测没有问题后  进行回测  但是回测没有开仓,回测数据全部为0
2.//定义A,B两个品种的合约
A合约:'AY05';
B合约:'M05';

后边函数引用  A合约  后总是提示”未定义的变量:A合约“而 B合约引用不受限制

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/6 16:46:54    Post IP:115.53.113.8[显示全部帖子]

图片点击可在新窗口打开查看


B合约不受影响,只提示A未定义变量

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/6 16:48:22    Post IP:115.53.113.8[显示全部帖子]

图片点击可在新窗口打开查看图片点击可在新窗口打开查看




回测报告没有开仓 不知道是什么原因

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/7 10:24:52    Post IP:115.53.114.238[显示全部帖子]

看起来是  A收盘价 这个定量出错了  导致接下来的A,B无法计算,不知道应该怎么改
[此贴子已经被作者于2016-12-7 10:25:20编辑过]

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/7 10:26:32    Post IP:115.53.114.238[显示全部帖子]

图片

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/7 10:28:43    Post IP:115.53.114.238[显示全部帖子]

图片点击可在新窗口打开查看
VARIABLE:A收盘[100]=0,B收盘[100]=0;
for i=1 to 100 do A收盘[i]:=CALLSTOCK('AY05',VTCLOSE,2,i);
for i=1 to 100 do B收盘[i]:=CALLSTOCK('M05',VTCLOSE,2,i);//定义A/B  100个  5分钟周期的收盘价

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/7 10:42:37    Post IP:115.53.114.238[显示全部帖子]

刚才我用了您的方法,A1的值一直不变(光标的移动A1值不变),我在想可能数组  A收盘   提取A品种最近50个五分钟周期的收盘价出错了,请问应该怎么写公式

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/7 10:46:03    Post IP:115.53.114.238[显示全部帖子]

刚才我用了您的方法,A1的值一直不变(光标的移动A1值不变),我在想可能数组  A收盘   提取A品种光标所在K线最近50个五分钟周期的收盘价出错了,请问应该怎么写公式

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


加好友 发短信
等级:新手上路 帖子:41 积分:0 威望:0 精华:0 注册:2016/12/6 15:40:24
  发帖心情 Post By:2016/12/7 15:02:06    Post IP:115.53.114.238[显示全部帖子]

谢谢  之前的问题解决了,现在的问题是公式测评出来没有开仓
图片点击可在新窗口打开查看此主题相关图片如下:qq截图20161207143447.png
图片点击可在新窗口打开查看

 回到顶部
总数 38 1 2 3 4 下一页