以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  金字塔软件问题提交  (http://weistock.com/bbs/list.asp?boardid=2)
----  怎么实现提前下单?  (http://weistock.com/bbs/dispbbs.asp?boardid=2&id=188292)

--  作者:daxian
--  发布时间:2021/5/14 0:26:24
--  怎么实现提前下单?
收盘前提前几秒下单,收盘复核,如何实现啊?
--  作者:banzhuan
--  发布时间:2021/5/14 9:20:16
--  
需要用固定轮询的模式,参考下面的代码:

ma5:=ma(c,5);
ma10:=ma(c,10);
input:tq(5,3,60,1);//要提前的秒数
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 buy(1,1,thisclose);

end


--  作者:daxian
--  发布时间:2021/5/14 10:40:22
--  
收盘的时候如果信号又不满足了,就把提前下的单平掉怎么写 啊?
--  作者:daxian
--  发布时间:2021/5/14 10:49:08
--  
abb是否需要改成
abb:=IF(islastbar,(time0-timetot0(dynainfo(207))<=tq),1);
跟原来的效果一样吗?
这样啊?

--  作者:FireScript
--  发布时间:2021/5/14 11:00:34
--  
 “收盘复核” 你这个复核 是怎样的操作。收盘不符合持仓条件了,再平仓?

--  作者:banzhuan
--  发布时间:2021/5/14 11:04:32
--  
一样的呀,在新增一个参数,去控制这个时间段内平仓,根据2楼的代码修改一下就行了。
--  作者:daxian
--  发布时间:2021/5/14 11:10:54
--  
是的,收盘复核就是收盘时发现提前下单的信号消失了,就把提前下的单平掉
--  作者:FireScript
--  发布时间:2021/5/14 11:18:58
--  
 这个复核目前做不到。 但是你可以考虑持仓同步功能。也就是你这个需求拆分成:代码控制提前N秒下单+持仓同步功能

--  作者:daxian
--  发布时间:2021/5/14 11:21:07
--  
好的明白了,提起下单的代码abb是用哪个啊,效果一样吗?
abb:=IF(islastbar,(time0-timetot0(dynainfo(207))<=tq),1);
abb:=(time0-timetot0(dynainfo(207))<=tq) or not(islastbar);
[此贴子已经被作者于2021/5/14 11:22:07编辑过]

--  作者:banzhuan
--  发布时间:2021/5/14 11:27:59
--  
一样的