Описание как настраивать и работать. double Lots = 0.1; ReInvest = 1; ReadHistory = 1; //Чтение истории (1) или перезапись истории (0) Probab = 0.8; //требуемая вероятность выигрышаdstop = 25; //шаг изменения стопа в пачке стопов Nstop = 1; //число стопов в пачке стопов НЕ БОЛЬШЕ 3 delta = 1; //шаг изменения шага в векторе Nidelt = 20; //число шагов по изменению шага в векторе НЕ БОЛЬШЕ 30 NN = 10; //размер вектора НЕ БОЛЬШЕ 12 double forg = 1.05; //скорость забывания результатов обучения ReplaceStops = true; lTrailingStop = 510; sTrailingStop = 510;Работа с программой.Обучение. При заданном наборе внешних (входных) параметров обучение программы можно проводить двумя способами: А) В результате предварительного тестирования на Тестере Стратегий. Для этого нужно предварительно загрузить достаточный объем истории, хотя бы за год, что можно сделать, открыв график нужной валютной пары и удерживая клавишу Home. Затем открываем меню Вид/Тестер Стратегий, и запускаем тест с выбором точной модели тестированияпо всем тикам (подробнее о работе с Тестером см. встроенную инструкцию платформы МТ4). В процессе теста файлы статистики сделок создаются Тестером и записываются в папку Tester/files. Для работы с реальным счетом их достаточно перенести в папку Experts/files. Б) Обучение может быть также проведено при запуске программы в режиме реального времени. В этом случае файлы статистики сделок создаются сразу в папке Experts/files. Накопление статистики фиктивных сделок в реальном времени происходит не быстро. Может потребоваться неделя или больше, прежде чем советник соберет достаточный объем информации и откроет первую позицию. В то же время, файлы статистики, быстро создаваемые Тестером Стратегий, не вполне удовлетворительны, так как они несколько искажены погрешностями, возникающими при моделировании Тестером движения цены внутри бара. Этого достаточно для демонстрации работоспособности алгоритма и презентации программы, однако запуск советника на реальном счете с этими файлами статистики сопряжен с определенным риском. Поэтому оптимальным способом обучения представляется следующий. Файлы обучения созданные Тестером после тестирования на исторических данных, следует рассматривать как первое приближение . Их следует перенести в папку Experts/files и запустить советника в режиме реального времени на демо-счете. Советник сразу может совершать сделки. Однако обновленные файлы статистики сделок появятся спустя некоторое время (около недели- для параметров принятых по умолчанию). Проще говоря, после перехода с Тестера на реальный счет советнику необходимо расторговаться . За это время он корректирует файлы статистики, созданные ранее Переобучение. Параметр ReadHistory.Если программа была ранее хотя бы раз протестирована на данном символе, она считается обученной работать на этом символе, а папка Tester/files содержит файлы статистики. При повторном запуске на Тестере программа по умолчанию считывает информацию из файлов статистики. Поэтому при изменении значений каких либо входных параметров необходимо запретить чтение данных из файлов статистики. В противном случае возникнет несоответствие старых результатов обучения и новых входных параметров, в результате чего программа может даже продемонстрировать отрицательный результат. За переобучение программы отвечает параметрReadHistory. Если при запуске программы ReadHistory=0, программа стирает прежний файл статистики и пишет на его место новый, отвечающий новым входным параметрам. Если ReadHistory=1, программа считывает результаты прежнего обучения и использует их в работе. Eсли ReadHistory=1, а файла статистики не обнаружено, программа прописывает в журнал ошибку чтения файла (это нормально), создает нужные файлы и записывает в них информацию аналогично запуску c выбором ReadHistory=0. Прочие параметры. - Probab требуемая вероятность выигрыша, на основании статистических данных. Чем ближе Probab к единице, тем более вероятно достижение выигрыша в случае открытия позиции. Однако рыночные ситуации с гарантированным выигрышем реализуются редко. Поэтому для фактического достижения выигрыша пользователь обязан разрешить определенный риск. Таким образом, советник не является машиной по стабильному производству денег. Пользователь осознает наличие инвестиционного риска и самостоятельно назначает вероятность проигрыша. Указанная вероятность проигрыша равна нулю при выборе Probab=1, в этом случае советник никогда не откроетпозицию; forg скорость забывания результатов обучения. От 1 (забывания нет) до 1.1 (сильное забывание). Параметр полезен, если необходимо придать последним сделкам больший статистический вес. Известно, что рынок со временем изменяется. Это выражается, к примеру в том, что рыночные ситуации, которые в прошлом году традиционно были благоприятными для позиции Buy, в новом году могут оказаться благоприятными для позиции Sell. Если поставлено forg=1, программа считает вполне равноправными рыночные ситуации, реализованные в прошлом и в новом году. С учетом требуемой вероятности положительного закрытия (Probab) это приводит к тому, что программа ищет долгосрочные стабильные тренды. В то же время, она игнорирует явные признаки появления новых трендов. Напротив, при выборе forg>1 программа, наряду с долгосрочными трендами, которые действовали на всей доступной истории, отслеживает также появление новых трендов. При появлении очередной рыночной ситуации статистический вес предыдущих аналогичных рыночных ситуации понижается в forg раз. Иначе говоря, при forg=1.05 забывание истории наполовину происходит при появлении 10-15 аналогичных ценовых комбинаций; - dstop =TakeProfit=StopLoss. В текущей версии программы всегда выставляется ограничение прибыли, равное ограничению потерь. Однако, программа может закрывать позиции, не дожидаясь достижения стопов. - delta минимальный шаг, при котором цена считается нетождественна предыдущей, и происходит обновление ценовых паттернов. При обучении на коротких периодах этот параметр можно взять 1-2 (обновление паттернов на каждый тик), большие периоды могут быть адекватно восприняты Тестером только при более грубом разрешении, delta=3-5. Фактически, программа анализирует тики,а параметр delta заменяет собой выбор таймфрейма; - Nidelt число типов ценовых паттернов (число шагов по изменению шага). Это непростой параметр, значение которого можно оставить равным по умолчанию. При каждом изменении цены программа анализирует цены, записанные в наборе из Nidelt типов паттернов из NN элементов каждый. Цены соседних элементов idelt паттерна отличаются на величину delta*idelt, где 1<IDELT< более становится рынка анализ Nidelt понижении при есть то ситуаций, рыночных различных отрабатываемых число уменьшает но процесс, вычислительный ускоряет понижение что видно, Отсюда данных). статистических основании (на заданной выше позиции закрытия положительного вероятностью с векторов множества из один реализуется времени момент данный в если случае, том дается Sell или Buy типа реальной открытие на Разрешение статистику. ним по ведет и сравнений реализованных всех для фиктивные открывает Программа 0. случае противном 1, записывается вектора элемент соответствующий номером, большим паттерна ценового элемента цены больше номером меньшим цена Если элементах. соседних его хранящиеся цены, сравниваются каждого Для сравнений. вектор соответствие ставится паттерну ценовому каждому этом При набор составляется паттернов ценовых набора На стираются. элементы последние а налево, справа номер переписываются элементов значения delta*idelt), до точностью (с цене текущей равен паттерне каждом первый так паттернов, весь обновляется обновлении очередном огрубления. степенях рынке о информацию представляет цен образом, >;- NN размер паттерна. Это важный параметр, указывающий на число элементов в паттерне. Если число элементов мало, то статистика будет значима (сделок много), но паттерны слишком просты и грубы, и не обязательно обнаружатся паттерны, обеспечивающие выигрыш свероятностью выше заданной. Если элементов много, значит рассматриваются длинные паттерны, самих паттернов много, и значит статистика по каждому паттерну не накопится, а тестирование будет проходить долго. Время тестирования многократно возрастает с ростом NN! Рекомендуется NN=10 при тестировании по данным за год; - ReInvest. Если ReInvest=1, число лотов растет пропорционально сумме баланса. Если ReInvest=0, заданное в начале число лотов остается неизменным. - Lots - число лотов (начальное); - Nstop в текущей версии программы не используется и остается равным принятому по умолчанию.Оптимизацию Проводить методом По ценам открытия.Жду мнение людей которые понимают в советниках. Просто мне кажется там не хватает некоторых функций, можна даже метод мартингейлера добавить, так как стоп лосс и профит одинаковый. А по сделкам если брать то плюсовых больше.Баров в истории 8482Смоделировано тиков 15960Качество моделирования n/aОшибки рассогласования графиков 0Начальный депозит 1000.00Чистая прибыль 5998.50Общая прибыль 23954.14Общий убыток -17955.64Прибыльность 1.33Матожидание выигрыша 3.40Абсолютная просадка 275.08Максимальная просадка 472.91 (8.47%)Относительная просадка 32.63% (351.08)Всего сделок 1765Короткие позиции (% выигравших) 732 (59.43%)Длинные позиции (% выигравших) 1033 (56.24%)Прибыльные сделки (% от всех) 1016 (57.56%)Убыточные сделки (% от всех) 749 (42.44%)Самая большаяприбыльная сделка 69.26убыточная сделка -30.34Средняяприбыльная сделка 23.58убыточная сделка -23.97Максимальное количествонепрерывных выигрышей (прибыль) 12 (289.66)непрерывных проигрышей (убыток) 8 (-203.56)Максимальнаянепрерывная прибыль (число выигрышей) 289.66 (12)непрерывный убыток (число проигрышей) -203.56 (Среднийнепрерывный выигрыш 2непрерывный проигрыш 2лот постоянный 0.10Настройки взяты стандартные если поставить tp 40 то прибыль возрастет в разы.
Отметьте интересные вам фрагменты текста и они станут доступны по уникальной ссылке в адресной строке браузера.