Recognizer candles

 

I have to rate A Function That riconsce the following pattern of candles who can give me a hand ?

 

 

and

 

 

 

 

tanks 

 

 

 
learn to code it, or pay someone. We're not going to code it FOR you. We are willing to HELP you when you post your attempt (using SRC) and the nature of your problem.
 

As you suggested, and having found a I started working the functions short time, however, there is something wrong you will place the code

void lowerlow(){
   int shift;
   int barre=Bars;
   
    for (shift = 0; shift < Bars; shift++)
    {
      if(Open[shift] == Open[shift+ 1])
        ObjectCreate(ChartID(),IntegerToString(Time[0],0,0),OBJ_ARROW_UP,0,Time[0],0);

   }
}

//+---------
 
  1. for (shift = 0; shift < Bars; shift++){
       :
       ObjectCreate(ChartID(),IntegerToString(Time[0],0,0)
    You can only create one object with the same name. You are trying to create many objects with one name.
  2. if(Open[shift] == Open[shift+ 1])
    This is can only be true when bar at shift+1 is a Doji.. Your image shows you want the Open[shift] == Close[shift+1]

  3. But do not compare doubles with equality, that isn't likely to be ever true. Even your image shows that they are not.

    Understand the links in The == operand. - MQL4 forum Ask >= OOP+n could be true because of round off at Ask >= OOP+n - 0.000005 and could be false at Ask >= OOP+n + 0.000005.

    If the equality is important use (must be true at Ask == OOP+n) Use "definitely >=": Ask - (OOP+n) > -_Point/2. // Note the minus

    If the equality is important use (must be false at Ask == OOP+n) Use "definitely >" Ask - (OOP+n) > _Point/2.

    If the equality is not important (false when equal or true when not) just use Ask > OOP+ns

 

 Explain to me well

"Understand the links in The == operand. - MQL4 forum Ask >= OOP+n could be true because of round off at Ask >= OOP+n - 0.000005 and could be false at Ask >= OOP+n + 0.000005.

If the equality is important use (must be true at Ask == OOP+n) Use "definitely >=": Ask - (OOP+n) > -_Point/2. // Note the minus

If the equality is important use (must be false at Ask == OOP+n) Use "definitely >" Ask - (OOP+n) > _Point/2.

If the equality is not important (false when equal or true when not) just use Ask > OOP+ns"

Reason: