Эта статья описывает, как установить агентов FrankPro на ваше железо
и как настроить автоматическую оптимизацию с Optimizator.ex5.
Агент FrankPro может быть использован 4-я основными путями(пути организации агентов):
FrankPro.ex5 - самый полный билд, опубликованный в MQL5 Market.
Эта версия содержит большинство функционала системы,
включая Полииндикаторы и Автоматическую Оптимизацию.
Для установки и настройки одиночного агента FrankPro agent, для торговли,
нужно просто запустить FrankPro.ex5 в любом окне терминала MT5(с инструментом, который хотите торговать):
Необходимый .set файл с параметрами можно скачать на странице Robots,
просто нажмите на "download" кнопку напротив понравившегося вам робота.
Файлы .set на странице Robots обновляются, в среднем, еженедельно(обычно, на выходных или в Пн).
Другой путь получения файла .set - скачать его из истории результатов оптимизации(History of Optimization Results) на странице Optimization:
Может потребоваться дополнительная подстройка скаченного файла .set, в зависимости от брокера,
или локальных настроек, или параметров риск-депозит-баланс.
По своему усмотрению, пользователь может запустить скачанный файл .set с Frank.ex5(LightWeight Version) в Тестере -
чтобы увидеть если конфигурация удовлетворяет его требования перед запуском робота в торговлю.
Это также помогает в настройке системы под конкретного брокера и стиль управления депозитом.
Для запуска одиночной конфигурации без оптимизации - установите параметр 'Auto Optimization Mode (Optimizator.ex5)' в зн. ENUM_MODE_MANUAL.
Таким образом входные параметры для советника вручную вводятся на подстранице "Inputs" или загружены через .set файл пользователем.
Optimizator.ex5 не используется в этом случае.
Для настройки полииндикаторов, чтобы связать вместе несколько агентов FrankPro.ex5, Пользователю нужно либо скачать
файл PI_conf.conf на странице Polyindicators и скопировать его в папку MQL5, или
создать/редактировать файл PI_conf.conf вручную, используя любой текстовый редактор.
Файл должен быть расположен здесь, скопируйте его:
Агенты FrankPro автоматически скопируют этот файл в свои индивидуальные папки данных при запуске, если параметр
'Copy PI_conf.conf from the root MQL folder to the EA's folder' установлен в зн. true.
В не зависимости от установленного значения - советник FrankPro всегда загружает копию PI_conf.conf, расположенную внутри его папки данных:
\MQL5\Files\EURUSD_101\PI_conf.conf
Файл может быть вручную отредактирован(предварительно выключите параметр "Copy PI_conf.conf..."),
вы можете указать несколько Полииндикаторов, например(синтаксис описан в главе "Полииндикаторы" - "Polyindicators"):
PI:1|InEAs:|In_PIs:2,3,4,5-R|Min_Sig_Num:1|Max_Opp_Sig_Num:0
PI:2|InEAs:GBPUSD-101-R,GBPUSD-202-R|In_PIs:1,3|Min_Sig_Num:1|Max_Opp_Sig_Num:1
Есть смысл редактировать коренной файл в директории Files, чтобы Франкенштейны сами скопировали его при запуске.
Таким образом файл придётся редактировать только однажды.
Если редактировать каждый из этих файлов по-отдельности - можно настроить несколько Оптимизаторов, работающих одновременно в одном Терминале.
Пример файла PI_conf.conf:
time created:1718114875
PI:1|InEAs:GBPUSD-1,GBPUSD-2,AUDUSD-5,USDCAD-4|In_PIs:|Min_Sig_Num:1|Max_Opp_Sig_Num:0
PI:2|InEAs:GBPUSD-101-R,GBPUSD-202-R|In_PIs:1,3|Min_Sig_Num:1|Max_Opp_Sig_Num:1
PI:3|InEAs:EURUSD-1,EURUSD-2,USDCAD-5,USDCHF-4|In_PIs:|Min_Sig_Num:1|Max_Opp_Sig_Num:0
PI:4|InEAs:|In_PIs:1,2,3|Min_Sig_Num:2|Max_Opp_Sig_Num:0
PI:5|InEAs:|In_PIs:2,3|Min_Sig_Num:1|Max_Opp_Sig_Num:0
Можно прописать любое количество строчек, советников, установить значения Min_Sig_Num и Max_Opp_Sig_Num.
Более детально Полииндикаторы рассмотрены в главе Полииндикаторы("PolyIndicators").
Чтобы настроить полностью автоматическую оптимизацию для группы агентов FrankPro -
Используйте Оптимизатор Optimizator.ex5.
Вы можете настроить более 90 агентов в 1 Терминале,
все под централизованным управлением Optimizator.ex5...
Optimizator.ex5 для локальной установки способен автоматически проводить оптимизацию
выбранных агентов с установленным интервалом между циклами оптимизации.
Функционал Optimizator.ex5:
Программа требует библиотеку shell32.dll для копирования файлов из Тестера в Терминал,
установите соответствующий флажок на подстранице 'Dependencies'(Зависимости):
(Если вы хотите, чтобы Оптимизатор скачивал матрицы)Убедитесь, что WebRequest на адрес https://frankenstein.pro разрешён
в настройках терминала MT5(это разрешает соединение к API frankenstein.pro):
Входные параметры:
ID (OPT_ID) это идентификатор со страницы Optimization,
матрицы скачиваются только для указанного OPT_ID:
Optimizator требует установки второго терминала MetaTrader5.
Стоит устанавливать тот же терминал с тем же брокером,
в другую папку(можно использовать тот же аккаунт).
Вручную установите директории, чтобы Optimizator знал где найти дополнительный терминал,
'path to AUX metatester64.exe' выглядит примерно так:
'path to 'Roaming' folder with the AUX Terminal's data' может выглядеть примерно так(путь, выбранный во время установки терминала):
Этот дополнительный aux терминал будет использоваться для проведения оптимизации.
Когда оптимизация завершается, Оптимизатор скопирует результаты в папку MQL5\Files\Optimizator_[OPT_ID]\results\,
и также в папку MQL5\Files\[Symbol]_[magic]\curr_set.set,
потом закроет второй aux Тестер и запустит новый цикл оптимизации, если это потребуется.
Оптимизатор использует файл шаблона Frank_template.tpl, хранящийся в директории C:\Users\UserName\AppData\Roaming\MetaQuotes\Terminal\***\MQL5\Files\.
Скачать файл можно на странице Goods или по ссылке: Frank_template.tpl
Скачав, скопируйте файл в директорию Files, чтобы оптимизатор мог его прочитать.
Параметры внутри могут быть изменены по усмотрению пользователя.
Неоптимизируемые параметры загружаются из шаблона, оптимизируемые - из .set-результата.
Пользователь также может создать свой шаблон, кликнув правой мышью на окно графика с FrankPro и нажав "Шаблоны-Сохранить Шаблон".
Сохраните его как Files\Frank_template.tpl.
Когда параметр 'Frankenstein.pro Mode: download matrices?'
установлен в зн. ENUM_MODE_FRANKPRO, Optimizator соединяется с Frankenstein.pro
и скачивает текущие матрицы и конфигурации из публичного пула в файловую систему:
Убедитесь, что в настройках терминала MetaTrader5 WebRequest разрешён для "https://frankenstein.pro":
Эти матрицы могут быть использованы "как есть",
но, скорее всего, потребует вручную отредактировать их.
Это связано с тем фактом, что матрицы настраиваются на работу с конкретным брокером.
Для работы с вашим брокером, некоторые параметры могут потребовать подстройки.
Матрицы хранятся в файле *\MQL5\Files\[Symbol]_[Magic]\opt_matrix.set для каждого агента FrankPro:
Когда параметр 'Frankenstein.pro Mode: download matrices?'
установлен в зн.ENUM_MODE_LOCAL_OPTIMIZATOR, никакого соединения к Frankenstein.pro не происходит
и Optimizator.ex5 загружает матрицы локально из файловой системы:
После скачивания конфигураций и матриц в режиме ENUM_MODE_FRANKPRO,
пользователь может переключить Optimizator в режим ENUM_MODE_LOCAL_OPTIMIZATOR.
После, Оптимизатор сможет использовать скаченные матрицы, загружая их из файловой системы.
Как ранее было упомянуто, эти марицы и конфигурации могут быть вручную отредактированы
для подстройки системы под конкретного брокера.
Для редактирования матриц можно использовать любой текстовый редактор:
Чтобы понять какое имя относится к какому параметру, взгляните на содержимое файла InputsNames.txt.
Или (1)загрузите матрицу в терминале в Тестер:
(2)измените параметры(находясь в режиме генетической или полной оптимизации):
(3)сохраните новую матрицу вручную, используйте правый клик мыши, нажмите "save",
и перепишите файл opt_matrix.set:
Обратите внимание:
Важно пропустить скаченные матрицы через
быстрый процесс оптимизации с Frank.ex5(Легкая Версия), чтобы
проверить исполнение .set файла и подстроить систему под вашего брокера и тип аккаунта.
Для каждого агента FrankPro Оптимизатор использует копию конфигурационного файла,
хранящуюся в директории ..\MQL5\Files\Optimizator_[OPT_ID]\configs\:
Отредактрируйте файл любым текстовым редактором, установите значение, которые приложение Тестер будет использовать
при проведении "быстрого генетического" цикла оптимизации:
Изначально, значения скачиваются со страницы Optimization:
Укажите диапазон оптимизации в днях - длительность ввода исторических данных.
30 дней данных считаются минимальным практическим минимумом.
90-180-365 дней и другие значения могут быть использованы.
Период Оптимизации("Переоптимизировать каждые N дней") - период переоптимизации.
Каждые N дней Оптимизатор проводит новый цикл оптимизации для обновления файла .set,
использующегося агентом для торговли.
Когда Optimizator переключён в режим ENUM_MODE_LOCAL_OPTIMIZATOR, значения загружаются только локально из конфигурационных файлов.
Держите 1 инстанцию Оптимизатора, работающую в любом окне терминала:
Оптимизатор будет автоматически скачивать новые матрицы, начинать новые циклы оптимизации,
запускать нового агента FrankPro с каждым успешным циклом оптимизации.
Для каждого агента FrankPro можно наблюдать текущий статус оптимизации в окне State:
Переключившись в режим ENUM_MODE_LOCAL_OPTIMIZATOR, можно отредактировать матрицы и конфигурационные файлы,
теперь они не будут переписаны новыми скачанными матрицами.
Оптимизатор передаёт результаты локально агентам FrankPro.
Агенты загружают эти параметры локально.
В зависимости от настроек, Optimizator либо закроет и заново откроет существующее
окно с агентом FrankPro или передаст результаты и будет ожидать от агента FrankPro, чтобы он загрузил параметры самостоятельно.
Если агент FrankPro загружает параметры во время выполнения(run-time), это может занять некоторое время
(периодически происходит проверка состояния, с периодом до 15 минут, возможна задержка. Подсказка: перезапустите Терминал для форсирования загрузки новых параметров).
Это поведение контролируется флагами IP_IGNITE_MISSING - Ignite Frankensteins automatically? и IP_ignite_close_EA - close the EA before ignition.
Входные параметры советника буфферизированы, чтобы увидеть реальные параметры, использующиеся Двигателем,
нажмите на кнопку "params" в верхнем-правом углу:
(параметры на "родной" субстранице входных параметров игнорируются,
они только используются в режиме ENUM_MANUAL_MODE или в отдельной установке Frankensten.ex5 standalone)