Скачать MetaTrader 5

Пишу эксперта, нужна помощь в визуализации...

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Matvey Alekseev
622
Matvey Alekseev  
Всем привет!
Вот взялся за написание эксперта, у меня есть свой индекс (это слегка изменённый Ask при каждом тике ) и буферный массив для него indexMassBuffer, каждый тик я наращиваю массив новым значением индекса. Не подскажите, как мне имея такой массив данных отобразить его на общем графике? Не могу никак логику понять, это очень схоже с мувингом... но как в мувинг тогда запихнуть мои расчётные данные (y компонента)? И как к этим данным время привязать (x компоненту)? У меня вся обработка идёт на OnTick()

ps: только стал изучать mql5, тыканье носом в нужные документы приветствуется.
Maksym Bondarchuk
10180
Maksym Bondarchuk  

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

Matvey Alekseev
622
Matvey Alekseev  

Спасибо, что-то стало получаться.... создал пользовательский индикатор, вызываю его из эксперта... теперь нужна вертикальная линяя по текущему времени, как заставить её перерисовываться???? Объявил её в эксперте: 

int OnInit()
{
   ObjectCreate(0,"v_level",OBJ_VLINE,0,TimeCurrent(),0);


На тике делаю:

 ObjectSetInteger(0,"v_line",OBJPROP_TIME,TimeCurrent());

В итоге она рисуется один раз и не перемещается вместе со временем... что не так делаю? 

Переход на новые рельсы: пользовательские индикаторы в MQL5
Переход на новые рельсы: пользовательские индикаторы в MQL5
  • 2009.11.23
  • Андрей
  • www.mql5.com
Я не буду перечислять все новые возможности и особенности нового терминала и языка. Их действительно много, и некоторые новинки вполне достойны освещения в отдельной статье. Вы не увидите здесь кода, написанного по принципам объектно-ориентированного программирования — это слишком серьезная тема для того, чтобы просто быть упомянутой в контексте как дополнительная вкусность для кодописателей. В этой статье остановимся подробней на индикаторах, их строении, отображении, видах, а также особенностях их написания по сравнению с MQL4.
Olegs Kucerenko
12122
Olegs Kucerenko  
Как минимум указывать тоже самое имя объекта..
Matvey Alekseev
622
Matvey Alekseev  
Karlson:
Как минимум указывать тоже самое имя объекта..
Да, мой косяк, спасибо, что указали.... а то в чужом глазе соринку замечу, а у себя бревна не вижу...
Matvey Alekseev
622
Matvey Alekseev  

Рано обрадовался.... Расскажите, пожалуйста, как такое может быть? При тестировании эксперта график кривой индикатора в визуализации отображается, но при реальной торговле его нет???

 Код эксперта:

 

int zIndicator = 0;            // Объявляем переменную для хранения хендла быстрой MA

//+------------------------------------------------------------------+

//| Expert initialization function                                   |

//+------------------------------------------------------------------+

int OnInit()

  {

//---

   zIndicator = iCustom(NULL,0,"zont\\zIndicator",

                          PERIOD_CURRENT,          // Период

                          0,          // Смещение

                          MODE_SMA,   // Метод рассчета

                          PRICE_CLOSE // считаем по ценам закрытия

                 );

    

//---

   return(INIT_SUCCEEDED);

  } 

 Индикатор стандартный, пользовательский.


Slava
Модератор
6927
Slava  

Есть нюанс.

При визуализации тестирования созданный/вызванный в эксперте индикатор автоматически присоединяется к графику визуализации. При обычной работе эксперта такого не происходит.

Вам нужно либо руками этот индикатор положить на график, либо воспользоваться функцией ChartIndicatorAdd

Matvey Alekseev
622
Matvey Alekseev  
stringo:

Есть нюанс.

При визуализации тестирования созданный/вызванный в эксперте индикатор автоматически присоединяется к графику визуализации. При обычной работе эксперта такого не происходит.

Вам нужно либо руками этот индикатор положить на график, либо воспользоваться функцией ChartIndicatorAdd

Да, нюансов тут хватает. Спасибо, индикатор заработал! 
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий