Главная страница
Навигация по странице:

  • 106 ЧАСТЬ II

  • Пробои на основе цен закрытия Тест 1. Система на основе пробоя канала. Используются только

  • 110 ЧАСТЬ II

  • Тест 3. Система на основе пробоя цены закрытия, вход по лимит

  • Д.Катс.Д.Маккормик.Энциклопедия торговых стратегий. Донна л. Маккормик


    Скачать 5.96 Mb.
    НазваниеДонна л. Маккормик
    АнкорД.Катс.Д.Маккормик.Энциклопедия торговых стратегий.pdf
    Дата28.01.2017
    Размер5.96 Mb.
    Формат файлаpdf
    Имя файлаД.Катс.Д.Маккормик.Энциклопедия торговых стратегий.pdf
    ТипДокументы
    #727
    КатегорияЭкономика. Финансы
    страница11 из 41
    1   ...   7   8   9   10   11   12   13   14   ...   41
    ГЛАВА 5
    Модели, основанные на пробоях
    Модель, основанная на пробое, входит в рынок тогда, когда цены пересе- кают верхний порог или границу некоторого ценового диапазона, и вы- ходит из рынка, когда они опускаются ниже нижнего порога или грани- цы. Модели входа, основанные на пробоях, могут быть и простыми, и весь- ма сложными, причем основные различия заключаются в определении уровней порогов и интервалов, а также в методе выполнения входа.
    ВИДЫ ПРОБОЕВ
    Модели, основанные на пробоях, популярны и многообразны. Одна из самых старых моделей, используемых чартистами, — простой пробой
    линии тренда. На графике строится нисходящая линия тренда, которая служит верхней границей. Когда цены поднимаются выше ее, открывает- ся длинная позиция. Если же рынок опустился ниже восходящей линии тренда, следует открыть короткую позицию. Линии поддержки и сопро- тивления, построенные при помощи углов Ганна или чисел Фибоначчи,
    также могут служить граничными линиями для пробоев.
    Исторически за моделями пробоя трендовых линий следовали модели
    пробоя каналов, которые основываются на линиях поддержки и сопро- тивления, вычисленных по прошлым максимумам и минимумам. Трейдер покупает, когда цены поднимаются выше максимума последних n штри- хов (верхняя граница канала) и продает, когда цены опускаются ниже минимума последних n баров (нижняя граница канала). Системы на про- бое канала легко программируются и нравятся трейдерам, которые избе- гают усложненных субъективных моделей, наподобие углов Ганна.
    Более новыми и сложными являются модели пробоя волатильности,
    где точки, пересечение которых вызывает сигнал, основаны на границах
    волатильности. Границы волатильности располагаются на некотором расстоянии от текущей цены (например, последней цены закрытия), при- чем расстояние определяется текущей волатильностью рынка: когда во- латильность растет, границы отодвигаются дальше от текущей цены; ког- да она падает, границы сужаются. В основе лежит статистическая идея:

    104 ЧАСТЬ II ИССЛЕДОВАНИЕ входов в РЫНОК
    если рынок движется в данном направлении сильнее, чем ожидается от нормального колебательного движения (что и отражается в волатильнос- ти) , то, возможно, присутствует влияние некоей силы, т.е. реального трен- да. Многие из систем, продававшихся в конце 80-х годов по $3000, исполь- зовали варианты пробоя волатильности.
    Модели, основанные на пробое, также отличаются методом входа в рынок. Вход может иметь место при открытии или закрытии, что требует простого рыночного приказа. Внутридневной вход достигается при помо- щи стоп-приказов на граничных уровнях. Более сложный метод позволя- ет продавать или покупать на границе, т.е. пытаться войти в рынок, когда после пробоя границы цены ненадолго возвращаются к ней. Этот метод позволяет избегать как входа по лучшей цене, так и значительных отри- цательных переоценок позиции.
    ХАРАКТЕРИСТИКИ ПРОБОЕВ
    Понятие пробоя интуитивно привлекательно. Чтобы попасть из одной точ- ки в другую, рыночная цена должна пройти через все промежуточные зна- чения: большие движения всегда начинаются с малых. Системы, основан- ные на пробое, входят в рынок при малых движениях, когда рынок дости- гает одного из промежуточных значений. Модели, основанные на про- бое, следуют тенденции рынка. Еще одно положительное качество этих моделей в том, что следование рынку быстро делает сделки прибыльны- ми. Иногда можно установить очень близкие защитные остановки — та- кой подход можно протестировать только на внутридневных данных ти- кового уровня. Смысл в том, чтобы войти при пробое с очень близкой за- щитной остановкой, ожидая, что движение пробоя сместит цену доста- точно далеко, чтобы защитная остановка не реагировала на нормальные мелкие колебания рынка. Затем предполагается быстро выйти, зафикси- ровав прибыль или сместив защитную остановку до безубыточного уров- ня. Но удастся ли зафиксировать прибыль до разворота ценового движе- ния — зависит от природы рынка и силы движения, вызвавшего пробой уровня.
    При этом пробои, как и другие модели, следующие за трендом, имеют тенденцию входить в рынок с запаздыванием — нередко так поздно, что движение уже окончилось. Кроме того, позиция может быть открыта на небольшом движении цены, не позволяющем получить прибыль. Посколь- ку системы, основанные на пробое, следуют за трендом, они подвержены значительным проскальзываниям. Впрочем, с точки зрения теории ста- бильная и хорошо спроектированная система рано или поздно поймает реальное движение рынка, которое скомпенсирует частые (но мелкие)
    убытки. Однако многие трейдеры утверждают, что сейчас, при широкой доступности высокопроизводительных компьютеров, простые методы, ос-

    ГЛАВА 5 МОДЕЛИ, ОСНОВАННЫЕ НА ПРОБОЯХ 105
    нованные на пробое, уже не работают достаточно хорошо. В то время как системы разрабатывались, тестировались и вводились в действие, рынки достаточно быстро «адаптировались» к системам пробоя, что привело к значительному снижению эффективности данных систем. В результате ценовой шум вблизи границ, где размещаются стоп-приказы систем, ос- нованных на пробоях, заставляет срабатывать эти системы излишне час- то. Это особенно заметно на активных волатильных рынках, таких как
    S&P 500 или Т-облигации. Кроме того, легко попасть в ситуацию с боль- шим (относительно размера средней сделки) проскальзыванием при по- пытке применять методы пробоя при внутридневной торговле; для более длительных периодов пробои могут быть вполне приемлемы.
    Хорошо сконструированная модель на основе пробоя пытается обой- ти проблему шума с максимальной эффективностью. Это может дости- гаться установкой порога на уровнях, вряд ли достижимых случайной, не обозначающей тренда активностью рынка, — таких, которые, скорее все- го, будут достигнуты, если на рынке сформируется значительный и по- тенциально выгодный тренд. Если пороги установлены слишком близко к текущим ценам, будет наблюдаться большое количество фальшивых сиг- налов, что приведет к «пилообразной» торговле — ценовой шум будет за- пускать приказы то в одном, то в другом направлении. Поскольку такие движения не представляют собой реальных трендов с длительным перио- дом, прибыль будет минимальной, а комиссия и проскальзывания нане- сут тяжелый удар по капиталу трейдера. Если границы разнесены слиш- ком широко, далеко от текущей цены, то система будет заключать слиш- ком мало сделок и входить в рынок слишком поздно при любом важном движении. Если же границы установлены верно (на основе линий тренда,
    порогов волатильности или уровней поддержки/сопротивления), то тео- ретически система, основанная на моделях пробоя, может быть весьма эффективной: частые мелкие убытки, вызванные отсутствием продолже- ния тренда или ценовым шумом, должны компенсироваться значитель- ными прибылями при крупных движениях рынка.
    Для снижения количества ложных сигналов и уменьшения «пилооб- разности» торговли системы на основе пробоя иногда соединяются с ин- дикаторами, например с «индексом направленного движения» (Welles
    Wilder, 1978), которые предположительно определяют наличие или отсут- ствие трендов на рынке. Если тренда нет, то сигналы входа, создаваемые системой, игнорируются; если тренд есть, они принимаются к исполне- нию. Если бы популярные индикаторы тренда действительно работали,
    то любой трейдер, применявший их в сочетании с прорывом или другой моделью, следующей за трендом, разбогател бы: система входила бы толь- ко в значительные тренды, ведя торговлю гладко и стабильно. Проблема в том, что индикаторы или не функционируют достаточно точно, или не успевают среагировать достаточно быстро, отставая от рынка и делая ра- боту системы не идеальной.

    106 ЧАСТЬ II ИССЛЕДОВАНИЕ входов в РЫНОК
    ТЕСТИРОВАНИЕ МОДЕЛЕЙ, ОСНОВАННЫХ НА ПРОБОЕ
    В этой главе будут проведены тесты нескольких систем, основанных на пробое и работающих с разными портфелями различных бумаг, для срав- нения их эффективности. Насколько хорошо они работают? Да и работа- ют ли? Теоретически модели на пробое наилучшим образом подходят для торговли на рынках с устойчивыми трендами, таких как рынки forex. При должном использовании фильтров они могут работать и на других рын- ках. Некоторые ответы на эти вопросы будут приведены в нашем иссле- довании. Во всех тестах использовались стандартные портфель и страте- гия выхода (см. введение к части II).
    ВХОДЫ НА ПРОБОЕ КАНАЛА
    Первые тесты рассматривают различные варианты входов на основе про- боя ценового канала. Сначала мы исследуем модели, основанные только на ценах закрытия, а также модели, где используются пробои уровней максимального максимума или минимального минимума. В этих моделях границы ценового канала соответствует понятию уровней поддержки/
    сопротивления.
    Пробои на основе цен закрытия
    Тест 1. Система на основе пробоя канала. Используются только
    цены закрытия; вход по рыночной цене при открытии биржи на
    следующий день и стоимость сделок (комиссия, проскальзывание)
    не учитываются. Правила системы таковы: «Если текущая позиция ко- роткая или нейтральная, а рынок поднимается выше максимальной цены закрытия за последние n дней, то при завтрашнем открытии следует по- купать», или же, соответственно, «Если текущая позиция длинная или нейтральная, а рынок опускается ниже минимальной цены закрытия за последние n дней, то при завтрашнем открытии следует продавать (откры- вать короткую позицию)». У этой системы только один параметр — пери- од n, количество анализируемых дней. Количество контрактов для покуп- ки или продажи (ncontracts) было выбрано таким, чтобы для данного рын- ка сохранялась долларовая волатильность, примерно соответствующая двум новым контрактам S&P 500 на конец 1998 г.
    Выходы производятся, когда случается пробой в направлении, проти- воположном текущей открытой позиции, или срабатывает стандартный выход (например, защитная остановка, целевая прибыль или выход по рыночной цене, если позиция была открыта дольше указанного количе- ства дней). Защитная остановка определяется как входная цена плюс (для коротких) или минус (для длинных позиций) параметр mmstp, величина

    ГЛАВА 5 МОДЕЛИ, ОСНОВАННЫЕ НА ПРОБОЯХ 107
    которого линейно зависит от размеров среднего истинного ценового диа- пазона последних 50 дней. Границы целевой прибыли представляют со- бой входную цену плюс (для длинных) или минус (для коротких позиций)
    еще один параметр — ptlim, также связанный с величиной среднего ис- тинного диапазона последних 50 дней. «Выход при закрытии» (вид ры- ночного приказа) представляет собой приказ, который отдается, если по- зиция удерживалась определенное количество дней (maxhold). Все выход- ные приказы исполняются только при закрытии; это ограничение позво- ляет избежать исполнения приказа при случайном внутридневном дви- жении цены. Если бы выходы осуществлялись внутри ценового бара (дня),
    то существовала бы возможность отдать несколько приказов в одном баре.
    Моделирование такой ситуации невозможно, поскольку движение цен в пределах одного бара неизвестно, и, следовательно, порядок исполнения отданных приказов оказывается неопределенным.
    Средний истинный диапазон (мера волатильности) рассчитывается как среднее значение истинного диапазона за несколько предыдущих дней (в данном случае 50 дней). Истинный диапазон представляет собой наиболь- шую из следующих трех величин: разность между максимальной и мини- мальной ценами за день, разность между максимумом и ценой закрытия предыдущего дня и разность между ценой закрытия предыдущего дня и минимальной ценой текущего дня.
    Ниже приводится компьютерный код на C++ для системы пробоя ка- нала по ценам закрытия со стандартной стратегией выхода. При расчете количества контрактов сплит S&P 500 отдельно не учитывался. Новый кон- тракт считается идентичным предыдущему. Моделирование, тем не ме- нее, корректно, если считать, что трейдер (а не симулятор) продает или покупает два новых контракта вместо одного старого: симулятор настро- ен так, что он продает вдвое меньше новых контрактов, чем следовало бы,
    но считает их размер удвоенным. На фьючерсных рынках иногда имеет место административная остановка торгов (запрет на дальнейший рост или падение цены), вызванная чрезмерным изменением цены, превыша- ющим максимально допустимое изменение, установленное правилами данной торговой площадки. Наша программа определяет эти дни провер- кой диапазона: нулевой диапазон (максимум равен минимуму) позволяет предположить малую ликвидность и, возможно, остановленные торги.
    Хотя эта схема не идеальна, при ее использовании в моделировании полу- чаются результаты, похожие на реальную торговлю. Сбор точной инфор- мации о днях с ограниченной торговлей со всех бирж — задача практи- чески непосильная, поэтому мы использовали метод нулевого диапазона.
    Код позволяет проводить повторный вход в рынок при возникновении новых максимумов или минимумов.

    108 ЧАСТЬ II ИССЛЕДОВАНИЕ входов в РЫНОК
    // Выполнение тестирования модели
    // parms - набор [1..MAXPRM] параметров
    // dt — набор [1..nb] дат в формате ГГММДД
    // орn — набор [1..nb] цен открытия
    // hi — набор [l..nb] максимальных цен
    // 1о — набор [1..nb] минимальных цен
    // cls — набор [l..nb] цен закрытия
    // vol — набор [l..nb] значений объема
    // oi — набор [l..nb] значений открытого интереса
    // dlrv — набор [1..nb] средних долларовой волатильности
    // nb — количество дней в наборе данных
    // ts — ссылка на класс торгового симулятора
    // eqcls — набор [l..nb] уровней капитала при закрытых позициях
    //объявляем локальные переменные static int cb, n, neontracts, maxhold;
    static float mmstp, ptlim, atr;
    // копируем параметры в локальные переменные для удобного обращения n = parms [1]; // параметр ширины канала maxhold = 10; // период максимального удержания позиции ptlim = 4.О; // целевая прибыль в единицах волатильности mmstp = 1.0; // защитная остановка в единицах волатильности
    // file - x09mod01.c
    // только для этого теста выставляем транзакционные издержки равными нулю ts.commission(0.0);
    ts.slippage (0.0);
    // проходим через бары (дни}, чтобы смоделировать реальную торговлю for(cb = 1; cb <= nb-1; cb++) [
    //не открываем позиций до начала выборки
    //... то же самое, что установка MaxBarsBack в TradeStation if(dt[cb] < IS_DATE) { eqcls[cb] = 0.0; continue; }
    // выполняем ожидающие приказы и считаем кумулятивный капитал ts.update(opn[cb] , hi[cb], lo [cb] , cls [cb], cb) ;
    eqcls [cb] = ts.currentequity{EQ_CLOSETOTAL);
    // считаем количество контрактов для позиции
    //... мы хотим торговать эквивалентом долларовой волатильности
    //... равным 2 новым контрактам S&P-500 от 12/31/98
    ncontracts = RoundToInteger(5673.0 / dlrv[cb]) ;
    if (ncontracts < 1) ncontracts = 1;
    // избегаем устанавливать приказы на дни с ограниченной торговлей if(hi[cb+1] == lo[cb+1]} continue;
    // file = x09mod01.c
    // пробой канала но основе цены закрытия с входом на завтрашнем открытии if (cls [cb]>Highest(cls,n,cb-l) && ts.position {) < = 0) {
    ts.buyopen('1' , ncontracts) ;
    }
    else if (cls [cb]=0) {
    ts . sellopen ('2 ', ncontracts) ;
    }
    // симулятор использует стандартную стратегию выхода atr = AvgTrueRange(hi, lo, cls, 50, cb} ;
    ts.stdexitcls('X', ptlim*atr, mmstp*atr, maxhold);
    ] // обрабатываем следующий день

    ГЛАВА 5 МОДЕЛИ, ОСНОВАННЫЕ НА ПРОБОЯХ 109
    Этот код был скомпилирован и связан с оболочкой и библиотеками для разработчика; в TradeStation это называется «верификацией» систе- мы. При помощи команд оболочки проводилась оптимизация параметра n с лобовым подходом. Лучшее по показателями риска/прибыли реше- ние проверялось на данных, взятых вне пределов выборки. Оптимиза- ция состояла в прогонке параметра n через значения от 5 до 100 с шагом в 5. Параметр защитной остановки mmstp был установлен на уровне 1
    (т.е. одной единицы волатильности или среднего истинного диапазона),
    параметр целевой прибыли ptlim — на уровне 4 (4 единицы), а максималь- ный период удержания позиции maxdays был равен 10 дням. Эти значе- ния использовались для стандартных параметров выхода во всех тестах методик входа, если не указано иначе. Чтобы осознать масштаб целевой прибыли и защитных остановок, укажем, что фьючерсы S&P 500 на ко- нец 1998 г. имели средний истинный диапазон 17,83 пункта, или около
    $4457 за один новый контракт. Для первого теста комиссия и проскаль- зывание приняты равными нулю.
    Для такой простой системы результаты были неожиданно хороши: го- довая прибыль составила 76%. Все параметры n были прибыльными, в от- ношении риска/прибыли оптимальное значение составило 80 дней. Т-тест дневной прибыли (по соотношению риска/прибыли) показывает, что ве- роятность случайной эффективности составляет менее одной тысячной,
    а после коррекций на оптимизацию — менее одной сотой. Как и следова- ло ожидать по таким показателям, в тесте вне пределов выборки система также была прибыльной. Длинные позиции (покупки) принесли больше прибыли, чем короткие (продажи), возможно, в связи с ложными сигна- лами с короткой стороны, вызванными постоянным снижением цены при приближении срока истечения контрактов. Другое объяснение состоит в том, что цены на товары обычно более подвержены влиянию кризисов и дефицита, чем избытка. Как и при использовании других систем, осно- ванных на пробое, процент прибыльных сделок был невелик (43%), при- чем крупные прибыли от редких удачных сделок компенсировали частые мелкие убытки. Хотя некоторым психологически трудно воспринимать систему, которая терпит убыток за убытком в ожидании большой прибы- ли, ожидание того стоит.
    Капитал портфеля при использовании оптимального для выборки па- раметра n стабильно рос как в пределах выборки данных, так и вне его;
    избыточная оптимизация здесь не представляла проблемы. График изме- нения капитала показывает некоторое снижение эффективности систе- мы со временем. Впрочем, система, основанная на простом пробое кана- ла, все еще может извлекать из рынка неплохую прибыль. Или нет? Учти- те, что тест 1 проводился без учета расходов на сделки. В следующем тес- те учтены комиссионные и проскальзывание.

    110 ЧАСТЬ II ИССЛЕДОВАНИЕ входов в РЫНОК
    Тест 2. Система на основе пробоя канала. Используются только
    цены закрытия; вход по рыночной цене при открытии биржи на
    следующий день, комиссия и проскальзывание учитываются. Этот тест проведен точно так же, как и предыдущий, за исключением учета проскальзывания (3 тика) и комиссионных ($15 за цикл сделки). Хотя эта модель работала успешно без учета расходов на сделки, на практике она с треском провалилась. Даже лучшее в выборке решение принесло только убытки, и, как и следовало ожидать, вне пределов выборки система так- же работала с убытком. Почему же относительно небольшие комиссион- ные и проскальзывание приводят к разрушению производительности сис- темы, которая без них зарабатывает тысячи долларов на средней прибыль- ной сделке? Потому что на многих рынках сделки включают множествен- ные контракты, а комиссионные и проскальзывания влияют на каждый контракт по отдельности. В данном случае опять именно длинные сделки приносили наибольшую прибыль. Модель была умеренно доходной в 1980- х годах, но потом стала убыточной. Учитывая прибыльные результаты прошлого теста, можно предположить, что модель постепенно перестала окупать расходы на совершение сделок. Когда простые компьютеризо- ванные системы пробоев вошли в моду в конце 1980-х годов, возможно,
    именно они с течением времени изменили природу рынков, что привело к падению эффективности данных систем.
    В табл. 5-1 приведены результаты портфеля для системы, основанной на пробое канала. Результаты распределены по разным рынкам для различных выборок данных (названия рынков и их символы соответствуют обозначе- ниям табл. II-1; часть II, введение): ПРИБДЛ — общая прибыль длинных по- зиций в тысячах долларов; ПРИБКР— общая прибыль коротких позиций в тысячах долларов; ДОХ% — прибыль в процентах годовых; ВЕР — статисти- ческая достоверность; $СДЕЛ — средняя прибыль/убыток в сделке.
    Методы следования за трендом, такие как системы пробоев, предпо- ложительно хорошо работают на валютных рынках. Данный тест подтвер- ждает это предположение: положительная прибыль на нескольких рын- ках валют была получена и в пределах выборки данных, и вне ее. На мно- гих рынках (нефть и нефтепродукты, кофе, лес) также отмечена положи- тельная прибыль. Прибыльное поведение индексов (S&P 500 и NYFE), ви- димо, обусловлено сильным бычьим рынком 1990-х годов. На каждом рын- ке в год проводилось около 10 сделок. Процент прибыльных сделок был подобен наблюдавшемуся в первом тесте (около 40%).
    Тест 3. Система на основе пробоя цены закрытия, вход по лимит-
    ному приказу на следующий день, расходы на сделки учитываются.
    Для улучшения эффективности модели путем контроля над проскальзы- ванием и получения входов по более выгодной цене мы использовали ли- митный приказ для входа на следующий день по указанной или более вы- годной цене. Полагая, что рынок скорректирует по крайней мере полови-

    1   ...   7   8   9   10   11   12   13   14   ...   41


    написать администратору сайта