Please help me put alert when arrow appears

sol4live
95
//+------------------------------------------------------------------+
//|                                         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 Black
#property indicator_color2 Black
int rsiperiod = 5;
double buffy1[];
double buffy2[];
int cb = 0;
int bar ;
//+------------------------------------------------------------------+
//| 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;
      
   } 
   return(0);  
   }
//+------------------------------------------------------------------+

William Roeder
26828
William Roeder  
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)

sol4live
95
sol4live  
I want the indicator to give a pup-up alert whenever a new arrow is printed on the chart
William Roeder
26828
William Roeder  
sol4live #: I want …

You haven't stated a problem, you stated a want.

Mehmet Bastem
2778
Mehmet Bastem  
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);  
   }
//+------------------------------------------------------------------+
sol4live
95
sol4live  
Mehmet Bastem #:

Thank you sir for your assistance, I am very grateful.


But I want it to give alarm immediately an arrow appears instead of waiting for a new bar.


Thank you once again.

Mehmet Bastem
2778
Mehmet Bastem  
sol4live #:

Thank you sir for your assistance, I am very grateful.


But I want it to give alarm immediately an arrow appears instead of waiting for a new bar.


Thank you once again.

delete this code 

 if (NewBar()) 
sol4live
95
sol4live  
thank you sir, I am very grateful.