INPUT:=zs(0.03,0.01,0.09),zy(0.80,0.01,0.99),ss(1);
//--------------------------------
m1:ma(close,10);
m2:ma(close,40);
//--------------------------------
无仓:=holding=0;
有多仓:=holding>0;
有空仓:=holding<0;
//-------------------------
开多条件:=cross(m1,m2);
开空条件:=cross(m2,m1);
//-------------------------
dz:=(enterprice-close)/enterprice>zs;
dy:=((hhv(h,enterbars+1)-enterprice)-(close-enterprice))/(hhv(h,enterbars+1)-enterprice)>zy;
kz:=(close-enterprice)/close>zs;
ky:=(enterprice-(llv(l,enterbars+1))-(enterprice-close))/enterprice-(llv(l,enterbars+1))>zy;
//--------------------------------------------------------------------------------------------
多头止损:=dz;
多头止盈:=dy;
空头止损:=kz;
空头止盈:=ky;
//------------------------
if 无仓 and 开多条件 THEN BEGIN
开多:BUY(1,ss,MARKET)COLORRED;
end
if 有多仓 and 多头止损 THEN BEGIN
平多:SELL(1,ss,MARKET)COLORYELLOW;
end
if 无仓 and 开空条件 THEN BEGIN
开空:BUYSHORT(1,ss,MARKET)COLORGREEN;
end
if 有空仓 and 空头止损 THEN BEGIN
平空:SELLSHORT(1,ss,MARKET)COLORYELLOW;
end
if 有多仓 and 多头止盈 THEN BEGIN
多盈:SELL(1,ss,MARKET)COLORYELLOW;
end
if 有空仓 and 空头止盈 THEN BEGIN
空盈:SELLSHORT(1,ss,MARKET)COLORYELLOW;
end
//------依然是这样,不加止损止盈,一切信号正常,加了止损盈,信号丢失殆尽,且图表放大缩小过程中,信号闪烁,忽有忽无。
//第二套止损方案也同上情况,金老师测试一下帮帮忙找找原因吧!!!感激不尽
天意如此,只能跑路换码头了,886
无论怎样,金老师还是帮助过我的,我本人对您没有意见,在此谢谢了!
以下是引用admin在2015/8/13 15:29:14的发言:
金字塔公式编写调试
http://www.weistock.com/bbs/dispbbs.asp?boardid=4&id=1246&page=1&star=1
你应该学会一些基本的调试技巧!
===================================================
客服反复强调他的资金管理模块的编写是没有问题的,编译也提示成功
而我在没有加入资金管理模块的时候,交易信号是完全准确无误的,并且也没有使用未来函数,编译也是成功的
那么问题出在哪儿,是我的字写的不好吗?还是我应该西装革履的打扮一下公式信号准确度就正常了?
显然不是,异常简单的几句代码,两根线上下突破开仓。。。。。还需要怎么查?用核磁共振吗?
有经验的人一眼就能看明白,只是我这个外行看不出来罢了
整个公式都摆在上面了,才几行代码,还需要解剖一下吗
我整个就一均线交叉条件,才20多个字符,难道是我写错了???
你们作为编写服务者,何必这样卖弄资本、故弄玄虚呢?
不就是会爬几行代码吗?而且还是无法用的代码
程序是上到下按照行执行
所以
1, 普遍写法是 , 正常开平算一段
2,止损平仓算令一段。
你这代码优先执行止损了,在一个你用close盘中是会忽闪跳动未来的。
话说楼主要是没什么写程序经验,花费2个月写好一个程序也是应该的。
不要不耐烦程序是另外一种数学模式,甚至可以说交易核心可能变成写程序。
(enterprice-close)/enterprice>zs;
在就是楼主你这写法有数学bug,你没用常数带入测过 (3000-2500)/3000 肯定是对的,但是如果是 (3000-2999)/3000 就会bug掉的
而且你没预估万一是 0/3000 这样模式。 没人说C不能等于E 。