Джеффри Оуэн Кац и Донна Л. МакКормик. Энциклопедия торговых стратегий

  • Автор темы Автор темы FXWizard
  • Дата начала Дата начала

FXWizard

Гуру форума
ВАРИАЦИИ СИСТЕМЫ ПРОБОЯ ВОЛАТИЛЬНОСТИ

Улучшится ли эффективность, если ограничить модели пробоя только длинными позициями? А если вести торговлю только на рынке склонных к трендам валют? Можно ли использовать индикатор трендов, чтобы избежать пилообразной торговли? Что будет, если не входить повторно в существующие (и, возможно, уже завершающиеся) тренды? Последний вопрос анализировался в отдельном тесте, результаты которого мы не приводим — они были настолько плохи, что никакого дополнительного исследования не проводилось. Остальные три вопроса будут рассмотрены ниже.

Только длинные позиции

В предыдущих тестах почти во всех случаях длинные позиции работалилучше, чем короткие. Что если попробовать применить одну из рассмотренных моделей для торговли только длинными позициями?
Тест 10. Пробой волатильности с входом по лимитному приказу; только длинные позиции. Лучшая из исследованных моделей (тест 8) была модифицирована для работы только с длинными позициями. Оптимизация параметров проводилась генетическим алгоритмом. При помощи генетической оптимизации множитель ширины среднего истинного диапазона bw подбирался в пределах 1,5 — 4,5 с шагом 0,1; период среднего истинного диапазона atrlen прогонялся от 5 до 50 с шагом в 1; период скользящей средней malen подбирался в пределах 1 — 25 с шагом 1. Генетическая оптимизация проводилась в объеме 100 «поколений».
Лучшая эффективность в пределах выборки была достигнута при множителе ширины среднего истинного диапазона 2,6, периоде скользящего среднего 15 и периоде среднего истинного диапазона 18. При этих параметрах годовая прибыль составила 53,0% и соотношение риска/прибыли 1,17 (р < 0,0002, р < 0,02 после коррекции). В пределах выборки проведено 1263 сделки длительностью в среднем 7 дней с прибылью в среднем $4100 с учетом проскальзывания и комиссионных; 48% сделок были прибыльны. Даже при неоптимальных значениях параметров удавалось получать прибыль — худшие параметры дали 15,5% прибыли!
Вне пределов выборки, несмотря на высокую статистическую достоверность и устойчивость модели (по результатам проверки на данных из выборки различных вариантов), модель была крайне неэффективна. Всего 35% сделок были прибыльными, а убытки составили 14,6% в год. Это нельзя объяснить простой подгонкой, так как в пределах выборки все комбинации были прибыльными. Неоптимальные параметры привели бы к уменьшенной, но все равно эффективной работе. Дополнительные тесты показали, что ни один набор параметров не мог сделать систему выгодной вне пределов выборки! Это исключает оптимизацию как причину
неэффективной работы — видимо, на рынке за последние годы произошли изменения, влияющие на способность моделей, основанных на пробое волатильности, давать прибыль даже при работе только с длинными позициями. График изменения капитала показывает, что основная часть прибыли была получена до июня 1988 г. Остальные периоды как оптимизации, так и проверки показывали только ухудшение.
Как и ранее, в обеих выборках хорошо работали валютные рынки. Средняя сделка на валютном рынке приносила $5591 дохода в пределах выборки и $1723 за ее пределами. Корзина нефтепродуктов также давала прибыль в обоих случаях, равно как и кофе.
Увы, эта система непригодна для использования в настоящее время, хотя в прошлом на ней можно было бы сделать состояние; впрочем, для некоторых рынков — валют, нефтепродуктов и кофе — в ней еще есть некоторый потенциал.
 

FXWizard

Гуру форума
Только валютный рынок

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

Тест 11. Пробой волатильности с входом по лимитному приказу;
только валютные рынки. Модель идентична прошлой, за тем исключением, что вместо ограничения длинными позициями введено ограничение рынками валют. Оптимизация не проводилась ввиду малого количества рынков и, соответственно, данных; вместо этого использованы лучшие параметры теста 8.
Это первый тест, где система, основанная на пробое, дала явно прибыльные результаты в обеих выборках с учетом реальных расходов на сделки! В пределах выборки прибыль системы составила 36,2% в год, вне — 17,7%, что тоже неплохо. В пределах выборки проведено 268 сделок, из них 48% прибыльных со средней прибылью $3977. Вне пределов
выборки проведено 102 сделки, из них 43% прибыльных, средняя прибыль— $2106.
График изменения капитала на рис. 5-2 подтверждает высокую эффективность системы. Почти вся прибыль сделана в пяти «рывках», длившихся несколько месяцев каждый. Эта модель потенциально пригодна для торговли, особенно если заменить стандартный выход на более эффективный.

Фильтр трендов ADX

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

FXWizard

Гуру форума
Тест 12. Пробой волатильности с входом по лимитному приказу и
фильтром трендов. Использована та же модель, что и в тестах 10—11; вместо ограничения длинными позициями или валютными рынками добавлен фильтр сигналов на наличие трендов по методу ADX или усредненного направленного движения (Wilder, 1978). Возможно, отсеивание рынков, где нет тренда, «пилообразной» торговли и затяжных сделок несколько улучшит результаты системы. ADX использован для фильтрации пробоев согласно исследованиям Уайта (White, 1993). Тренд считается существующим в том случае, если ADX, рассчитанный по последним 18 дням, достигает нового шестидневного максимума. Входы производятся только при наличии тренда.

attachment.php


Рисунок 5-2. График изменения капитала для системы на пробое ММ/ММ, вход по лимитному приказу (только валютные рынки).

Как и в предыдущих тестах, использовалась генетическая оптимизация параметров. Все 100 комбинаций, кроме одной, были прибыльными в пределах выборки; 88 дали прибыль более 20%. Это демонстрирует устойчивость системы к изменению параметров. Наилучшие результаты были следующими: множитель ширины среднего истинного диапазона — 2,6; период скользящей средней — 8; период среднего истинного диапазона — 34. При этих параметрах в пределах выборки прибыль составила 68,3%, вероятность случайности результатов менее 0,0005 (0,035 после оптимизации) . Совершено 872 сделки, из них 47% прибыльных. Средняя сделка принесла прибыль около $4500. Вне пределов выборки система понесла $2415 убытков и только 36% из 373 сделок были прибыльными. Прибыль составила — 20,9% — один из худших результатов вне выборки. Очевидно, в прошлом ADX был более полезен, чем в недавнее время.
Большинство рынков валют, мазут, кофе, лес и 10-летние казначейские бумаги были прибыльными и вне пределов выборки. S&P 500, пшеница и золото были прибыльны вне пределов выборки, но убыточны в пределах выборки. Устойчивая прибыльность валют, нефтепродуктов и кофе соответствует наблюдавшейся ранее.
 

Вложения

  • pic5_2.png
    pic5_2.png
    60,7 КБ · Просмотры: 74

FXWizard

Гуру форума
АНАЛИЗ И ОБОБЩЕНИЯ

В табл. 5-3 приведены результаты тестов различных моделей, основанных на пробоях, — по выборке и виду приказа (Р/ПРИБ — годовое соотношение риска/прибыли, ДОХ — доходность в процентах годовых, $СДЕЛ — прибыль или убыток от средней сделки).

Виды пробоев

В выборке данных, использованной для оптимизации (1985— 1995), наилучшим образом работали системы на пробое волатильности. Пробои ММ/ММ показали средние результаты, а пробои цен закрытия работали хуже всего; это отмечалось при использовании всех трех видов приказов.
Вне пределов выборки (1995— 1998) модели на пробое ММ/ММ продолжали работать несколько лучше, чем пробои цен закрытия, но модели на пробое волатильности работали гораздо хуже. По описанным ранее причинам объяснить ухудшение показателей систем, основанных на волатильности, в последние годы только оптимизацией нельзя — возможно, это произошло из-за популярности метода в недавнем прошлом. Впрочем, в последние годы даже лучшие из моделей, основанных на пробое, работают плохо.
При разбивке по моделям на графиках изменения капитала наблюдаются три ярко выраженных периода. С августа 1985 г. по июнь 1988 г. все модели были почти одинаково прибыльны. С июня 1988 г. по июль 1994 г.
модели на пробоях цен закрытия и ММ/ММ практически не приносили прибыли. Модель пробоя волатильности резко улучшила свои показатели в августе 1992 г. — июле 1994 г. С июля 1994 г. по декабрь 1998 г. модели на ММ/ММ и ценах закрытия работали с некоторым убытком, причем некоторое преимущество было у моделей пробоев ММ/ММ. Капитал моделей, основанных на пробоях волатильности, за этот период значительно снизился.
 

FXWizard

Гуру форума
Приказы для входа в рынок

Как в пределах выборки, так и вне ее на всех моделях наилучшим образом работал лимитный приказ. Рыночные приказы и стоп-приказы были
малоэффективны. Преимущества лимитного приказа, несомненно, связаны с тем, что он обеспечивает вхождение в рынок по более выгодной
цене. В тестах 1 и 2 видно колоссальное влияние входов по неоптимальной цене и расходов на сделки (комиссия и проскальзывание). Как ни странно, лимитный приказ хорошо работал с методиками следования за трендом, к которым относятся модели пробоя. Можно было бы ожидать, что многие хорошие тренды будут пропущены при ожидании входа с помощью лимитного приказа. Однако откат рынка (даже после достоверных пробоев) происходит достаточно часто, что позволяет с помощью лимитных приказов добиться входа по предпочтительной цене и не пропускать прибыльных трендов.

Таблица 5—3. Сравнительный обзор результатов входов, основанных на пробоях

attachment.php


Те же три периода, обнаруженные при исследовании видов пробоев,
обнаруживаются и при рассмотрении тестов, распределенных по виду
приказов. Для лимитных приказов и стоп-приказов отмечена значительная прибыль с августа 1985 г. по июнь 1988 г. С использованием стоп-приказа капитал возрастал медленнее. Для входов по стоп-приказу и рыночному приказу прибыль была нестабильной и снижающейся с июня 1988 г.
по июль 1994 г., в то время как лимитный приказ был умеренно прибыльным. С июля 1994 г. по декабрь 1998 г. рыночные приказы стали несколько менее эффективными, стоп-приказы сильно снизили прибыльность, эффективность лимитных приказов была непостоянной. В первом периоде стоп-приказы работали лучше среднего, а в третьем — гораздо хуже среднего; эффективность стоп-приказов ухудшалась со временем быстрее, чем эффективность других приказов. Во всех периодах времени лучше всего работали лимитные приказы.
Объединив рассмотрение графиков изменения капитала по различным типам моделей и приказов, мы увидим, что большая часть прибылей
была получена в первом периоде, занимавшем менее трети выборки данных. К концу этого периода было накоплено более 70% всего капитала. Во втором периоде отмечался некоторый дрейф капитала, а в третьем — падение, вначале медленное, а с июля 1997 г. все более быстрое.
 

Вложения

  • tab5_3.png
    tab5_3.png
    52,6 КБ · Просмотры: 67

FXWizard

Гуру форума
Взаимодействие

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

Ограничения и фильтры

Ограничение торговли только длинными позициями значительно улучшило эффективность систем пробоя волатильности в пределах выборки. За пределами выборки данное ограничение принесло лишь небольшое улучшение результатов. Системы пробоя работают лучше в длинных позициях, чем в коротких. Использование фильтра ADX несколько улучшило эффективность в пределах выборки и было бесполезным вне ее.
Ограничение торговли рынком валют дало ухудшение в пределах выборки, но огромное преимущество вне выборки. Преимущество было настолько большим, что модель дала прибыль вне выборки в отличие от всех других испытанных комбинаций! Рынок валют не попал под влияние глобальных изменений, происходящих на других рынках и разрушивших работу простых систем пробоев. Возможно, это связано с тем, что рынки валют имеют колоссальный объем и приводятся в движение мощными фундаментальными процессами. Уменьшение эффективности систем в пределах выборки можно объяснить уменьшением числа рынков, используемых в работе.

Анализ по рынкам

Для каждого рынка по всем тестам усреднялась общая прибыль и годовой доход. Полученные значения были в общем неудивительны — положительные значения получены как в пределах, так и вне пределов выборки для немецкой марки, швейцарского франка, иены и канадского доллара, а также для сырой нефти и мазута. Торговля корзиной из шести валют,
трех нефтепродуктов или того и другого вместе была бы прибыльной. Хотя больше ни одна группа рынков не продемонстрировала постоянной прибыльности, это отмечено для некоторых индивидуальных рынков — кофе, живых свиней и леса.
Рынки S&P 500, NYFE, золота, кукурузы и пшеницы давали положительные результаты вне выборки при убытках в ее пределах. Прибыльность рынков индексов может быть объяснена сильными трендами, возникшими вне пределов выборки. Положительные результаты в пределах выборки при убытках вне ее были отмечены на многих рынках, в том числе на рынках казначейских облигаций и банкнот, палладия, откормленного скота, свиной грудинки, сои, соевой муки, соевого масла, овса, апельсинового сока и хлопка. Рынки казначейских векселей, серебра, платины, живого скота, какао и сахара были убыточны и на выборке, и вне ее. Наличие корреляции в 0,15 между общим доходом в пределах выборки и вне ее пределов свидетельствует о том, что рынки, дававшие прибыль во время оптимизации, скорее всего, будут выгодными и вне пределов выборки.
 
Последнее редактирование:

FXWizard

Гуру форума
ЗАКЛЮЧЕНИЕ

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

ЧТО МЫ УЗНАЛИ?

  • При возможности следует использовать лимитный приказ для входа в рынок. Рынки шумны и обычно дают возможность войти по предпочтительной цене; это самое важное улучшение, повышающее эффективность системы. Управление расходами на сделки за счет лимитных приказов может сильно изменить эффективность модели. Даже несложный лимитный приказ вроде использованных в этих тестах сможет значительно улучшить результаты. Более сложная стратегия лимитных приказов может, несомненно, дать весьма значительные преимущества торговой системе такого рода.
  • Сконцентрируйтесь на уровнях поддержки и сопротивления, основных аксиомах технического анализа, которые вряд ли будут «расторгованы». Модели на пробое максимального максимума/минимального минимума в тестах работали лучше остальных, несмотря на нестабильные результаты. Избегайте популярных систем на основе волатильности, если только в них нет особых ухищрений, позволяющих удержаться на плаву, несмотря на широкое использование.
  • Выбирайте рынки с сильными и частыми трендами для торговли с помощью систем следования за трендами. Для этих целей традиционно хороши валютные рынки. По данным наших тестов, также подходят рынки кофе и нефтепродуктов.
    Не полагайтесь для определения наличия трендов на индикаторы типа ADX.
  • Для закрытия открытых позиций используйте продвинутые стратегии выхода. Как будет показано в разд. III, существуют методы значительно более выгодные, чем наш стандартный выход. Хороший выход способен значительно улучшить эффективность торговой системы.
 

FXWizard

Гуру форума
ГЛАВА 6
Модели, основанные на скользящих средних

Скользящие средние включены в многие программные пакеты по техническому анализу и являются темой множества публикаций. Они настолько популярны, что в 1998 г. пять из двенадцати выпусков Technical Analysis of Stocks and Commodities содержали посвященные им статьи. В газетах часто публикуются графики 50-дневных скользящих средних биржевых товаров и 20-дневных скользящих средних цен на фьючерсы.

ЧТО ТАКОЕ СКОЛЬЗЯЩЕЕ СРЕДНЕЕ?

Чтобы понять идею скользящих средних, для начала необходимо обсудить временные ряды, т.е. последовательности данных, расположенных в хронологическом порядке. Например, такими данными являются ежедневные цены закрытия каких-либо акций. Они образуют последовательность «точек данных», или «баров», следующих друг за другом во времени. Во временном ряду серии выборка из нескольких последовательных точек данных может быть названа «временным окном». Если точки данных (например, цены закрытия) в данном временном окне сложить и сумму разделить на количество этих точек данных, то получится «среднее». Скользящее среднее получается тогда, когда этот процесс повторяется снова и снова при смещении «временного окна» вперед, точка за точкой по ряду данных. Средние, полученные таким образом, образуют новый временной ряд, новый набор упорядоченных во времени значений. Эта серия называется «скользящей средней временного ряда» (в данном случае — скользящее среднее цен закрытия). Этот вид скользящих средних извес тен как простое скользящее среднее, поскольку рассчитывается как простое арифметическое среднее точек данных, что присваивает каждой точке один и тот же удельный вес.

ЗАЧЕМ НУЖНЫ СКОЛЬЗЯЩИЕ СРЕДНИЕ

Скользящие средние используются для снижения нежелательного шума во временных рядах, чтобы поведение рынка, лежащее в основе процесса ценообразования, стало более понятным и заметным. Скользящее среднее обеспечивает сглаживание данных. Как метод сглаживания скользящее среднее является примитивным фильтром низких частот, т.е. пропускает низкочастотную активность, отфильтровывая высокочастотные процессы. На графике высокочастотные процессы выглядят как быстрые вертикальные колебания, т.е. как шум, а низкочастотные — как более плавные тренды или волны. Элерс (Ehlers, 1989) рассматривал взаимосвязь скользящих средних и фильтров низких частот. Он разработал уравнения и, сравнивая различные фильтры со скользящими средними по их полезности, пришел к выводу, что скользящие средние могут быть использованы для фильтрации любых данных, а не только ценовых.
 

FXWizard

Гуру форума
ПРОБЛЕМА ЗАПАЗДЫВАНИЯ

Помимо способности снижать зашумленность временных рядов скользящие средние обладают преимуществами понятности, простоты и многофункциональности. При этом, как и любой мощный метод фильтрации данных или сглаживания в реальном времени, они имеют недостаток — запаздывание. Хотя сглаженные данные «чище» и, следовательно, более подходят для анализа, возникает запаздывание между данными в исходной серии и в сглаженной серии данных. Такое запаздывание может представлять проблему при необходимости быстрой реакции на события, как это бывает важно для трейдеров.
В некоторых случаях запаздывание — не проблема, например, когда скользящее среднее одного временного ряда используется для прогнозирования другого, т.е. исходный ряд достаточно «обгоняет» прогнозируемый, чтобы компенсировать запаздывание. Такие модели возникают, например, при прогнозировании влияния солнечных процессов и сезонных событий. Кроме того, запаздывание может быть неопасным в моделях, где линия цен пересекает скользящее среднее — фактически цена и должна обгонять среднее, чтобы такая система работала. Запаздывание более проблематично в моделях, где для принятия решений используются точки разворота графика скользящего среднего или его наклон. В таких случаях запаздывание означает отсроченный ответ, что, скорее всего, приведет к невыгодным сделкам.
Существует огромное разнообразие адаптивных скользящих средних и других сложных методов сглаживания, разработанных в целях минимизации запаздывания. Одна из таких методик основывается на стандартных способах предсказания временных серий. По Маллой (Mulloy, 1994) используется линейная рекурсивная схема с множественными скользящими средними. Когда уровень движения на рынке достаточен для отключения фильтра, запаздывание исчезает; впрочем, фильтры имеют тенденцию недостаточно сглаживать данные и работают заметно хуже, когда рынок отклоняется от настроек этих фильтров. Чанд (Chande, 1992) применил нелинейный подход и разработал скользящее среднее, которое адаптируется к рынку на основе волатильности. Иногда запаздывание можно уменьшить или устранить путем сочетания нескольких скользящих средних, образующих полосовой фильтр. Подобные полосовые фильтры могут иметь практически нулевое запаздывание при сигнале с периодичностью, примерно равной середине полосы пропускания; сглаженный сигнал может совпадать с исходным зашумленным, если активность процесса циклична и частота (период) этой циклической активности близка к максимальной частоте, пропускаемой фильтром.
 

FXWizard

Гуру форума
ВИДЫ СКОЛЬЗЯЩИХ СРЕДНИХ

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

attachment.php


Простое скользящее среднее
Экспоненциальное скользящее среднее
Треугольное скользящее среднее с передним взвешиванием

В этих формулах а обозначает скользящее среднее для точки данных г, s i — точку данных номер г в последовательности, т — период скользящего среднего и с (обычно приравненное к 2/(т+ 1)) — коэффициент, указывающий эффективный период экспоненциального скользящего среднего.
Уравнения показывают, что скользящие средние различаются по методу определения удельного веса точек данных. Экспоненциальные средние присваивают больший удельный вес более новым данным, а вес старых уменьшается «экспоненциально». Треугольное среднее также придает больший удельный вес новым данным, но вес старых данных снижается линейно по направлению к более старым; в TradeStation и многих других источниках это ошибочно названо «взвешенным скользящим средним».
Адаптивные скользящие средние были разработаны для ускорения реакции на изменения. Целью было получение скользящего среднего, которое могло бы адаптироваться к текущему поведению рынка, так же как система шумоподавления Dolby адаптируется к уровню звука в аудиосигнале: сглаживание усиливается, когда на рынке имеет место в основном шумовая активность и мало выраженного движения (в периоды затишья шум фильтруется сильнее), и снижается в периоды значительной активности рынка, увеличивая тем самым реакцию. Существует несколько видов адаптивных скользящих средних. Одно из наиболее эффективных разработано Марком Джуриком (www.jurikres.com). Еще одно, разработанное Чандом, названо VIDYA (Variable Index Dynamic Moving Average).
Рекурсивный алгоритм экспоненциального скользящего среднего выглядит так: для каждой точки данных коэффициент (с), определяющий эффективную длину скользящего среднего (m), умножается на значение данной точки данных и к результату прибавляется разность 1,0 — с, умноженная на текущее значение скользящего среднего, что и дает новое значение. Коэффициент с приравнивается к 2,0/(m+1), где т— период скользящей средней. Чанд в 1992 г. модифицировал данный алгоритм. В его модели значение коэффициента с не является константой, а зависит от текущей волатильности рынка — «громкости» рынка, выраженной в виде стандартного отклонения цен за некоторое количество последних точек данных. Поскольку стандартное отклонение сильно варьируется на разных рынках и показатель волатильности должен быть относительным, Чанд предложил делить наблюдаемое стандартное отклонение для каждой точки на среднее значение стандартного отклонения для всех точек в имеющемся образце данных. Для каждого бара коэффициент 2,0/(m + 1)) рассчитывается заново, умножаясь на относительную волатильность, таким образом получается скользящее среднее с периодом, динамически подстраивающимся под активность рынка.
Мы использовали адаптивное скользящее среднее, основанное на VIDYA, не требующее фиксированных поправок для стандартных отклонений (в виде стандартного отклонения, усредненного по всему образцу данных). Поскольку поведение рынков может очень сильно меняться со временем, а изменения волатильности при этом никак не связаны с адаптацией скользящего среднего, идея фиксированной нормализации не выглядит обоснованной. Вместо использованного Чандом стандартного отклонения, деленного на постоянный коэффициент, мы применили отношение двух показателей волатильности — краткосрочного и долгосрочного. Относительная волатильность, требуемая для коррекции с и, следовательно, для коррекции периода адаптивного скользящего среднего, получалась методом деления краткосрочного показателя волатильности на долгосрочный. Показатели волатильности представляли собой скользящие средние квадратов разностей между соседними точками данных. Более короткий показатель использовал период р (подстраиваемый параметр), а период длинного скользящего среднего равнялся 4р. Если долгосрочная волатильность равна краткосрочной (т.е. их отношение равно единице), то адаптивное скользящее среднее ведет себя идентично стандартному экспоненциальному скользящему среднему с периодом m; при этом эффективный период экспоненциального скользящего среднего плавно снижается при увеличении соотношения волатильностей и возрастает при его уменьшении.
 

Вложения

  • f1.png
    f1.png
    29,5 КБ · Просмотры: 60

FXWizard

Гуру форума
ВИДЫ МОДЕЛЕЙ С ВХОДОМ, ОСНОВАННЫМ НА СКОЛЬЗЯЩЕМ СРЕДНЕМ

Модель с входом, основанным на скользящем среднем, генерирует сигналы входа на основе просты» соотношений между скользящим средним и ценой или между двумя скользящими средними. Существуют модели и следующие за трендом, и идущие против тренда. Наиболее популярные модели следуют за трендом и отстают от рынка. С другой стороны, модели, идущие против тренда, предсказывают развороты и по крайней мере совпадают с событиями на рынке. Это не означает, что следующие за рынком модели работают хуже противотрендовых; надежные входы в тренд, пусть даже и с запаздыванием, лучше и, в общем, выгоднее, чем попытки предсказывать развороты, которые только изредка происходят в ожидаемый момент. Поскольку мы вынуждены использовать стандартные выходы и поскольку в реальной торговле любой серьезный трейдер будет использовать защитные остановки и управление капиталом, мы не будем тестировать простые модели скользящих средних, постоянно присутствующие на рынке. Впрочем, при использовании быстрых скользящих средних сигналы разворота позиции возникают раньше, чем стандартный выход закрывает сделки.
Следующие за трендом входы на основе скользящих средних могут генерироваться различными способами. Одна из простых моделей основана на пересечении скользящих средних; трейдер покупает, когда цены поднимаются выше скользящего среднего, и продает, когда цены опускаются ниже его. Вместо ожидания пересечения линии среднего и цен можно использовать быстрое среднее и его пересечение медленным: сигнал на покупку возникает, когда быстрое среднее поднимется выше медленного, сигнал на продажу — когда опускается ниже. Сглаживание исходных рядов данных за счет использования скользящих средних снижает количество «ложных» пересечений и, следовательно, уменьшает частоту убыточных сигналов.
Скользящие средние могут также использоваться для получения сигналов входа в противотрендовых системах. Биржевые цены часто реагируют на линию скользящего среднего примерно так, как на уровни поддержки и сопротивления, на чем и основывается модель входа. Согласно ее правилам, покупают, когда цены опускаются до скользящей средней или пересекают ее сверху, и продают, когда они поднимаются до нее или пересекают снизу. Предполагается, что цены «отскакивают» от уровня скользящего среднего, меняя направление движения. Входы против тренда также можно производить на основе стандартного пересечения, но в обратном направлении. Когда цена опускается ниже линии скользящей средней, открывают длинную позицию, а когда цена поднимается выше линии скользящей средней, открывают короткую позицию. Такой «обратный» подход часто оправдывается в торговле, поскольку, как правило, бывает выгодно продавать после сильного роста цен и покупать, когда цены чрезмерно быстро падают. Поскольку скользящие средние отстают от рынка, к моменту получения сигнала рынок может как раз находиться в начале обратного движения.
Использование скользящих средних для получения сигналов, идущих против рынка в модели, основанной на уровнях поддержки и сопротивления, не является чем-то новым. Александер (Alexander, 1993) обсуждал использование отката до уровня поддержки после пересечения скользящего среднего как вариант организации входа. Тилли (Tilley, 1998) описывал систему на уровнях поддержки/сопротивления для торговли взаимными фондами. Суини (Sweeney, 1998) описывал применение скользящих средних цен закрытия для вычисления внутридневных уровней поддержки и сопротивления.
 

FXWizard

Гуру форума
ХАРАКТЕРИСТИКИ ВХОДОВ, ОСНОВАННЫХ НА СКОЛЬЗЯЩИХ СРЕДНИХ

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

ПРИКАЗЫ, ИСПОЛЬЗУЕМЫЕ ДЛЯ ОСУЩЕСТВЛЕНИЯ ВХОДОВ

Входы, основанные на скользящих средних, могут быть осуществлены с помощью стоп-приказов, лимитных приказов или рыночных приказов.
Хотя возможны более удачные сочетания, в принципе с любой моделью может работать любой тип приказов. Иногда приказ может быть частью сигнала входа. Простая система, основанная на пересечении средних, может использовать стоп-приказ на ожидаемом завтрашнем уровне скользящего среднего. Во избежание исполнения нескольких приказов при случайных скачках внутридневной цены на следующий день ставится только стоп-приказ на покупку или на продажу, а не оба вместе. Если закрытие было выше скользящей средней, ставится стоп-приказ на продажу, а если ниже, то на покупку.
Приказы, используемые для входов, имеют свои достоинства и недостатки. Рыночный приказ никогда не пропустит сигнала, поданного на вход. Стоп-приказ никогда не пропустит важного тренда (если система следует за трендом). Вход всегда будет произведен, когда движение цен подтверждает его выгодность — но за счет проскальзывания и неоптимальных цен входа. Лимитный приказ обеспечит лучшую цену и снизит расходы на сделку, но в ожидании отката цен можно пропустить важные тренды. В противотрендовой модели лимитный приказ может при случае ухудшить входную цену — поскольку приказ отдается по фиксированной цене, а не по цене, которую дает «отрицательное проскальзывание», возникающее при движении рынка против сделки в момент входа.
 

FXWizard

Гуру форума
МЕТОДОЛОГИЯ ТЕСТИРОВАНИЯ

Во всех нижеследующих тестах использован стандартный портфель. Количество контрактов при покупке или продаже при входе на любом рынке в любое время подбиралось так, чтобы приблизительно соответствовать долларовой волатильности двух контрактов S&P 500 на конец 1998 г.
Использованы стандартные выходы. Все тесты проведены с использованием C-Trader toolkit. Для того чтобы была возможность сравнить результаты, использованы портфели, стратегии выхода и платформа тестирования, идентичные использованным ранее. Тесты разделены на следующие за трендом и идущие против тренда. Они проводились на основе скрипта, содержащего инструкции для установки параметров, проведения оптимизации и генерации результатов для каждого сочетания видов скользящих средних, моделей и входных приказов.
Приведенный ниже код более сложен, чем код для пробоев; вместо разных последовательностей для комбинаций скользящих средних, правил входа и приказов использован один цикл, в котором параметры управляют выбором элементов системы. Этот метод необходим при генетическом развитии систем. Хотя здесь, собственно, нет генетических алгоритмов, подобные методы будут использованы в следующих главах. Этот код содержит параметры для управления элементами модели, упрощая обработку всех возможных комбинаций в систематическом виде.

static void Model (float *parms, float *dt, float *opn, float *hi,
float *lo, float *cls, float *vol, float *oi, float *dlrv, int nb,
TRDSIM &ts, float *eqcls) {
// Данные для тестирования всех моделей скользящих средних.
// File = xlOmodOl.c
// parms — набор [1..MAXPRM] параметров
// dt — набор [l..nb] дат в формате ГГММДД
// орn — набор [l..nb] цен открытия
// hi — набор [1..nb] максимальных цен
// 1о — набор [1..nb] минимальных цен
// cls — набор [l..nb] цен закрытия
// vol — набор [l..nb] значений обьема
// oi — набор [1..nb] значений открытого интереса
/ / dlrv — набор [1..nb] значений среднего долларовой волатильности
/ / nb — количество дней в наборе данных
// ts — ссылка на класс торгового симулятора
// eqcls — набор [1..nb] уровней капитала при закрытых позициях
// объявляем локальные переменные
static int rc, cb, ncontracts, maxhold, fastmalen,slowmalen;
static int modeltype, ordertype, avgtype, signal;
static float mmstp, ptlim, stpprice, limprice, tmp;
static float exitatr[MAXBAR+1] ;
static float fastma[MAXBAR+1] , slowma[MAXBAR+1] ;
// копируем параметры в локальные переменные для более удобного обращения
fastmalen = parms[1]; // период для быстрой скользящей средней
slowmalen = parms[2]; // период для медленной скользящей средней
modeltype - parms[5]; // тип модели входа
avgtype = parms[6]; // тип скользящего среднего
ordertype = parms[7]; // тип входного приказа
maxhold = 10; // максимальный период удержания позиции
ptlim = 4; // целевая прибыль в единицах волатильности
mmstp = 1; // защитная остановка в единицах волатильности
// пропускать неверные комбинации параметров
if(fastmalen >= slowmalen) {
set_vector(eqcls, 1, nb, 0.0);
return;
}
// делаем вычисления по всему ряду данных, используя векторизацию
AvgTrueRangeS(exitatr, hi, lo, cls, 50, nb); // средний истинный
// диапазон для выхода
switch(avgtype) { // выбираем тип скользящей средней
case 1: // простые скользящие средние
ГЛАВА 6 МОДЕЛИ, ОСНОВАННЫЕ НА скользящих СРЕДНИХ 139
Averages{fastma, cls, fastmalen, nb);
Averages(slowma, cls, slowmalen, nb);
break;
case 2: // экспоненциальные скользящие средние
XAverageS(fastma, cls, fastmalen, nb);
XAverageS(slowma, cls, slowmalen, nb);
break;
case 3: // треугольные скользящие средние с передним взвешиванием
FWTAverageS(fastma, cls, fastmalen, nb};
FWTAverageS(slowma, cls, slowmalen, nb);
break;
case 4: // VIDYA-адаптивные скользящие средние
VIAverageS(fastma, cls, fastmalen, 10, nb) ;
VIAverageS(slowma, cls, slowmalen, 10, nb) ;
break;
default: nrerror("Invalid moving average selected");
} ;
// проходим через дни, чтобы смоделировать реальную торговлю
for(cb =1; cb < = nb; cb++) {
//не входим в сделки до начала периода выборки
// . . . т а к же, как установка MaxBarsBack в Trade Station
if (dt[cb] < IS_DATE} { eqcls [cb] = 0.0; continue;)
// выполняем все ожидающие приказы и подсчитываем капитал по закрытым
// сделкам
гс = ts.update (opn [cb] , hi [cb] , lo [cb] , cls [cb] , cb) ;
if (rc = 0) nrerror("Trade buffer overflow");
eqcls[cb] = ts.currentequity(EQ_C1OSETOTAL);
// подсчитываем количество контрактов для сделки
/ / . . . мы хотим торговать эквивалентом долларовой волатильности
// . . . 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;
// генерировать входные сигналы, цены стоп- и лимитных приказов,
// используя модель входа определенной скользящей средней
#define CrossesAbove(a,b, с) {а[с]>=b[с] && a [c-1]<b[c-1])
#define CrossesBelow(a,b,c) {a[c]<b[c] && a [c-1]>=b[c-1])
#define TurnsUp(a,c) {a [c]>=a[c-l] && a [c-1]<a[c-2])
#define TurnsDn(a,c) {a[c]<a[c-l] && a [c-1]>=a[c-2] )
signal=0;
switch(modeltype) {
case 1: // классическая следующая за трендом модель, основанная на
// пересечении
if (CrossesAbove(fastma, slowma, cb)) signal = 1;
else if (CrossesBelow(fastma, slowma, cb)) signal = -1;
limprice = 0.5 * (hi [cb] + lo [cb]);
stpprice = cls [cb] +0.5 * signal * exitatr[cb] ;
break;
case 2: // следующая за трендом модель, основанная на наклоне
if (TurnsUp(fastma, cb)) signal = 1;
else if(TurnsDn{fastma, cb)) signal = -1;
limprice = 0.5 * (hi[cb] + lo [cb]};
stpprice = cls[cb] +0.5 * signal * exitatr[cb];
break;
case 3: // противотрендовая модель
if(CrossesAbove(fastma, slowma, cb)) signal = -1 ;
else if(CrossesBelow(fastma, slowma, cb)) signal = 1;
limprice = 0.5* (hi[cb] + lo[cb]);
stpprice = cls[cb] + 0.5 * signal * exitatr[cb];
break;
case 4: // противотрендовая модель, основанная на поддержке
// и сопротивлении
if(slowma[cb] > slowma[cb-1]
&& CrossesBelow(fastma, slowma, cb) ) signal = 1;
else if(slowma[cb] < slowma[cb-1]
&& CrossesAbove(fastma, slowma, cb)) signal = -1;
limprice = 0.5 * (hi[cb] + lo[cb]);
stpprice = cls[cb] +0.5 * signal * exitatr[cb];
break;
default: nrerror("Invalid model selected"};
}
#undef CrossesAbove
#undef CrossesBelow
#undef TurnsUp
#tundef TurnsDn
// входим в сделку, используя опеределенный тип приказа
if(ts.position() <= 0 && signal == 1) {
switch (ordertype) { // выбираем желаемый тип приказа
case 1: ts.buyopen('1' , ncontracts); break;
case 2: ts.buylimit('2', limprice, ncontracts); break;
case 3: ts.buystop('3' , stpprice, ncontracts); break;
default: nrerror("Invalid buy order selected");
}
}
else if(ts.position)) >= 0 && signal == -1) (
switch (ordertype) ( // выбираем желаемый тип приказа
case 1: ts.sellopen{'4', ncontracts); break;
case 2: ts.selllimit('5', limprice, ncontracts); break;
case 3: ts.sellstop('6', stpprice, ncontracts); break;
default: nrerror("Invalid sell order selected");
}
)
// симулятор использует стандартную стратегию выхода
tmp = exitatr[cb];
ts.stdexitcls('X', ptlim*tmp, mmstp*tmp, maxhold);
} // обрабатываем следующий день
}
 

FXWizard

Гуру форума
В этом коде содержатся три сегмента. Первый сегмент рассчитывает скользящие средние. Параметр avgtype выбирает вид среднего: 1 — простое, 2 — экспоненциальное, 3 — треугольное с передним взвешиванием, 4 — модифицированное VIDYA. Даже если в коде использовано всего одно среднее, рассчитываются два одинаковых, чтобы сделать выбор вида скользящего среднего независимым от модели. Также рассчитывается средний истинный диапазон, значение которого требуется для установки защитных остановок и целевых прибылей в стратегии стандартных выходов. Два дополнительных параметра — fastmalen и slowmalen — указывают период быстрой и медленной скользящих средних. Значения скользящих средних сохраняются в векторах fastma и stowma.
Следующий блок использует выбранную модель для получения сигналов выхода, цен для стоп-приказов и цен для лимитных приказов. Сна чала определяются простые соотношения значений (CrossesAbove, CrossesBelow, Turnsllp и TurnsDown). В зависимости от mode/type одна из 4 видов моделей скользящих средних генерирует сигнал. Переменная modeltype принимает следующие значения: 1 — классическая, следующая за трендом модель пересечения двух скользящих средних; 2 — следующая за трендом модель, основанная на наклоне; 3 — противотрендовая модель, основанная на пересечении и 4 — противотрендовая модель на основе поддержки/сопротивления. В классической модели, основанной на пересечении скользящих средних, трейдер открывает длинную позицию, если быстрое среднее поднимается выше медленного, и короткую, если быстрое среднее опускается ниже медленного. Эта модель также может содержать сравнение скользящего среднего и цены в случае, когда период быстрого среднего приравнен к единице. При использовании основанной на наклоне модели, следующей за трендом, трейдер покупает, когда скользящее среднее после снижения стало расти, и продает в обратной ситуации. Эта модель требует только медленного скользящего среднего. Противотрендовая модель представляет собой обратную версию следующей за трендом классической модели пересечения: трейдер покупает, когда быстрое среднее (или собственно цена) опускается ниже медленного, и продает, когда оно поднимется выше. Такая модель — мечта для приверженцев теории противоположного мнения: она работает строго противоположно системе следования за трендом. Последняя модель — грубая система на основе поддержки/сопротивления, где ожидается, что цены будут «отскакивать» от линии скользящего среднего, как от уровней поддержки/сопротивления. Правила почти идентичны противотрендовой системе пересечения за тем исключением, что медленное среднее должно двигаться в направлении входа. Если медленное скользящее среднее стремится вверх, а цены (или быстрое среднее) падают сверху до его уровня или ниже, то дается сигнал на покупку; в противном случае дается сигнал на продажу. Дополнительное правило тренда обеспечивает защиту от немедленного разворота позиции после соприкосновения или пересечения средних. Без этого ограничения быстрый пробой с последующим разворотом вызвал бы два входа — желаемый вход против тренда и второй при пересечении средней во время отката цен. Контроль тренда позволяет входить только при движении в одном направлении: пересечение и отскок при повышающемся тренде приводят к открытию длинной позиции, а при понижающемся тренде — к открытию короткой.
В последней части кода параметр ordertype определяет вид приказа:
1 — рыночный приказ при открытии; 2 — лимитный приказ; 3 — стоп-приказ. Генерация приказа на покупку или продажу либо отсутствие приказа определяется тем, какой сигнал был сгенерирован предыдущим блоком программы; эта информация содержится в переменной signal: 1 —покупка; —1 — продажа (открытие короткой позиции); 0 — нет приказа.
Уровень цены лимитного приказа (limprice) рассчитывается как сумма максимума и минимума текущего дня, деленная на два. Поскольку многие из моделей не имеют естественного уровня цены для установки входных стоп-приказов, используется стандартный стоп. Его цена (stpprice) получается таким образом: берется цена закрытия предыдущего дня и к ней прибавляется (при сигнале для длинной позиции) или от нее отнимается (при сигнале для короткой позиции) средний истинный интервал за последние 50 дней, умноженный на 0,50; т.е. рынок должен сместиться как минимум на половину среднего дневного движения в направлении желаемого входа, чтобы этот вход имел место. Такой стоп-приказ как бы добавляет методику пробоя к скользящим средним — рынок должен «пробить» некоторую границу, чтобы сработал вход. Поскольку тестов проводилось множество, мы приводим только наиболее интересные результаты статистического анализа.
 

FXWizard

Гуру форума
ТЕСТЫ МОДЕЛЕЙ, СЛЕДУЮЩИХ ЗА ТРЕНДОМ

Эта группа включает модели, построенные по принципу следования за трендом, с использованием скользящих средних. Модели различаются видом скользящих средних, правилами генерации сигналов и видами приказов, обеспечивающих вход. Использовались следующие виды скользящих средних: простые, экспоненциальные, треугольные с передним взвешиванием и модифицированные VIDYA. Исследованы системы простого пересечения цены и средней, пересечения двух скользящих средних, а так-же модели со входами на основе наклона графика скользящей средней. В качестве входов использовались лимитные, рыночные и стоп-приказы.
Первые 12 тестов проведены на моделях, основанных на пересечении.
Оптимизация состояла в прогонке периода быстрого скользящего среднего от 1 до 5 с шагом 1 и периода медленного скользящего среднего от 5 до 50 с шагом 5. Разумеется, период медленного среднего был всегда длиннее периода короткого. Проводилась оптимизация с лобовым подходом. Целью была максимизация соотношения риска/прибыли или, что то же самое, минимизация вероятности случайного происхождения прибылей.
В тестах 13 — 24 испытывались модели, основанные на наклоне. В них оптимизация состояла в прогонке периода первого (т.е. единственного) скользящего среднего от 3 до 40 с шагом 1. Как и в тестах 1 — 12, максимизировалось соотношение риска/прибыли. Оптимизация проводилась только на данных в пределах выборки.
Табл. 6-1 и 6-2 показывают прибыль или убыток по каждому из компонентов портфеля для каждого из тестов в пределах выборки (табл. 6-1) ивне пределов выборки (табл. 6-2). В столбце SYM указан рынок, первая строка — номер теста. Такое представление данных дает достаточно подробную информацию о прибыльности или убыточности рынков отдельных товаров; одно тире (—) означает умеренный убыток со сделки, т.е. $2000 — 4000. Два тире ( ) означают значительные убытки, т.е. более $4000. Аналогично, один плюс ( + ) означает умеренную прибыль, т.е.
$1000 — 2000, а два плюса (+ +) — крупную прибыль, более $2000. Пустая ячейка означает убыток размером до $1999 или прибыль от 0 до $1000.
В табл. 6-3 для всего портфеля приведены показатели прибыли в процентах годовых (ДОХ %) и среднего результата сделки ($СДЕЛ), распределенные по видам скользящих средних, моделей, входных приказов и выборке данных. Два правых столбца и четыре нижние строки — усредненные значения. В последней строке приведены данные, усредненные для всех сочетаний моделей и средних. Данные в правом столбце усреднены для всех видов приказов.

Таблица 6—1. Эффективность в пределах выборки по тестам и рынкам

attachment.php
 

Вложения

  • t61.jpg
    t61.jpg
    70 КБ · Просмотры: 46

FXWizard

Гуру форума
Ни одна из следующих за трендом моделей по портфелю в целом не была прибыльной. Более подробное исследование показывает, что для моделей, основанных на пересечении, использование лимитных приказов приводило к резкому улучшению в пределах выборки. По сравнению с входами при открытии или по стоп-приказу использование лимитного приказа снижало средний убыток почти вдвое. Вне пределов выборки улучшение было не столь выражено, но все же значительно. То же самое отмечалось и для показателя ДОХ %: наименьшие убытки были получены при использовании лимитного приказа. Для моделей, основанных на наклоне, лимитный приказ работал наилучшим образом вне пределов выборки. Прибыль была несколько лучше при использовании стоп-приказа (поскольку значения прибыли в процентах годовых при оценке убыточных систем, естественно, искажаются) и хуже при входе по цене открытия. В пределах выборки лучше всего работал стоп-приказ, но с минимальным преимуществом.

Таблица 6—2. Эффективность вне пределов выборки по тестам и рынкам

attachment.php


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

Таблица 6—3. Эффективность следующих за трендом моделей в зависимости от вида приказов, вида скользящих средних, типа модели и
выборки данных

attachment.php
 

Вложения

  • t62.jpg
    t62.jpg
    71,3 КБ · Просмотры: 41
  • t63.png
    t63.png
    87,3 КБ · Просмотры: 42

FXWizard

Гуру форума
При рассмотрении отдельных тестов обнаруживается, что вне пределов выборки наилучшие показатели имела модель, испытанная в тесте 21 :
основанная на наклоне, использующая треугольное скользящее среднее с передним взвешиванием и вход по стоп-приказу. Результаты вне пределов выборки для моделей на треугольном скользящем среднем с передним взвешиванием были, в общем, лучше при всех видах приказов. Видимо, между различными факторами во всех тестах присутствовали сильные взаимосвязи, например для моделей с пересечением в пределах выборки вход по рыночному приказу при открытии следующего дня всегда был наихудшим, вход по стоп-приказу давал средние результаты и вход по лимитному приказу был всегда наилучшим вне зависимости от вида использованного скользящего среднего.
Вне пределов выборки результаты были менее закономерны. При использовании простого скользящего среднего результаты были более всего близки к полученным в пределах выборки; при использовании экспоненциального среднего лимитные приказы работали хуже всего, а стоп-приказы лучше всего; рыночные приказы давали средние результаты. Вне пределов выборки при использовании треугольного скользящего среднего с передним взвешиванием стоп-приказы были самыми худшими, а лимитные приказы — наиболее эффективными. Таким образом, существует взаимодействие между скользящим средним, входом и временем.
Модели, основанные на наклоне, всегда плохо работали при рыночном приказе; лимитные и стоп-приказы давали близкие результаты: в двух случаях был предпочтителен лимитный приказ (при простых скользящих средних и адаптивных скользящих средних) и в двух случаях — стоп-приказ (при экспоненциальных и треугольных скользящих средних). Как и ранее, вне пределов выборки отмечалось большее разнообразие результатов.
Для простых скользящих средних лучше всего работали лимитные приказы, а хуже всего стоп-приказы. При использовании экспоненциальных средних наблюдалась отмеченная ранее типичная картина: рыночный приказ работает хуже всех, лимитный приказ — лучше всех, а стоп-приказ дает средние результаты. Как уже было сказано, треугольное скользящее среднее в сочетании со стоп-приказом работало очень необычно.
Для адаптивного скользящего среднего наилучшим был лимитный приказ, наихудшим — стоп-приказ, а рыночный приказ при открытии следующего дня работал немного лучше стоп-приказа.
В целом эти модели были убыточными на большинстве рынков. Только рынок иены и свиной грудинки был прибыльным как в пределах, так и вне пределов выборки; в пределах выборки никакие другие рынки не были прибыльными. Вне выборки небольшая прибыль была получена на рынках мазута, бензина, палладия, живых свиней, соевой муки, пшеницы и кофе. Высокая прибыль на рынке кофе как в пределах, так и вне выборки может быть, скорее всего, объяснена крупным повышением цен в то время, связанным с засухой. На основе индивидуальных моделей больше всего выгодных сочетаний было найдено для рынков живых свиней, японской иены, свиной грудинки, кофе и леса. Для рынка овса не удалось найти ни одной прибыльной модели.
По показателям прибыли, усредненной для всех моделей и скользящих средних, хуже всего работали входы по рыночному приказу на открытии. Входы по лимитному или стоп-приказу работали примерно одинаково, с некоторым преимуществом лимитного приказа, особенно в начале выборки. Следует отметить, что при рассмотрении графиков изменения капитала убыточных систем возникает искажение в оценке эффективности системы (в нашем анализе мы обращали внимание на показатель средней прибыли сделки, на соотношение риска/прибыли, годовой или общей доходности именно по этим соображениям). Это искажение затрагивает количество проведенных сделок: убыточная система, которая проводит меньше сделок, будет выглядеть по ряду показателей лучше, чем убыточная система, которая проводит много сделок, даже если «лучшая» система теряет больше на каждой сделке. Сильные убытки при входе с помощью рыночного приказа могут быть не связаны с тем, что приказ сам по себе плох, — ситуация может попросту отражать тот факт, что при использовании этого приказа система проводит больше сделок, чем при использовании лимитного или стоп-приказа.
На рис. 6-1 изображены графики изменения капитала для всех восьми сочетаний моделей и скользящих средних. Графики усреднены по видам приказов. Рис. 6-1 показывает, как со временем происходит изменение систем. Большинство систем понесли самые тяжелые убытки в период с конца 1988 г. до начала 1995 г. Как видите, время лучшей эффективности — до 1988 г., в последние годы эффективность систем была средней. На графике 3 отражены результаты модели пересечения простых скользящих средних — ярко выраженное изменение с течением времени делает эту кривую примером, на котором четко видны все три периода — первоначальные прибыли, сильные убытки и небольшая прибыль в конце. Очевидно, что системы, основанные на пересечении (кривые 1—4), несли гораздо меньшие убытки, чем модели, основанные на наклоне (кривые 5 — 8), хотя это вызвано большим количеством сделок, а не большим убытком в каждой сделке.

attachment.php


Рисунок 6-1. Графики изменения капитала для всех моделей и скользящих средних.
 

Вложения

  • pic6_1.png
    pic6_1.png
    101 КБ · Просмотры: 40

FXWizard

Гуру форума
ТЕСТЫ ПРОТИВОТРЕНДОВЫХ МОДЕЛЕЙ

Противотрендовые модели, так же как и следующие за трендом, могут использовать различные виды скользящих средних, различные правила генерации сигналов и различные виды приказов для входа в рынок. Использованы те же виды скользящих средних, что и ранее; тестировались модели на основе и одиночных, и двойных скользящих средних. Использовались рыночные, лимитные и стоп-приказы.
Тесты с 25 по 36 рассматривают стандартную модель пересечения скользящего среднего с противоположно направленными сигналами. Как и ранее, сигнал на вход поступает при пересечении ценами линии скользящего среднего или при пересечении быстрого и медленного скользящих средних. В традиционных следующих за трендом моделях трейдер покупает, когда цена (или быстрое среднее) пересекает медленное среднее вверх и продает, когда пересекает вниз. В этой же модели на обратном пересечении все сделано наоборот. В тестах использована оптимизация с лобовым подходом, период быстрого среднего оптимизировался в пределах 1 —7 с шагом 1, период медленного в пределах 5 —50 с шагом 5. Рассматривались только случаи, когда длинные скользящие средние по размеру превышали короткие. Параметры подбирались таким образом, чтобы минимизировать вероятность того, что какие-либо из наблюдавшихся прибыльных показателей оказались таковыми случайно. Модель была апробирована на данных вне пределов выборки с использованием лучших наборов параметров, определенных с помощью данных из выборки.
В тестах модели поддержки/сопротивления (с 37 по 48) трейдер покупает, когда цены отскакивают вверх от скользящего среднего, и продает, когда они касаются скользящего среднего при движении снизу вверх. В этом случае скользящее среднее играет роль уровня поддержки или сопротивления, на котором ценовой тренд может развернуться. Правила почти такие же, как для тестов с 25 по 36, за тем исключением, что не каждое пересечение скользящего среднего приводит к входу. Если цены вышескользящего среднего и пересекают его, генерируется покупка, однако, когда цены отскакивают назад и снова оказываются над скользящим средним, второго пересечения недостаточно для инициации продажи. Если цены пересекают скользящее среднее снизу вверх, то осуществляется продажа. Однако при обратном пересечении покупка не генерируется.
Такое поведение модели достигается путем добавления одного условия к обратной модели пересечения. Это условие заключается в том, что сигнал формируется только тогда, когда он совпадает с направлением наклона медленного скользящего среднего. Поиски наилучшего решения проводились методом прямой оптимизации по данным выборки. Период короткого скользящего среднего изменялся от 1 до 5 с шагом 1. Период длинного скользящего среднего изменялся от 5 до 50 с шагом 5. Если период скользящего среднего равен 1, то данное среднее эквивалентно самой цене. Следовательно, при оптимизации тестировались модель, в которой цена сравнивалась со скользящим средним, и модель, в которой одно скользящее среднее сравнивалось с другим. Исследовались только те случаи, в которых период длинного скользящего среднего был больше, чем период короткого среднего. Мы подбирали параметры системы с целью минимизации вероятности того, что система приносит прибыль случайно. Затем модель была проверена на данных вне выборки с использованием лучшего набора параметров, найденного в пределах выборки.
В табл. 6-4 и 6-5 для тестов с 25 по 48 представлены результаты действия системы на рынках различных финансовых инструментов, как в пределах выборки (табл. 6-4), так и вне нее (табл. 6-5). Символы, обозначающие величину прибыли (+ и —), могут быть интерпретированы таким же образом, как и для табл. 6-1 и 6-2.

Таблица 6—4. Эффективность систем в пределах выборки. Результаты отдельных тестов и рынков

attachment.php
 

Вложения

  • tab6_4.jpg
    tab6_4.jpg
    66,2 КБ · Просмотры: 37
Последнее редактирование:

FXWizard

Гуру форума
В табл. 6-6 представлены результаты для различных скользящих средних, моделей, приказов и выборок. Последние две колонки справа и последние четыре ряда цифр внизу являются усредненными. Цифры внизу усреднены по всем комбинациям разных типов скользящих средних и моделей. Данные в двух последних колонках справа усреднены по типам приказов.
Лучшими моделями в пределах выборки были модель поддержки/сопротивления на основе простого скользящего среднего и модель поддержки/сопротивления на основе треугольного скользящего среднего с переднем взвешиванием. Система поддержки/сопротивления на основе простого скользящего среднего со стоп-приказом в отличие от других систем показала небольшие прибыли в обеих выборках: для данных в пределах выборки средняя сделка принесла прибыль $227, доход в процентах годовых равен 4,2%; соответствующие показатели для данных вне выборки равны $482 и 14,8%. Треугольное скользящее среднее с передним взвешиванием и стоп-приказом было прибыльным в выборке, но давало большие убытки вне пределов выборки. Обе модели, особенно в комбинации со стоп-приказом, давали относительно мало сделок; следовательно, их результаты статистически менее стабильны.

Таблица 6—5. Эффективность систем вне выборки. Результаты отдельных тестов и рынков

attachment.php


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

Таблица 6—6. Эффективность противотрендовых моделей в зависимости от вида приказов, вида скользящих средних, типа модели и выборки данных

attachment.php


Противотрендовые модели работали хуже, чем следующие за трендом. Тем не менее нашлись превосходные сочетания противотрендовои модели, вида скользящих средних и приказа для входа, которые работали гораздо лучше большинства других протестированных комбинаций.
Смысла добавлять в систему, основанную на пробоях (как и стоп-приказ, он представляет собой еще один элемент следования за трендом), в противотрендовой модели такой элемент может дать определенные преимущества. В системе, основанной на пробоях, лучше работает лимитный приказ, за исключением случаев, когда стоп-приказ выгоден благодаря своим характеристикам следования за трендом.
Результаты приводят к некоторым обобщениям. Иногда стоп-приказ может обеспечивать достаточную прибыль для компенсации связанной с ним завышенной стоимости транзакций. Тем не менее в большинстве случаев лимитные приказы обычно более эффективны благодаря своей способности входить в рынок по оптимальной цене. Такое обобщение может помочь трейдеру сделать выбор. Однако необходимо постоянно отслеживать потенциальные взаимодействия различных параметров в комбинациях скользящего среднего, модели и приказа, которые могут спровоцировать провал этих обобщений. Каждый параметр по-своему воздействует на эффективность торговой системы, но в сочетании с другими параметрами данное воздействие может сильно меняться с течением времени. Для достижения успеха в системной торговле трейдер должен постоянно держать руку на пульсе этих изменений.
 

Вложения

  • tab6_5.jpg
    tab6_5.jpg
    69,9 КБ · Просмотры: 34
  • tab6_6.png
    tab6_6.png
    69,2 КБ · Просмотры: 35
Последнее редактирование:

FXWizard

Гуру форума
ЧТО МЫ УЗНАЛИ?

При построении модели входа пытайтесь продуктивно комбинировать противотрендовый элемент с элементом следования за трендом. Это может быть осуществлено множеством способов, например покупкой на краткосрочном противотрендовом движении, когда развивается долгосрочный тренд; входом при пробое, когда развивается противотрендовое движение, или применением трендового фильтра в противотрендовой модели.
• Если возможно, используйте приказы, которые понижают транзакционные затраты, например лимитный приказ для входа. Однако в этом случае требуется гибкий подход. Определенные системы могут работать лучше при использовании других типов приказов: например, если требуется элемент следования за трендом, следует использовать стоп-приказ.
Будьте готовы к неожиданностям. Мы полагали, что для моделей, основанных на наклонах, адаптивное скользящее среднее, имеющее более быстрый отклик, будет обеспечивать лучшие результаты. На самом деле система с адаптивным средним оказалась одной из худших.
• Даже несмотря на то, что традиционные индикаторы, используемые стандартным образом, обычно приводят к неудаче (например, такие старые системы, как пробои волатильности), классические концепции поддержки/сопротивления могут быть весьма выгодными. Пробои уровней поддержки/сопротивления проявляют себя лучше, чем, например, пробои волатильности. Аналогично, модели скользящего среднего, использующие концепцию поддержки/сопротивления, работают лучше прочих. Реализация метода поддержки/сопротивления была рудиментарной, тем не менее в самых удачных сочетаниях она дает одни из лучших результатов. Вероятно, дальнейшая разработка данного метода сможет значительно повысить эффективность основанных на нем торговых систем. Хотя метод поддержки/сопротивления широко известен на протяжении многих лет, его дальнейшее развитие может оказаться достаточно сложным. Основной задачей здесь можно назвать поиск автоматизированного «механического» метода поиска текущих уровней поддержки/сопротивления.
 
Верх