Как превратить индикаторы MT4 в MT5 за считанные минуты

Опубликовано: 2021-02-03


Лучший Forex VPS для сингапурских трейдеров

Как превратить индикаторы MT4 в MT5 за считанные минуты: вы хотите преобразовать советники, созданные для работы на MT4, чтобы они также могли работать на платформе MT5?

Здесь нет длинных методов!

Мы поможем вам преобразовать код MQL4 в код языка MQL5 таким простым способом; ты будешь рад! Успех революционной серии MetaTrader принадлежит компании Metaquotes Inc, и теперь они, наконец, решили отметить MT5 как свое программное обеспечение на будущее.

Похоже, что компания сосредоточила большую часть своих усилий на платформе MetaTrader 5 (MT5), и, несомненно, она лучше, чем MT4.

Итак, как вы будете мигрировать? Продолжай читать!

ПОЛУЧИТЬ FOREX VPS ДЛЯ MT5

Зачем переключаться с MT4 на MT5 за считанные минуты

Самый большой вопрос, который возникает у программистов и трейдеров в связи с этим запланированным переносом, заключается в том, как можно эффективно запускать советники, написанные на языке MQL4, на платформе МТ5, учитывая тот факт, что МТ4 и МТ5 не могут работать одновременно.

Когда мы углубляемся в этот вопрос, мы сталкиваемся с некоторыми фактами, такими как:

  • MT4 и MT5 не могут работать на одних и тех же языках программирования. Следовательно, эксперты, написанные для работы с MT4, не будут работать с MT5, что усложнит ситуацию.
  • У MT4 очень унылое и скучное будущее, и мы можем процитировать это после объявления о будущих обновлениях MT4. Следовательно, софту сейчас будет не хватать сока.
  • Metaquotes внесла многочисленные изменения в функционал МТ5, за счет чего он получает больше функциональных преимуществ по сравнению с МТ4.

Как успешно превратить индикаторы MT4 в MT5: основной процесс

Использование MT4 EA на MT5 кажется технически невозможным, и существующий исходный файл MQ4 EA необходимо изменить (некоторые его элементы), чтобы он идеально работал на MT5.

Если у вас есть хорошие знания о том, как язык и среда MQL4 отличаются от MQL4, то, безусловно, вы можете выполнить все эти модификации.

Здесь мы продемонстрируем преобразование советника MT4 в формат MT5 с помощью советника MT4 с помощью советника Average.mq4. Причиной его выбора было, во-первых, то, что он предустановлен со всеми установками MT4, а во-вторых, большинство программистов знакомы с этим советником.

ПОЛУЧИТЕ ОПТИМИЗИРОВАННЫЙ VPS ДЛЯ ТОРГОВЛИ НА ФОРЕКС

Использование примера «Moving Average.mq4» и преобразование MT4 EA в MT5 EA

  • В MetaEditor 4 вы найдете исходный файл с именем «MQL4\Experts\Moving Average.mq4», который вам нужно открыть.
  • Выделить + скопировать весь текст, нажав Ctrl + A, Ctrl + C.
  • Нажмите клавишу F4 и откройте MetaEditor, вы обнаружите, что клиентский терминал MT4 открыт.
  • После того, как вы успешно загрузили настольный терминал MT5 от нужного брокера, откройте экземпляр клиента MT5.
  • Теперь откройте MetaEditor 5 и создайте нового эксперта (шаблон), что-то вроде того, что мы продемонстрировали там внизу.
  • Заполните поле «Имя» и присвойте подходящее имя вашему шаблону советника. Как только вы это сделаете, ваш будущий советник будет построен на MT5.
  • Теперь, выбрав весь текст в шаблоне, нажав Ctrl + A и удалив их все, вставьте текст, скопированный из MT4.

MetaTrader 5 поставляется с другими системами ордеров (например, открытие, закрытие, выбор, отправка и т. д.). Однако для конвертации с MT4 на MT5 EA самым простым способом, по мнению наших экспертов, является использование одной библиотеки — mq4.mqh.

Дальше…

Мы предлагаем эту библиотеку, потому что она позволяет программисту работать с ордерами в MQL5 так же, как в MQL4. Короче говоря, библиотека позволяет OLS (система языка заказов) стать похожей на MQL4.

Вы можете получить файл библиотеки mq4.mqh у выбранных программистов онлайн. Мы добавили немного функциональности после получения нашего от одного такого программиста. Мы объединили все в один файл. Эта библиотека предназначена только для систем заказов.

  • Убедитесь, что экземпляр платформы MT5 открыт.
  • После открытия платформы MT5 нажмите «Файл» -> «Открыть папку данных» …\MQL5\Include».
  • Перетащите файл библиотеки (mq4.mqh) в эту папку.
  • Обновление платформы MT5 сейчас важно. Закройте его и снова откройте.
  • Теперь откройте MetaEditor5 и исходный код советника.
  • В исходный код SimpleEA.mq5 добавьте строку: #include <mq4.mqh>
  • После добавления строки в исходный код нажмите кнопку «F7» и соберите исходный код SimpleEA.mq5. Кроме того, на панели инструментов MetaEditor 5 упоминается опция «Компилировать».
  • После завершения сборки вы получите две ошибки. Именно здесь подчеркивается различие между платформами MT4 и MT5.

Вы просто пишете iMA в MetaEditor 4, где «сдвиг» — это номер ценовой свечи. Для каждого советника и функции в MetaEditor5 необходимо создать хендлы, чтобы получить значение от советника/индикатора по этому хэндлу.

ПОЛУЧИТЕ ЛУЧШИЙ VPS ФОРЕКС

Как превратить индикаторы MT4 в MT5 : Изменение исходного кода

В этой части мы сосредоточимся на редактировании исходного кода для MT4, чтобы убедиться, что он отлично работает на MT5. Эти изменения исходного кода применяются только к индикатору, так как здесь вы изменяете только одну строку исходного кода.

Как превратить индикаторы MT4 в MT5

Теперь давайте опишем шаги, выполняющие эти изменения. А не ___ ли нам?

  • Создайте переменную типа Integer для дескриптора MA-индикатора, чтобы запустить процесс.
  • Присвойте ему значение INVALID_HANDLE. Рисунок ниже объясняет то же самое.

Как превратить индикаторы MT4 в MT5

Советники и индикаторы поставляются с разделом OnInit() для инициализации во время выполнения. Форма такая:

МТ4 в МТ5

Вы можете использовать файл справки, чтобы прочитать это. Чтобы получить доступ к файлу справки в MetaEditor5, просто нажмите клавишу «F1». Вы также найдете один документ в сообществе MQL5, содержащий много информации, которую вы можете найти в файле справки. используйте эту ссылку для доступа к этому документу –

https://www.mql5.com/ru/docs/basis/function/events

ПОЛУЧИТЕ ЛУЧШИЙ VPS ФОРЕКС
  • Далее добавляем этот код (исходник) в текст нашего советника. При отсутствии этого раздела нажмите Alt+M из MetaEditor 5.

Как превратить индикаторы MT4 в MT5

  • В списке функций появляются пять функций, но вы увидите, что функция OnInit() по умолчанию там отсутствует. Итак, мы должны продиктовать его вручную, и изображение ниже покажет вам, как его создать:

Как превратить индикаторы MT4 в MT5

  • Чтобы увидеть функцию OnInit() в паре с исходным кодом, просто нажмите Alt + M.

ПОЛУЧИТЕ ЛУЧШИЙ VPS ФОРЕКС
  • Теперь напишите следующий код в разделе OnInit().

МТ4 в МТ5

В MetaEditor MT4 вам обычно нужно написать следующий код:

С другой стороны, код описывается как дескриптор индикатора для МТ5, и именно поэтому вы пишете следующий код в МТ5:

  • Теперь, чтобы получить ценность от Moving Average EA, просто напишите функцию, используя дескриптор, который вы увидите на следующем изображении:

Как превратить индикаторы MT4 в MT5

Как мы обсуждали ранее, создание функции необходимо для получения значения советника/индикатора с помощью MetaEditor5, а функция, которую мы используем для получения значений, имеет строку, которую мы вызываем CopyBuffer().

Его работа заключается в копировании данных из индикатора в ваш массив, и он получает данные из заданного буфера данного индикатора в определенном количестве.

Просто перейдите по ссылке -https://www.mql5.com/ru/docs/series/copybuffer, чтобы прочитать доступный документ.

ПОЛУЧИТЕ ЛУЧШИЙ VPS ФОРЕКС

Код выглядит так:

МА имеет 1 буфер с номером «0». Теперь скопируйте одно значение из MA. В MetaTrader4 это записывается следующим образом:

Последний «0» соответствует значению МА на последней свече на графике (нулевой свече). В MetaEditor MT5 это будет написано следующим образом:

  • Из позиции индекса вы должны скопировать одно значение в массив MA.
  • При компиляции кода сначала удалите обе ошибки. Для этого укажите на первой записи ошибку и выполните двойной щелчок по ней.
  • Теперь вы перейдете к месту ошибки в исходном коде MT5 для вашего советника. Вы получите код ошибки в строке 114 для этого экземпляра.

Как превратить индикаторы MT4 в MT5

  • Вы должны удалить строку, указывающую на ошибку, и заменить ее строкой, содержащей код MaGet(0), как мы указали там внизу.
ПОЛУЧИТЕ ЛУЧШИЙ VPS ФОРЕКС

Код ошибки всегда подчеркнут красными чернилами, и вы найдете код maMaGet(0) прямо под ним.

Как превратить индикаторы MT4 в MT5

  • Удалив код ошибки и поместив туда строку MaGet(0), вы можете нажать клавишу F7 и снова скомпилировать код.
  • После компиляции исходного кода вы заметите, что теперь будет появляться только одна ошибка.
  • Для замены этого последнего кода ошибки необходимо следовать той же последовательности, что и при очистке предыдущего кода ошибки. Дойдите до строки с кодом ошибки, дважды щелкните ее, прокомментируйте и замените! Вот и все!
  • Вы найдете зеленые чернила, подчеркивающие код ошибки. Прямо ниже вы найдете код, который заменит часть ошибки. Вот так мы устраняем ошибку.

МТ4 в МТ5

Вы должны использовать следующую строку для замены, и вы на грани:

если (Открыть[1]>MAGet(0) && Закрыть[1]<MAGet(0)

  • После комментирования и замены кода ошибки компиляция кода обязательна. После компиляции исходного кода, как мы это делали ранее, нажав клавишу F7, вы увидите, что все ошибки удалены.
  • Мы рассмотрели весь процесс преобразования советника MT4 в подходящую версию, которую вы можете использовать на MT5. В результате теперь вы можете удобно запустить его на платформе MT5!

Как превратить индикаторы MT4 в MT5: заключение

На первый взгляд, как превратить индикаторы MT4 в MT5, кажется сложным вопросом , но метод, который мы упоминали выше, позволяет это сделать. Только представьте, как жалко было бы строить всю программу на интерфейсе программирования MetaEditor 5, да еще и с нуля.

К счастью, ярлык был доступен, и мы описали его здесь. В последнее время использование MT5 значительно увеличилось, и ожидается появление новых методов перехода с MT4 на MT5. Платформа MT5 постоянно развивается.

Платформа MT5 претерпела множество модификаций, и в ближайшее время мы ожидаем добавления еще нескольких функций. Несомненно, это намного лучше, чем МТ4.

Новичок в Forex trade или недовольны вашим текущим тарифным планом хостинга Forex VPS?

Что ж, тарифные планы Accuweb Hosting Forex установили новые стандарты для хостинга Forex VPS, представляя ультра-удобные тарифные планы в 6 различных ценовых категориях.

Пользователи довольны своим опытом торговли на Форекс с этими планами, и если вы новичок на Форексе, не упустите шанс! Вы также получаете 7-дневную бесплатную пробную версию. Нажмите ЗДЕСЬ , чтобы узнать больше.

ПОЛУЧИТЕ ЛУЧШИЙ VPS ФОРЕКС