论坛全局菜单下方 - TICKMILL 285X70论坛全局菜单下方 - ThinkMarkets285X70论坛全局菜单下方 - 荔枝返现285X70论坛全局菜单下方 -  icmarkets285X70
查看:1853回复:0
lansynstar
注册时间2009-02-15
请Mt4软件高手修改3 MA Cross w_Alert v2.mq4空头箭头波段出现的bug
楼主发表于:2011-05-19 18:41只看该作者倒序浏览
1楼 电梯直达
电梯直达
这个多空箭头提示指标很好,就是存在bug 多头信号箭头没有问题,仅出现一次,除非条件再次满足出现。 空头信号会不断出现很多,并无法自动消除,只有重新加载模板才可以显示真实的唯一当时空头箭头。 期待群内MT4高手看看bug在哪里?谢谢 //+--------------------------------------------------------------------------+ //| 3 MA Cross w_Alert v2.mq4 | //| Copyright ?2005, Jason Robinson (jnrtrading) | //| http://www.jnrtading.co.uk | //| 3 ma conversion and Alert , David Honeywell , [email protected] | //| http://finance.groups.yahoo.com/group/MetaTrader_Experts_and_Indicators/ | //+--------------------------------------------------------------------------+ /* +-------------------------------------------------------------------------------+ | Allows you to enter 3 ma periods and it will then show you and alert you at | | which point the 2 faster ma's "OPEN" are both above or below the Slowest ma . | +-------------------------------------------------------------------------------+ */ #property copyright "Copyright ?2005, Jason Robinson (jnrtrading)" #property link "http://www.jnrtrading.co.uk" //---- #property indicator_chart_window #property indicator_buffers 2 #property indicator_color1 Red #property indicator_color2 Green //---- double CrossUp; double CrossDown; double prevtime; double Range, AvgRange; double fasterMAnow, fasterMAprevious, fasterMAafter; double mediumMAnow, mediumMAprevious, mediumMAafter; double slowerMAnow, slowerMAprevious, slowerMAafter; //---- extern int FasterMA = 5; extern int FasterShift = -5; extern int FasterMode = 1; // 0 = sma, 1 = ema, 2 = smma, 3 = lwma extern int MediumMA = 20; extern int MediumShift = -5; extern int MediumMode = 1; // 0 = sma, 1 = ema, 2 = smma, 3 = lwma extern int SlowerMA = 34; extern int SlowerShift = 0; extern int SlowerMode = 1; // 0 = sma, 1 = ema, 2 = smma, 3 = lwma extern int SoundAlert = 1; // 0 = disabled //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0, DRAW_ARROW, EMPTY); SetIndexArrow(0, 233); SetIndexBuffer(0, CrossUp); SetIndexStyle(1, DRAW_ARROW, EMPTY); SetIndexArrow(1, 234); SetIndexBuffer(1, CrossDown); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int limit, i, counter; int counted_bars=IndicatorCounted(); //---- check for possible errors if(counted_bars<0) return(-1); //---- last counted bar will be recounted if(counted_bars>0) counted_bars--; //---- limit=Bars-counted_bars; //---- for(i = 0; i <= limit; i++) { counter=i; Range=0; AvgRange=0; for (counter=i ;counter<=i+9;counter++) { AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]); } Range=AvgRange/10; //---- fasterMAnow = iMA(NULL, 0, FasterMA, FasterShift, FasterMode, PRICE_CLOSE, i+1); fasterMAprevious = iMA(NULL, 0, FasterMA, FasterShift, FasterMode, PRICE_CLOSE, i+2); fasterMAafter = iMA(NULL, 0, FasterMA, FasterShift, FasterMode, PRICE_CLOSE, i-1); //---- mediumMAnow = iMA(NULL, 0, MediumMA, MediumShift, MediumMode, PRICE_CLOSE, i+1); mediumMAprevious = iMA(NULL, 0, MediumMA, MediumShift, MediumMode, PRICE_CLOSE, i+2); mediumMAafter = iMA(NULL, 0, MediumMA, MediumShift, MediumMode, PRICE_CLOSE, i-1); //---- slowerMAnow = iMA(NULL, 0, SlowerMA, SlowerShift, SlowerMode, PRICE_CLOSE, i+1); slowerMAprevious = iMA(NULL, 0, SlowerMA, SlowerShift, SlowerMode, PRICE_CLOSE, i+2); slowerMAafter = iMA(NULL, 0, SlowerMA, SlowerShift, SlowerMode, PRICE_CLOSE, i-1); //---- if ((fasterMAnow > slowerMAnow && fasterMAprevious <= slowerMAprevious && fasterMAafter > slowerMAafter && mediumMAnow > slowerMAnow ) || (fasterMAnow > slowerMAnow && mediumMAnow > slowerMAnow && mediumMAprevious <= slowerMAprevious && mediumMAafter > slowerMAafter )) { CrossUp = Low - Range*0.5; } if ((fasterMAnow < slowerMAnow && fasterMAprevious >= slowerMAprevious && fasterMAafter < slowerMAafter && mediumMAnow < slowerMAnow ) || (fasterMAnow < slowerMAnow && mediumMAnow < slowerMAnow && mediumMAprevious >= slowerMAprevious && mediumMAafter < slowerMAafter )) { CrossDown = High + Range*0.5; } } if ((CrossUp[0] > 2000) && (CrossDown[0] > 2000)) { prevtime = 0; } if ((CrossUp[0] == Low[0] - Range*0.5) && (prevtime != Time[0]) && (SoundAlert != 0)) { prevtime = Time[0]; Alert(Symbol()," 3 MA Cross Up @ Hour ",Hour()," Minute ",Minute()); } if ((CrossDown[0] == High[0] + Range*0.5) && (prevtime != Time[0]) && (SoundAlert != 0)) { prevtime = Time[0]; Alert(Symbol()," 3 MA Cross Down @ Hour ",Hour()," Minute ",Minute()); } //Comment(" CrossUp[0] ",CrossUp[0]," , CrossDown[0] ",CrossDown[0]," , prevtime ",prevtime); //Comment(""); return(0); } //-------------------------------------------------------+Snap1.jpgSnap1.jpg3 MA Cross w_Alert v2.rar
TK29帖子1楼右侧xm竖版广告90-240
个性签名

韬客社区www.talkfx.co

广告
TK30+TK31帖子一樓廣告
TK30+TK31帖子一樓廣告

本站免责声明:

1、本站所有广告及宣传信息均与韬客无关,如需投资请依法自行决定是否投资、斟酌资金安全及交易亏损风险;

2、韬客是独立的、仅为投资者提供交流的平台,网友发布信息不代表韬客的观点与意思表示,所有因网友发布的信息而造成的任何法律后果、风险与责任,均与韬客无关;

3、金融交易存在极高法律风险,未必适合所有投资者,请不要轻信任何高额投资收益的诱导而贸然投资;投资保证金交易导致的损失可能超过您投入的资金和预期。请您考虑自身的投资经验及风险承担能力,进行合法、理性投资;

4、所有投资者的交易帐户应仅限本人使用,不应交由第三方操作,对于任何接受第三方喊单、操盘、理财等操作的投资和交易,由此导致的任何风险、亏损及责任由投资者个人自行承担;

5、韬客不隶属于任何券商平台,亦不受任何第三方控制,韬客不邀约客户投资任何保证金交易,不接触亦不涉及投资者的任何资金及账户信息,不代理任何交易操盘行为,不向客户推荐任何券商平台,亦不存在其他任何推荐行为。投资者应自行选择券商平台,券商平台的任何行为均与韬客无关。投资者注册及使用韬客即表示其接受和认可上述声明,并自行承担法律风险。

版权所有:韬客外汇论坛 www.talkfx.com 联络我们:[email protected]