Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1006

 

Справка: https://www.mql5.com/ru/docs/runtime/running
В справке сказано:
"если в очереди mql5-программы уже находится событие ChartEvent или такое событие обрабатывается, то новое событие такого типа не ставится в очередь".

Результаты этого примера показывают, что все события, создаваемые  ф-ей EventChartCustom(), в очередь ставятся (и в дальнейшем обрабатываются в OnChartEvent() ).

void OnInit() 
   {
   Print("\n\nOnInit  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"); 
   for (int i=1; i<=10; i++)
      {
      int event = 1000 + i;                 
      long GTC = GetTickCount();   
      Print("OnInit  >>>   i = ", i, "   GTC = ", GTC);
      EventChartCustom(0, event, GTC, (double)i,"");    
      Sleep(10);                   
      }
   Print("");
   return;                                         
   }
//----------------------------------------
void OnChartEvent(const int     event,  
                  const long&   lparam, 
                  const double& dparam, 
                  const string& sparam  
                  )
   {
   Print("OnChartEvent:  >>>>>>>   event = ", event, "  lparam = ", lparam, "  dparam = ", dparam );  
   }

Поясните, пожалуйста, ставятся или не ставятся?

Документация по MQL5: Программы MQL5 / Выполнение программ
Документация по MQL5: Программы MQL5 / Выполнение программ
  • www.mql5.com
Каждый скрипт и каждый эксперт работает в собственном отдельном потоке. Все индикаторы, рассчитываемые на одном символе, даже если они запущены на разных графиках, работают в одном потоке. Таким образом, все индикаторы на одном символе делят между собой ресурсы одного потока. В одном потоке с индикаторами также последовательно выполняются...
 

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

Указываю:

#resource "\\Indicators\\Bollinger new.ex5"

Пытаюсь вызвать из ресурсов:

 BolBandsNewHandle=iCustom (NULL,TF_graph,"::Indicators\\Bollinger new.ex5", ...

 При таком способе у меня на компе все работает, но при переносе на другой выдается ошибка:

test on EURUSD,H1 (netting)
 expert file MQL5\Indicators\Bollinger new.ex5 open error [2]
 program file Indicators\Bollinger new.ex5 read error
 loading of Bollinger new EURUSD,H1 failed [532]
 2016.04.01 00:00:00   cannot load custom indicator 'Bollinger new' [4802]
strategy tester report 45 total trad

Или в индикаторе надо указать что он есть ресурс эксперта?

Как-то я это делал, но подзабыл просто )

.......................

Что с форумом случилось? Ответ на вопрос знают все кто добавлял продукт в маркет. И все молчат. )

 
Aleksandr Prishenko:

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

Указываю:

Пытаюсь вызвать из ресурсов:

 При таком способе у меня на компе все работает, но при переносе на другой выдается ошибка:

Или в индикаторе надо указать что он есть ресурс эксперта?

Как-то я это делал, но подзабыл просто )

.......................

Что с форумом случилось? Ответ на вопрос знают все кто добавлял продукт в маркет. И все молчат. )

Потому, что ответ на ваш вопрос есть в справке, прям с примером. А справка прям у вас перед глазами - меню сайта - документация.

 

  Так как в примере не работает, показал как я делаю.

Пример просматривал несколько раз, перечитывал статью. Что делаю не так не понимаю. Помню что путь к файлам ресурса надо указывать по другому, не так как в примере, а как не помню)).
 
Aleksandr Prishenko:
 а как не помню)).

А зачем всё это помнить если перед глазами всегда есть документация. "Ты не поверишь", я даже параметры iMA не могу написать без документации... зачем мне забивать последние ячейки памяти той информацией которую хранить не надо???

 
Alexey Viktorov:

А зачем всё это помнить если перед глазами всегда есть документация. "Ты не поверишь", я даже параметры iMA не могу написать без документации... зачем мне забивать последние ячейки памяти той информацией которую хранить не надо???

  Память надо развивать, ячеек хватит)

 
Aleksandr Prishenko:

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

Указываю:

Пытаюсь вызвать из ресурсов:

 При таком способе у меня на компе все работает, но при переносе на другой выдается ошибка:

Или в индикаторе надо указать что он есть ресурс эксперта?

Как-то я это делал, но подзабыл просто )

.......................

Что с форумом случилось? Ответ на вопрос знают все кто добавлял продукт в маркет. И все молчат. )

При переносе на другой комп или терминал, откомпилированный работать будет без проблем. Но в момент компиляции на другом компе компилятор ищет файл индикатора чтобы включить его в качестве ресурса...

 
Aleksandr Prishenko:

  Память надо развивать, ячеек хватит)

Неее... На завершении шестьдесят четвёртого года их уже надо беречь. :))))

 
Alexey Viktorov:

При переносе на другой откомпилированный работать будет без проблем. Но в момент компиляции на другом компе компилятор ищет файл индикатора чтобы включить его в качестве ресурса...

У меня на компе работает все, а на компе Mетаквотов не работает(

Получается что файл индикатора сохраняется не в ресурсы советника, а в какие-то ресурсы терминала.

 
Aleksandr Prishenko:

У меня на компе работает все, а на компе Mетаквотов не работает(

Вы ездили к ним в офис и пробовали запускать на их компе свою программу?

Сколько обошёлся проезд? Тоже есть желание к ним съездить в гости.