ERROR In Program

 

hi guys

i have problem in my program

i check 5 times but i cannot fixed

who can fixed this error ?

//+------------------------------------------------------------------+
//|                                                         ADX3.mq4 |
//|                        Copyright 2017, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
  
  
  if(ADXSIGNALCL()=="Close buy")
  close(1111);
  if(ADXSIGNALCL()=="Close Sell")
  close(2222);
 
  
  
    if(Volume[0]<=1 &&Orders()==0)
  {
    if(ADXSIGNAL()=="Buy")
      int tiketbuy=OrderSend(Symbol(),OP_BUY,0.1,Ask,5,0,0,"",1111,0,clrBlue);
    if(ADXSIGNAL()=="Sell") 
     int tiketsell=OrderSend(Symbol(),OP_SELL,0.1,Bid,5,0,0,"",2222,0,clrBlue);
  
  }
  
  
   
  }
//+------------------------------------------------------------------+
string ADXSIGNAL()
      {
      
      if(iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MAIN,0)>=25 && iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_PLUSDI,0)>=20 && iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_PLUSDI,0)>=iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MINUSDI,0))
      {
      return("Buy");  
      }
      else if((iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MAIN,0)>=25 && iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_PLUSDI,0)>=20 && iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_PLUSDI,0)<=iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MINUSDI,0))
             {
      return("Sell");
             }
             else
               {
                return("no signal");
               }
      }
//+-------------------------------تایع شمارش پوزیشنها-----------------------------------+   
int Orders()
{
   int num=0;
    for(int i=OrdersTotal()-1;i>=0;i--)
    {
       if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
       {
       if(OrderMagicNumber()==1111 || OrderMagicNumber()==2222)
        num++;
       }
     }
   return(num);
  }
//+-------------------------------تابع چک کننده ی اندیکاتور ها-----------------------------------+      
string  ADXSIGNALCL()
   {
      if(iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MAIN,1)>=40 || iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_PLUSDI,1)<=14 || iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MAIN,1)>=25))
          return("Close buy");
      if(iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MAIN,1)>=40 || iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MINUSDI,1)<=14 || iADX(NULL,PERIOD_CURRENT,14,PRICE_WEIGHTED,MODE_MAIN,1)>=25))
         return("Close Sell");
      else
      return("NO SIGNAL");
   }
     //+-------------------------------تاربع بستن پوزیشنها-----------------------------------+    
void close(int Magic)
{

 for(int i=OrdersTotal()-1;i>=0;i--)
 {
    if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
    {
      if(OrderMagicNumber()==Magic)
      bool yccb =OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),5,clrGreen);
   
    }   
  }
}
 
ERROR
 
aliebnehosseini:

hi guys

i have problem in my program

i check 5 times but i cannot fixed

who can fixed this error ?

In your else if under string ADXSIGNAL you have a ( that never colses same thing under ADXSIGNALC you have 1 useless ) at the end of each if