以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  策略编写求助区  (http://222.73.7.161/bbs/list.asp?boardid=11)
----  [求助]求编一个交易程序  (http://222.73.7.161/bbs/dispbbs.asp?boardid=11&id=75192)

--  作者:eeb80
--  发布时间:2015/1/30 11:48:11
--  [求助]求编一个交易程序
1、以“开盘价”为起始点,如果价格高于开盘价20个点时,做多,然后从“建仓价”开始,当价格低于“最高点-20”时,平仓且反手,否则一直持仓。
2、以“开盘价”为起始点,如果价格低于开盘价20个点时,做空,然后以“建仓价”以来为起点,当价格高于“最低位置+20”时,平仓且反手,否则一直持仓。

说明:做多时,如果反手了(即“空开始”),也坚持同样的原则:即价格高于建仓以来“最低价+20”时,再次平仓反手,否则一直持仓
         做空时,如果遇到反手(即“多开始”),也同时坚持上述原则,即高于建仓以来“最高价+20”时,再次平仓反手,否则一直持仓
         终归就一句话:不管做多的时候反手了,还是做空时候反手了,都坚持以上原则,如果再次遇到反手了,还坚持这个原则,一直循环下去,直到15:00收盘全部清仓。


--  作者:eeb80
--  发布时间:2015/1/30 11:49:47
--  
股指期货的,最好按即时行情,不要按1分钟,或5分钟,或10分钟......
--  作者:pyd
--  发布时间:2015/2/4 14:10:28
--  

oo:valuewhen(todaybar=1,o);
hh:=hhv(h,enterbars+1);
ll:=llv(l,enterbars+1);
if h>=oo+20*mindiff then buy(holding=0,1,market);
if l<=hh-20 then begin
sell(holding>0,holding,market);
buyshort(holding=0,1,market);
end

if l<=oo-20 then buyshort(holding=0,1,market);
if h>=ll+20 then begin
sellshort(holding<0,holding,market);
buy(holding=0,1,market);
end
if time>=150000 then begin //15点平仓,其他品种要改下时间

sell(holding>0,holding,market);
sellshort(holding<0,holding,market);
end

[此贴子已经被作者于2015/2/4 14:10:59编辑过]

--  作者:eeb80
--  发布时间:2015/2/7 14:36:45
--  
谢了,测试一下看看