Реалистические предположения
Пользователи торговых систем часто обнаруживают, что их действительные результаты существенно хуже, чем результаты торговли на бумаге, подразумеваемые системой. Фактически эта ситуация настолько общая, что получила собственное название: проскальзывание. Предполагая, что расхождения в результатах не вызваны ошибками в программе, проскальзывание в своей основе является следствием неспособности использовать реалистические предположения при тестировании системы. В основном существует два типа подобных ложных предположений.
1. Транзакционные затраты.Большинство трейдеров не осознают, что простая поправка на реальные комиссионные затраты при тестировании системы — это недостаточно жесткое предположение. Причина в том, что комиссионные объясняют лишь часть транзакционных затрат. Другая, менее ощутимая, но не менее реальная затрата — это разница между теоретической ценой исполнения и действительной ценой выполнения приказа. Например, если кто-то тестирует систему и предполагает совершение сделок по цене закрытия, используя среднюю точку диапазона закрытия, это может не оказаться реалистичным пред-
704 ЧАСТЬ 4. торговые системы и измерение эффективности торговли
положением. Покупки вблизи верхнего края диапазона закрытия и продажи вблизи его нижнего края оказываются значительно более распространенными ситуациями, чем противоположные им события. Есть два способа решения этой проблемы. Во-первых, можно использовать наихудшую из возможных цен исполнения приказа (например, максимум диапазона закрытия при покупке). Во-вторых, предполагать транзакционную стоимость каждой сделки намного выше, чем действительные исторические затраты на комиссионные (например, $100 за сделку). Последний из подходов предпочтительнее, поскольку он носит более обший характер. Например, каким образом кто-то сможет принять решение о выполнении внутридневного стоп-приказа по наихудшей возможной цене?
2. Остановка торгов.Компьютерная торговая система совершает сделки при получении каждого сигнала. Однако в реальном мире веши не настолько просты. Может случиться так, что исполнение не будет возможным, поскольку торги остановлены из-за максимального допустимого изменения цены. В такой ситуации, результаты, полученные на бумаге, могут значительно превосходить реальную результативность. Хотя можно представить массу иллюстраций, будет достаточно одного примера. Рис. 20.2 показывает гипотетические торговые сигналы и соответствующие им предполагаемые цены исполнения. Заметьте, что в то время как цены сигналов предполагают прибыль в 42,4 цента ($15 900 на контракт), реальная торговля приведет к убыткам в размере 16,2 цента ($6075 на контракт).
Трейдер, тестирующий потенциальные системы, может обнаружить, что кажущаяся привлекательной система разваливается, как только сделаны реалистичные предположения. Это, в частности, верно для чрезвычайно активных систем, которые создают очень высокие транзакцион-ные затраты. Однако намного лучше сделать такое открытие на стадии тестирования, чем при реальной торговле.
ОПТИМИЗАЦИЯ СИСТЕМ
Оптимизация означает процесс отыскания набора параметров, который приводит к максимальной эффективности данной системы на определенном рынке. Основное предположение оптимизации состоит в том, что набор параметров, который проявил себя наилучшим образом в прошлом, имеет большую вероятность хорошей результативности и в будущем. (Вопрос о том, является ли это предположение верным, адресован следующему разделу.)
ГЛАВА 20. тестирование и оптимизация торговых систем 705
Рисунок 20.2.
ШИРОКИЙ РАЗРЫВ МЕЖДУ ЦЕНОЙ СИГНАЛА
И РЕАЛЬНЫМ УРОВНЕМ ОТКРЫТИЯ ПОЗИЦИИ, ВЫЗВАННЫЙ
МНОГОЧИСЛЕННЫМИ ОСТАНОВКАМИ ТОРГОВ:
ДЕКАБРЬ 1994, КОФЕ
Основной вопрос, который должен рассматриваться при оптимизации, заключается в том, какие критерии следовало бы использовать при определении наилучшей результативности. Часто наилучшую результативность интерпретируют как максимальную прибыль. Однако подобное определение не полно. В идеале при сравнении результативности следовало бы рассматривать четыре фактора.
1. Прибыль, выраженная в процентах.Прибыль, измеренная по отношению к активам, необходимым при торговле с помощью системы. Важность использования процентной прибыли, а не ее абсолютного значения, разбирается в гл. 21.
706 ЧАСТЬ 4. торговые системы и измерение эффективности торговли
2. Уровень риска.Кроме процентной доходности важно исполь
зовать некоторую меру колебания активов (например, изменчи
вость уровня доходности, максимальные текущие падения сто
имости активов). Кроме очевидных психологических причин, со
стоящих в желании избегать наборов параметров и систем с
высокой волатильностью, измерение риска важно, в частности,
из-за того, что кто-то может выбрать неудачный стартовый день
для начала торговли с помощью системы. В гл. 21 обсуждают
ся некоторые способы измерения результативности, которые
включают как процентную прибыль, так и оценку риска.
3. Устойчивость к изменению параметров.Недостаточно об
наружить набор параметров, дающий хорошую результатив
ность. Кроме этого необходимо убедиться, что этот набор па
раметров не отражает случайные для системы результаты. Дру
гими словами, мы хотим определить, что сходный набор пара
метров также продемонстрирует хорошую результативность.
Целью оптимизации является поиск широких областей хорошей
результативности, а не единственный набор параметров с наи
лучшей результативностью.
Например, если при тестировании простой системы пробоя кто-то обнаружит, что набор параметров N = 7 демонстрирует наилучшее соотношение прибыли и риска, но эта результативность резко падает для наборов параметра М<5иМ>9, в то время как все наборы в диапазоне от N = 25 до N = 54 дают относительно хороший результат, то было бы намного разумнее выбрать набор параметров из последнего диапазона. Почему? Потому что исключительная результативность набора N = 7 склоняет к мысли о своеобразии исторических цен, которые вряд ли повторятся. Тот факт, что близкие наборы параметров дают слабую результативность, предполагает, что нет оснований для доверия к торговле при наборе параметров N = 7. Напротив, широкий диапазон стабильной результативности для наборов из области 25 < N < 54 предполагает, что набор, взятый из середины этого диапазона, скорее всего, приведет к успешной торговле. Определение прибыльных областей для системы с единственным параметром требует не больше труда, чем просмотр колонки цифр. В системе с двумя параметрами придется строить таблицу измерений результативности, в которой колонки соответствуют возрастающим значениям одного параметра, а строки — возрастающим значениям второго. При таком способе придется визуально отыскивать зоны прибыльности. В случае системы с тремя параметрами может использоваться та же процедура, если один из параметров предполагает лишь небольшое количество дискретных значений. Например, в случае системы пересечения
ГЛАВА 20. тестирование и оптимизация торговых систем 707
скользящих средних с временной задержкой в качестве подтверждающего правила, в которой тестируются три значения временной задержки, можно было бы построить три двухмерные таблицы результативности — по одной для каждого из значений временной задержки. Обнаружение прибыльных областей для более сложных систем, однако, потребовало бы применения компьютеризированных процедур поиска.
4. Временная стабильность.Как уже было разобрано в предыдущем разделе, важно убедиться в том, что хорошая результативность для всего периода в целом действительно представляет весь период, а не отражает несколько изолированных интервалов экстраординарной результативности.
Хотя введение различных измерений результативности в процедуру оптимизации даст более полную картину, оно при этом сильно затрудняет задачу. Скорее всего, многие трейдеры сочтут такую сложную процедуру оценки результативности непрактичной. В этом смысле трейдер может найти утешение в том факте, что наборы параметров с наибольшим доходом, как правило, также демонстрируют и наименьшее текущее падение стоимости активов (речь идет о различных наборах параметров для одной системы). Следовательно, при оптимизации единственной системы измерение соотношения прибыль/риск или даже простое измерение прибыли будут приводить к результатам, похожим на те, что возникают и при более сложной оценке результативности. Таким образом, несмотря на то, что многофакторная оценка результативности теоретически предпочтительна, она часто оказывается необязательной. Однако при сравнении наборов параметров из совершенно различных систем, точные оценки риска, устойчивости к изменению параметров и временной устойчивости оказываются чрезвычайно важными.
Сказанное выше представляет собой теоретическую дискуссию по поводу концепций и процедур оптимизации и изначально подразумевает, что оптимизация улучшает будущую результативность системы. Тем не менее, как обсуждается в следующем разделе, жизнеспособность оптимизации — это большой вопрос.
МИФ ОБ ОПТИМИЗАЦИИ
По иронии вопросы оптимизации пользуются огромным вниманием, в то время как ее исходные предпосылки редко рассматриваются. Другими словами, действительно ли наборы параметров с наилучшей результативностью в прошлом продолжают демонстрировать результативность выше средней и в будущем?
708 ЧАСТЬ 4. торговые системы и измерение эффективности торговли
В качестве эмпирического теста жизнеспособности оптимизации рассмотрим работу системы пробоя для различных наборов параметров. Система основана на следующих правилах: короткая позиция меняется на длинную, если сегодняшняя цена закрытия превышает наибольшую цену закрытия последних N дней; длинная позиция меняется на короткую, если сегодняшняя цена закрытия оказывается ниже наименьшей цены закрытия последних N дней. Для этой системы были протестированы девять значений N: 20, 30, 40, 50, 60, 70, 80, 90 и 100.
В табл. 20.1-20.10 приведены результаты тестов данной системы с различными наборами параметров. Система тестировалась на нескольких рынках; тесты проводились на трех двухлетних периодах (1989-1990; 1991-1992 и 1993-1994), а также на предшествующем каждому из этих трех периодов восьмилетнем периоде. В таблицах все ранги наборов параметров перечислены в порядке результативности на восьмилетних периодах. Таким образом, в первой строке таблиц приведены ранги наборов параметров, показавших лучшие результаты на восьмилетних периодах, а в последней — худшие.
Цифры, приведенные в других колонках таблиц, соответствуют рангам данного набора параметров на каждом из трех двухлетних периодах. Другими словами, наиболее результативному на данном периоде времени набору параметров соответствует цифра 1, второй по результативности набор параметров получает цифру 2 и т.д. Например, если верхний номер в колонке равен 6, то это означает, что набор параметров, который был лучшим на предшествующем восьмилетнем периоде, занял шестое место (из девяти) на данном двухлетнем периоде.
Чтобы помочь увидеть, есть ли какая-то преемственность между прошлой и будущей результативностью, два наиболее результативных набора параметров в каждом тестовом периоде помечены незакрашенными кругами, а два наименее результативных набора параметров — затемненными кругами. Если бы базовые предпосылки оптимизации оказались верными, т.е. если бы наиболее результативные наборы параметров прошлого показывали бы наилучшие результаты и в будущем, тогда в табл. 20.1-20.10 незакрашенные круги оказывались бы в верхних строках таблицы, а затемненные — в нижних. Очевидно, что это не так. И незатемненные, и затемненные круги иногда располагаются в верхней части таблицы, а иногда — внизу или в середине. Очевидная случайность в вертикальном размещении затемненных и незатемненных кругов в табл. 20.1-20.10 подразумевает, что корреляция между прошлой и будущей результативностью данного набора параметров очень незначительна.
Непостоянство в значениях наиболее результативных наборов параметров от периода к периоду означает, что оценка результативности системы по наилучшему из прошлых наборов параметров будет значительно преувеличивать потенциал результативности системы. Чтобы проиллюстрировать этот момент, в табл. 20.11-20.14 сравнивается
ГЛАВА 20. тестирование и оптимизация торговых систем 709
Таблица 20.1.
СИСТЕМА ПРОБОЯ (КАЗНАЧЕЙСКИЕ ОБЛИГАЦИИ):