Переход с MQL4
© 2000-2011, MetaQuotes Software Corp.
2628
В MQL5 нет предопределенных таймсерий Open[], High[], Low[], Close[], Volume[] и Time[].
Необходимую глубину таймсерии теперь можно задавать самостоятельно с помощью
соответствующих функций для доступа к таймсериям.
Советники (эксперты)
Эксперты в MQL5 не обязательно должны иметь функцию-обработчик события поступления нового
тика OnTick, как это было в MQL4 (функция start в MQL4 вызывается на выполнение при
поступлении нового тика), потому что теперь эксперты в MQL5 могут содержать
предопределенные функции-обработчики несколько типов событий:
OnTick – поступление нового тика;
OnTimer – событие таймера;
OnTrade - торговое событие;
OnChartEvent – события ввода от клавиатуры и мышки, события перемещения графического
объекта, событие окончания редактирования текста в поле ввода объекта LabelEdit;
OnBookEvent – событие изменения состояния стакана цен (Depth of Market).
Пользовательские индикаторы
В MQL4 количество индикаторных буферов ограничено и не может быть более 8. В MQL5 такого
ограничения нет, но следует помнить, что каждый индикаторный буфер требует выделения
определенного объема оперативной памяти под его размещение в терминале, поэтому
злоупотреблять открывшейся новой возможностью все же не следует.
Кроме того, в MQL4 было всего 6 типов отрисовки пользовательского индикатора, в MQL5 теперь
18 стилейрисования. И хотя названия видов отрисовки не изменились, сама идеология
графического отображения индикаторов изменилась существенно.
Отличается также и направление индексации в индикаторных буферах. В MQL5 все буфера по
умолчанию ведут себя как обычные массивы, то есть элемент с индексом 0 является самым
старым в истории, при увеличении индекса мы продвигаемся от самых старых данных к самым
последним.
Единственная функция по работе с пользовательскимииндикаторами, которая сохранилась из
MQL4 – это SetIndexBuffer. Но и ее вызов изменился, теперь требуется указать
типданных,которыебудутхранитьсявмассиве, связываемом с индикаторным буфером.
Кроме того, изменились и расширились свойства пользовательских индикаторов, появились
функции доступактаймсериям, поэтому необходимо полностью переосмыслить весь алгоритм
расчета.
Графические объекты
Количество графических объектов в MQL5 существенно расширилось. Кроме того,
позиционирование графических объектов во времени стало возможным с точностью до секунды
на графике любого периода – теперь не производится округление точек привязок графических
объектов с точностью до времени открытия бара на текущем ценовом графике.
Для объектов Arrow, Text и Label появилась возможность указывать способпривязки, а для