以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  每半小时只开2次仓  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=5918)

--  作者:hebeihk
--  发布时间:2011/3/29 21:52:27
--  每半小时只开2次仓
控制开仓次数,不计算平仓次数,每半小时我一个计数区间,即可以避免横盘频繁开仓,又不会错过太多行情,请各位老大帮忙
--  作者:guotx2010
--  发布时间:2011/3/29 22:17:08
--  

使用Filter过滤掉重复信号

语法:

Filter(条件,15);

就是15根K线之内的重复信号不会重复开仓,但是平仓因为与开仓信号不同,所以不受影响。

 

 

[此贴子已经被作者于2011-3-29 22:18:29编辑过]

--  作者:guotx2010
--  发布时间:2011/3/29 22:29:35
--  

如果使用计数器来控制开仓,可以这样写:

 

variable:OpenCount=0;       //开仓计数变量

variable:OpenTime=CurrentTime;         //开仓时间变量

 

DuoDan:=多单进场条件;              //用你的条件替换这里的红色文字

KongDan:=空单进场条件;            //用你的条件替换这里的红色文字

 

If DuoDan And OpenCount<2 And CurrentTime-OpenTime<=30 then Begin     //多单开仓条件成立,并且30分钟内开仓次数小于2就开多单

    SellShort(1,0,mkt),OrderQueue;     //先平空单

    Buy(1,1,mkt),OrderQueue;            //开多单

    OpenCount:=OpenCount+1;         //计数变量+1

    If OpenCount=1 then                   //第一次开仓时记录开仓时间

        OpenTime:=currenttime;

End

 

If KongDan And OpenCount<2 And CurrentTime-OpenTime<=30 then Begin      //空单开仓条件成立,并且30分钟内开仓次数小于2就开空单

    Sell(1,0,mkt),OrderQueue;             //先平多单

    BuyShort(1,1,mkt),OrderQueue;    //开空单

    OpenCount:=OpenCount+1;         //计数变量+1 

    If OpenCount=1 then                    //第一次开仓时记录开仓时间

        OpenTime:=currenttime;  

End

 

If CurrentTime-OpenTime>=30  then begin        //当前时间与开仓时间比,超过了30分钟,开仓计数变量重置

    OpenCount:=0;

    openTime:=CurrentTime;

End

 

//你可以参照这段代码进行加工

 

 

[此贴子已经被作者于2011-3-29 22:56:53编辑过]

--  作者:蔡宛宏
--  发布时间:2011/12/19 13:10:45
--  
版主的模板很不错哇