6. Системы, основанные на пробоях.

 6. Системы, основанные на пробоях.


6.1. Виды пробоев.

Системы, основанные на пробое, входят в рынок тогда, когда цены пересекают порог или границу некоторого ценового диапазона.
Существует большое множество рыночных паттернов и моделей, основанных на пробое некоторого уровня, линии или границы диапазона. Однако не все эти модели будут пригодны для построения тестируемых МТС, главным образом по той причине, что не всегда будет доступно автоматическое построение формализованной модели пробоя, чтобы использовать ее в тестах.

Одна из самых старых моделей - простой пробой линии тренда, однако эта модель скорее пригодна для выхода их рынка, чем для открытия позиции, и она как раз и относится к моделям, плохо поддающимся формализации и автоматизации. Однако линию тренда можно широко использовать в «ручных» в МТС, как, например, было показано в «Кратком курсе начинающего трейдера. Часть 2.», опубликованном на настоящем форуме.

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

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

Модели, основанные на пробое, также могут отличаться методом входа в рынок. Вход может иметь место при открытии или при закрытии дня, или внутридневной вход при помощи ордеров на граничных уровнях. Более сложные методы позволяют покупать или продавать на границе, т.е. пытаться войти в рынок на откате, когда после пробоя некоторой границы цены ненадолго возвращаются к ней.


6.2. Особенности пробоев и стратегий на их основе.

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

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

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

Еще одна гипотетическая проблема, по мнению многих трейдеров, заключается в том, что при широкой доступности высокопроизводительных компьютеров, простые методы, основанные на пробоях, уже не работают достаточно хорошо. Считается, что из-за широкой популярности пробойных систем рынки адаптировались к ним, а эффективность использования пробойных торговых стратегий снизилась за счет возрастания ценового шума вблизи границ, где размещаются ордера систем, основанных на пробоях. Указанное обстоятельство заставляет эти системы срабатывать излишне часто, особенно на активных рынках, характеризующихся высокой волатильностью.

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

Отдельную проблему представляет собой ширина канала для пробойной стратегии:
• Если пороги установлены слишком близко к текущим ценам, будет наблюдаться большое количество ложных сигналов, что приведет к пилообразной торговле – ценовой шум будет запускать приказы то в одном, то в другом направлении. Поскольку такие движения не представляют собой реальных трендов, то сделки в лучшем случае не принесут прибыли, нанося удар по капиталу трейдера.
• Если границы разнесены слишком широко, то система будет заключать слишком мало сделок и входить в рынок слишком поздно при любом важном движении.
• При оптимальной установке границ канала то теоретическая система, основанная на моделях пробоя, может быть весьма эффективной: частые и мелкие убытки, вызванные отсутствие продолжения движения или ценовым шумом, будут компенсироваться значительными прибылями при крупных движениях рынка.

Для снижения количества ложных сигналов и уменьшения пилообразности торговли системы на основе пробоя иногда соединяются с индикаторами, которые предположительно определяют наличие или отсутствие трендов на рынке. Если тренда нет, то сигналы входа, создаваемые системой, игнорируются; если тренд есть – они принимаются к исполнению. Проблема в том, что и индикаторы не функционируют точно или не успевают среагировать достаточно быстро, отставая от рынка и делая работу системы неидеальной. Иначе любой трейдер, применявший их в сочетании с пробоем или другой моделью следования за трендом, разбогател бы очень быстро, так как торговая стратегия входила бы только в значительные тренды, ведя торговлю гладко и стабильно.


6.3. Система Turtle - типовой пример систем с пробоем канала.

6.3.1. История «черепашек» (Turtle).

Возможность провести тестирование на историческом материале – одно из неоспоримых достоинств работы с МТС. Примером этому является Ричард Деннис, за 16 лет торговли, увеличивший свое состояние с $400 до $200 млн.

Стремяcь доказать, что его успех – следствие объективных исследований, а не личных качеств, Деннис набрал группу из 23 человек, которых он назвал «своими черепашками». Работая в соответствии с предписанными правилами 20 из 23 участников эксперимента, не имевшие ранее опыта торговли, получили среднегодовую прибыль в размере 100%. Впоследствии, когда они вышли из эксперимента Денниса и начали работать на рынке самостоятельно, практически все они сделали себе миллионные состояния.

Этот опыт пример того, как проверка тщательно сформулированных торговых правил на материале исторических данных действительно дает отличные результаты.


6.3.2. Правила открытия позиций в системе Turtle.

Общий принцип систем Turtle заключается в открытии позиций на пробое канала цен. Один из вариантов торговой системы, основанной на принципах «черепашек» для графика дневного масштаба, сводится к выполнению следующих основных правил:

1. Позиция открывается на пробое 20-барового максимума или минимума.

2. Перед переворотом в противоположную позицию по пробою 20-барового экстремума должен быть убыточный трейд в первоначальном направлении торговли.

3. Позиция всегда открывается по пробою 55-барового экстремума.

4. Субъективное правило: если рынок находится в боковом движении, то позиция открывается только по пробою 55-баровых экстремумов.

5. Если при торговле в определенном направлении есть прибыль, то можно продолжать торговать в этом направлении, но для торговли в противоположном направлении необходим убыток при торговле в предыдущем направлении.


6.3.3. Стоп-правила системы Turtle.

1. В день открытия позиции используйте стоп, равный 0.5*ATR(10). Если стоп сработал внутри дня, то, после выхода из позиции, вы можете снова ее открыть, если поступил новый сигнал (цены сделали новый максимум или минимум).

2. На следующий день после открытия позиции используйте стоп, равный 2* ATR(10).

3. Используйте 10-дневный скользящий стоп (имеется в виду стоп на границе 10-дневного канала). Иногда 10 дневный стоп оказывается слишком далеко. 10-дневный скользящий стоп предназначен для того, чтобы вы не рисковали более чем 2*ATR(10) на сделке (за исключением случаев открытия с гэпом против вашей позиции).

4. Когда в ходе сделки набрана прибыль в размере 2.5*ATR(10), передвигайте защитный стоп в точку безубыточности.

5. После того, как 10-дневный скользящий стоп или правило 2.5*ATR(10) вывели стопы в область безубыточности, начинайте использовать более широкий 20-дневный скользящий стоп (закрытие по реверсивному сигналу).

6. После того, как вы достигли прибыли в 10*ATR(10), используйте в качестве скользящего стопа 20-дневный стоп или фигуру 3-барового разворота (3 bar pivot).


6.3.4. Дополнительные приемы.

1. Открывайте дополнительные позиции при пробое 55 дневных экстремумов, перемещая защитный стоп на ту открытую позицию, которая уже находится в точке безубыточности.

2. После получения крупной прибыли, равной 10*ATR(10) или более, не торгуйте в противоположном направлении в течение 45 баров с использованием 20-барового пробойного метода. Вместо этого используйте 55-баровые пробои.

3. Дождитесь бокового рынка для начала торговли по пробою 55-баровых экстремумов.


6.3.5. Правила Money Management системы Turtle.

1. Не рискуйте более, чем 1% вашего счета на одной сделке.

2. Никогда не рискуйте более чем 2*ATR(10).

3. Используйте технику дробного открытия позиций. Первоначально открывайтесь от 1/2 до 1/3 от максимального размера позиции. После того, как цены ушли за точку безубыточности, покупайте или продавайте следующие 1/2 или 1/3 объема. Большинство убыточных сделок являются таковыми с самого начала. Этот метод уменьшает риск и позволяет получать максимальную прибыль в долговременной перспективе.

4. Если вы открыли позицию, то добавляйте объем только после достижения точки безубыточности.

5. Выбирайте сильнейший актив для торговли.

6. Торгуйте, когда волатильность падает. Когда волатильность снизилась на 50%, это позволяет открывать больший объем позиций при том же риске.


6.4. Тест системы Turtle - начало.

6.4.1. Индикатор канала системы Turtle.

Построение любой торговой системы начинается с построения индикаторов, положенных в ее основу. Для системы Turtle это будут индикаторы канала.
Индикаторы канала уже строились нами в рамках подраздела «3.4. Начинаем строить свои индикаторы», в котором мы изучали методы построения пользовательских индикаторов.
Канал - это диапазон цен от минимума до максимума за определенный период времени, а индикатор канала в Метасток строится с помощью встроенных функций «справочного раздела»:
1.41. Highest High Value (Наиболее высокое значение) - hhv( DATA ARRAY, PERIODS );
1.48. Lowest Low Value (Значение минимального донышка) - llv( DATA ARRAY, PERIODS ).
Соответствующая сокращенная запись формулы индикатора для периода 20 будет иметь вид

HHV(H,20);
LLV(L,20);

где первая строка определяет верхнюю границу канала, а вторая - нижнюю.
Вызываем диалог конструктора и создаем новый индикатор с именем «Канал цен системы Turtle» и вышеуказанными формулами. Нажимаем «ОК» - индикатор готов, и наносим его на график цен (рис. 6.1).



Рис.6.1.


Итак, формулы для индикатора написаны, индикатор построен, но для построенияи тестирования системы он не пригоден.

Почему?
Очень просто, если внимательно посмотреть на график, то видно, что цены никогда не выходят за пределы канала, потому что любое обновление максимума или минимума рынка мгновенно приводит к соответствующему изменению границ канала. Т.е. наш индикатор не учитывает того факта, что должен быть пробит прошлый максимум или минимум рынка.
Вносим в формулы простую модификацию:

HHV(Ref(H,-1),20);
LLV(Ref(L,-1),20);

Теперь все в порядке (рис.6.2). Индикатор отслеживает изменения минимумов и максимумов рынка, а момент прорыва канала четко фиксируется на графиках цен.



Рис.6.2.

Теперь можно переходить к программированию торговых правил.


6.4.2. Торговые правила для тестирования системы Turtle.

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

- прорыв вверх индикатора HHV(Ref(H,-1),20)) – восходящий тренд;
- прорыв вниз индикатора LLV(Ref(L,-1),20) – нисходящий тренд.

Торговые правила для этого случая примут вид:

Buy Order: Cross(H,HHV(Ref(H,-1),20))
Sell Order: Cross(LLV(Ref(L,-1),20),L)
Sell Short Order: Cross(LLV(Ref(L,-1),20),L)
Buy to Cover Order: Cross(H,HHV(Ref(H,-1),20))

Для записи торговых правил мы использовали функцию Cross (см. справочный раздел), которая выделяет момент пересечения двух графиков, в данном случае графиков цены и границ канала.
Открывает тестер систем, строим торговую систему с вышеуказанными торговыми правилами и проводим ее тестирование..
Поскольку переменных оптимизации у нас нет, то тестирование проводим сразу на всем диапазоне исторических данных.


6.4.3. результаты тестирования правила открытия позиций

График эквити результатов теста представлен на рисунке 6.3.



Рис.6.3.

Что сразу бросается в глаза из предварительного анализа представленных данных, так это постепенное падение эффективности торговой стратегии с течением времени. Возможно, это объясняется постепенным расширением области применения правил торговой стратегии среди участников рынка, возможно изменением характеристик самого рынка.

Деятельность «черепашек» началась в конце 1983 года, а широкую известность их методы получили в начале текущего тысячелетия, в 2002-2003 годах.

Совпадение это или нет, но именно в 1983 в графике эквити для приведенного теста наблюдается небольшой провал и уменьшение эффективности работы стратегии, а с середины 2002 года и почти до конца десятилетия торговая стратегия на тестируемом инструменте приносила больше убытков, чем прибылей. Наверное, это все-таки совпадение, тем более, что применение стратегии изначально ориентировано на портфельную торговлю и один отдельно взятый инструмент еще ни о чем не говорит.

В конце десятилетия пошел резкий всплеск прибыльности и опять достаточно существенный провал эквити для конечного участка графика.


Отчетные данные и характеристики системы.

Система провела на 8760 свечей 228 сделок.
Уплачено комиссии (спреда) - 456пп.

Прибыльных сделок - 103.
Средняя прибыль на сделку – 468пп.
Максимальная прибыль на сделку – 1957пп.

Убыточных сделок – 125.
Средний убыток на сделку – 247пп.
Максимальный убыток на сделку – 929пп.

Результат торговли – прибыль 17388пп.

Профит фактор – 1.56.
Соотношение AW/AL – 1.90.
Доля прибыльных сделок – 0.4517.


Предварительные выводы.

В долгосрочной перспективе система является прибыльной.
Профит-фактор немного ниже эмпирической границы «хороших значений» 1.6.
Статистика системы положительно-определенная.

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


Для оценки универсальности системы проведем тестирование еще для трех валютных пар (мажоров) валютного рынка: GBPUSD, USDCHF и USDJPY.

Чтобы сэкономить время тестирования, будем тестировать всю четверку инструментов сразу. Для этого в диалоге рис.6.4 загрузим всю четверку тестируемых инструментов сразу. Размер доступного массива исторических данных для разных инструментов несколько отличается, но мы приведем диапазон используемых данных к одинаковому размеру, как показано на рисунке, и в дальнейшем будем пользоваться этими границами, если иное не будет оговорено специально.



Рис.6.4.


Перед тем, как перейти к выполнению тестов, нам необходимо откорректировать издержки проведения сделок, в частности величину спреда.
В тестере Метасток величина спреда в пунктах может задаваться только в абсолютных величинах, а абсолютный размер пункта для пары с участием японской йены в 100 раз больше, чем для остальных инструментов набора. Поэтому перейдем к процентному способу определения издержек, и установим величину 0.02%, что примерно равно спреду для GBPUSD, немного больше спреда для EURUSD, чуть меньше издержек для USDCHF и USDJPY (см.рис.6.5.).



Рис.6.5.

Оценки прибыльности системы, полученные при такой установке спреда, могут быть уточнены при раздельном тестировании инструментов.


Установки сделаны, приступаем к тестированию.
Результаты теста представлены на рис.6.6.



Рис.6.6.

Не стоит пугаться диаграммы результатов теста, представленной на рисунке 6.6, так как данные представлены в абсолютных величинах, а выброс вверх для пары USDJPY обусловлен более высоким (в 100 раз) абсолютным размером пункта.
Если же обратиться к цифрам таблицы, то можно видеть, что система работает прибыльно на всех рынках, а профит на интервале тестирования для тестируемых валютных пар составил:

EURUSD – 16833пп
GBPUSD – 27631пп
USDCHF – 29864пп
USDJPY – 38947пп

Данные по прибыльности стратегий отличаются примерно в 2 раза, величины количества сделок и соотношения средней прибыли к среднему убытку тоже одного порядка.
Для USDJPY результаты теста несколько лучше по сравнению со средними по группе, для EURUSD – несколько хуже.


На первый взгляд результаты тестирования по всей группе инструментов удовлетворительные. Везде идет прибыль.
Для того, чтобы более точно оценить перспективы системы на разных инструментах, обратимся к графикам эквити и проведем экспресс-анализ эффективности торговой стратегии.
Вначале уже знакомый нам график EURUSD, представленный на рисунке 6.7 (незначительные отличия в цифрах вызваны изменением диапазона данных и величиной спреда)



Рис.6.7.

Этот график мы уже обсуждали, движемся дальше.


Данные для GBPUSD представлены на рисунке 6.8.



Рис.6.8.

Здесь нас ждет сюрприз.
Несмотря на то, что прибыльность стратегии на этом инструменте почти вдвое выше, чем для EURUSD, вся прибыль получена в далеком прошлом, а большая часть диапазона истории демонстрирует неработоспособность стратегии. Справедливости ради отметим, что явного и быстрого «слива» тоже нет.


Смотрим данные для USDCHF, которые показаны на рисунке 6.9.



Рис.6.9.

Результат почти такой же, как и для GBPUSD, только чуть лучше за счет того, что наклон кривой эквити для диапазона данных с неэффективной работой стратегии идет вверх, а не вниз, как для фунта. Но в целом тоже эффективной работы после 1993 года не наблюдается.


И в заключение данные для USDJPY (рис.6.10).



Рис.6.10.

Выводы аналогичны. Несмотря на общую эффективность, стратегия была прибыльной до 1990 года, а потом все изменилось.


6.5. Важные выводы.

Какие выводы можно сделать из рассмотренного материала?

Таких выводов два и они заслуживают того, чтобы их разместить в этом отдельном пункте раздела:
1. Если торговая стратегия показала эффективную работу на некотором инструменте финансового рынка, это не значит, что эффективность работы стратегии сохранится на других рынках.
2. Если торговая стратегия показала прибыльную и эффективную работу на каком-либо интервале времени, это не значит, что она будет прибыльной всегда.


Приведенные замечания отражают тот факт, что различные рынки имеют свои специфические особенности и изменяют свои параметры во времени. Это обусловлено, как изменением параметров, характеризующих развитие различных отраслей и регионов мировой экономики, так и неравномерностью и неодновременным изменением показателей развития отдельных отраслевых и территориальных сегментов мировой экономической системы. Все течет, все изменяется и все имеет свою специфику.

6.6. Тест системы Turtle - продолжение.

Дополним торговые правила выходом по 10-дневному каналу.

Торговые правила для этого случая примут вид:

Buy Order: Cross(H,HHV(Ref(H,-1),20))
Sell Order: Cross(LLV(Ref(L,-1),10),L)
Sell Short Order: Cross(LLV(Ref(L,-1),20),L)
Buy to Cover Order: Cross(H,HHV(Ref(H,-1),10))

Открывает тестер систем, строим торговую систему с вышеуказанными торговыми правилами и проводим сравнительное тестирование новой и исходной систем.
Поскольку переменных оптимизации у нас нет, то тестирование проводим сразу на всем диапазоне исторических данных.

Графики эквити по результатам теста представлены на рисунке 6.11.



Рис.6.11.

Визуальный анализ приведенных зависимостей не показывает существенных качественных отличий обоих вариантов.
В количественном выражении можно отметить следующее:
- модифицированная система, график которой представлен вверху, обеспечивает немного меньшую результирующую прибыль;
- просадки модифицированной системы немного меньше;
- график эквити немного более плавный;
- количество сделок больше.
Но в целом это не тот результат, за который следует бороться.


6.7. Оптимизация системы с пробоем канала.

Главный вывод, который следует из предыдущего материала, заключается в том, что основной принцип пробоя 20-дневного канала на рассмотренных рынках успешно работал до 1993 года, т.е. в прошлом. Далее эффективность метода падает.

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


6.7.1. Сегментация данных.

Для проведения работ весь интервал доступных исторических данных графиков дневного масштаба разобьем на сегменты длительностью 4 года, начиная с января 1979 года и заканчивая декабрем 2010.

Сформированные сегменты данных будут включать следующие интервалы:
- основной (стартовый) сегмент – с 01.01 1979 по 31.12 1990;
- 1-й дополнительный сегмент – с 01.01.1991 по 31.12.1994;
- 2-й дополнительный сегмент – с 01.01.1995 по 31.12.1998;
- 3-й дополнительный сегмент – с 01.01.1999 по 31.12.2002;
- 4-й дополнительный сегмент – с 01.01.2003 по 31.12.2006;
- 5-й дополнительный сегмент – с 01.01.2006 по 31.12.2010.

Данные после декабря 2010 года будут данными последнего интервала «вне выборки». Данные до 1979 года в этом тесте использовать не будем (хотя для тестирования других торговых стратегий в будущем, возможно, понадобится использование и более широкого диапазона исторических данных).


6.7.2. Торговые правила для системы с оптимизацией.

6.7.2.1. Индикатор канала с настраиваемыми параметрами.
Формула для индикатора канала с настраиваемыми параметрами будет иметь вид:

N1:=Input(“N1”,5,100,20);
HHV(Ref(H,-1),N1);
LLV(Ref(L,-1),N1);

6.7.2.2. Торговые правила.
Торговые правила для системы с пробоем канала в этом случае примут вид:

Buy Order: Cross(H,HHV(Ref(H,-1),opt1))
Sell Order: Cross(LLV(Ref(L,-1),opt1),L)
Sell Short Order: Cross(LLV(Ref(L,-1),opt1),L)
Buy to Cover Order: Cross(H,HHV(Ref(H,-1),opt1))

Открывает тестер систем, и строим новую торговую систему с вышеуказанными торговыми правилами.
Теперь осталось задать диапазон переменной оптимизации и можно приступать к тестированию и оптимизации системы.


6.7.3. Первоначальная оптимизация.

Отметим, что мы не знаем заранее, какие значения переменной opt1 обеспечат наилучшие характеристики стратегии. Поэтому для первоначальной оптимизации на стартовом сегменте данных мы выбираем широкий диапазон значений оптимизационной переменной, например от 5 до 70.
Запускаем тестирование и смотрим результаты теста (рис. 6.12).



Рис.6.12.

Результаты теста показывают, что есть две зоны локальных оптимумов стратегии по прибыльности.
Первая – в окрестности значения оптимизационной переменной с максимумом на 10, вторая в окрестности значений с максимумом на 48.
Стратегии отличаются и по количеству и длительности сделок. Для значения параметра оптимизации 10 система провела 156 транзакций на рассматриваемом диапазоне данных. Для значения параметра 48 – всего 27.

Обе стратегии показывают достаточно хороший результат, а более низкая прибыльность «быстрой системы» объясняется в основном более высоким уровне издержек на транзакцию. Т.е. можно предположить, что обе стратегии примерно одинаково отслеживают движение рынка.

Для более глубоких выводов необходимо провести сравнительный анализ кривых эквити и параметры статистики обоих стратегий и их поведение на данных вне выборки.


6.7.4. Анализ поведения торговых стратегий на данных выборки

График эквити системы для ширины канала 10 представлен на рисунке 6.13.



Рис.6.13

Отчетные данные и характеристики системы.

Система провела на 3107 свечей 156 сделок.
Уплачено комиссии (спреда) - 312пп.

Прибыльных сделок - 71.
Средняя прибыль на сделку – 316пп.
Максимальная прибыль на сделку – 1080пп.

Убыточных сделок – 85.
Средний убыток на сделку – 127пп.
Максимальный убыток на сделку – 347пп.

Результат торговли – прибыль 11671пп.

Профит фактор – 2.09.
Соотношение AW/AL – 2.50.
Доля прибыльных сделок – 0.4552.


Предварительные выводы.

В целом на данных выборки система является прибыльной.
Значения профит-фактора и отношения AW/AL вполне удовлетворительны.
Статистика системы положительно-определенная.

Анализ графика эквити показывает падение эффективности на участке данных в конце выборки. Однако серьезность этого фактора можно оценить только по результатам на данных вне выборки.


На рисунке 6.14. представлен график эквити системы для ширины канала 48.



Рис.6.14.

Отчетные данные и характеристики системы.

Система провела на 3107 свечей 27 сделок.
Уплачено комиссии (спреда) - 54пп.

Прибыльных сделок - 18.
Средняя прибыль на сделку – 825пп.
Максимальная прибыль на сделку – 4404пп.

Убыточных сделок – 9.
Средний убыток на сделку – 308пп.
Максимальный убыток на сделку – 601пп.

Результат торговли – прибыль 12075пп.

Профит фактор – 5.36.
Соотношение AW/AL – 2.68.
Доля прибыльных сделок – 0.6667.


Предварительные выводы.

В целом на данных выборки система является прибыльной.
Значения профит-фактора превосходны, а отношение AW/AL вполне удовлетворительно.
Статистика системы положительно-определенная, однако к минусам теста относится сравнительно малое количество сделок – 27. По некоторым оценкам, приводимых в ряде литературных источников, тесты с числом сделок менее 30 дают пониженную достоверность результатов испытаний торговой стратегии и требуют более широкого диапазона исторических данных для проведения тестирования.

Система превосходно работает на трендовых участках рынка, но в случае бокового тренда с широким каналом уходит в просадку, показывая результаты хуже, чем для стратегии с шириной канала 10.
Анализ графика эквити показывает, что просадки состояния торгового счета для системы с каналом 48 несколько больше, чем у системы с каналом 10, но при этом отсутствует падение графика на конечном этапе выборки.


Теперь вернемся к истории вопроса и вспомним правила торговой стратегии Tutle, точнее правила входа.

Как известно, вход в системе «черепашек» осуществляется при пробое 20-дневного канала и при пробое 55-дневного канала и в системе «черепашек» оба входа используются одновременно.

Вероятнее всего наш тест выделил две оптимальные стратегии для разных по размеру трендов. При этом аналогом 20-дневного канала в системе «черепашек» в оптимизированной системе является ширина канала 10 баров, а соответствующий аналог 55-дневного канала – канал шириной 48 баров.

Посмотрим, как ведут себя обе стратегии при совместном их использовании.
Для этого разместим на одном рисунке графики эквити для обоих систем (рис.6.15).



Рис.6.15.

График эквити для системы с каналом 10 изображен синей линией, график эквити для системы с каналом 48 – красной.

Анализ представленных зависимостей показывает, что при одновременном использовании двух стратегий суммарные просадки будут меньше, чем у медленной стратегии с каналом 48, зоны одновременной работы стратегий в бесприбыльном режиме меньше, чем быстрой стратегии с каналом 10, взятой отдельно.

Однако, все вышесказанное относится к работе «на выборке».
Реальные характеристики стратегий можно получить при тесте на данных «вне-выборки», т.е. мы должны добавить к диапазону исторических данных дополнительный сегмент, и провести тестирование с зафиксированными «оптимальными» параметрами стратегий (ширина канала 10 и 48) на полученном диапазоне данных. Этот тест и покажет реальную ценность полученных результатов.


Проводим тест и отображаем результаты на графиках (рис.6.16).



Рис.6.16.

Результаты тестирования для диапазона данных «вне выборки» представлены справа от синей вертикальной линии.


Откровенно говоря, результаты не впечатляют. Рассмотрим представленные результаты для диапазона «вне выборки» в увеличенном масштабе (рис.6.17).



Рис.6.17.

В общем, ничего хорошего не наблюдается.
Несмотря на то, что долгосрочная стратегия и заработала какие-то деньги, риски и величина просадок и размер полученной прибыли сопоставимы друг с другом, т.е. качественна оценка фактора восстановления стратегии, судя по графику, близка к единице.
Что касается краткосрочной стратегии, то был подъем эквити в середине тестируемого интервала, а затем система ушла в просадку и потеряла всю накопленную прибыль.
Честно говоря, я бы поостерегся доверять деньги такой торговой стратегии.


6.7.5. Анализ возможных причин неэффективности теста системы на данных «вне выборки».

Перед тем, как двигаться дальше, попробуем разобраться в сложившейся ситуации.

Отмечу, что этот архив котировок я использовал впервые, и падение эффективности торговой стратегии после 1990-1993 года сразу для 4-х инструментов в тесте стратегии «черепашек» показалось несколько подозрительным. Редко бывает такое согласованное падение эффективности торговой стратегии сразу на всех рынках.

Работа на первоначальном сегменте данных с графиками меньшего диапазона и большего масштаба по времени в качестве побочного следствия помогла выявить одну особенность котировок. Данные до 1989 года (иногда до 1990 года) представлены в форме свечей с минимальным размером тела и теней (несколько пунктов), т.е. фактически содержат только цену закрытия.

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

В связи с этим целесообразно удалить эти данные из выборки и пользоваться архивом котировок начиная с 1990 год, т.е. там, где данные OHLC соответствуют реальным условиям.

Для дальнейшего проведения работ изменим размер интервала используемых исторических данных графиков дневного масштаба, задавая начало диапазона январем 1990 года, конец – декабрем 2010 года и разобьем все данные на сегменты длительностью 3 года следующим образом (стартовый сегмент включает 3 типовых сегмента данных):

- основной (стартовый) сегмент – с 01.01 1990 по 31.12 1998;
- 1-й дополнительный сегмент – с 01.01.1999 по 31.12.2001;
- 2-й дополнительный сегмент – с 01.01.2002 по 31.12.2004;
- 3-й дополнительный сегмент – с 01.01.2005 по 31.12.2007;
- 4-й дополнительный сегмент – с 01.01.2008 по 31.12.2010.

Данные после декабря 2010 года будут данными последнего интервала «вне выборки».

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


6.7.6. Первоначальная оптимизация с обновленным диапазоном данных.

Запускаем тестирование и смотрим результаты теста (рис. 6.18).



Рис.6.18.

В приведенных данных есть существенные отличия от результатов теста, представленных на рисунке 6.12.
Во-первых, часть тестов при малых значениях параметра ширины канала стала убыточной, т.е. при малой ширине канала система чаще выходит из рынка на откатах, фиксируя убыток.
Во-вторых, оптимумов параметра по-прежнему два, но они расположены ближе, на значениях 26 и 36, а сама зона оптимума более выражена.
Рассмотрим поведение графиков эквити для данных параметров системы, включая диапазон первого сегмента данных «вне выборки».


Оба варианта стратегии показывают примерно одинаковую прибыльность, как в выборке, так и вне выборки (рис.6.19).



Рис.6.19.

Значение параметра 36 (линия красного цвета) приводит к более высокой волатильности графика эквити, т.е. характер роста баланса менее монотонный, просадки и подъемы больше по размеру. Соответственно выше и риски торговли.


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



Рис.6.20.

Несмотря на не совсем удовлетворительные результаты первоначальной оптимизации продолжим процесс тестирования и исследования торговой стратегии, основанной на пробое канала, чтобы на ее примере продемонстрировать процедуру циклической оптимизации и оценки качества торговой стратегии.

Для дальнейшего тестирования в рамках процедуры циклической оптимизации сконцентрируемся на зоне параметров в окрестности значения 26 - первого оптимума параметров стратегии. Для этого отбросим зону, дающую убытки и уберем медленные стратегии с параметрами ширины канала выше 30. Остается диапазон изменения переменной оптимизации для дальнейшего тестировании от 20 до 30, что примерно соответствует зоне первого локального максимума диаграммы рис.6.18.


6.7.7. Циклическая оптимизация.

Цикл 1.

Дополним стартовый сегмент первым дополнительных сегментом данных и проведем оптимизацию на всем интервале.
Из диаграммы теста, представленной на рисунке 6.21, следует, что торговая стратегия сохранила оптимальное значение переменной оптимизации 26. Однако в диаграмме начинает прослеживаться второй локальный максимум с значением переменной 22, который работает с более короткими трендами и меньшей шириной канала.



Рис.6.21.


Проверяем стратегию на данных вне выборки в диапазоне 2-го дополнительного сегмента с 01.01.2002 по 31.12.2004.
Результаты теста представлены на рис.6.22.



Рис.6.22.

Продвижение вверх наблюдается, но рост эквити незначителен по сравнению с диапазоном колебаний баланса счета. Тем не менее, тестирование на данных «вне выборки» хотя и не дает желаемого профита, но не дает и убытка.


Рассмотрим интервал данных «вне выборки» в увеличенном масштабе и построим регрессионный канал Ральфа на графике эквити на протяжении тестируемого интервала (рис.6.23). Канал Ральфа относится к числу стандартных индикаторов Местасток и доступен в панели прокрутки в левой части окна графика рис.6.23.



Рис.6.23.

Анализ представленных данных показывает, что колебании графика эквити примерно вдвое больше, чем аппроксимируемый линией линейной регрессии рост эквити.

Продолжим тестирование на следующих сегментах.


Цикл 2.


Результаты оптимизации на стартовом сегменте данных с добавлением двух дополнительных сегментов представлены на рисунке 6.24.



Рис.6.24.

Из диаграммы рис.6.24 следует, что оптимум сместился на значение оптимизационной переменной 22, которое начало показывать прибыльность еще на предыдущем цикле оптимизации.


Фиксируем значение оптимизационной переменной и проверяем стратегию на данных «вне выборки» в диапазоне 3-го дополнительного сегмента с 01.01.2005 по 31.12.2007.
Результаты теста представлены на рис.6.25.



Рис.6.25.

Вот здесь нас ждет уже настоящий сюрприз. Система не только показала высокую волатильность эквити, но и привела в среднем к убыткам на данных «вне выборки», о чем свидетельствует наклон вниз канала регрессии.


Цикл 3.

Добавляем к диапазону данных третий дополнительный сегмент и еще раз проводим оптимизацию системы.
Из результатов, представленных на рисунке 6.26, следует, что оптимум системы на значении 22 сохранился, но, как и следовало ожидать исходя из результатов тестирования на данных вне выборки по предыдущему циклу, прибыли нам это не принесло. Максимум прибыли меньше, чем по результатам предыдущего цикла.



Рис.6.26.


Опять фиксируем значение оптимизационной переменной и проверяем стратегию на данных «вне выборки» в диапазоне 4-го дополнительного сегмента с 01.01.2008 по 31.12.2010.
Результаты теста представлены на рис.6.27.



Рис.6.27.

Здесь тоже сюрприз, но уже приятный. Система начала приносить прибыль, причем по грубым оценкам фактор восстановления на диапазоне данных «вне выборки» значительно больше единицы.
Переходим к следующему циклу оптимизации с добавлением 4-го сегмента.


Цикл 4.

На очередном цикле оптимизации система сохранила оптимум на значении переменной 22 (см. рис.6.28).



Рис.6.28.


Проверяем работу МТС на остатке данных «вне выборки».
И опять рынок уходит в просадку (рис.6.29).



Рис.6.29.

Таким образом, опять закончился прибыльный участок работы МТС и в последние месяцы она приносила бы только убытки.


6.7.8. Заключительная оптимизация.

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



Рис.6.30.

Результаты заключительной оптимизации представлены на диаграмме рисунка 6.30 и, как и можно было предполагать из результатов предыдущих циклов, дают оптимальное значение оптимизационной переменной 22.
Однако необходимо отметить, что начинает расти столбец диаграммы для значения opt1=23, т.е. вполне вероятно, что в будущем оптимум сместится на это значение.


В заключение в порядке справки, без целей практического применения, приведем график эквити для МТС, оптимизированной на всем диапазоне исторических данных от 01.01.1990 до 21.10 2011 (рис.6.31).



Рис.6.31.

Почему справочно и почему без практической пользы?
Потому что график эквити построен для значения ширины канала 22.
Тестируемая система на различных участках диапазона исторических данных имела значения ширины канала и 26 и 22. Поэтому этот график для оценки качества системы непригоден и необходимо построить другой график, учитывающий изменения параметров системы.
Возможные способы построения такого графика мы рассмотрим в следующем пункте.


6.7.9. Построение «синтетического» графика эквити.

Способ 1. Ручное построение графиков в EXEL.

Для того чтобы построить график эквити вручную необходимо взять из таблиц отчетные данные для графиков эквити, содержащиеся в отчете теста (см.п.4.7.2, рис.4.93 подраздела 4.7) для данных диапазона «вне выборки» и переписать их в таблицу EXEL.
Отрезки данных для различных секций необходимо объединить таким образом, чтобы каждая новая секция начиналась с профита, которым закончили работу все предыдущие секции. Т.е. каждый новый участок данных смещается вверх на величину прибыли, накопленной суммарной работой всех предыдущих секций.
Полученный «синтетический» график эквити используется для анализа параметров торговой стратегии в целом.


Способ 2. Постройка графиков эквити с помощью программирования изменения параметров МТС.

Этот способ основан на использовании функций 1.111 Year (Год)1.59 Month (Месяц) и, при необходимости, 1.22 Day Of Month (День месяца) (см. справочный раздел).

Так, например, функция год (см.рис.6.32) возвращает четырехзначное обозначение года для любого бара или свечи графика.
Функция месяц – номер месяца, а день месяца – число.



Рис.6.32. График индикатора, описываемого встроенной функцией «Year».

Выделяя с помощью логических операторов и функций определенные интервалы времени можно задать на этих интервалах необходимые значения параметров МТС, соответствующие значениям, полученным в результате циклической оптимизации. Таким образом, результирующая МТС будет изменять свои параметры во времени в соответствии с прохождением теста в процедуре циклической оптимизации, а ее график эквити будет соответствовать режиму работы в реальном времени.


Торговые правила.

Результат оптимизации на стартовом сегменте данных и в течение первого цикла дали значение оптимизационной переменной 26. Это соответствует интервалу данных «вне выборки» от 01.01.1990 до 31.12.2004.

В дальнейшем оптимальное значение параметра было равно 22 и работает оно на интервале от 01.01.2005 до 21.10.2011.

Зададим необходимые временные интервалы с помощью логических операторов и встроенной функции year().
Торговые правила для МТС в этом случае примут вид:

Buy Order: Cross(H,HHV(Ref(H,-1),26))*(year() >=1990)*(year() < 2005) OR Cross(H,HHV(Ref(H,-1),22))*(year() >= 2005)
Sell Order: Cross(LLV(Ref(L,-1),26),L)*(year() >=1990)*(year() < 2005) OR Cross(LLV(Ref(L,-1),22),L)*(year() >=2005)
Sell Short Order: Cross(LLV(Ref(L,-1),26),L)*(year() >=1990)*(year() < 2005) OR Cross(LLV(Ref(L,-1),22),L)*(year() >=2005)
Buy to Cover Order: Cross(H,HHV(Ref(H,-1),26))*(year() >=1990)*(year() < 2005) OR Cross(H,HHV(Ref(H,-1),22))*(year() >= 2005)

С помощью логических операторов мы поочередно включаем формулы, определяющие диапазоны работы системы с значениями параметра оптимизации 26 и 22.

Открывает тестер систем, и строим новую торговую систему с вышеуказанными торговыми правилами и запускаем тестирование.


График эквити с результатами тестирования представлен на рисунке 6.33. Там же нанесен индикатор, реализующий встроенную функцию «Year».



Рис. 6.33.

Результаты тестирования, представленные на графике 6.33, отражают результаты работы реальной торговой стратегии, которая не знает, что происходит в будущем. На всех участках представленного графика МТС работала с параметрами, полученными оптимизацией на предыдущих диапазонах исторических данных, т.е. приведенная зависимость соответствует случаю реальной эксплуатации МТС.

На графике 6.33 также построен регрессионный канал Ральфа для эквити оптимизированной системы и представлен график эквити для исходной стратегии, построенной на основе правил «черепашек» с каналом 20 (кривая красного цвета).

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


6.7.10. Выводы по результатам тестирования.

Из представленных зависимостей следует, что в целом оптимизация дала эффект и полученная МТС на всем диапазоне исторических данных отработала лучше, чем исходная стратегия, и обеспечила более высоки размер прибыли.
Но в целом, ни одна из протестированных стратегий не обладает удовлетворительными характеристиками вследствие высокой волатильности графика эквити и немонотонности роста профита. Вряд ли кто-то захочет ждать годы, чтобы получить прибыль.

Можно попытаться улучшить характеристики системы и продолжить изменив условия проведения теста следующими способами:
Первый – это сделать разбиение диапазона данных на сегменты меньшего размера с тем, чтобы настройка параметров системы на рынок осуществлялась чаще, быстрее реагируя на изменения параметров рынка.
Второй – по мере добавления новых исторических данных в диапазон оптимизации удалять самые старые данные такого же размера с тем, чтобы оптимизация проводилась на наиболее актуальных данных. При этом необходимо обратить внимание на то, чтобы количество сделок в результате проведения теста было не меньше 30. Это эмпирическая граница, выход за которую вниз может снизить достоверность результатов теста.

Проводить такие исследования мы не будем, желающие могут сделать это самостоятельно. А мы займемся рассмотрением других вариантов канальных стратегий.

В подразделе 6.7 показан пример проведения полного цикла работ по тестированию и оптимизации торговой стратегии. В дальнейшем, в целях экономии времени, мы не будем проводить полную процедуру циклической оптимизации для торговых стратегий, ограничиваясь в зависимости от ситуации либо стартовым сегментом данных, либо полным диапазоном используемых исторических данных.


6.8. Стратегия для торговли в канале.

В предыдущем случае мы тестировали аналоги стратегии «черепашек». Здесь мы попробуем торговать по противоположному принципу, торгуя контр-трендовую стратегию для работы в канале цен и открывая позиции по принципам, противоположным торговой стратегии «черепашек».
Иногда такие стратегии в шутку называют стратегиями класса «черепаховый суп».

6.8.1. Сегментация данных.

Для проведения работ возьмем размер интервала используемых исторических данных и разбиение их на сегменты, определенное в предыдущем подразделе. Т.е. задаем начало диапазона январем 1990 года, конец – декабрем 2010 года и разобьем все данные на сегменты длительностью 3 года следующим образом (стартовый сегмент включает 3 типовых сегмента данных):

- основной (стартовый) сегмент – с 01.01 1990 по 31.12 1998;
- 1-й дополнительный сегмент – с 01.01.1999 по 31.12.2001;
- 2-й дополнительный сегмент – с 01.01.2002 по 31.12.2004;
- 3-й дополнительный сегмент – с 01.01.2005 по 31.12.2007;
- 4-й дополнительный сегмент – с 01.01.2008 по 31.12.2010.

Данные после декабря 2010 года по-прежнему будут данными последнего интервала «вне выборки».


6.8.2. Торговые правила для системы с оптимизацией.

Индикатор канала с настраиваемыми параметрами у нас уже построен в предыдущем подразделе, и формула его имеет вид:

N1:=Input(“N1”,5,100,20);
HHV(Ref(H,-1),N1);
LLV(Ref(L,-1),N1);

А торговые правила системы для работы внутри канала являются зеркальным отражением правил пробойной стратегии и примут вид:

Buy Order: Cross(LLV(Ref(L,-1),opt1),L)
Sell Order: Cross(H,HHV(Ref(H,-1),opt1))
Sell Short Order: Cross(H,HHV(Ref(H,-1),opt1))
Buy to Cover Order: Cross(LLV(Ref(L,-1),opt1),L)

Таким образом, наша стратегия открывает позицию на продажу при пробое ценой верхней границы канала и позицию на покупку при пробое ценой нижней границы канала.
Открываем тестер систем, строим новую торговую систему с вышеуказанными торговыми правилами и приступаем к тестированию и оптимизации МТС.


6.8.3. Первоначальная оптимизация.

Задаем диапазон изменения переменной оптимизации от 1 до 70 и запускаем тест.
Диаграмма рисунка 6.34, отражающая результаты теста, существенным образом отличается от результатов первоначальной оптимизации теста системы с пробоем канала (рис.6.18).



Рис.6.34.

В принципе, как и следовало ожидать, система почти везде приносит убыток, поскольку стратегия на пробое канала приносила в аналогичных условиях прибыль. Но в зоне с шириной канала 2-3 дня прибыль все-таки есть. Также есть прибыль и при значении переменной оптимизации 12, т.е. система реализует контр-трендовую стратегию на трендах недельного и месячного циклов.
Отметим, что стратегия «черепаховый суп» предложенная Линдой Рашке в основном и ориентировалась на краткосрочные сделки, т.е. на работу внутри дня, максимум несколько дней.
Однако проводить исследования столь краткосрочной стратегии на графиках дневного масштаба не имеет смысла, необходимо перейти к графикам часового масштаба и учесть изменение масштаба движений в пересчете на количество баров.
На этом исследование стратегии для работы в канале на графиках дневного масштаба мы закончим. Анализировать график эквити и, тем более, проводить процедуру циклической оптимизации нет необходимости.


6.9. Пробой канала и точки трехбарового разворота

Попробуем сконструировать более сложную систему.
Мы знаем, что часто рынок после пробоя канала возвращается обратно к границе канала, и только потом разворачивается и продолжает движение в направлении тренда.
Попробуем смоделировать эту ситуацию с помощью точек трехбарового разворота, которые мы рассматривали в разделе 4.

6.9.1. Торговая идея.

Торговая идея для этого случая будет следующей. После пробоя границы канала мы не открываем позицию, а ожидаем до тех пор, пока рынок не сделает откат.
Признаком завершения отката будем считать формирование точки трехбарового разворота в направлении пробоя канала как показано на рисунке.



Точка трехбарового разворота может быть сформирована на откате как выше уровня пробоя границы канала, так и ниже этого уровня. Главное – это то, что после отката рынок начинает двигаеться в направлении пробоя.

Для фиксации признака пробоя границы канала воспользуемся рассмотренной выше функцией Alert (см. справочный раздел), которая в этом случае будет генерировать значение «истина» для определенного числа периодов после пробоя канала.


6.9.2. Торговые правила.

Торговые правила для системы с пробоем канала и входом по точкам трехбарового разворота для случая системы с симметричными входами и выходами будут иметь вид:

Buy Order: Alert(Cross(H,HHV(Ref(H,-1),opt1)),opt2)*
((Ref(L,-2)>Ref(L,-1)) AND (Ref(L,-1)<L) AND (Ref(C,-1)<C))
Sell Order: Alert(Cross(LLV(Ref(L,-1),opt1),L),opt2)*
((Ref(H,-2)<Ref(H,-1)) AND (Ref(H,-1)>H) AND (Ref(C,-1)>C))
Sell Short Order: Alert(Cross(LLV(Ref(L,-1),opt1),L),opt2)*
((Ref(H,-2)<Ref(H,-1)) AND (Ref(H,-1)>H) AND (Ref(C,-1)>C))
Buy to Cover Order: Alert(Cross(H,HHV(Ref(H,-1),opt1)),opt2)*
((Ref(L,-2)>Ref(L,-1)) AND (Ref(L,-1)<L) AND (Ref(C,-1)<C))

Здесь у нас будет две переменных оптимизации. Первая из них – opt1 - задает ширину канала, а вторая – opt2 – определяет время ожидания, в течение которого должна быть открыта позиция после зафиксированного факта пробоя канала.
Открываем тестер систем, строим новую торговую систему с вышеуказанными торговыми правилами и задаем диапазоны переменных оптимизации.
Мы не знаем, какими будут характеристики новой стратегии, поэтому используем широкий диапазон переменной opt1, от 5 до 70 с шагом 1. А для opt2 для начала теста выберем значения переменной от 1 до 5. Необходимо отметить, что малые значения переменной opt2 не препятствуют тому, чтобы дождаться отката. Ведь с каждым новым максимумом рынка функция alert активируется и запускается сначала.

Построим также еще одну торговую систему с такими же диапазонами изменения оптимизационных переменных и торговыми правилами, в которых вход в позицию будет производиться по точкам трехбарового разворота, а выход – по классическим правилам системы с пробоем канала:

Buy Order: Alert(Cross(H,HHV(Ref(H,-1),opt1)),opt2)*
((Ref(L,-2)>Ref(L,-1)) AND (Ref(L,-1)<L) AND (Ref(C,-1)<C))
Sell Order: Cross(LLV(Ref(L,-1),opt1),L)
Sell Short Order: Alert(Cross(LLV(Ref(L,-1),opt1),L),opt2)*
((Ref(H,-2)<Ref(H,-1)) AND (Ref(H,-1)>H) AND (Ref(C,-1)>C))
Buy to Cover Order: Cross(H,HHV(Ref(H,-1),opt1))

Проведем сравнительное тестирование обеих МТС.


6.9.3. Первоначальная оптимизация.

Привычным движением задаём стартовый сегмент данных с 01.01.1990 до 31.12.1998 и запускаем тест.
Диаграмма общих результатов теста двух систем представлена на рисунке 6.35.



Рис.6.35.

Количество тестов обеих стратегий одинаковое.
Средняя прибыль больше у симметричной стратегии, но у стратегии со стандартным выходом больше максимальная прибыль и меньше убыток на всем поле оптимизационных параметров.
Кроме того, среднее количество сделок на диапазоне у стратегии со стандартным выходом больше 30, а у симметричной стратегии 29, т.е. в окрестности допустимого эмпирического порога 30.

К положительным моментам для обеих систем следует отнести более высокий уровень прибыли (7457пп и 7162пп) по сравнению с первоначальной системой на пробое канала (5334пп – рис 6.18 выше по тексту). Т.е. наша модификация на этапе первоначальной оптимизации уже дает некоторый положительный эффект – прибыль почти на 50% больше по сравнению с системой-прототипом.


6.9.3.1. Диаграмма тестов и эквити для стратегии со стандартным выходом.

Диаграмма прибыльности тестов, упорядоченная по порядку изменения оптимизационных переменных для системы со стандартным выходом, представлена на рисунке 6.36.



Рис.6.36.

Порядок выполнения тестов в тестере установлен следующий.
Вначале фиксируется минимальное значение переменной opt2, а переменная opt1 проходит весь диапазон значений. Затем значение переменной opt2 увеличивается на величину заданного шага, а переменная opt1 опять проходит весь диапазон значений и т.д. до тех пор, пока не будут исчерпаны все комбинации.
Из диаграммы рисунка 6.36 следует, что основным фактором влияния на прибыльность системы является ширина канала, влияние задержки входа меньше.


На диаграмме рисунка 6.37 тесты упорядочены по убыванию полученной прибыли.



Рис.6.37.

Приятный сюрприз. Мы получили для наиболее профитной стратегии те же параметры канала, что и для первоначальной МТС. Т.е. простое изменение правил входа МТС с пробоем канала при сохранении ее параметров МТС уже дает рост прибыли на 50%.


Наиболее прибыльные тесты симметричной стратегии соответствуют большей ширине канала (рис.6.38) для значений opt1 32 и 33, однако значение 26 тоже входит в первую тройку стратегий.



Рис.6.38.

К существенному минусу теста относится снижение количества сделок для оптимальных стратегий до 20 и менее, что снижает достоверность результатов первоначальной оптимизации, а также несколько меньший размер полученной прибыли.
Последний фактор не страшен, если ход зависимости эквити теста более монотонный, поэтому сравним результаты эквити тестов для обеих стратегий при одинаковой ширине канала 26.


Графики эквити для стратегии прототипа (зеленая линия), симметричной стратегии с точками трехбарового разворота (красная линия) и стратегии с точками трехбарового разворота и стандартным выходом приведены на рис. 6.39.



Рис.6.39.

Предварительный анализ полученных результатов показывает, что наилучшими характеристиками с точки зрения плавности хода кривой эквити, минимальных просадок, максимального профита и количества сделок обладает стратегия пробоя канала с входом по точкам трехбарового разворота и стандартным выходом.
Для нее можно провести дополнительное исследование в рамках процедуры циклической оптимизации в соответствии с методикой, изложенной в п.6.7.
Повторять эти рутинные операции мы не будем. Займемся другими вариантами систем на основе канала цен.


6.10. Стратегия работы в канале + разворотные точки.

6.10.1. Торговая модель.

Следующим естественным шагом в развитии канальных стратегий будет попытка построить торговую стратегию для торговли внутрь канала после пробоя его границ, но тоже с использование для входа в рынок точек трехбарового разворота, т.е. это будет модификация стратегии «черепаховый суп».
В этом случае после факта пробоя канала вверх позиция на продажу инструмента не открывается до тех пор, пока не сформирована точка трехбарового разворота вниз.


6.10.2. Торговые правила.

Торговые правила симметричной стратегии для работы внутри канала с использованием разворотных точек будут иметь вид:

Buy Order: Alert(Cross(LLV(Ref(L,-1),opt1),L),opt2)*
((Ref(L,-2)>Ref(L,-1)) AND (Ref(L,-1)<L) AND (Ref(C,-1)<C))
Sell Order: Alert(Cross(H,HHV(Ref(H,-1),opt1)),opt2)*
((Ref(H,-2)<Ref(H,-1)) AND (Ref(H,-1)>H) AND (Ref(C,-1)>C))
Sell Short Order: Alert(Cross(H,HHV(Ref(H,-1),opt1)),opt2)*
((Ref(H,-2)<Ref(H,-1)) AND (Ref(H,-1)>H) AND (Ref(C,-1)>C))
Buy to Cover Order: Alert(Cross(LLV(Ref(L,-1),opt1),L),opt2)*
((Ref(L,-2)>Ref(L,-1)) AND (Ref(L,-1)<L) AND (Ref(C,-1)<C))

Задаем диапазон переменной opt1, от 1 до 70 с шагом 1.
А для opt2 для начала теста выберем значения переменной от 1 до 5.


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

Buy Order: Alert(Cross(LLV(Ref(L,-1),opt1),L),opt2)*
((Ref(L,-2)>Ref(L,-1)) AND (Ref(L,-1)<L) AND (Ref(C,-1)<C))
Sell Order: Cross(H,HHV(Ref(H,-1),opt1))
Sell Short Order: Alert(Cross(H,HHV(Ref(H,-1),opt1)),opt2)*
((Ref(H,-2)<Ref(H,-1)) AND (Ref(H,-1)>H) AND (Ref(C,-1)>C))
Buy to Cover Order: Cross(LLV(Ref(L,-1),opt1),L)

Открываем тестер систем, строим торговые стратегии с заданными правилами и задаем диапазоны переменных оптимизации.
Проведем сравнительное тестирование обеих МТС.


6.10.3. Первоначальная оптимизация.

Задаём стартовый сегмент данных с 01.01.1990 до 31.12.1998 и запускаем тест.
Диаграмма (точнее, ее отсутствие) общих результатов теста двух систем представлена на рисунке 6.40.



Рис.6.40.

Почему отсутствует диаграмма?
Потому что в заданных диапазонах оптимизационных переменных основная масса тестов убыточная, убыточен и средний результат для каждой из стратегий, а отрицательные результаты в этом диалоге на диаграмме не отображаются.
Но все не так уж и плохо. Числовые данные рисунка 6.40 показывают, что в каждой из МТС были варианты с достаточно высокой прибылью, были и варианты с высоким убытком. Для того чтобы разобраться с нюансами работы такой контр-трендовой канальной стратегии необходимо более детально рассмотреть каждый тест в отдельности.


Детальное рассмотрение тестов каждой стратегии показало, что при значении оптимизационной переменной opt2=1 сделки ни в одной стратегии не проводились, поэтому данные значения переменной opt2 удаляем из диапазона вместе с соответствующими результатами тестирования (выделяя соответствующие данные и нажимая клавишу «Discard»). Полученная в результате диаграмма (рис.6.41) лучше не стала, но в ней теперь нет пустых нулевых результатов с неработающими стратегиями.



Рис.6.41.


Смотрим детали теста для симметричной стратегии.
На рисунке 6.42 представлена диаграмма результатов тестов, упорядоченная по возрастанию переменной opt2.



Рис.6.42.

Из результатов тестирования следует, что оптимум переменной opt2 расположен на opt2=2, в окрестности которого сконцентрирована основная масса прибыльных результатов.


Изменения порядка сортировки и размещение данных по возрастанию переменной opt1 (рис.6.43) показывает, что есть две зоны оптимальных значений параметра. Одна в окрестности малых значений ширины канала, характеризующая отработку быстрых движений на отскок, и вторая для больших значений переменной opt1, характеризующая контртрендовую стратегию для работы в широких каналах.



Рис.6.43.


«Оптимальную» стратегию для дальнейшего исследования можно выбрать из данных диаграммы рисунка 6.44, на котором результаты тестирования упорядочены по мере убывания профита.



Рис.6.44.

При желании можно продолжить исследование и этой стратегии в рамках уже отработанной процедуры циклической оптимизации и получить реальные характеристики стратегии при ее применении в реальном времени. Однако, как уже и упоминалось выше, количество сделок в результате проведения теста невелико и статистическая достоверность результатов тестирования оставляет желать лучшего.


В заключение отметим возможную область применения этой МТС, предназначенной для работы «внутрь канала».

Как было отмечено при исследовании системы, основанной на пробое канала, проблемные участки ее работы возникали на затяжных боковых трендах, где система совершала сделки на пробой канала, а цена колебалась внутри канала, принося убыток за убытком.

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

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


6.11. Стратегии на основе пробоя волатильности.

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

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

Некоторые из таких торговых стратегий, основанных на использовании каналов волатильности, будут рассмотрены в следующих разделах курса.



Комментариев нет:

Отправить комментарий