Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1769

 

Всем добрый день. Скажите пожалуйста мне нужно начать тест индикатора в мт4 на тф д1, а когда от него поступит сигнал нужно тф переключить на н1. Это можно как-то сделать не прерывая тест?

 
DanilaMactep #:

Всем добрый день. Скажите пожалуйста мне нужно начать тест индикатора в мт4 на тф д1, а когда от него поступит сигнал нужно тф переключить на н1. Это можно как-то сделать не прерывая тест?

нет

надо запускать на Н1, а сигнал получать с Д1

 
DanilaMactep #:

Всем добрый день. Скажите пожалуйста мне нужно начать тест индикатора в мт4 на тф д1, а когда от него поступит сигнал нужно тф переключить на н1. Это можно как-то сделать не прерывая тест?

Нет. В тестере тайм фреймы не переключаются. Поэтому, нужно либо ставить Модель тиков OHLС на M1 и смотреть сигналы на H1 или D1, либо выбрать H1 и на нем ждать сигнал с D1.

 
MakarFX #:

нет

надо запускать на Н1, а сигнал получать с Д1

Это если советник тестировать. А мне надо протестить в ручном режиме. То есть подключить к тесту советник, а индикатор накину просто на график теста. И мне надо вручную переключатся между таймфреймами во время теста. Можно такое организовать может с помощью скрипта или ещё чего-то?

 
DanilaMactep #:

Это если советник тестировать. А мне надо протестить в ручном режиме. То есть подключить к тесту советник, а индикатор накину просто на график теста. И мне надо вручную переключатся между таймфреймами во время теста. Можно такое организовать может с помощью скрипта или ещё чего-то?

Сигнал получаешь от индикатора?
 
MakarFX #:
Сигнал получаешь от индикатора?
Да от индикатора, но только в виде побития его трендовых линий и потом на младшем тф контртрендовых линий -наверно позже запишу видос, чтобы наглядно было;-)
 
DanilaMactep #:
Да от индикатора, но только в виде побития его трендовых линий и потом на младшем тф контртрендовых линий -наверно позже запишу видос, чтобы наглядно было;-)

Делай индикатор MTF и будет тебе счастье)

 
MakarFX #:

Делай индикатор MTF и будет тебе счастье)

Подскажите, пожалуйста, что я упустил? Это функция в советнике.

Ошибка: выход за пределы массива

int TradeSignal() 
  {
   int limit, i, sig=-1;
   double Ma_curr, Ma_prev, Buffer[];
   limit=MaPeriod*3;
   for(i=limit;i>=0;i--)
     {
      Ma_curr=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i);
      Ma_prev=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i+1);
      Buffer[i]=Ma_curr-Ma_prev;
      if(Buffer[i]>0) sig=0;
      if(Buffer[i]<0) sig=1;
     }
   return(sig);
  }
 
MakarFX #:

Подскажите, пожалуйста, что я упустил? Это функция в советнике.

Ошибка: выход за пределы массива

Под массив Buffer у вас не выделена память

int TradeSignal() 
  {
   int limit, i, sig=-1;
   double Ma_curr, Ma_prev, Buffer[];
   limit=MaPeriod*3;
   ArrayResize(Buffer, limit);
   for(i=limit-1;i>=0;i--)
     {
      Ma_curr=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i);
      Ma_prev=iMA(_Symbol,_Period,MaPeriod,0,MaMethod,MaPrice,i+1);
      Buffer[i]=Ma_curr-Ma_prev;
      if(Buffer[i]>0) sig=0;
      if(Buffer[i]<0) sig=1;
     }
   return(sig);
  }
 
Mihail Matkovskij #:

Под массива Buffer у вас не выделена память

Спасибо большое.
Причина обращения: