以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://www.weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://www.weistock.com/bbs/list.asp?boardid=2)
----  套利策略  (http://www.weistock.com/bbs/dispbbs.asp?boardid=2&id=156775)

--  作者:cary20060915
--  发布时间:2017/8/14 7:21:40
--  套利策略
您好,我在自己编写套利策略,但是发现好像我们的图表程序化策略的程序只能针对一个合约进行操作(程序中不出现合约代码,回测时靠选择合约,实盘时直接在主图上加载策略),而不能对一个套利对(两个合约)进行操作,无法将两个合约的代码写进程序里。请问确实是这样,还是我理解有误?谢谢!
--  作者:wenarm
--  发布时间:2017/8/14 8:17:01
--  

图表建议函数不能指定品种。需要使用跨周期引用实现,其中跨周期引用建议采用新的引用方式,stkindi或者CALLSTOCK

可以参考学习这个帖子

http://www.weistock.com/bbs/dispbbs.asp?boardid=10&Id=12019

 


--  作者:cary20060915
--  发布时间:2017/8/19 12:55:13
--  
看了您给的这个链接中的帖子,有一个问题想问:

如下图中,我给两个品种设置了“每只品种投入”100万


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

也使用的帖子中类似的策略:

C1:="IF06$CLOSE";
C2:="IF09$CLOSE";

A:=C1-C2;

 

IF STRCMP(STKLABEL,\'IF06\') = 0 THEN
BEGIN
   SELL(A < -5, 1, LIMITR,C);
   BUY(A > -5 AND HOLDING=0,1,LIMITR,C);
END

IF STRCMP(STKLABEL,\'IF09\') = 0 THEN
BEGIN
   BUYSHORT(A > -5 AND HOLDING = 0, 1, LIMITR,C);
   SELLSHORT(A < -5,1,LIMITR,C);
END


只是不同的是,我想实现初始投入每个品种100万,共200万后,每次遇到开仓信号,都使用全部资金开满仓,两个品种开仓数量相同,方向相反。因为每次交易后,总资金都会变化,需要将两个品种各自的资金合到一起除以二,然后再各自开仓,这样才能保证“两个品种开仓数量相同,方向相反”,才能起到对冲风险的作用。如果两个品种各自的资金不能合到一起除以二,而是各自在各自的资金池里运作,则一段时间后,两个品种再开仓的数量很可能不同,就起不到对冲的作用了。所以想问一下,策略里怎么写能将“两个品种各自的资金合到一起除以二,然后再各自开仓,两个品种开仓数量相同,方向相反”?谢谢!


--  作者:cary20060915
--  发布时间:2017/8/19 17:32:27
--  
今天有人解答吗?
--  作者:wenarm
--  发布时间:2017/8/21 8:28:19
--  

回测中使用的资金是独立分开的,没办法,实际交易中使用的是同一个账号资金,不用考虑这个问题。