27 апреля, 2011

Возвращаясь к Puria

Олег Цирюлик
RU

Торговый советник Puria хорошо известен в среде трейдеров. Алгоритм работы эксперта широко описан в сети Интернет. Первоначальное описание принципа работы советника выглядело так:

Применяемые индикаторы:
1. Скользящая средняя МА(85), Linear Weighted применить к Low, цвет красный;
2. Скользящая средняя МА (75), Linear Weighted применить к Low, цвет красный;
3. Скользящая средняя ЕМА (5), применить к Close, цвет желтый;
4. Индикатор MACD (15, 26, 1).

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

Вход в рынок на покупку: желтая MA пересекает обе красные снизу вверх, MACD подтверждает сигнал, находясь выше нулевой отметки.

Автором предложены небольшие ТейкПрофиты от 10 до 20 пунктов, и СтопЛосс в 14 пунктов. Далее шли рекомендации по десятку валютных пар и их таймфреймам (только M30 и H1), на которых рекомендовалось использовать советник. Сразу же было предложено и опубликовано для свободного использования несколько реализаций советника по стратегии, но интерес быстро пропал.

Новый виток интереса к торговой стратегии Puria возник в конце декабря 2010 года, когда завершился очередной чемпионат программ-советников, и эксперт по этой торговой стратегии получил 2-е место из нескольких сотен. Вот именно из-за этого пристального внимания к тактике я и назвал эти заметки «возвращаясь…». Но я описываю свою реализацию торговой стратегии Puria, которая заметно отличается от первоначально описываемой торговой стратегии, поэтому буду её называть Puria2M — Puria, прошедшая последовательно 2 тура трансформации.

Логика торговой стратегии Puria2M

Отличия рассматриваемой системы от предыдущей версии следующие:
— все численные параметры стратегии (периоды сглаживания в индикаторах, значения стоп-уровней) являются не фиксированными, а параметрами оптимизации;
— в советнике переписаны строгие критерии «пересечения кривых» (в отличие от гуляющих по сети реализаций Puria), теперь это действительно строгие правила пересечений, при использовании которых на некоторых участках котировок могут возникать несколько (2, 3, …) открытых ордеров одного направления (Buy, Sell);
советник трендовый, поэтому совершенно бессмысленно в нём допускать возможность одновременных разнонаправленных ордеров, — в этой реализации, при возникновении сигнала на открытие, принудительно закрываются все ранее открытые ордера встречного направления;
— в советник добавлена возможность выбора (альтернативно) алгоритма управления капиталом (ММ) — одного из 5-ти способов;
— в советник добавлена возможность слежения за уровнем StopLoss для достижения безубытка.

Оптимизация и тестирование советника

Показывать не оптимизированные результаты тестирования я считаю нецелесообразным. Поэтому сразу перейдём к обзору некоторых оптимизированных результатов.

В советнике достаточно большое число настраиваемых параметров для того, чтобы провести его тщательную оптимизацию. Кроме того, обширное тестирование показало, что модифицированный советник достаточно хорошо ведёт себя на гораздо более широком наборе валютных пар и таймфреймов (очень неплохие результаты на M15 и даже M5).

Ниже показан график работы советника на EURUSD M15 за период истории 2010.10.01–2011.02.16 (немногим более 4-х месяцев). Работа ведётся фиксированным и очень небольшим (0.1) лотом, начальный депозит 1000 USD.

Рис.1. График работы советника на EURUSD. Таймфрейм M15.

Данные периодов усреднения, оптимизированные под показанные условия тестирования, радикально (во много раз) отличаются от рекомендованных в оригинальном методе Puria.

Тестирование советника на различных Дилинговых центрах

Гораздо показательнее тестирование, проводимое на исторических данных от нескольких различных ДЦ (в различных экземплярах терминала MT4). Ниже показаны 4 таких графика, полученные на котировочных последовательностях разных ДЦ. Тестирование проводилось на EURUSD, M15 за период истории 01.01.2011–16.02.2011.

Рис. 2. Тестирование эксперта на ДЦ Alpari.

Рис. 3. Тестирование эксперта на ДЦ NortdFX.

Рис. 4. Тестирование эксперта на ДЦ  Forex4you.

Рис. 5. Тестирование эксперта на ДЦ  Insta Forex.

Все 4 теста проведены в одних и тех же условиях, с одними и теми же, заранее оптимизированными значениями параметров советника. Сознаюсь сразу, что получить такую синхронность кривых удалось большим трудом: вопреки начальным ожиданиям, первоначально получаемые кривые радикально отличаются (для любого советника!), вплоть до числа сделок на одном и том же временном интервале. Это связано одновременно с влиянием нескольких факторов:

— различные шкалы времени, используемые серверами различных ДЦ (сдвиг на 1–2 часа, и нигде эта шкала не совпадает с GMT);
— различное количество знаков (4 или 5) в представлении котировочных цен (5 на Alpari, и 4 на всех остальных из приведенных);
— различная величина «стандартного лота», принятая на разных ДЦ (100 000 единиц котируемой валюты на всех, за исключением Insta Forex, где эта величина 10 000).

В итоге, как мы видим: кривые с большой точностью совпадают, но точные численные значения различаются. Это очень интересный вопрос, но он требует достаточно обстоятельного обсуждения, и выходит за рамки рассмотрения. Тем не менее, я возьму смелость сформулировать такое утверждение: если вы не получаете кривые тестирования одинакового вида на котировочных данных нескольких различных ДЦ, то тестируемый вами советник содержит серьёзные ошибки, которые в итоге «вылезут» на реальном счёте.

Подключаем управление капиталом

В советнике предусмотрено на выбор несколько механизмов управления капиталом (ММ, номера 54 и 65 журнала ForTraders.org), один из которых — полное отсутствие управления капиталом, торговля фиксированным лотом, результаты которого и показывались выше.

Для тестирования на этот раз выбран весьма большой интервал 2010.01.01–2011.02.25 (более года), при очень небольшом начальном депозите 100 USD и весьма малом начальном лоте 0,01 (при отсутствии управления капиталом это фиксированный размер лота, а при его наличии — начальное значение лота), дилинговый центр тестирования — Alpari (5 знаков).

Примечание: привожу оптимизированные параметры тестирования, для возможного повторения экспериментов:

?      EURUSD (Euro vs US Dollar),
?      Таймфрейм 15 Минут (M15),
?      Период тестирования: 2010.01.04 00:00–2011.02.25 21:59 (2009.12.31–2011.02.25);
?      Модель: По ценам открытия (этого достаточно — советник работает по предыдущим закрытым барам);
?      Параметры: FixLotSize=0,01; RiskPercent=3; StopLossPts=60; TakeProfitPts=310; MovingPeriod1=18; MovingPeriod2=60; MovingPeriod3=220; DebugLevel=2; ConfigureFile=»PuriaM2.cfg»;  MM_method=0;  MM_parameter_1=0.01; MM_parameter_2=0; Bezubitok=false.

Рис. 6.  Работа фиксированным лотом 0,01.

Следующий результат получен в тех же условиях, при пропорциональном управлении размером лота: размер очередного лота вычисляется пропорционально (и на увеличение, и на уменьшение) отношению текущего накопленного размера депозита к начальному.

Рис. 7.  Пропорциональное управление размером лота.

Последний график показан при управлении капиталом методом Райана Джонса (метод фиксированной пропорции), при весьма малом (агрессивном) значении параметра «дельта» метода.

Рис. 8. Метод управления капиталом Райана Джонса.

Очень коротко — пару слов — нужно сказать об осторожности в выборе стратегии управления капиталом, применительно к конкретному советнику: использование неудачного управления капиталом может уменьшить прибыльность советника (или даже перевести его в убыточность). Одним из таких опасных методов может стать пропорциональное управление размером лота (показанное выше) для советника, который «чередует» прибыльные и убыточные сделки, а PuriaM2 именно такой. При этом после прибыльной сделки (потенциально, под следующую убыточную) будет «подставляться» увеличенный лот, а после убыточной (под прибыльную) лот будет уменьшаться.

Выводы

Из предложенного выше, можно сделать более чем достаточное количество выводов и обсуждений, объёмом далеко выходящих за разумный объём статьи. Но выделю основные из них:

Показанный советник Puria — профитный, но, самое главное, при этом: а) он не требует больших депозитов, б) не несёт высоких рисков, как, например, любые советники, использующие «принцип Мартингейла».

1. Проверяйте ваш советник на котировочных историях нескольких ДЦ, если вам не удаётся добиться их достаточного подобия — ваш советник содержит серьёзные ошибки. Точного совпадения тестовых результатов на котировочных историях разных дилинговых центров не может быть принципиально.

2. Торговая стратегия (алгоритм работы советника) и стратегия управления капиталом (ММ) — 2 различных, и в значительной мере, независимых механизма, которые совмещаются в одном советнике. Практически к любой ТС можно «прикрутить» почти любую стратегию управления капиталом, хотя здесь могут быть и противопоказания. ММ, удачно добавленный к ТС, во многие-многие разы увеличивает результативность ТС, или быстро убивает недоработанную ТС.

3. Тестирование подтверждает утверждение Ларри Вильямса: «Успешная торговля делает деньги. Успешная торговля с надлежащим управлением капиталом способна создавать несметные богатства» и то, что стратегия управления капиталом, важнее торговой стратегии советника.

4. Оценивать качество нового советника (торговой стратегии советника) следует только при отключенной системе управления капиталом (если она есть), работая  фиксированным лотом, — только так можно оценить хорошая эта или плохая торговая стратегия.

Скачать торговый советник, индикатор и библиотеки

Подпишитесь на нас в VK

Fortrader contentUrl Suite 11, Second Floor, Sound & Vision House, Francis Rachel Str. Victoria Victoria, Mahe, Seychelles +7 10 248 2640568

Комментарии (4)

  1. У меня при компиляции советника PuriaM2_07 выскакивает ошибка «AboveMaProfit» — function is not defined. Что делать?

  2. Уважаемый автор очень заинтересовал советник модифицированный Вами. Но подскажите как его правильно компилировать, а то при попытке это сделать выдаем ошибки связанные с подключением библиотек. Заранее благодарю.

Обсуждение закрыто.

Ещё из этой категории

Все статьи

Простая разработка скрипта Stop Trade для MetaTrader 4 на языке Mql4

Торговля на финансовых рынках становится всё более популярной, и Алготрейдинг играет в этом процессе значительную роль. В этой статье мы рассмотрим простую разработку скрипта для MetaTrader 4, который закроет все открытые позиции и удалит все отложенные ордера. Скрипт будет написан на популярном языке программирования MQL4, который зарекомендовал себя как простой и надёжный инструмент для разработки […]

4 нюанса тестирования советников в терминале MetaTrader 4, о которых знают не все трейдеры

В условиях современного трейдинга использование в торговле форекс советников уже давно не выглядит какой-то экзотикой. Практически каждый день появляются новые платные и бесплатные торговые роботы, которые впечатляют доходностью и вызывают желание быстренько заработать. Однако ставить эксперта на торговый счет без проверки – сомнительная затея, ведущая к «неожиданным» потерям в потенциале. Поэтому рекомендуем начать работу с […]

Скрипты на Форекс: что это и как установить в MT4

«Переболев» бесплатными форекс-советниками и техническими индикаторами, обещающими прибыль в сотни и тысячи долларов до следующего понедельника, начинающий трейдер обычно возвращается на грешную землю и понимает, что технические инструменты – это всего лишь помощники, делающие торговлю на валютном рынке проще и комфортнее. Мы уже много говорили о них, не затронув только Форекс скрипты, широко используемые трейдерами […]

Классификация Форекс советников

Форекс Советник (робот, EA) – это обыкновенный алгоритм, запрограммированный на основе той торговой системы, которой вы планируете использовать, чтобы совершать сделки на валютном рынке. Можно сказать, что для того, чтобы использовать советник, необходимо знать торговую систему, ставшую для него основой, чтобы знать, на каком рынке его можно применять, когда это делать по времени и за […]

Недавние обучающие статьи

Все статьи

Редакция рекомендует

Все статьи
Loading...