coding problem

 
OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY);
     
int day = TimeDayOfWeek(OrderOpenTime());
  
   if (day == 0 && TimeCurrent() - OrderOpenTime() > 604800
   || day == 1 && TimeCurrent() - OrderOpenTime() > 518400
   || day == 2 && TimeCurrent() - OrderOpenTime() > 432000
   || day == 3 && TimeCurrent() - OrderOpenTime() > 345600
   || day == 4 && TimeCurrent() - OrderOpenTime() > 259200
   || day == 5 && TimeCurrent() - OrderOpenTime() > 172800
   || day == 6 && TimeCurrent() - OrderOpenTime() > 86400)


I am wondering why does this code not work. I tried with TimeLocal() and MathAbs(TimeCurrent() - OrderOpenTime()) but it does not open a new position.
Any suggestions?

Thank you in advance!

 

bolyhos:
<CODE REMOVED>

I am wondering why does this code not work. I tried with TimeLocal() and MathAbs(TimeCurrent() - OrderOpenTime()) but it does not open a new position.
Any suggestions?

Thank you in advance! 

Please use the   SRC   button to post code,  click this for an explanation:  How to use SRC !
 
bolyhos:


I am wondering why does this code not work. I tried with TimeLocal() and MathAbs(TimeCurrent() - OrderOpenTime()) but it does not open a new position.
Any suggestions?

Check the precedence of your operators . . .   OR ( || ) happens before AND ( && )  so your code does this

int day = TimeDayOfWeek(OrderOpenTime());
   
   if (day == 0 && 
    ( TimeCurrent() - OrderOpenTime() > 604800 || day == 1) && 
    ( TimeCurrent() - OrderOpenTime() > 518400 || day == 2) && 
    ( TimeCurrent() - OrderOpenTime() > 432000 || day == 3) && 
    ( TimeCurrent() - OrderOpenTime() > 345600 || day == 4) && 
    ( TimeCurrent() - OrderOpenTime() > 259200 || day == 5) && 
    ( TimeCurrent() - OrderOpenTime() > 172800 || day == 6) && 
      TimeCurrent() - OrderOpenTime() > 86400)
 
RaptorUK:

Check the precedence of your operators . . .   OR ( || ) happens before AND ( && )  so your code does this


Thank you! Problem solved. :-)
Reason: