Помощь в кодировании - страница 731

 

Уважаемый mladen,

Прикрепленная ea замерзает при сохранении настроек и мне приходится перезапускать mt4!

Есть ли проблема в кодах?

Спасибо.

Файлы:
 
oguz:

Уважаемый mladen,

Прикрепленная ea замерзает при сохранении настроек и мне приходится перезапускать mt4!

Есть ли проблема в кодах?

Спасибо.

Нет видимых проблем, которые могли бы вызвать это
 
mladen:
Нет видимых проблем, которые могли бы вызвать это

Благодарим вас за проявленный интерес.

@mladen,

Прикрепленная еа очень прибыльная. Но у нее много ошибок на последней версии mt4.

Не могли бы вы исправить их?

Спасибо.

Файлы:
 
oguz:

Благодарим вас за проявленный интерес.

@mladen,

Прикрепленная еа очень прибыльная. Но у нее много ошибок на последней версии mt4.

Не могли бы вы исправить их?

Спасибо.

Попробуйте (то же самое относится и к этому варианту: я не знаю, будет ли он работать из-за некоторых предупреждений, оставшихся в коде).
Файлы:
 
mladen:
Попробуйте (то же самое относится и к этому варианту: я не знаю, будет ли он работать из-за некоторых предупреждений, оставшихся в коде).

Я протестирую его :)

Спасибо за то, что вы сделали.

 

Здравствуйте,

Я пытаюсь получить сигнал от gann hilo, но не получается.

например:
Я установил hilo gan = 30 минут и 4 сглаженных, потому что я хочу видеть направление торговли,

Но у меня не получается правильно получить сигнал на покупку или продажу из индикатора в советник.

Hilo_Handle" не получает правильного значения ;-(

//+------------------------------------------------------------------+
//|                                                      ea-hilo.mq5 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

//------- input -----------------------------------------------------+
input ushort                           Hilo_Periodo=4;
input ENUM_MA_METHOD                   Hilo_Metodo=MODE_SMA;

//------- global variables ------------------------------------------+
double Hilo_Handle = INVALID_HANDLE; //Hilo Handle
double Hilo_ma[1]; //hilo ma
double Hilo_cl[1]; //hilo close
int    Shift=1;    //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar
datetime ctm[1];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1)
     {
      return(false);
     }

     //---- get Hilo Moving Average
     Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo);
     if(Hilo_Handle!=INVALID_HANDLE)
        ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle);  
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
        if(CopyBuffer(Hilo_Handle,0,Shift,1,Hilo_ma)==-1 ||
            CopyClose(_Symbol,PERIOD_CURRENT,0,1,Hilo_cl)==-1
            //CopyClose(_Symbol,PERIOD_CURRENT,Shift,1,Hilo_cl)==-1
            ) return;
            
         //Hilo Buy
         if (Hilo_cl[0]>Hilo_Handle) {
         Comment ("BUY SIGNAL "+Hilo_cl[0]+">"+Hilo_Handle);
         return;
         }
         else
         //Hilo Sell
         if (Hilo_cl[0]<Hilo_Handle) {
         Comment ("SELL SIGNAL "+Hilo_cl[0]+"<"+Hilo_Handle);
         return;
         }
         Comment ("NO SIGNAL");
  }
//+------------------------------------------------------------------+
Файлы:
 

Дорогой МЛАДЕН

Вот проблема с ошибкой, и она может быть удалена двумя способами ..... добавлением "t" перед (tdelete) и добавлением "pendingorder" (deletependingorder) после удаления ...... мой вопрос в том, какой из них является лучшим способом?

Ваши рекомендации и мнение будут приняты с благодарностью.

с уважением


 
baraozemo:

Привет ,

Я пытаюсь получить сигнал от gann hilo, но не получается.

например:
Я установил hilo gan = 30 минут и 4 сглаженных, потому что я хочу видеть направление торговли,

Но у меня не получается правильно получить сигнал на покупку или продажу из индикатора в советник.

Hilo_Handle" не получает правильного значения ;-(

//+------------------------------------------------------------------+
//|                                                      ea-hilo.mq5 |
//|                        Copyright 2016, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"

//------- input -----------------------------------------------------+
input ushort                           Hilo_Periodo=4;
input ENUM_MA_METHOD                   Hilo_Metodo=MODE_SMA;

//------- global variables ------------------------------------------+
double Hilo_Handle = INVALID_HANDLE; //Hilo Handle
double Hilo_ma[1]; //hilo ma
double Hilo_cl[1]; //hilo close
int    Shift=1;    //Bar on which indicators are checked: 0 - shaped bar, 1 - the first shaped bar
datetime ctm[1];
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(CopyTime(_Symbol,PERIOD_CURRENT,0,1,ctm)==-1)
     {
      return(false);
     }

     //---- get Hilo Moving Average
     Hilo_Handle=iCustom(_Symbol,PERIOD_CURRENT,"gann_hi_lo_activator_ssl",Hilo_Periodo,Hilo_Metodo);
     if(Hilo_Handle!=INVALID_HANDLE)
        ChartIndicatorAdd(0,(int)ChartGetInteger(1,CHART_WINDOWS_TOTAL),Hilo_Handle);  
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---
  
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
        if(CopyBuffer(Hilo_Handle,0,Shift,1,Hilo_ma)==-1 ||
            CopyClose(_Symbol,PERIOD_CURRENT,0,1,Hilo_cl)==-1
            //CopyClose(_Symbol,PERIOD_CURRENT,Shift,1,Hilo_cl)==-1
            ) return;
            
         //Hilo Buy
         if (Hilo_cl[0]>Hilo_Handle) {
         Comment ("BUY SIGNAL "+Hilo_cl[0]+">"+Hilo_Handle);
         return;
         }
         else
         //Hilo Sell
         if (Hilo_cl[0]<Hilo_Handle) {
         Comment ("SELL SIGNAL "+Hilo_cl[0]+"<"+Hilo_Handle);
         return;
         }
         Comment ("NO SIGNAL");
  }
//+------------------------------------------------------------------+
Почему вы сравниваете значение с хэндлом? Ручка есть ручка - ее нельзя сравнивать со стоимостью.
 
mntiwana:

Дорогой МЛАДЕН

Вот проблема с ошибкой, и она может быть удалена двумя способами ..... добавлением "t" перед (tdelete) и добавлением "pendingorder" (deletependingorder) после удаления ...... мой вопрос в том, какой из них является лучшим способом?

Ваши рекомендации и мнение будут приняты с благодарностью.

с уважением


delete является зарезервированным словом в новом metatrader 4. Если функция, переменная или любая часть кода, за исключением обычного оператора new delete, использует это имя, его нужно переименовать - добавление "t" является быстрым решением, но подойдет любое имя, кроме "delete".
 
mladen:
delete - это зарезервированное слово в новом metatrader 4. Если функция, переменная или любая часть кода, кроме обычного нового оператора delete, использует это имя, его нужно переименовать - добавление "t" является лишь быстрым решением, но подойдет любое имя, кроме "delete".

Дорогой МЛАДЕН

Спасибо за помощь. Теперь все понятно, спасибо.

а как убрать такие предупреждения? ..... и если оставить эти предупреждения как есть, влияет ли это на функциональность кода.

"проверьте старшинство операторов на возможную ошибку; используйте круглые скобки для уточнения старшинства".

что добавить и или сделать с ?

с уважением