CustomXXXX функции - страница 2

 
Maxim Dmitrievsky:

Владимир, не могли бы вы подумать как подгружать кастомный символ из другого терминала онлайн? т.е. сначала можно создать каст. символ и просто экспортировать архив тиковый вручную, а затем в реалтайме дообновлять символ новыми котировками из другого терминала (должен быть открыт). Такого еще нет в кодбазе

Я здесь вообще думал разные примеры делать по пользовательским символам. Но пока стоп: как видите в чистом поле нашёл ... ямку :)

 
Vladimir Karputov:

Я здесь вообще думал разные примеры делать по пользовательским символам. Но пока стоп: как видите в чистом поле нашёл ... ямку :)

Ок, сам еще подумаю, если что напишу здесь ) хотел потренировать нейросетки на каст. символах разных брокеров.

 
Test Custom.mq5
version   "1.002"


В OnInit() создаются два бара для пользовательского символа (перед этим вызывается CustomRatesDelete - удаляет все бары в указанном временном интервале из ценовой истории пользовательского инструмента). Эти бары записываются в ценовую историю пользовательского символа при помощи CustomRatesUpdate.

Чтобы не было перехлёстов по времени принудительно указываю время для нулевого бара и для первого:

   MqlRates rates[];
   ArrayResize(rates,2);
   ArraySetAsSeries(rates,true);
   datetime time_current= TimeCurrent();
   rates[0].time        = time_current;   // время начала периода 
   rates[0].tick_volume = 1;              // тиковый объем 
   rates[1].time        = time_current-60;// время начала периода 
   rates[1].tick_volume = 1;              // тиковый объем 

при этом методом тыка выяснилось, что массив rates должен быть динамическим. ArraySetAsSeries - уже применил для удобства.

Файлы:
Test_Custom.mq5  12 kb
 

Чтобы провести следующее построение сначала нужно рассчитать на сколько шагов цена ("Bid") ушла от последнего значения (массив "rates_prev", индекс "0"). 

Время пока не учитывается.

 
Maxim Dmitrievsky:

каклучше подгружать кастомный символ из другого терминала онлайн? т.е. сначала можно создать каст. символ и просто экспортировать архив тиковый вручную, а затем в реалтайме дообновлять символ новыми котировками из другого терминала (должен быть открыт). Такого еще нет в кодбазе

Все так же, как Вы получаете в Терминал кухни арбитражные быстрые котиры из других источников. Получил котиру - отправил ее тиком в кастомный символ. Готово!

Потом на бэктестах хорошо смотреть рассинхрон...
 
fxsaber:

Все так же, как Вы получаете в Терминал кухни арбитражные быстрые котиры из других источников. Получил котиру - отправил ее тиком в кастомный символ. Готово!

с подгрузкой недостающих какой-то неудобняк получится - постоянно просить другого советника выгрузить тики из другого брокера )

думал что можно как-то подключиться к рабочему файлу котировок другого терминала, но походу никак

Да, как раз ради бэктеста интересно сделать

 
Vladimir Karputov:

Чтобы провести следующее построение сначала нужно рассчитать на сколько шагов цена ("Bid") ушла от последнего значения (массив "rates_prev", индекс "0"). 

Время пока не учитывается.


В случае построения графиков ренко встаёт вопрос о тиках: с одной стороны, если тики транслировать напрямую с текущего символа в пользовательский, то терминал будет автоматически строить по тикам новые бары. Эти бары на пользовательском символе будут как обычные бары на текущем символе - с хвостами high и low, на каждой минуте - новый бар. С другой стороны, если тики не транслировать вообще, то торговать не получится на основе пользовательского символа - на нём не будет соответствия цен с текущим символом.

 

лайк!

Причина обращения: