以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://weistock.com/bbs/index.asp)
--  公式模型编写问题提交  (http://weistock.com/bbs/list.asp?boardid=4)
----  [求助]编了一个无限循环交易的小程序  (http://weistock.com/bbs/dispbbs.asp?boardid=4&id=5463)

--  作者:xxn139
--  发布时间:2011/3/10 19:45:05
--  [求助]编了一个无限循环交易的小程序

请教版主:我在MT4上请人编了一个无限循环交易的小程序:

开多仓条件:CLOSE>=开空以来的最低价+X;

平多仓条件:CLOSE<=开多以来的最高价-X;

开空仓条件:CLOSE<=开多以来的最高价-X;

平空仓条件:CLOSE>=开空以来的最低价+X;这个程序虽然不盈利,但很智能,比如,我可以人工买入第一单,然后由系统循环交易,也可以连第一单也由系统自动寻找条件点位而交易,我想把这个系统转到金字塔上加以运用,除了上述主要的开平仓指令外,还应该加进怎样的语句才能达到象MT4的效果一样,既能第一笔用人工买入,也可以完全由系统自动寻找点位买入。我曾听编的人讲过,大概是往前取一定数量的K线,比如取100根,以前100根K线的收盘价作为一个买多或买空点,然后一直审查过来,以决定当前的买卖点,但这个语句该如何写,能否帮忙具体列式,并加以说明。


--  作者:王锋
--  发布时间:2011/3/10 20:03:16
--  
该公式需要金字塔的标准版才能使用,因为要用到逐K线模式运行,请回复告知您的使用版本,谢谢
--  作者:xxn139
--  发布时间:2011/3/10 20:49:58
--  
我正在用模拟帐号,先测试自己的策略,然后就会买,甚至会买高频版。谢谢1
--  作者:xxn139
--  发布时间:2011/3/10 20:51:23
--  
应该叫试用帐号,可以用逐K线函数
--  作者:董小球
--  发布时间:2011/3/11 10:40:25
--  

我先看一下,回头写出来代码我给你贴上来,稍等哈


--  作者:董小球
--  发布时间:2011/3/11 12:34:28
--  

//假设之前手工开多仓或者使用ma交叉开仓
INPUT:X(10,1,100);
BUY(CROSS(MA(CLOSE,5),MA(CLOSE,15)),1 ,MARKET);//设置ma交叉开仓
VARIABLE:DQ=0;
平多仓条件:=CLOSE<=HHV(HIGH,ENTERBARS)-X; //开多以来的最高价-X;
IF 平多仓条件 AND DQ=0 THEN BEGIN
SELL(HOLDING>0,1 ,MARKET);
DQ:=1;
END

开空仓条件:=CLOSE<=LLV(LOW,ENTERBARS)+X; //开多以来的最高价-X;
IF 开空仓条件 AND DQ=1 THEN BEGIN
BUYSHORT(HOLDING=0 ,1 , MARKET );
DQ:=2;
END

平空仓条件:=CLOSE>=LLV(LOW,ENTERBARS)+X;//开空以来的最低价+X;
IF 平空仓条件 AND DQ=2 THEN BEGIN
SELLSHORT(HOLDING<0 ,1 , MARKET);
DQ:=3;
END

开多仓条件:=CLOSE>=LLV(LOW,ENTERBARS)+X;  //开空以来的最低价+X;
IF 开多仓条件 AND DQ=3 THEN BEGIN
BUY(HOLDING=0 ,1 ,MARKET);
DQ:=0;
END

 

 

我做了个例子,不知道是否符合你的要求,你且测试看看!


--  作者:xxn139
--  发布时间:2011/3/11 17:28:39
--  
先谢版主,可能不甚符合原意,主要还是担心MA条件是否能一次性失效,不然会在第一次开仓后不断给交易条件造成冲突
--  作者:z7c9
--  发布时间:2011/3/12 9:17:16
--  

图片点击可在新窗口打开查看

[此贴子已经被作者于2011-3-12 9:21:21编辑过]

--  作者:xxn139
--  发布时间:2011/3/12 20:39:18
--  
又让版主费神了,感谢感谢!我还请教,新原码是包括第一次自动开仓还是手动开仓.X值设置是缺省5最小1最大110吗,
--  作者:z7c9
--  发布时间:2011/3/13 9:13:05
--  

第一次自动开仓,x缺省5,最小1,最大10,步长1