以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  金字塔软件问题提交  (http://222.73.7.161/bbs/list.asp?boardid=2)
----  图表多账户交易延迟下单可否  (http://222.73.7.161/bbs/dispbbs.asp?boardid=2&id=80264)

--  作者:无极无名
--  发布时间:2015/6/30 13:28:04
--  图表多账户交易延迟下单可否
当图表对多账户交易时,可否读到账户信息?另外,图表交易可否分别对不同账户设置延迟下单?谢谢!
--  作者:yukizzc
--  发布时间:2015/6/30 13:43:30
--  

读取都可以读取,但不建议在图表交易中用到这类没有历史值.

延迟下单的话用全局变量EXTGBDATASET(S,X)记录下满足条件时的时间,然后和当前时间做判断.也不建议用在图表上的.

要使用的话类似下面这个提前下单模版自己套用下

abb:=(time0-timetot0(dynainfo(207))<=tq) or not(islastbar);

if abb then begin
  if holding>0 and ma5<ma10 then sell(1,1,thisclose);
  if holding<0 and ma5>ma10 then sellshort(1,1,thisclose);
  if holding=0 and ma5>ma10 then buy(1,1,thisclose);
  if holding=0 and ma5<ma10 then buyshort(1,1,thisclose);

end


--  作者:无极无名
--  发布时间:2015/6/30 14:00:34
--  
谢谢解答。不过仍有两个问题:
一、版主上述的提前下单代码,如果在提前的TQ秒之内,出现了信号闪烁,那么不会重复下单吗?或者等到K线走完之后,信号恰好又消失了?
二、我提出的问题是,在图表多账户交易情况下,如何实现同一个信号,对不同账户的下单时间用延迟办法错开。

--  作者:yukizzc
--  发布时间:2015/6/30 14:15:40
--  

和你信号闪烁没有关系,只需记录满足条件那次的时间然后做比较啊。

if 开多条件 then EXTGBDATASET(\'S\',currenttime);

if currenttime+10>EXTGBSTRING(\'S\') then buy(账户1);

if currenttime+20>EXTGBSTRING(\'S\') then buy(账户2);


--  作者:无极无名
--  发布时间:2015/6/30 14:27:04
--  
非常感谢,再请对buy(账户1);buy(账户2)进行说明,我没有找到相关的函数的此类用法。
--  作者:yukizzc
--  发布时间:2015/6/30 14:55:27
--  

前面写粗了,要指定账户的话要用后台tbuy函数

如果图表的话的只能在交易-图表程序化交易-多账户系数配置这里设定不同账户执行不同的策略,你把一个模型复制成几分给不同的账户用


--  作者:无极无名
--  发布时间:2015/6/30 14:58:06
--  
好的,谢谢


--  作者:无极无名
--  发布时间:2015/6/30 15:21:41
--  

if 开多条件 then EXTGBDATASET(\'S\',currenttime);

if currenttime+10>EXTGBSTRING(\'S\') then buy(账户1);

if currenttime+20>EXTGBSTRING(\'S\') then buy(账户2);



您这个代码还是有问题吧。当开仓条件满足时,它会稳定一根BAR的时间,那么全局变量会不断的写入最新的时间,这样后面两句则永远不会得到执行吧。
[此贴子已经被作者于2015/6/30 15:22:10编辑过]

--  作者:FexTel
--  发布时间:2015/6/30 16:40:26
--  

我提出的问题是,在图表多账户交易情况下,如何实现同一个信号,对不同账户的下单时间用延迟办法错开

 

//这个图表是很难实现的,因为图表不能指定账户下单! 建议您最好使用后台程序