Что такое фондовая биржа Как торговать на бирже
Binomo
Как стать успешным трейдером Стратегии биржевой торговли Лучшие дилинговые центры Forex Лучшие биржевые брокеры
Пардо Р. Разработка, тестирование, оптимизация торговых систем для биржевого трейдера

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

Какой Форекс-брокер лучше?          Альпари          Exness          Forex4you          Сделай свой выбор!

Шаг 4: Оптимизируйте торговую систему

Теперь, когда система удовлетворительно прошла первую серию тестов, пора перейти к следующему шагу: оптимизации. В «Словаре Американского Наследия» дается следующее определение: «Оптимизировать: сделать использование чего-либо наиболее эффективным». Согласно этому определению, оптимизировать торговую систему, значит сделать ее использование наиболее эффективным. Это и есть истинная цель оптимизации торговой системы. К сожалению, продолжительная история неправильного употребления этого слова привела к тому, что его стали путать термином «curve-fitting» («подстраивание под кривую»).

Термин «curve-fitting», означающий аппроксимацию, тоже часто понимается неправильно и используется некорректно, в качестве синонима термина «overfitting» («подстройка»). Подстройка происходит тогда, когда построению кривой или тестированию торговой системы на прошлых данных придается чрезмерный вес, а оценке их предсказательной ценности – недостаточный. Понятие подстройки будет подробнее раскрыто в Главе 9.


А знаете ли Вы, что: Форекс-брокеры Альпари и ForexClub присутствуют на рынке еще с конца 1990-х гг. В то же время, они одними из первых получили лицензии ЦБ РФ на осуществление деятельности форекс-дилеров.

С уважением, Админ.


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

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

Пример простой оптимизации

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

МА 1 от 1 до 10 с шагом 1, то есть,

123456789 10

МА 2 от 15 до 60 с шагом 5, то есть,

15 20 25 30 35 40 45 50 55 60

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

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

МА1 123456789 10 МА2 15 15 15 15 15 15 15 15 15 15

После того как все возможные значения Переменной 1 (от 1 до 10) будут протестированы с первым значением Переменной 2 (15), этот процесс будет повторен со вторым значением Переменной 2. Другими словами, далее значения от 1 до 10 короткой скользящей средней тестируются со значением 20 длинной скользящей средней.

МА1 123456789 10

МА2 20 20 20 20 20 20 20 20 20 20

Этот процесс повторяется до тех пор, пока все комбинации значений переменных обеих скользящих средних не будут вычислены и оценены. В данном примере существует 100 комбинаций значений переменных (10 значений Переменной 1x10 значений Переменной 2 = 100 тестов).

Оценка торговой модели происходит на основе ее тестовых результатов для каждой комбинации значений переменных. Компьютер вычисляет чистые прибыль и убыток и несколько других статистических показателей торговли для данной торговой модели с 1-дневной скользящей средней и 15-дневной скользящей средней. Эти статистики сохраняются и будут сравниваться со статистиками всех остальных комбинаций. Набор «лучших моделей» будет отобран из этих торговых статистик ста различных вариаций нашей торговой системы, использующей скользящие средние.

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

Форвардный анализ (The Walk-Forward Analysis)

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

1. Будет ли торговая модель приносить прибыль после оптимизации?

2. Каков будет уровень доходности торговой модели после оптимизации?

3. Как будут влиять на торговые результаты изменения тренда, волатильности и ликвидности?

Форвардный анализ подробно обсуждается в Главе 7, «Оптимизация торговой системы».

Первым и самым важным достоинством форвардного анализа является подтверждение способности модели приносить прибыль в будущей реальной торговле. Другими словами, будете ли вы применять данную модель после оптимизации? Будет ли она приносить прибыль в реальной торговле? Конечно, форвардный тест – это не реальный трейдинг, но это гораздо более реалистичная имитация.

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

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

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

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

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

Второе достоинство форвардного анализа – более точное и надежное измерение уровней пост-оптимизационных прибыли и риска. Это тоже объясняется более детально в Главе 7. Форвардный анализ дает статистическую картину многочисленных оптимизационных и пост-оптимизационных торговых периодов. Он обеспечивает большую статистическую валидность, чем традиционная оптимизация, потому что опирается на гораздо большую выборку данных. Форвардный анализ дает возможность точного сравнения и измерения уровней прибыли форвардного трейдинга относительно прибыли оптимизационного трейдинга.

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

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

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

Пример простого форвардного анализа

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

Кандидат на такой пример – фьючерс на S&P с 01.07.1982 по 20.01.1992. Форвардный тест будет представлять торговлю в течение пяти с половиной лет с 01.07.1986 по 20.01.1992 в рамках двенадцати 6-месячных постоптимизационных форвардных тестов. Будут сканироваться диапазоны двух переменных:

- покупка при проценте – от 0 до 750 с шагом 50; пробоя торгового диапазона

- продажа при проценте – от 0 до 750 с шагом 50. пробоя торгового диапазона

Первый шаг форвардного теста – оптимизация этих двух переменных на первом четырехлетнем окне ценовых данных: с 02/07/82 по 30/07/86. Когда этот шаг будет выполнен, результатом будет лучшая модель и ее модельные значения.

Затем эти оптимальные значения тестируются на первом 6-месячном торговом окне ценовых данных: с 01/07/86 по 31/12/86. Чтобы увидеть эффективность модели в первом форвардном тесте оцениваются и записываются чистая прибыль и убыток лучшей модели как на оптимизационных, так и на торговых окнах.

Рассмотрим пример: оптимизировать модель на первом оптимизационном окне и найти, что лучшая модель использует значение прорыва 50% и 100% и приносит чистую прибыль $36,670 за 1982 – 1986 гг. Затем эта лучшая модель тестируется на последних шести месяцах 19862ного теста. Далее процесс повторяется на следующем 48-месячном тестовом окне, с января 1983 г. по декабрь 1986 г. В свою очередь, когда найдена лучшая модель для этого окна, она снова тестируется на следующем 6-месячном тестовом окне с января 1987 по июнь 1987 г. Этот процесс повторяется до тех пор, пока не будут завершены все двенадцать оптимизационных и форвардных тестов. Последним оптимизационным окном будет интервал с января 1988 г. по декабрь 1991 г., а последним тестовым окном будет январь 1992 г.

При форвардном анализе записываются результаты этих 12 оптимизаций, показанные в Таблице 2-4, и подытоживаются результаты 12 форвардных тестов, что показано в Таблице 2-5. При этом также вычисляются и сравниваются годовые ставки доходности по результатам оптимизационных и форвардных тестов. Эта статистика показывает форвардный показатель эффективности. Как правило, форвардный показатель эффективности в 50% или больше считается одним из показателей успешного форвардного анализа. В Таблице 2-5 форвардный показатель эффективности равен 115,93%.

Считается, что торговая система прошла форвардный анализ, если она прибыльна в целом, имеет форвардный показатель эффективности 50% или более и не менее 50% ее форвардных тестов оказались прибыльными. Если ситуация такова, то статистические показатели системы необходимо тщательно проанализировать. Это детально описано в Главе 7.

Прежде всего следует рассмотреть распределение прибылей, убытков и сделок. Чем равномернее распределение этих элементов по всему периоду форвардного анализа, тем лучше. Валидность форвардного анализа может быть нарушена любым необычно крупным выигрышем, выигрышной серией или большим периодом времени в выигрышной позиции, если вклад каждого из которых в чистую прибыль превышает 50%. Если торговая система удовлетворяет этим необходимым критериям, то настало время начинать трейдинг.
Содержание Далее

Что такое фондовая биржа
Яндекс.Метрика