Помогите разобраться.

 
Здравствуйте. Помогите разобраться почему не правильно работает такой код ....
double PROF;
        if (PROF< OrderProfit()){PROF = OrderProfit();
           GlobalVariableSet("PROF",PROF);}
По идее в PROF должны попадать только максимумы, а на деле данный код эдентичен
double PROF = OrderProfit();
А может это не наш OrderProfit, а наркоманский. За ранее всем благодарен.
 
Как с таким количеством кода можно разобраться? Только предполагать можно. Обявляется переменная, значит она равна 0, следовательно, ей будет присвоено любое положительное значение прибыли, то самое которое есть в каждый момент выполнения этого кода.
 
Integer:
Как с таким количеством кода можно разобраться? Только предполагать можно. Обявляется переменная, значит она равна 0, следовательно, ей будет присвоено любое положительное значение прибыли, то самое которое есть в каждый момент выполнения этого кода.
  Пробовал и так:
 
double profit=OrderProfit(); 
double PROF;
        if (PROF< profit){PROF = profit;
           GlobalVariableSet("PROF",PROF);}
Результат тот же.
 
FALCONS:
Здравствуйте. Помогите разобраться почему не правильно работает такой код ....
double PROF;
        if (PROF< OrderProfit()){PROF = OrderProfit();
           GlobalVariableSet("PROF",PROF);}
По идее в PROF должны попадать только максимумы, а на деле данный код эдентичен
double PROF = OrderProfit();
А может это не наш OrderProfit, а наркоманский. За ранее всем благодарен.




Ну выкладывайте, посмотрим. Так трудно сказать нужен полный код.

 
FALCONS:
Integer:
Как с таким количеством кода можно разобраться? Только предполагать можно. Обявляется переменная, значит она равна 0, следовательно, ей будет присвоено любое положительное значение прибыли, то самое которое есть в каждый момент выполнения этого кода.
Пробовал и так:
double profit=OrderProfit(); 
double PROF;
        if (PROF< profit){PROF = profit;
           GlobalVariableSet("PROF",PROF);}
Результат тот же.



А тот же это какой как взываете? Поподробнее…

 
MH_pro:
FALCONS:
Здравствуйте. Помогите разобраться почему не правильно работает такой код ....
double PROF;         if (PROF< OrderProfit()){PROF = OrderProfit();            GlobalVariableSet("PROF",PROF);}
По идее в PROF должны попадать только максимумы, а на деле данный код эдентичен
double PROF = OrderProfit();
А может это не наш OrderProfit, а наркоманский. За ранее всем благодарен.  




Ну выкладывайте, посмотрим. Так трудно сказать нужен полный код.

 
FALCONS:
MH_pro:
FALCONS:
Здравствуйте. Помогите разобраться почему не правильно работает такой код ....
double PROF;         if (PROF< OrderProfit()){PROF = OrderProfit();            GlobalVariableSet("PROF",PROF);}
По идее в PROF должны попадать только максимумы, а на деле данный код эдентичен
double PROF = OrderProfit();
А может это не наш OrderProfit, а наркоманский. За ранее всем благодарен.  




Ну выкладывайте, посмотрим. Так трудно сказать нужен полный код.

    
if (Total >0)
     {for(int i=Total-1;i>=0;i--)
      {if (OrderSelect(i,SELECT_BY_POS))
         { int ordertype=OrderType();
           int ticket=OrderTicket();
       
        double PROF;
        if (PROF< OrderProfit()){PROF = OrderProfit();
           GlobalVariableSet("PROF",PROF);} 
             if (ordertype==OP_BUY)
                 {
                 
                    if (SY>0 && GS > 0 && SCHF >0 )
                    { if (EY<0 && EG <0 && ECHF <0)
                    { RefreshRates();
                      OrderClose(ticket,OrderLots(),Bid,3,Red); 
                    }}
                 
                 }
                 
                 if (ordertype==OP_SELL)// ИФ 
                 {
                 
                    if (SY<0 && GS < 0 && SCHF <0 )
                    { if (EY>0 && EG >0 && ECHF >0)
                    { RefreshRates();
                      OrderClose(ticket,OrderLots(),Bid,3,Red); 
                    }}
                 
                 }
        
        }
        }
        }



 
FALCONS:
FALCONS:
MH_pro:
FALCONS:
Здравствуйте. Помогите разобраться почему не правильно работает такой код ....
double PROF;         if (PROF< OrderProfit()){PROF = OrderProfit();            GlobalVariableSet("PROF",PROF);}
По идее в PROF должны попадать только максимумы, а на деле данный код эдентичен
double PROF = OrderProfit();
А может это не наш OrderProfit, а наркоманский. За ранее всем благодарен.




Ну выкладывайте, посмотрим. Так трудно сказать нужен полный код.

if (Total >0)
     {for(int i=Total-1;i>=0;i--)
      {if (OrderSelect(i,SELECT_BY_POS))
         { int ordertype=OrderType();
           int ticket=OrderTicket();
       
        double PROF;
        if (PROF< OrderProfit()){PROF = OrderProfit();
           GlobalVariableSet("PROF",PROF);} 
             if (ordertype==OP_BUY)
                 {
                 
                    if (SY>0 && GS > 0 && SCHF >0 )
                    { if (EY<0 && EG <0 && ECHF <0)
                    { RefreshRates();
                      OrderClose(ticket,OrderLots(),Bid,3,Red); 
                    }}
                 
                 }
                 
                 if (ordertype==OP_SELL)// ИФ 
                 {
                 
                    if (SY<0 && GS < 0 && SCHF <0 )
                    { if (EY>0 && EG >0 && ECHF >0)
                    { RefreshRates();
                      OrderClose(ticket,OrderLots(),Bid,3,Red); 
                    }}
                 
                 }
        
        }
        }
        }





У вас Ордер не закрывается или Максимальный профит не получаете?

 
Обявляй переменную PROF перед for(int i=Total-1;i>=0;i--)
 
MH_pro:
FALCONS:
FALCONS:
MH_pro:
FALCONS:
Здравствуйте. Помогите разобраться почему не правильно работает такой код ....
double PROF;         if (PROF< OrderProfit()){PROF = OrderProfit();            GlobalVariableSet("PROF",PROF);}
По идее в PROF должны попадать только максимумы, а на деле данный код эдентичен
double PROF = OrderProfit();
А может это не наш OrderProfit, а наркоманский. За ранее всем благодарен.  




Ну выкладывайте, посмотрим. Так трудно сказать нужен полный код.

    
if (Total >0)      {for(int i=Total-1;i>=0;i--)       {if (OrderSelect(i,SELECT_BY_POS))          { int ordertype=OrderType();            int ticket=OrderTicket();                 double PROF;         if (PROF< OrderProfit()){PROF = OrderProfit();            GlobalVariableSet("PROF",PROF);}               if (ordertype==OP_BUY)                  {                                       if (SY>0 && GS > 0 && SCHF >0 )                     { if (EY<0 && EG <0 && ECHF <0)                     { RefreshRates();                       OrderClose(ticket,OrderLots(),Bid,3,Red);                      }}                                    }                                    if (ordertype==OP_SELL)// ИФ                   {                                       if (SY<0 && GS < 0 && SCHF <0 )                     { if (EY>0 && EG >0 && ECHF >0)                     { RefreshRates();                       OrderClose(ticket,OrderLots(),Bid,3,Red);                      }}                                    }                  }         }         }





У вас Ордер не закрывается или Максимальный профит не получаете?

  Профит гоняет как вверх так и внизб.
 
Integer:
Обявляй переменную PROF перед for(int i=Total-1;i>=0;i--)
  Спасибо, сейчас попробую.
Причина обращения: