以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://weistock.com/bbs/index.asp) -- 公式模型编写问题提交 (http://weistock.com/bbs/list.asp?boardid=4) ---- 顺序下单 (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=67182) |
-- 作者:ZZAASSXX -- 发布时间:2014/7/9 11:51:15 -- 顺序下单 看了ORDERQUEUE函数用法,貌似是用在图表程序化上的,后台可以用吗? IF CON THEN BEGIN
tsellshort(1,0,mkt,0,0,帐户),ORDERQUEUE;
tbuy(1,手数,mkt,0,0,帐户),ORDERQUEUE; END
|
-- 作者:jinzhe -- 发布时间:2014/7/9 13:21:02 -- 也可以,效果是一样的 |
-- 作者:zzaassxx -- 发布时间:2014/7/10 8:40:38 --
if con then begin
TCANCELEX(1,2,帐户,\'\');
Tsell(TBUYHOLDINGEX(帐户,\'\',1)>0,0,MKT,0,0,帐户,\'\');
end 如果这个con只执行一遍,对原来的平多进行撤单,之后再市价平多,这里有一个问题,就是撤单需要有成交回报的时间过程吗?会不会当撤单指令发出后,还没有撤单成功,导致下一条再平多的指令无法有效执行? 这个情况如果存在,那是应该在TCANCELEX语句后面加上,ORDERQUEUE;? ORDERQUEUE函数对TCANCELEX有效吗? 还是在TCANCELEX语句后面加上sleep函数,让程序等待几秒再执行后面的平多? |
-- 作者:jinzhe -- 发布时间:2014/7/10 8:56:36 -- 1.orderqueue只对下单函数有效 2.就算是撤单没有成功,也会平多,因为这个函数只是用来撤单的,有没有成功不做判断 |
-- 作者:zzaassxx -- 发布时间:2014/7/10 9:13:32 -- 1:当没有撤单成功的情况下 ,直接发出平仓单,是不能成功平仓的。“交易状态”窗口会提示“ctp:平仓量超过持仓量” 2:上面Tsell(TBUYHOLDINGEX(帐户,\'\',1)>0,0,MKT,0,0,帐户,\'\');语句发现MKT,0后面的逗号是中文标点的,在公式测试时能够通过,但是实际运行时是否有问题? |
-- 作者:jinzhe -- 发布时间:2014/7/10 9:31:35 -- 曾加平仓条件,用tisremain来判断是不是有成交单 |