<< Пред. стр.

стр. 9
(общее количество: 46)

ОГЛАВЛЕНИЕ

След. стр. >>

будет работать не хуже, чем на использованном при разработке образце.
Чтобы подтвердить или опровергнуть результаты оптимизации, разработ-
чики системы проводят тестирование на одном или нескольких периодах
вне выборки, т.е. на образцах данных, не использовавшихся для разработ-
ки или оптимизации системы. Например, в нашем случае разработчик
использует данные с 1991 г. по 1995 г. для разработки и настройки систе-
мы и резервирует данные за 1996 г. для тестирования вне пределов вы-
борки. Очень рекомендуется заранее зарезервировать один или несколь-
ко периодов для подобного исследования.
РАБОЧИЕ ИНСТРУМЕНТЫ
72 ЧАСТЬ I




Одна из проблем с выборкой образцов из популяций финансовых дан-
ных заключается в сложной и переменчивой природе объекта: завтраш-
ний рынок может быть не похож на сегодняшний. Иногда эти изменения
заметны, и их причины могут быть легко определены. Например, поведе-
ние индекса S&P резко изменилось в 1983 г. в результате введения фью-
черсов и опционов на этот индекс. В таких случаях можно расценить изме-
нение, как событие, создавшее две отдельные популяции: S&P до и после
1983 г. Выборка, взятая из более раннего периода, не будет репрезентатив-
на для более позднего, поскольку она взята из другой популяции! Конечно,
это экстремальный случай. Гораздо чаще структурные изменения рынка
возникают ввиду слабых влияний, которые порой невозможно определить,
особенно заранее. В некоторых случаях рынок может остаться принципи-
ально тем же, но фазы процессов, которые на нем проходят, могут быть
различными; неосмотрительно взятая выборка может принадлежать к дру-
гой фазе и быть репрезентативна только для нее, но не для рынка в целом.
Как же можно определить, действительно ли выборка, использованная для
тестирования, относится к тому же периоду, что и данные, на которых бу-
дет идти торговля? Если не прыгать в машину времени и не тестировать
будущее, то не существует достоверного способа определить, не случится
ли завтра на рынке ломающая системы метаморфоза. Множественные тес-
ты вне пределов выборки могут дать некоторую гарантию устойчивости
системы, поскольку они подтвердят, что система, по крайней мере в не-
скольких периодах, работала более или менее стабильно. При наличии ре-
презентативной выборки можно сделать статистически достоверные вы-
воды о той популяции, из которой выбраны образцы данных. Статистика
не может определить будущие фундаментальные изменения рынка.


ОПТИМИЗАЦИЯ И ПОДГОНКА ПОД ИСТОРИЧЕСКИЕ ДАННЫЕ
Еще один аспект разработки торговых систем состоит в оптимизации, т.е.
улучшении эффективности систем при помощи подбора таких значений
параметров, при которых система дает наилучший результат на выборке
данных. Если система не работает при тестировании на данных вне пре-
делов выборки или на реальном рынке, говорят, что при оптимизации
имела место подгонка под исторические данные. Впрочем, подгонка бы-
вает полезной и вредной. Полезная подгонка — это случай, когда модель
подогнана под всю популяцию (т.е. под достаточно большую и представи-
тельную) и при этом отражает все достоверные характеристики реаль-
ной популяции в системе. Подгонка вредна, если система соответствует
только некоторым случайным характеристикам, не обязательно отража-
ющим свойства всей популяции.
Разработчики недаром боятся вредной подгонки, т.е. ситуации, когда
параметры, оптимизированные на данной выборке, не работают на попу-
СТАТИСТИКА 73
ГЛАВА 4



ляции в целом. Если выборка была небольшой или не представительной,
вероятнее всего, система будет работать хорошо на данной выборке и из
рук вон плохо на другой или, что еще опаснее, приведет к потере денег в
реальной торговле. Чем больше выборка данных, тем меньше эта опас-
ность: вероятность вредной подгонки снижается, а полезной — возраста-
ет. Все рассматриваемые методы статистики отражают это явление, даже
специально предназначенные для оптимизации. Достоверно известно, что
чем больше параметров подвергается оптимизации, тем больше вероят-
ность того, что высокие результаты системы будут достигнуты чисто слу-
чайным сочетанием. Если же результаты статистического анализа удов-
летворительны, и тест основывался на достаточно большой выборке дан-
ных, то вероятность случайного результата снижается, и даже получен-
ный при оптимизации множества параметров результат вполне может
быть реальным и значимым.
Некоторые возражают, что размер не имеет значения, т.е. размер вы-
борки и количество проведенных сделок не имеют ничего общего с рис-
ком избыточной оптимизации, и что большая выборка не снимает угрозы
вредной подгонки под исторические данные. Это неверно и математичес-
ки, и интуитивно. Никто не стал бы больше доверять системе, которая
провела 3 — 4 сделки за десятилетний период, чем системе, которая про-
вела более тысячи достаточно прибыльных сделок. Представьте себе мо-
дель линейной регрессии, в которой прямую линию подгоняют к ряду то-
чек. Если точек всего две, то вне зависимости от их положения линию все-
гда можно «подогнать» идеально. Если точек три, то дело усложняется.
Если же точек действительно много, то проблема становится еще слож-
нее, если только расположение точек не содержит некоего реального ли-
нейного распределения.
Пример с линейной регрессией показывает, что вредная подгонка за-
трудняется с ростом объема данных. Сравните две торговые системы: одна
провела 2 сделки с прибылью $100 в каждой и стандартным отклонением
$100; другая — 1000 сделок с такими же средним и стандартным отклоне-
ниями. При статистической оценке система, проведшая 1000 сделок, бу-
дет гораздо «статистически значимее», чем система, проведшая 2 сделки.
В моделях множественной линейной регрессии при увеличении ко-
личества параметров регрессии (бета-весов) по отношению к размеру
выборки увеличивается степень вредной подгонки и уменьшается досто-
верность результатов модели. Другими словами, чем выше степень под-
гонки под исторические данные, тем сложнее добиться статистической
значимости. Исключением является случай, когда повышение результа-
тивности модели, вызванное подгонкой, компенсирует потерю значимо-
сти при добавлении параметров. Оценка степени ожидаемого снижения
корреляции при использовании данных вне выборки может производить-
ся напрямую, исходя из объема данных и количества параметров: корре-
ляция снижается с увеличением числа параметров и увеличивается с рос-
РАБОЧИЕ ИНСТРУМЕНТЫ
74 ЧАСТЬ I



том объема данных. В общем, существуют достоверные математические
доказательства того, что вероятность вредной подгонки повышается, если
количество оптимизируемых параметров велико по отношению к объему
используемой выборки данных. Фактически, когда n (размер выборки)
стремится к бесконечности, вероятность того, что подгонка параметров
будет непредставительной для данной популяции, стремится к нулю. Чем
больше параметров оптимизируется, тем большая требуется выборка дан-
ных. На языке статистики это звучит так: оптимизируемые параметры
используют доступные степени свободы.
Все это ведет к заключению, что чем больше выборка, тем более веро-
ятность того, что найденные параметры системы будут представительным
отражением характеристик рынка в целом. Маленькая выборка, скорее
всего, будет непредставительной: ее кривые вряд ли будут соответство-
вать долговременным, устойчивым характеристикам рынка. Любая мо-
дель, построенная с использованием маленькой выборки, может быть эф-
фективной только по чистой случайности. Будет ли подгонка «полезной»
или «вредной», во многом зависит от отражения в ней случайных цено-
вых движений или реальных рыночных процессов, что, в свою очередь,
зависит от представительности выборки. Статистика полезна, поскольку
позволяет принять в расчет при оценке системы степень подгонки.
При работе с нейронными сетями опасения относительно излишнего
обучения, или генерализации, соответствуют опасениям относительно
излишней подгонки под исторические данные. Если выборка достаточно
объемиста и представительна, повышается вероятность отражения в най-
денных оптимальных параметрах реальных характеристик рынка, что
полезно для реальной работы системы. Если же выборка мала, модель
практически гарантированно будет настроена на особенности выборки,
но никак не на особенности рынка в целом. Для нейронных сетей успех
генерализации означает то же, что для других систем, — устойчивость в
будущем и так же сильно зависит от размеров выборки, использованной
для обучения сети. Чем больше выборка или чем меньше количество ве-
сов связей (т.е. параметров), тем выше вероятность удачной генерализа-
ции. Это также можно доказать математически путем разбора неслож-
ных примеров.
Как и в случае с регрессией, при разработке нейронной сети можно
произвести оценку коррекции коэффициента корреляции (т.е. показате-
ля, обратного генерализации). Фактически, нейронная сеть представляет
собой систему уравнений множественной регрессии, хотя и нелинейных,
и корреляция выходных значений сети может рассматриваться как мно-
жественный коэффициент корреляции. Множественная корреляция меж-
ду выходными и целевыми значениями может быть скорректирована для
прогнозирования поведения системы на данных вне выборки. Такая скор-
ректированная множественная корреляция должна постоянно использо-
ваться для определения того, является ли эффективность нейронной сети
СТАТИСТИКА 75
ГЛАВА 4



случайной или она вызвана обнаружением реальной закономерности в
ценовом поведении рынка. Формула коррекции коэффициента множе-
ственной корреляции приведена ниже:

RC = SQRT (1.0 - ( (N - 1 . 0 ) / (N - Р) ) * (1.0 - R*R) )


Формула приведена в стиле языка FORTRAN. Здесь SORT означает
квадратный корень; N — количество точек данных или фактов в случае
нейронной сети; Р— количество коэффициентов регрессии или (в слу-
чае нейронной сети) весов связей; R — некорректированную множествен-
ную корреляцию; RC — скорректированную корреляцию. Хотя эта фор-
мула строго приложима только к линейной множественной регрессии (для
которой, собственно, и разрабатывалась), она неплохо работает с нейрон-
ными сетями и может быть использована для того, чтобы оценить, какая
часть эффективности системы обусловлена «вредной» подгонкой на дан-
ном образце. Эта формула описывает связь между размером выборки,
количеством параметров и снижением эффективности результатов. Ста-
тистическая коррекция, рассчитываемая по данной формуле, будет ис-
пользована в главе о входах систем на нейронных сетях.


РАЗМЕР ВЫБОРКИ И РЕПРЕЗЕНТАТИВНОСТЬ
Хотя из статистических соображений разработчику следует искать самые
большие из возможных выборки данных, при работе с финансовыми рын-
ками между размером и представительностью образца существуют не-
однозначные связи. Большие выборки означают, что данные уходят на-
зад, в такие периоды времени, когда рынок был фундаментально иным —
вспомните S&P 500 в 1983 г.! Это означает, что в некоторых случаях боль-
ший образец данных может быть менее представительным или включать
смесь из нескольких различных популяций данных! Следовательно, нельзя
забывать, что хотя цель — максимальный размер выборки, столь же важ-
но, чтобы данные отображали тот рынок, который система должна про-
гнозировать.


СТАТИСТИЧЕСКАЯ ОЦЕНКА СИСТЕМЫ
Разобравшись с некоторыми основными положениями, рассмотрим при-
менение статистики при разработке и оценке торговых систем. Приме-
ры, приведенные ниже, основаны на системе, которая была оптимизи-
рована на некоторой выборке данных и затем тестировалась вне преде-
лов выборки. Оценка на данных вне пределов выборки будет рассмот-
рена перед оценкой на основе выборки, поскольку ее статистический
анализ проще (и аналогичен анализу неоптимизированной системы), в
РАБОЧИЕ ИНСТРУМЕНТЫ
76 ЧАСТЬ I



нем не требуются поправки на оптимизацию или множественные тес-
ты. Система представляет собой модель торговли индексом S&P 500, ос-
нованную на лунном цикле, и была опубликована нами ранее (Katz,
McCormick, июнь 1997). Код для системы в формате TradeStation приве-
ден ниже:

DefineDLLFunc:"SCSIWA.DLL",LONG,"SA_MoonPhaseDate",LONG,LONG;
Inputs: Ll(0);
Vars: FullMoonDate(O) , NewMoonDate(0) , Trend(O);

{ Функция возвращает дату следующей полной или новой луны )
FullMoonDate = SA_MoonPhaseDate (Date[5], 2);
NewMoonDate = SA_MoonPhaseDate (Date[5], 0) ;

Value1 = 0;
If (Date < FullMoonDate) And (Date Tomorrow >= FullMoonDate)
Then Valuel = 1; (Полная луна сегодня вечером или завтра)
Value2 = 0;
If (Date < NewMoonDate) And (Date Tomorrow >= NewMoonDate)
Then Value2 = 1; {Новая луна сегодня вечером или завтра]

If Valuel[L1] > 0 Then Buy At Market;
If Value2[L1] > 0 Then Sell At Market;




Пример 1: Оценка теста вне пределов выборки
Оценка оптимизированной системы на данных, взятых вне пределов вы-
борки и ни разу не использованных при оптимизации, аналогична оцен-
ке неоптимизированной системы. В обоих случаях проводится один тест
без подстройки параметров. В табл. 4-1 показано применение статистики
для оценки неоптимизированной системы. Там приведены результаты
проверки на данных вне пределов выборки совместно с рядом статисти-
ческих показателей. Помните, что в этом тесте использованы «свежие
данные», которые не применялись как основа для настройки параметров
системы.
Параметры торговой модели уже были определены. Образец данных
для оценки вне пределов выборки охватывает период с 1.01.1995 г. по
1.01.1997 г.; модель тестировалась на этих данных и совершала смодели-
рованные сделки. Было проведено 47 сделок. Этот набор сделок можно
считать выборкой сделок, т.е. частью популяции смоделированных сде-
лок, которые система совершила бы по данным правилам в прошлом или
будущем. Здесь возникает вопрос по поводу оценки показателя средней
прибыли в сделке — могло ли данное значение быть достигнуто за счет
чистой случайности? Чтобы найти ответ, потребуется статистическая
оценка системы.
Чтобы начать оценку системы, для начала нужно рассчитать среднее
в выборке для n сделок. Среднее здесь будет просто суммой прибылей/
убытков, поделенной на n (в данном случае 47). Среднее составило $974,47
СТАТИСТИКА
ГЛАВА 4 77



Таблица 4—1. Сделки вне выборки данных S&P 500, использованные для
тестирования модели на лунном цикле

Дата Дата Прибыль/ Капитал Статистический анализ средней прибыли/убытка
входа выхода убыток
950207 950221 650 88825
950221 950223 -2500 86325 Размер выборки 47.0000
950309 950323 6025 92350 Среднее значение выборки 974.4681
950323 950324 -2500 89850 Стандартное отклонение выборки 6091.1029
950407 950419 -2500 87350 Ожидаемое СО среднего 888.4787
950421 950424 -2500 84850
950509 950518 -2500 82350 Т-критерий (P/L>0) 1.0968
950523 950524 -2500 79850 Вероятность (значимость) 0.1392
950606 950609 -2500 77350
950620 950622 -2500 74850 Автокорреляция, сдвиг=1 0.2120
950704 950719 4400 79250 Т-критерий 1.4391
950719 950725 -2500 76750 Вероятность (значимость) 0.1572
950803 950818 2575 79325
950818 950901 25 79350 Прибыльных сделок 16.0000
950901 950918 10475 89825 Процент прибыльных сделок 0.3404
950918 950929 -2500 87325 Верхняя 99%-ная граница 0.5319
951002 951003 -2500 84825 Нижняя 99%-ная граница 0.1702
951017 951018 -2550 82275
951031 951114 3150 85425
951114 951116 -2500 82925
951129 951214 6750 89675
951214 951228 5250 94925
951228 960109 -2500 92425
960112 960117 -2500 89925
960129 960213 18700 108625
960213 960213 -2500 106125
960227 960227 -2500 103625




за сделку. Стандартное отклонение (изменчивость показателей прибылей/
убытков) рассчитывается после этого вычитанием среднего из каждого
результата, что дает 47 (n) отклонений. Каждое из значений отклонения
возводится в квадрат, все квадраты складываются, сумма квадратов де-
лится на n — 1 (в данном случае 46), квадратный корень от результата и
будет стандартным отклонением выборки. На основе стандартного от-
клонения выборки вычисляется ожидаемое стандартное отклонение при-
были в сделке: стандартное отклонение (в данном случае $6091,10) делит-
ся на квадратный корень из n. В нашем случае ожидаемое стандартное
отклонение составляет $888,48.
Чтобы определить вероятность случайного происхождения наблюда-
емой прибыли, проводится простая проверка по критерию Стьюдента.
Поскольку прибыльность выборки сравнивается с нулевой прибыльнос-
тью, из среднего, вычисленного выше, вычитается ноль, и результат де-
лится на стандартное отклонение выборки для получения значения кри-
терия t , в данном случае— 1,0968. В конце концов оценивается вероят-
ность получения столь большого t по чистой случайности. Для этого рас-
РАБОЧИЕ ИНСТРУМЕНТЫ
ЧАСТЬ I
78




Рисунок 4-1. функция и плотность распределения вероятностей для сделок в пределах
выборки.




считывается функция распределения t для данных показателей с количе-
ством степеней свободы, равным n— 1 (или 46).
Программа работы с таблицами Microsoft Excel имеет функцию вы-
числения вероятностей на основе t-распределения. В сборнике «Numerical
Recipes in С» приведены неполные бета-функции, при помощи которых
очень легко рассчитывать вероятности, основанные на различных крите-
риях распределения, включая критерий Стьюдента. Функция распреде-
ления Стьюдента дает показатели вероятности случайного происхожде-
ния результатов системы. Поскольку в данном случае этот показатель был
мал, вряд ли причиной эффективности системы была подгонка под слу-
чайные характеристики выборки. Чем меньше этот показатель, тем мень-
ше вероятность того, что эффективность системы обусловлена случаем.
В данном случае показатель был равен 0,1392, т.е. при испытании на неза-
висимых данных неэффективная система показала бы столь же высокую,
как и в тесте, прибыль только в 14% случаев.
Хотя проверка по критерию Стьюдента в этом случае рассчитывалась
для прибылей/убытков, она могла быть с равным успехом применена, на-
пример, к выборке дневных прибылей. Дневные прибыли именно так ис-
СТАТИСТИКА 79
ГЛАВА 4



пользовались в тестах, описанных в последующих главах. Фактически, со-
отношение риска/прибыли, выраженное в процентах годовых, упомина-
емое во многих таблицах и примерах представляет собой t-статистику
дневных прибылей.
Кроме того, оценивался доверительный интервал вероятности выиг-
рышной сделки. К примеру, из 47 сделок было 16 выигрышей, т.е. про-
цент прибыльных сделок был равен 0,3404. При помощи особой обратной
функции биноминального распределения мы рассчитали верхний и ниж-
ний 99%-ные пределы. Вероятность того, что процент прибыльных сделок
системы в целом составит от 0,1702 до 0,5319 составляет 99%. В Excel для
вычисления доверительных интервалов можно использовать функцию
CRITBINOM.
Различные статистические показатели и вероятности, описанные
выше, должны предоставить разработчику системы важную информацию
о поведении торговой модели в случае, если соответствуют реальности
предположения о нормальном распределении и независимости данных в
выборке. Впрочем, чаще всего заключения, основанные на проверке по
критерию Стьюдента и других статистических показателях, нарушают-
ся; рыночные данные заметно отклоняются от нормального распределе-
ния, и сделки оказываются зависимыми друг от друга. Кроме того, выбор-
ка данных может быть непредставительной. Означает ли это, что все вы-
шеописанное не имеет смысла? Рассмотрим примеры.

Что, если распределение не соответствует нормальному? При про-
ведении проверки по критерию Стьюдента исходят из предположения,
что данные соответствуют нормальному распределению. В реальности
распределение показателей прибылей и убытков торговой системы таким
не бывает, особенно при наличии защитных остановок и целевых прибы-
лей, как показано на рис. 4-1. Дело в том, что прибыль выше, чем целевая,
возникает редко. Фактически большинство прибыльных сделок будут
иметь прибыль, близкую к целевой. С другой стороны, кое-какие сделки
закроются с убытком, соответствующим уровню защитной остановки, а
между ними будут разбросаны другие сделки, с прибылью, зависящей от
методики выхода. Следовательно, это будет совсем непохоже на колоко-
лообразную кривую, которая описывает нормальное распределение. Это
составляет нарушение правил, лежащих в основе проверки по критерию
Стьюдента. Впрочем, в данном случае спасает так называемая централь-
ная предельная теорема: с ростом числа точек данных в выборке распре-
деление стремится к нормальному. Если размер выборки составит 10, то
ошибки будут небольшими; если же их будет 20 — 30, ошибки будут иметь
исчезающе малое значение для статистических заключений. Следователь-
но, многие виды статистического анализа можно с уверенностью приме-
нять при адекватном размере выборки, например при n = 47 и выше, не
опасаясь за достоверность заключений.
РАБОЧИЕ ИНСТРУМЕНТЫ
80 ЧАСТЬ I



Что, если существует серийная зависимость? Более серьезным на-
рушением, способным сделать неправомочным вышеописанное приме-
нение проверки по критерию Стьюдента, является серийная зависи-
мость — случай, когда данные в выборке не являются независимыми друг
от друга. Сделки совершаются в виде временного ряда. Последователь-
ность сделок, совершенных в течение некоторого периода времени, нельзя
назвать случайной выборкой — подлинно случайная выборка состояла бы,

<< Пред. стр.

стр. 9
(общее количество: 46)

ОГЛАВЛЕНИЕ

След. стр. >>