- Just one arrow per condition.
- RSI 21, 8 and 4 alltogether below/above the 50 level.
- Metastock to MT4
sol4live: Please help me put alert when arrow appears
Help you with what? You haven't stated a problem, you stated a want. Show us your attempt (using the CODE button) and state the nature of your difficulty.
No free help (2017)
Or pay someone. Top of every page is the link Freelance.
Hiring to write script - General - MQL5 programming forum (2018)
We're not going to code it for you (although it could happen if you are lucky or the problem is interesting).
No free help (2017)
I want the indicator to give a pup-up alert whenever a new arrow is printed on the chart
sol4live:
//+------------------------------------------------------------------+ //| KM-Strength Arrow v1.mq4 | //| Khurram Mustafa | //| https://www.mql5.com/en/users/kc1981 | //+------------------------------------------------------------------+ #property copyright "KHURRAM MUSTAFA" #property link "https://www.mql5.com/en/users/kc1981/seller" #property description "KM-Strength Arrow" #property description "Recommended: Higher Time Frames" #property version "1.0" #property strict #property indicator_chart_window #property indicator_buffers 2 #property indicator_width1 0 #property indicator_width2 0 #property indicator_color1 Blue #property indicator_color2 Red extern bool NotifySender=true; extern bool Alarm=true; datetime prevtime; int rsiperiod = 5; double buffy1[]; double buffy2[]; int cb = 0; int bar ; bool NewBar() { static datetime lastbar; datetime curbar = Time[0]; if(lastbar!=curbar) { lastbar=curbar; return (true); } else { return(false); } } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { int draw = 0; SetIndexStyle(0,DRAW_ARROW); SetIndexArrow(0,233); SetIndexStyle(1,DRAW_ARROW); SetIndexArrow(1,234); SetIndexEmptyValue(0,0.0); SetIndexLabel(0,"Buy Now"); SetIndexLabel(1,"Sell Now"); SetIndexDrawBegin(0,draw); SetIndexDrawBegin(1,draw); SetIndexBuffer(0,buffy1); SetIndexBuffer(1,buffy2); return(0); } //+------------------------------------------------------------------+ int deinit() { ObjectsDeleteAll(0,OBJ_ARROW); return(0); } //+------------------------------------------------------------------+ int start() { int IndicatorCounted = cb; if (bar == Time[0]) return(0); int x; if(Bars<=100) return(0); if (cb<0) return(-1); if (cb>0) cb--; x=Bars-cb; for(int i=0; i<x; i++) { double r1 = iRSI(NULL,0,rsiperiod,PRICE_CLOSE,i); double r2 = iRSI(NULL,0,rsiperiod,PRICE_CLOSE,i+1); if (r1>25 && r2<25) buffy1[i] = Low[i+1]-15*Point; if (r1<75 && r2>75) buffy2[i] = High[i+1]+15*Point; } //2021.12.13 23:42:10.708 Lolo EURUSD,M5: 0.0 0.0 2147483647.0 2147483647.0 // Print(buffy1[0]," ",buffy1[1]," ",buffy2[0]," ",buffy2[1]); if(Time[0] == prevtime) return(0); prevtime = Time[0]; if (buffy1[1]!=2147483647 && buffy1[1]>0 ) { if (NewBar()) { if(Alarm) Alert(Symbol()+" TF:"+string(Period())+" BUY!."); if (NotifySender) SendNotification("Haskayafx "+Symbol()+" TF:"+IntegerToString(Period())+ " BUY!." ) ; } } if (buffy2[1]!=2147483647 && buffy2[1]>0 ) { if (NewBar()) { if(Alarm) Alert(Symbol()+" TF:"+string(Period())+" SELL!."); if (NotifySender) SendNotification("Haskayafx "+Symbol()+" TF:"+IntegerToString(Period())+ " SELL!." ) ; } } return(0); } //+------------------------------------------------------------------+
thank you sir, I am very grateful.
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register