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


金字塔客服中心 - 专业程序化交易软件提供商金字塔软件策略编写求助区 → 帮忙写个简单的后台套利程序

   

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


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

主题:帮忙写个简单的后台套利程序

美女呀,离线,留言给我吧!
pyd
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2014/9/16 13:50:19 [显示全部帖子]

软件自带有套利交易范例,您可以学习参考
图片点击可在新窗口打开查看此主题相关图片如下:1.jpg
图片点击可在新窗口打开查看


查看使用道具详细信息
悬赏金币帖,要悬赏 0 个金币
 回到顶部
美女呀,离线,留言给我吧!
pyd
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2014/9/16 16:22:57 [显示全部帖子]

账户:'1000';//换成自己的交易账号
品种1:'c01';
品种2:'c05';

C1:"c01$CLOSE";
C2:"c05$CLOSE";
tt:DYNAINFO(207)>=090000;
A:C1-C2;//开盘差价

c01:CALLSTOCK('c01',vtclose,6,-1);
c05:CALLSTOCK('c05',vtclose,6,-1);
b:c01-c05;//昨收盘差价

if tt and a>b then TBUYSHORT(1,1,MKT ,0,0,账户,品种1 );
if tt and a<b then TBUY(1,1,MKT ,0,0,账户,品种2 );

//单腿砍仓
IF TSELLHOLDINGEX(账户,品种1,0 )=1 AND TBUYHOLDINGEX(账户,品种2,0 )=0 AND TREMAINQTY( 1,账户,品种2)=1 THEN BEGIN
TSELLSHORT(1,1,MKT ,0,0,账户,品种1);
END

IF TBUYHOLDINGEX(账户,品种2,0)=1 AND TSELLHOLDINGEX(账户,品种1,0)=0 AND TREMAINQTY( 1,账户,品种1)=1 THEN BEGIN
TSELL(1,1,MKT ,0,0,账户,品种1 );
END

//14:59平仓
if DYNAINFO(207)>=145900 then tsellshort(1,1,MKT ,0,0,账户,品种1);
if DYNAINFO(207)>=145900 then tsell(1,1,MKT ,0,0,账户,品种2);


获得0个金币
 回到顶部
美女呀,离线,留言给我吧!
pyd
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2014/9/17 11:03:55 [显示全部帖子]

套利交易要用专业版的后台程序化交易。
今天用上边代码测试了下,一直只开玉米01的仓。还有几点需要你说明的

 

问题1,是取当天开盘价的差值和昨天收盘价的差值比较?
2,当天只开一次仓?

3,你给的条件2,3 条件满足时分别是谁开多单谁开空单?

 

[此贴子已经被作者于2014/9/17 11:13:20编辑过]

获得0个金币
 回到顶部
美女呀,离线,留言给我吧!
pyd
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:8439 积分:0 威望:0 精华:0 注册:2014/7/14 13:43:36
  发帖心情 Post By:2014/9/18 16:36:08 [显示全部帖子]

代码供参考

 

账户:'1000';//换成自己的交易账号
品种1:'c01';
品种2:'c05';

C1:CALLSTOCK('c01',vtopen,6,0);
C2:CALLSTOCK('c05',vtopen,6,0);
A:C1-C2;//开盘差价
c01:CALLSTOCK('c01',vtclose,6,-1);
c05:CALLSTOCK('c05',vtclose,6,-1);
b:c01-c05;//昨收盘差价

if a>b then begin
 TBUYSHORT(TSELLHOLDINGEX(账户,品种1,0)=0,1,MKT ,0,0,账户,品种1 );
 tbuy(TBUYHOLDINGEX(账户,品种2,0)=0,1,MKT ,0,0,账户,品种2 );
 end
 
if a<b then begin
 TBUY(TBUYHOLDINGEX(账户,品种1,0)=0,1,MKT ,0,0,账户,品种1 );
 tbuyshort(TSELLHOLDINGEX(账户,品种2,0)=0,1,MKT ,0,0,账户,品种2 );
 end
 
//单腿砍仓
IF TSELLHOLDINGEX(账户,品种1,0 )=1 AND TBUYHOLDINGEX(账户,品种2,0 )=0 AND TREMAINQTY( 1,账户,品种2)=1 THEN BEGIN
TSELLSHORT(1,1,MKT ,0,0,账户,品种1);
END

IF TBUYHOLDINGEX(账户,品种2,0)=1 AND TSELLHOLDINGEX(账户,品种1,0)=0 AND TREMAINQTY( 1,账户,品种1)=1 THEN BEGIN
TSELL(1,1,MKT ,0,0,账户,品种2 );
END

IF TSELLHOLDINGEX(账户,品种2,0)=1 AND TBUYHOLDINGEX(账户,品种1,0)=0 AND TREMAINQTY( 1,账户,品种1)=1 THEN BEGIN
TSELLSHORT(1,1,MKT ,0,0,账户,品种2);
END

IF TBUYHOLDINGEX(账户,品种1,0)=1 AND TSELLHOLDINGEX(账户,品种2,0)=0 AND TREMAINQTY( 1,账户,品种2)=1 THEN BEGIN
TSELL(1,1,MKT ,0,0,账户,品种1);
END

//14:59平仓
if DYNAINFO(207)>=145900 then begin
tsellshort(1,1,MKT ,0,0,账户,品种1);
tsellshort(1,1,MKT ,0,0,账户,品种2);
tsell(1,1,MKT ,0,0,账户,品种1);
tsell(1,1,MKT ,0,0,账户,品种2);
end


获得5个金币
 回到顶部