以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [原创]后台策略自动撤单与条件追单模板 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=4756) |
-- 作者:z7c9 -- 发布时间:2011/1/9 11:36:47 -- [原创]后台策略自动撤单与条件追单模板 阅读版: 以下内容为程序代码:
1 myaccount:=\'666666\'; 2 sleeptime:=1000*3; 3 4 if tbuyholdingex(myaccount,stklabel,0)=0 then begin 5 if true then begin 6 tbuy(1,1,lmt,close,0,myaccount,stklabel),allowrepeat; 7 sleep(sleeptime); 8 if tisremainex(1,myaccount,stklabel) then begin 9 tcancelex(1,1,myaccount,stklabel); 10 exit; 11 end 12 end 13 end 14 15 if tsellholdingex(myaccount,stklabel,0)=0 then begin 16 if true then begin 17 tbuyshort(1,1,lmt,close,0,myaccount,stklabel),allowrepeat; 18 sleep(sleeptime); 19 if tisremainex(3,myaccount,stklabel) then begin 20 tcancelex(1,3,myaccount,stklabel); 21 exit; 22 end 23 end 24 end 25 26 if tbuyholdingex(myaccount,stklabel,0)>0 then begin 27 if true then begin 28 tsell(1,tbuyholdingex(myaccount,stklabel,0),close,0,myaccount,stklabel),allowrepeat; 29 sleep(sleeptime); 30 if tisremainex(2,myaccount,stklabel) then begin 31 tcancelex(1,2,myaccount,stklabel); 32 exit; 33 end 34 end 35 end 36 37 if tsellholdingex(myaccount,stklabel,0)>0 then begin 38 if true then begin 39 tsellshort(1,tsellholdingex(myaccount,stklabel,0),close,0,myaccount,stklabel),allowrepeat; 40 sleep(sleeptime); 41 if tisremainex(4,myaccount,stklabel) then begin 42 tcancelex(1,4,myaccount,stklabel); 43 exit; 44 end 45 end 46 end 47
拷贝版: myaccount:=\'666666\';
sleeptime:=1000*3; if tbuyholdingex(myaccount,stklabel,0)=0 then begin if true then begin tbuy(1,1,lmt,close,0,myaccount,stklabel),allowrepeat; sleep(sleeptime); if tisremainex(1,myaccount,stklabel) then begin tcancelex(1,1,myaccount,stklabel); exit; end end end if tsellholdingex(myaccount,stklabel,0)=0 then begin if true then begin tbuyshort(1,1,lmt,close,0,myaccount,stklabel),allowrepeat; sleep(sleeptime); if tisremainex(3,myaccount,stklabel) then begin tcancelex(1,3,myaccount,stklabel); exit; end end end if tbuyholdingex(myaccount,stklabel,0)>0 then begin if true then begin tsell(1,tbuyholdingex(myaccount,stklabel,0),close,0,myaccount,stklabel),allowrepeat; sleep(sleeptime); if tisremainex(2,myaccount,stklabel) then begin tcancelex(1,2,myaccount,stklabel); exit; end end end if tsellholdingex(myaccount,stklabel,0)>0 then begin if true then begin tsellshort(1,tsellholdingex(myaccount,stklabel,0),close,0,myaccount,stklabel),allowrepeat; sleep(sleeptime); if tisremainex(4,myaccount,stklabel) then begin tcancelex(1,4,myaccount,stklabel); exit; end end end [此贴子已经被作者于2011-1-9 12:00:55编辑过]
|
-- 作者:admin -- 发布时间:2011/1/9 11:46:19 -- 楼主可否将使用方法和原理介绍一下 |
-- 作者:z7c9 -- 发布时间:2011/1/9 11:58:12 -- 以下是引用admin在2011-1-9 11:46:19的发言:
楼主可否将使用方法和原理介绍一下 下单后,睡眠3秒钟,然后判断是否存在未成交委托单,如果存在,撤销未成交委托单并退出。如果不存在,继续向下执行。退出后再次进入时,如果下单条件成立,重新下单。
这种追单是条件追单,也就是说只要下单条件成立,就会不断的追单。 [此贴子已经被作者于2011-1-9 11:59:38编辑过]
|
-- 作者:msedu -- 发布时间:2011/1/9 13:11:29 -- 多用注释啊,写代码要让人看得懂,也要让自己时隔一段时间后还能了解清楚自己当时的思路,而且写注释本身也是整理自己的思维和理念啊。。。 |
-- 作者:guotx2010 -- 发布时间:2011/1/9 18:37:43 -- 值得学习一下 |
-- 作者:szstock2002 -- 发布时间:2011/1/11 18:35:43 -- 学习了! |