Автоматическая оптимизацияСовременные технологии часть №2 MultiLevelRecording (MLR)Количество папок с файлами, если 0 то настройки сохраняться не будут. Во время оптимизации советник анализирует результаты каждого прохода в тестере стратегий и сохраняет настройки с лучшими показателями в отдельные файлы. Файлы с настройками (включая валютную пару и период графика) сохраняются в отдельную папку. Однако по результатам оптимизации положительные результаты могут быть достигнуты с разными настройками и какие именно настройки окажутся наиболее эффективными в реальных условиях рынка никто не знает. Поэтому есть смысл сохранять как минимум несколько комбинаций настроек, которые в последствии можно использовать сразу на нескольких счетах распределив между ними средства. Таким образом достигается диверсификация риска. В то время пока по одному счету мы можем получить убыток, по другому счету достигается прибыль. Для того чтобы автоматизировать процесс сохранения настроек в разных вариациях достаточно увеличить значение параметра MultiLevelRecording (сокращенное название - MLR) на желаемое количество. В результате после сохранения настроек в одной папке (по определенной валютной паре с определенным периодом графика) для следующей вариации советник создаст новую папку увеличив ее номер на один крат. Основным номером папки является параметр FolderNumber в которую помещаются все подпапки с начальным номером Magic_Number. Все последующие папки имеют номера - (Magic_Number+порядковый номер создания). Номер каждой последующей папки превосходит предыдущий на один крат (одну цифру). AutoStartTimeВключает в себя общее количество баров для оптимизации. Это значение используется для установки начальной даты оптимизации которая при одном и том же количестве баров для разных периодов определяется по разному. Так допустим с периодом H1 18000 баров это чуть больше 2 лет оптимизации. Однако при установке меньшего периода время оптимизации сокращается пропорционально периоду графика. Это имеет абсолютно обусловленный характер учитывая сколько времени может занять оптимизация советника за 2 года с периодом M1. Это огромное количество баров которое нужно пройти при каждом проходе. Количество проходов может исчисляться тысячами. Этот расчет избавляет нас от необходимости каждый раз сдвигать время в тестере стратегий в зависимости от периода графика. К тому же его надо не просто сдвигать, его надо высчитывать и все это усложняет работу. Так что эта незамысловатая функция значительно облегчает процесс оптимизации. Единственным недостатком этой функции по сравнению с ручной установкой даты оптимизации в тестере стратегий является постоянная необходимость проходить в холостую лишнее время установленное в тестере стратегий. К примеру в тестере стратегий установленный временной участок занимает 2 года а согласно внутренним настройкам советника на 18000 баров с периодом M1 временной участок устанавливается намного меньше и при каждом проходе советник вынужден проходить лишний участок в холостую что отнимает какое то время. Это влияет исключительно и только на общее время оптимизации, на качество оптимизации это никак не влияет. Все это при условии проведения оптимизации по ценам открытия. Где за один и тиот же момент может быть пройден период как в один час (H1), так и одну минуту (M1). StartTimeВремя начала оптимизации (устанавливается вручную) если AutoStartTime = 0. Это выпадающий блок в котором вы можете установить любую дату начала оптимизации. TotalPassЭто очень важный параметр который определяет метод оптимизации. Если 0 оптимизация будет размеренной, если больше 0 то не размеренной. Допустим у вас оптимизируется 28 пар в 10 вариациях. Сначала робот подберет настройки для одной пары и наполнит 10 папок разными настройками, затем перейдет к следующей паре и так далее. Однако в случае размеренной оптимизации если робот не может подобрать подходящие настройки по определенной паре согласно вашим критериям он будет продолжать их искать до того момента пока тестер стратегий не исчерпает все комбинации и не остановится, после чего потребуется перезапуск тестера стратегий и все опять может повториться. В случае использования неразмеренной оптимизации, робот будет подбирать настройки для определенной валютной пары только определенное количество проходов TotalPass после чего переключится на следующую пару и так далее. После того как он достигнет конца списка валютных пар то возвращается назад к первой паре и так по кругу. В первом варианте плюсом является то что во всех папках в итоге вы получите одинаковое количество оптимизируемых файлов не считая последней оптимизируемой пары если оптимизация по ней не была закончена в следствии остановки тестера стратегий. Минусом является то что робот может зациклиться на какой то паре не в силах подобрать для нее настройки под ваши критерии и в нужном вам количестве. По этой причине оптимизация по остальным парам откладывается. Во втором варианте плюсом является полное отсутствие зацикливания на определенной паре робот все время переключается с одной пары на другую, однако папки с файлами таким образом наполняются не размерено. В первой папке как правило будет наибольшее количество оптимизируемых файлов, во второй может быть чуть меньше а в третей еще меньше и так далее, потому что наибольшее количество проходов приходится на первую папку, остальное на вторую и последующие папки. До последних сразу оптимизация может даже не доходить. Выравнивание количества файлов в папках происходит только после наполнения первых папок, в этом случае первенство передается дальше и так до самой крайней папки. UseForwardTesterЕсли включить то настройки с лучшими результатами будут сохраняться только во время автоматического форвард тестирования, которое может быть использовано в тестере стратегий МТ5. Пока советник будет оптимизироваться робот будет игнорировать все полученные результаты и начнет анализировать результаты и выбирать лучшие настройки только после окончания оптимизация и начала автоматического форвард тестирования. ManualControlЕсли включить советник будет отбирать настройки исключительно во время тестирования. Настройки отбираются в соответствии со всеми заданными критериями. Однако перебираются не все настройки подряд как во время оптимизации а только те которые вы выберите в ручном режиме (после полного завершения оптимизации) и прогоните в тестере стратегий в режиме тестирования. SymbolTotalОптимизация советника проходит в мультивалютном режиме, здесь указывается количество оптимизируемых валютных пар. Валютные пары оптимизируются не одновременно а поочередно. Сначала советник подбирает настройки для одной пары, затем для другой и так далее. SwitchSymbolЕсли - 2 то перебираться будут все валютные пары из списка, - 1 только текущая валютная пара тестера стратегий, если 0 и больше выбирается конкретная валютная пара из списка. 0 это первая пара в списке, 1 вторая пара, 2 третья пара и так далее. Список валютных парФорексiSymbolEURUSD/ USDJPY/ USDCHF/ GBPUSD/ USDCAD. nSymbolNZDUSD/ AUDUSD/ EURGBP/ EURCHF/ EURJPY. sSymbolAUDCAD/ CADJPY/ CADCHF/ AUDCHF/ AUDNZD. dSymbolEURCAD/ EURAUD/ NZDJPY/ EURNZD/ GBPJPY. cSymbolNZDCHF/ GBPNZD/ GBPCHF/ NZDCAD/ AUDJPY. xSymbolCHFJPY. rSymbolGBPAUD. tSymbolGBPCAD. Список валютных пар составляется исключительно для оптимизации в тестере стратегий. При запуске советника на график в реальном времени валютные пары считываются с файлов которые создаются во время оптимизации. Вы можете изменять этот список по желанию, обязательным является наличие соответствующего разделителя между инструментами в виде косой черты ( / ). Количество валютных пар и других инструментов которыми вы торгуете может достигать 200 наименований. Советник включает в себя достаточно мощный потенциал, однако такое количество торгуемых инструментов едва ли наберется у вашего брокера. При этом еще инструменты необходимо подбирать в соответствии со стратегиями которые вы используете. В основном используется не более 28 валютных пар которые прописаны по умолчанию. Обращаем ваше внимание что чем больше валютных пар вы используете тем больше нагружаете терминал и соответственно компьютер/VPS. Это создает сравнительно приемлемую нагрузку на средний по мощности сервер при запуске нескольких терминалов, однако если на сервере запустить до 10 терминалов и больше необходимо проследить способен ли ваш сервер справиться с такой нагрузкой. Если сервер не будет справляться с нагрузкой, советники принудительно выгрузятся из терминалов средствами сервера. Это будет весьма некстати при наличии открытых позиций но не критично, при возвращении роботов на графики они безошибочно найдут свои позиции и продолжат их контролировать. TestFileOneС помощью этого параметра можно протестировать конкретный файл с настройками из общей папки. 0 первый файл, 1 второй файл, 2 третий файл и так далее. Это позволяет подвергнуть дополнительной проверке файлов с настройками по отдельности, выявить и исключить файлы которые ослабляют общий результат. Такие файлы необходимо удалять из обшей папки в ручном режиме. Для этого пройдите по пути - \AppData\ Roaming\ MetaQuotes\ Terminal\ Common\ Files (общая папка с файлами советника) найдите ненужные (по вашему усмотрению) файлы с настройками и удалите их. Для работы советнику необходимо чтобы в общей папке находился минимум один файл, максимум 200 файлов. Каждый файл может включать в себя разные настройки, разные периоды графиков, разные валютные пары или полностью разные стратегии. ProtectionFileЭто защита от случайных нажатий в тестере стратегий в следствии чего тестер может запуститься и перезаписать/удалить устаревшие файлы которые могут быть вполне еще пригодными для торговли (по результатам торговли некоторые наборы с настройками могут показывать выдающиеся результаты). Чтобы этого не допустить вы можете защитить отдельные файловые папки от каких либо изменений. Для этого пропишите здесь их номера через косую черту. Profit (USD)Профит в твердой валюте, ниже которого настройки не принимаются. Relative equty drawdown percent (%)Относительная просадка, выше которой настройки не принимаются. Profit factorПрофит фактор, ниже которого настройки не принимаются. Expected payoffМатожидание, ниже которого настройки не принимаются. _5_StatisticsПользовательский критерии приемлемости настроек в виде выпадающего списка. Выберите критерий которому на ваш взгляд должен соответствовать результат приемлемости настроек. Все результаты которые не будут соответствовать данному критерию будут автоматически отсекаться:
_5_StatБольше или меньше. Допустим если вы выбрали в качестве критерия просадку то этот флаг должен быть установлен в позицию меньше (просадка чем меньше, тем лучше). А если выбран критерий профит фактор то естественно больше (профит фактор чем больше, тем лучше). Statistics_5_Минимальное/максимальное значение критерия при котором настройки принимаются. ForwardФорвард тестирование. Если включить советник будет проводить форвард тестирование непосредственно во время оптимизации независимое от того которое проводится тестером стратегий МТ5. С установленной даты внутри советника включаются блоки которые рассчитывают критично важные показатели такие как прибыль (фиксированная в валюте депозита), относительная просадка (в процентах), профит фактор и матожидание. AutoForwardTimeАвтоматическая установка даты начала форвард тестирования:
Custom - задается пользователем с помощью параметра ForwardTime;
Точкой отсчета является текущая дата сегодняшнего дня, точкой завершения установленная дата начала оптимизации AutoStartTime или StartTime в зависимости от того какой метод применяется. От этого временного участка отсчитывается временной отрезок для проведения форвард тестирования. Он можете быть установлен как в отмеренной части так и в определенном количестве месяцев от текущей даты. ForwardTimeНачало форвард тестирования если AutoForwardTime = 0. ForwardProfitПрофит в твердой валюте депозита при котором настройки принимаются; OptDrawdownОтносительная просадка в процентах от депозита в рамках которой настройки принимаются; OptProfitFactorПрофит фактор при котором настройки принимаются. OptExpectedPayoffМатожидание при котором настройки принимаются. DeleteFileЕсли включить робот будет удалять файлы созданные более MaxTimeFile дней назад. День создания отсчитывается от даты завершения оптимизации установленный в тестере стратегий. Это необходимо для автоматического удаления старых файлов. До того момента пока файлы будут существовать они не могут быть переписаны в процессе оптимизации или тестирования. Эти файлы необходимо удалить принудительно в ручном режиме или автоматически по истечению определенного количества дней. Также эти файлы могут быть обновлены онлайн путем перезагрузки их с сервера. MaxTimeFileКоличество дней в течении которых файлы будут считаться пригодными для торговли. По истечению, открытие первых позиций приостанавливается, открытие усредняющих позиций продолжается и так до закрытие всех серий. Далее советник полностью прекращает торговлю до обновления файлов. Если = 0 не используется. _SendMailОтправка сообщений на вашу электронную почту. Предварительно необходимо настроить терминал на отправку почты. Отправляются не все сообщения а только несколько критично важных. MinimumAccountBalanceСнижение баланса до минимально допустимого. В сообщении будет номер счета, валютная пара, и произвольное сообщение (Message). MaxTimeFileИстечение времени файлов, необходимость обновление файлов или продление их активности в зависимости от результатов Checking activity status - периодичная отправка сообщений с перерывом PauseTime которые подтверждают активность советника.
|
| |