MA Cross Alert Once Indicator For MT4
Table Of Contents:
- MA Cross Alert Once Indicator For MT4
- Cài đặt MA Cross Alert Once Indicator For MT4
- Các tham số của MA Cross Alert Once Indicator For MT4
- Bộ đệm của MA Cross Alert Once Indicator For MT4
- Các bộ phận chính của bộ luật
Chỉ MA Cross Alert Once Indicator For MT4 Chỉ báo cảnh báo chéo MA cho MT4 là một chỉ báo tuyệt vời ở chỗ nó báo hiệu cho bạn những khoảnh khắc giao nhau khác nhau được thực hiện bởi Trung bình di chuyển. Đây là một cách cổ điển để giao dịch bằng cách sử dụng Trung bình di chuyển trong thị trường giao dịch, theo đó Đường trung bình nhanh hơn của bạn là đường tín hiệu của bạn, vì vậy, bất cứ khi nào nó vượt qua đường trung bình "chậm" hơn từ phía trên, nó sẽ đánh dấu mua bằng mũi tên hướng lên và bất cứ khi nào Movin nhanh hơn Trung bình vượt qua Trung bình di chuyển chậm hơn từ phía tăng sau đó đánh dấu cơ hội bán được phân định bởi mũi tên hướng xuống. Chỉ báo cảnh báo chéo MA cho MT4 có nhiều cài đặt thông báo cảnh báo khác nhau, từ cảnh báo bật lên cho đến khi có khả năng để bạn nhận thông báo qua email.
Cài đặt MA Cross Alert Once Indicator For MT4
Sau khi bạn tải xuống chỉ báo qua biểu mẫu ở trên, bạn cần giải nén tệp zip. Sau đó, bạn cần sao chép tệp MA_Cross_Alert_Once_b.mq4 vào thư mục MQL4Indicators cài đặt MT4 của bạn. Sau đó, vui lòng khởi động lại MT4 và sau đó bạn sẽ có thể thấy chỉ báo trong danh sách các chỉ báo.
Các tham số của MA Cross Alert Once Indicator For MT4
MA Cross Alert Once Indicator For MT4 có các tham số 16 để cấu hình.
input bool Cross_Alert = true; // Alert input bool Sound_Only = false; // Sound Only input bool Cross_PN = false; // Push Notification input bool Cross_Email = false; // Email input int Slow_MA_Period = 7; // Slow Period input int Slow_MA_Shift = 0; // Slow Shift input ENUM_MA_METHOD Slow_MA_Method = 0; // Slow Method input ENUM_APPLIED_PRICE Slow_MA_Price = 0; // Slow Price input int Fast_MA_Period = 1; // Fast Period input int Fast_MA_Shift = 0; // Fast Shift input ENUM_MA_METHOD Fast_MA_Method = 0; // Fast Method input ENUM_APPLIED_PRICE Fast_MA_Price = 0; // Farst Price input string Key; input string Price = "Close Price : Open Price : High Price : Low Price"; input string Price_= "Median Price (high+low)/2 : Typical Price (high+low+close)/3"; input string Price__ = "Weighted Price (high+low+close+close)/4";
Bộ đệm của MA Cross Alert Once Indicator For MT4
MA Cross Alert Once Indicator For MT4 cung cấp bộ đệm 2 .
SetIndexBuffer(0, CrossUp); SetIndexBuffer(1, CrossDown);
Các bộ phận chính của bộ luật
int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { int limit, i; double Fast_MA_Bar_0, Slow_MA_Bar_0, Fast_MA_Bar_1, Slow_MA_Bar_1; int counted_bars=IndicatorCounted(); //---- check for possible errors if(counted_bars lt 0) return(-1); //---- last counted bar will be recounted if(counted_bars gt 0) counted_bars--; limit=Bars-counted_bars; for(i = 0; i lt = limit; i++) { Fast_MA_Bar_0 = iMA(NULL, 0, Fast_MA_Period, Fast_MA_Shift, Fast_MA_Method, Fast_MA_Price, i+1); Fast_MA_Bar_1 = iMA(NULL, 0, Fast_MA_Period, Fast_MA_Shift, Fast_MA_Method, Fast_MA_Price, i+2); Slow_MA_Bar_0 = iMA(NULL, 0, Slow_MA_Period, Slow_MA_Shift, Slow_MA_Method, Slow_MA_Price, i+1); Slow_MA_Bar_1 = iMA(NULL, 0, Slow_MA_Period, Slow_MA_Shift, Slow_MA_Method, Slow_MA_Price, i+2); static datetime PrevSignal = 0, PrevTime = 0; if(ALERT_BAR gt 0 && Time[0] lt = PrevTime) { return(0); } PrevTime = Time[0]; if(PrevSignal lt = 0) { if((Fast_MA_Bar_1 lt Slow_MA_Bar_1) && (Fast_MA_Bar_0 gt Slow_MA_Bar_0)) // For Examples see: https://book.mql4.com/samples/indicators if( M_1 lt S_1 && M_0 gt S_0 ) { CrossUp[i=1] = Low[i=1] - iATR(NULL,0,20,i)/2; PrevSignal = 1; if(Sound_Only) { PlaySound("Alert.wav"); } if(Cross_Alert && Sound_Only == false) { Alert("BUY cross: ",Symbol(), " ", TM , " - ",IntegerToString(SMP)," ",MA," ",IntegerToString(SMS)," ",DoubleToStr(Ask,Digits)," ",TimeToStr(TimeCurrent(),TIME_SECONDS)," ",TimeToStr(TimeCurrent(),TIME_DATE)," ",AccountCompany()); } if(Cross_Email) { SendMail ("Buy cross -" + Symbol() + "-" + TM + "-" + AccountCompany(), "Buy Cross Alert" + " " + "--------------------" + " " + "Symbol : " + " " + Symbol() + " " + "Period : " + " " + TM + " " + "Slow MA : " + IntegerToString(SMP)+" "+MA+" "+IntegerToString(SMS)+ " " + "Fast MA : " + IntegerToString(FMP)+" "+MA+" "+IntegerToString(FMS)+ " " + "Ask Price : " + DoubleToStr(Ask,Digits)+ " " + "Time and Date : " + TimeToStr(TimeCurrent(), TIME_SECONDS)+ " " + TimeToStr(TimeCurrent(), TIME_DATE) + " " + "Broker : " + " " + AccountCompany() + " " + "Account # : " + " " + IntegerToString(AccountNumber())); } if(Cross_PN) { SendNotification("BUY: " + Symbol() + " " + TM + " lt " + IntegerToString(SMP) + " " + MA + " " + IntegerToString(SMS) + " gt " + DoubleToStr(Ask,Digits) + " " + " "+ TimeToStr(TimeCurrent(),TIME_SECONDS)+" "+TimeToStr(TimeCurrent(),TIME_DATE)+" " + AccountCompany()); } } } if(PrevSignal gt = 0) { if((Fast_MA_Bar_1 gt Slow_MA_Bar_1) && (Fast_MA_Bar_0 lt Slow_MA_Bar_0)) // For Examples see: https://book.mql4.com/samples/indicators ( if( M_1 gt S_1 && M_0 lt S_0 ) { CrossDown[i=1] = High[i=1] + iATR(NULL,0,20,i)/2; PrevSignal = -1; if(Sound_Only) { PlaySound("Alert.wav"); } if(Cross_Alert && Sound_Only == false) { Alert("SELL cross: ",Symbol(), " ", TM , " - ",IntegerToString(SMP)," ",MA," ",IntegerToString(SMS)," ",DoubleToStr(Bid,Digits) + " ",TimeToStr(TimeCurrent(),TIME_SECONDS)," ",TimeToStr(TimeCurrent(),TIME_DATE)," ",AccountCompany()); } if(Cross_Email) { SendMail ("Sell cross -" + Symbol() + "-" + TM + "-"+ "-" + AccountCompany(), "Sell Cross ALert" + " " + "--------------------" + " " + "Symbol : " + " " + Symbol() + " " + "Period : " + " " + TM + " " + "Slow MA : " + IntegerToString(SMP)+" "+MA+" "+IntegerToString(SMS)+ "-" + " " + "Fast MA : " + IntegerToString(FMP)+" "+MA+" "+IntegerToString(FMS)+ " " + "Bid Price : " + DoubleToStr(Bid,Digits)+ " " + "Time and Date : " + TimeToStr(TimeCurrent(), TIME_SECONDS)+ " " + TimeToStr(TimeCurrent(), TIME_DATE) + " " + "Broker : " + " " + AccountCompany() + " " + "Account # : " + " " + IntegerToString(AccountNumber())); } if(Cross_PN) { SendNotification("SELL: " + Symbol() + " " + TM + " lt " + IntegerToString(SMP) + " " + MA + " " + IntegerToString(SMS) + " gt " + DoubleToStr(Bid,Digits) + " " + " " + TimeToStr(TimeCurrent(),TIME_SECONDS)+" "+TimeToStr(TimeCurrent(),TIME_DATE)+" " + AccountCompany()); } } } } return(rates_total); }