В Феврале 2014 года произошло кардинальное обновление торгового терминала МетаТрейдер 4 - выпущен новый, 600 билд. В нем выявили огромное количество самых разнообразных ошибок и поэтому, буквально через пару дней, их устранили и версию терминала обновили до 604 билда. Но ошибки и в работе нового, 604 билда продолжают находить, поэтому в ближайшие дни, скорее всего, будет ещё один новый билд - возможно, 605 или какой-то ещё. А потом и ещё, и ещё - слишком много "багов"...
Одним из нововведений в функционале обновлённой версии торгового терминала МТ4 стало изменение места хранения данных, таких как эксперты, индикаторы, скрипты, шаблоны, логи, пользовательские данные. До недавнего времени, а точнее - до выхода нового релиза торговой платформы, все эти данные хранились и загружались в дочерние папки корневой папки торгового терминала МетаТрейдер 4.
И если для терминалов, установленных на диске C:
, в папку Program Files
, хранение сторонних программ и других файлов не отвечало политике безопасности операционной системы, то для терминалов, установленных не на системном диске, было вполне безопасным и предпочтительным. Объясним почему.
Вредоносные программы, которые пользователь мог загрузить сам в папку experts
, не могли получить доступ к системному диску, а значит, и не могли навредить операционной системе. Это первая причина. Вторая - терминал мог свободно записывать любые, нужные для его работы файлы в свой каталог установки - это логи, файлы котировок и т. д. В том случае, когда терминал устанавливался на системном диске, у пользователей частенько возникали проблемы - служба UAC (User Account Control или Контроль учётных записей пользователей
) могла блокировать запись в папку Program Files
. И третья причина - бывали ситуации, когда логи работы сторонних программ (например, советников) достигали размера в сотни гигабайт! Как пример - при тестировании советника к стратегии EBB-1, при очень сильных движениях на рынке, терминал начал "строчить" в лог работы советника строчку "Неизвестная ошибка". Сотни записей в секунду! В результате, за сутки работы советника лог "раздулся" до размера 110 Гиг! И ошибка была выявлена только тогда, когда появилась системное сообщение о нехватке места на диске D:, куда был установлен терминал. Но сама система при этом продолжала спокойно работать и "не упала".
Теперь давайте разберемся в отличии размещения советников, индикаторов, скриптов и т. д., в старых билдах терминала МТ4 и в новых. Во всех терминалах до 600 билда была принята такая структура размещения сторонних файлов в корневой папке торгового терминала:
- - templates - шаблоны;
- - experts - советники;
- - expertsindicators - пользовательские индикаторы;
- - expertsscripts - скрипты;
- - expertsinclude - включаемые в другие программы файлы с расширением MQH и MQ4;
- - expertslibraries - подключаемые библиотеки;
- - expertsfiles - специальная "файловая песочница", только в пределах этой папки MQL4 программам разрешается выполнять файловые операции.
В обновлённой версии терминала, от 600 билда и выше, все сторонние файлы размещатся в папке ‹каталог_данных›MQL4
:
- - ‹каталог_данных› templates - шаблоны;
- - ‹каталог_данных›MQL4Experts - советники;
- - ‹каталог_данных›MQL4Indicators - индикаторы;
- - ‹каталог_данных›MQL4Scripts - скрипты;
- - ‹каталог_данных›MQL4Include - включаемые в другие программы файлы с расширением MQH и MQ4;
- - ‹каталог_данных›MQL4Libraries - подключаемые библиотеки;
- - ‹каталог_данных›MQL4Images - файлы картинок;
- - ‹каталог_данных›MQL4Files - "файловая песочница".
Причём, у одних пользователей каталог данных может располагаться по пути:
C:Usersимя_учетной_записиAppDataRoamingMetaQuotesTerminalID_конкретного_терминала
А у других в роли каталога данных выступает корневая папка торгового терминала! Причины, которые влияют на такое поведение при установке или обновлении терминала, следующие:
- 1. При выключенной службе User Account Control, терминал МТ4 использует директорию MQL4 по пути, который был указан в инсталляторе терминала;
- 2. При включенной службе User Account Control МТ4 использует директорию MQL4 по пути в папке
AppData
; - 3. Если установить терминал при включенной службе User Account Control, но не запускать терминал, то директория в папке
AppData
не создаётся - она появиться только при запуске терминала.
Вот такой бардак нам теперь предлагают "разрабы" из МетаКвойтес! Возможно, эту ситуацию и поправят в новых билдах, но пока это так.
На рисунке 1 показаны возможные пути к папке MQL4
. Кстати, обратите внимание, что папка AppData
в пути C:UsersИмя_учетной_записиAppDataRoamingMetaQuotesTerminalID_конкретного_терминалаMQL4
является скрытой, а потому для её отображения нужно активировать возможность просмотра скрытых элементов (изображение кликабельно):

Теперь давайте расшифруем путь C:Usersимя_учетной_записиAppDataRoamingMetaQuotesTerminalID_конкретного_терминала
создания каталога данных:
- - буквой
C:
обозначается имя системного диска; - -
имя_учетной_записи
- собственно имя учетной записи пользователя, под которой он работает в системе Windows; - -
ID_конкретного_терминала
- это уникальное имя папки, где осуществляется хранение данных пользователя при работе с конкретной копией торговой платформы МТ4. Так как на один компьютер может устанавливаться несколько терминалов одного или разных брокеров, тогда и папок с уникальным именем будет несколько. А состоит оно из набора цифр и латинских букв.
На рисунке 2 можно увидеть путь к каталогу данных различных терминалов, которые создаются при включенной службе User Account Control (изображение кликабельно):

Для сопоставления каждой папки данных с копией терминала (если их установлено на компьютере несколько) используется информация из файла origin.txt
, который находится в корне этих каталогов - то есть, в папке ID_конкретного_терминала
- тех папок, где "многа букаф" на рисунке 2.
Проверить свою версию терминала вы можете через меню платформы Справка
- О программе
:
Рис. 3. Проверка версии торгового терминала МТ4.
В связи с обновлением платформы в сети, на форумах трейдеров появились множество вопросов, связанных с тем, что из программы пропали советники, индикаторы, шаблоны. А при попытках повторной загрузки этих инструментов в привычные папки они не появляются в терминале после его перезапуска. Связано это с тем, что в новой версии билда все пользовательские данные хранятся в отдельной папке MQL4, да ещё и запрятаны так, что "без бутылки" и не разберешься!
При подключенном интернете, при запуске торгового терминала должно произойти его автоматическое обновление, а, в зависимости от того, включён UAC или отключен, в каталоге установки программы МТ4 или на системном диске должна создаться папка MQL4
.
Все индикаторы, скрипты, советники, шаблоны и т. д. при обновлении автоматически копируются в дочерние папки MQL4
:
- -
MQL4experts
- советники; - -
MQL4expertsindicators
- индикаторы; - -
MQL4expertsscripts
- скрипты и т. д.
Пути к этим папкам можно увидеть на рисунке 1.
Как определить, где новый, 600 билд терминала создал каталог данных? Сделать это можно следующим образом - в меню Файл
торговой платформы выбрать пункт Открыть каталог данных
. Это функция новая и ранее её не было:
Рис. 4. Открытие каталога данных терминала через меню
Файл
.
Откроется окно проводника, где можно увидеть путь, по которому терминал создал каталог данных. И если у Вас терминал установлен не на системном диске, а каталог данных создан на диске C:
(в корневой папке установленного терминала нет папки MQL4
), есть возможность привести все пути в норму.
Для того чтобы терминал создал папку MQL4
в своей корневой папке, нужно запустить программу МетаТрейдер 4 с ключом /portable. Для этого откройте свойства ярлыка терминала и пропишите ключ /portable в строку Объект
свойств:
Рис. 5. Запуск терминала с ключом /portable.
Стоит учесть, что путь до исполняемого файла terminal.exe
в свойствах ярлыка может быть прописан в двух вариантах: "D:TerminalyRealAlpariMetaTrader 2terminal.exe" /portable и D:TerminalyRealForex4youMetaTrader 4-3terminal.exe /portable. Нужно поставить пробел после кавычек или после .exe
и добавить ключ /portable
, иначе изменить ярлык не получиться.
Теперь при клике по ярлыку запустится так называемая портативная версия терминала и все файлы из папки ‹каталог_данных›MQL4
автоматически скопируются в папку ‹корневая_папка_установки_МТ4›MQL4
. И все Ваши советники, индикаторы, скрипты и т. д. вы можете устанавливать в папку MQL4
, которая будет расположена в корневой папке торгового терминала. Все остальные особенности установки советников, индикаторов или других файлов в терминале остались такими же, как и описано в статье Как установить советник в MT4?
.
Итак, давайте повторим алгоритм установки советников/индикаторов/скриптов терминал выше 600 билда. Устанавливаете программу МетаТрейдер 4 не на системном диске - подробнее об этом можно прочесть в статье Как установить несколько терминалов на один компьютер?
. Или обновляете, если терминал уже установлен. Далее, в не зависимости от того, где у вас программа создала каталог данных (службу UAC может включить, например, антивирус или другой пользователь), прописываете ключ /portable в ярлыке запуска терминала. И после этого устанавливаете советников/индикаторы/скрипты в папку MQL4
согласно приведенных в начале статьи рекомендаций. Терминал запускаете только кликом по ярлыку - и папка MQL4
у Вас всегда будет в каталоге установки программы МетаТрейдер 4, куда в любой момент можно "кинуть" нужный файл - и он всегда появиться в меню Навигатор
Вашего терминала!