Оптимизация торговых систем (много букв). Оптимизация торговли
Лучше меньше, да лучше – правильная оптимизация торговой системы
Сколько бы ни существовало теорий рыночного движения цены, будь то теория волн Элиота или управляемого хаоса Вильямса, нет ни одного участка графика, которому бы соответствовал какой-то другой участок. Они могут быть похожими, но точно копировать друг друга – нет. Различные валютные пары, сессии и время суток, волатильность, экономическая ситуация в стране-держателе валюты и многое другое – такое количество влияющих на движение факторов могут создать миллионы комбинаций, которые будут оказывать существенное влияние на движение инструмента.
Да, существует некоторый период памяти рынка, когда рынок реагирует на определенные ситуации, такие, как, например, значимые ценовые уровни. Но эта память не вечна, и рынок в каждую минуту всегда другой, не похожий на предыдущие периоды. Именно поэтому стратегия, приносящая хороший доход, вдруг перестает работать и приносит трейдеру одни убытки.
Еще серьезнее проблемы возникают с торговыми роботами – если трейдер контролировал его работу не систематически. Все эти ситуации говорят об одном – торговую стратегию пришло время оптимизировать под изменившиеся условия рынка. Кстати, к условиям рынка можно отнести и самого трейдера, вернее его стиль торговли, определяемый знаниями, психологической устойчивостью, агрессивностью. Под эти факторы стратегию, так же необходимо оптимизировать.
Для правильной оптимизации, в первую очередь, необходимо определить основные цели: торговый инструмент, размер прибыли, риск. Стратегия должна быть эффективной, прибыльной и стабильной на протяжении максимально возможного времени. Для этого она должна иметь понятные настройки, быть доступной для периодических корректировок. Конкретным поводом для оптимизации стратегии может стать снижение ее стабильности или планируемой прибыли, увеличение просадки или серии убыточных сделок, снижение средней доходности сделок.
Описываемый в статье подход к оптимизации будет основан на консервативности стратегии, ставящей своей целью сохранение депозита с получением умеренного уровня прибыли. Оптимизацию необходимо начинать с поиска ответов на вопросы:
- требуемый период исторических данных для эффективной оптимизации;
- количество оптимизируемых параметров для достижения цели оптимизации;
- есть ли необходимость отдельной оптимизации по видам сделок – длинным и коротким, алгоритму входа в сделку и выхода из нее;
- необходим ли учет проскальзывания, комиссий и в каком объеме;
- степень реальности торговых издержек;
- способ учета кредитного плеча;
- способ построения линии эквити и ее зависимость от лота.
Начальная оптимизация
Целью оптимизации должны стать максимальный размер чистой прибыли и показателя профит-фактора при минимальном показателе просадки. Особое внимание необходимо уделить количеству сделок при тестировании, так как оптимизация под максимальную прибыль может вызвать общую неустойчивость торговой системы, которую можно выявить только при большом количестве тестовых сделок.
Поэтому их должно быть не менее 200-250, а матожидание – не меньнее 10-12. Ориентирование на профит-фактор, который должен быть не менее 2,5-3 – наиболее оптимальный вариант оптимизации. При таком подходе все остальные параметры стратегии приобретают так же оптимальные значения, и торговая система приобретает достаточную надежность.
На начальном этапе оптимизации следует так же внимательно отслеживать значения параметра максимальной просадки.
Для качественной оптимизации необходимо подвергнуть подстройке используемые индикаторы или добавить новые, оптимизировать установку уровней Take Profit и Stop Loss, использование Trailing Stop. Оптимальные параметры подбираются отдельно и последовательно, чтобы результаты изменения параметров не накладывались друг на друга. Отбор необходимых настроек производится путем сравнения результатов серий тестирования на истории.
Линия эквити
Очень важным показателем является форма линии эквити, по которой можно оценить как результаты тестирования, так и эффективность алгоритма самой стратегии. Тестирование следует проводить минимальным лотом без использования манименеджмента. Такие опции дадут реальную форму кривой эквити.
Геометрически идеальная форма кривой должна приближаться к прямой линии. Конечно, на практике такое невозможно, но если добиться отсутствия в составе кривой глубоких пиков и просадок, такая торговая система будет устойчива в различных рыночных ситуациях. Таким образом, лучшая форма кривой – это мелкий зубчик, характеризующий стабильность всей торговой системы.
Ситуации с отсутствием прибыли или, вообще, просадкой в течение длительного промежутка времени, например 2-3 месяцев говорит о полной неработоспособности системы, так как реальные условия для торговой системы всегда жестче и реальные показатели – ниже.
Стабильная система должна показывать и стабильные результаты – горизонтальные участки эквити должны быть короткими, а просадки быстро восстанавливаться. При этом прибыль должна со значительным запасом перекрывать подобные участки убыточной работы. Графически это должно выглядеть так, что каждый последующий максимум выше предыдущего.
Для тестирования выбирается период в 5-6 последних лет за исключением последнего года, на котором проводится заключительная оптимизация и проверка методом «слепого тестирования». Тестирование на последнем годе, как на периоде, наиболее соответствующем реальным рыночным условиям должно показать и реальную эффективность оптимизации системы.
Это будет явно просматриваться по кривой эквити. Если она продолжит свое направление движения или уйдет выше, оптимизацию можно считать успешной, если опустится вниз – оптимизация результатов не дала.
При значительной нелинейности линии эквити необходимо вернуться к начальному этапу тестирования для внесения корректировок в настройки системы и вновь провести ее тестирование.
Эффективная устойчивость системы
При оценке эффективной устойчивости системы необходимо помнить, что результаты тестирования отличаются от результатов реальной торговли не менее чем на 30-40%. Оценка этого параметра производится исходя из значений процента прибыльных сделок (PercentWinners) и отношение средней прибыли к среднему убытку (Ratio of AverageWin to AverageLoss). Конкретное значение эффективной устойчивости можно определить по справочной таблице:
Эффективную устойчивость на реальном рынке можно получить, переместившись по строке и столбцу на одно значение в более низкую область. Реальная устойчивость торговой системы должна быть не менее 15%.
Окончательная оптимизация
Положительные результаты тестирования на периоде последнего года, если они не ухудшили общие показатели более чем на 15-20%, влекут за собой продолжение оптимизации и тестирования уже на демо-счете. После получения устойчивых результатов можно перейти на тестирование системы на реальном счете минимальным лотом, а после успешной торговли в течение месяца – полным лотом.
Для получения хороших результатов необходимо как можно больше разнообразить рыночные условия – расширять перечень торговых инструментов, таймфреймов и других условий. Тестирование следует проводить именно на той торговой платформе, на которой система будет использоваться в реальных условиях. И самым главным условием оптимизации является корректировка системы под свои личностные и трейдерские качества.
Итоги
Очевидная польза этой статьи заключается в том, что избежать необходимости оптимизации торговой системы не сможет ни один трейдер. Ведь это касается не только автоматических торговых систем. Даже небольшие правила, которые трейдер вырабатывает для своей методики торговли, как раз и являются его первоначальной торговой системой, которую необходимо постоянно совершенствовать и оптимизировать.
И подход к этому процессу должен быть серьезным и широким. Чем больше факторов будет использовано при оптимизации, тем гибче будет система, тем лучше она будет приспособлена под постоянно меняющиеся рыночные условия/
Рекомендуемые брокеры для торговли:
- Просмотров: 3531
- 05.02.2017 в 10:18
- Автор: Admin
tempofox.com
Оптимизация торговых систем
После того, как трейдер более-менее определился со своей торговой системой, ее обязательно следует подвергнуть как минимум оценке, и если в этом будет необходимость - оптимизации. Зачем это вообще нужно? Оптимизация торговой системы является очень важным составляющим фактором в работе трейдера, т.к. недостаточно просто придумать торговую систему и сразу начинать торговать на реальном счете, систему обязательно необходимо также протестировать, оценить результаты тестов и если они будут неудовлетворительными - произвести необходимую оптимизацию торговой системы.
Что такое оптимизация торговой системы?
Оптимизация торговой системы не предусматривает каких-либо строгих правил при ее проведении. Оптимизация ТС - это подбор различных параметров индикаторов или фильтров, которые в конечном итоге должны улучшить результативность торговой стратегии. Как правило оптимизация торговой системы проводится после того, как трейдер произвел тестирование и оценку своей системы. Чтоб было понятно, оценка системы подразумевает под собой определение эффективности системы, и выражается такими критериями: - длительность периода для тестирования, а также количество сделок; - чистая прибыль системы; - прибыльность торговой системы; - максимальная просадка депозита за тестируемый период в %; Важно понимать также тот факт, что сама торговая система может требовать оптимизации не только тогда, когда имеет недостаточные результаты оценки, но и когда тогда когда меняются рыночные условия во время торгов. Т.е. попросту когда рынок меняется, свою торговую систему нужно “подкручивать”, чтоб и дальше прибыльно торговать. Основные этапы оптимизации торговой системы
На мой взгляд оптимизация торговой системы состоит из нижеперечисленных этапов: Этап №1. Данный этап связан с корректировкой сигналов, которые предусматривают открытие позиций. В случае, если трейдер в своей торговле использует различные индикаторы, то полезным для него будет подборка оптимальных параметров для них, которые безусловно лежат в основе его торговой системы. Также полезным может оказаться добавление дополнительных индикаторов или полная их замена более эффективными. В случае если в торговой системе индикаторы не используются, то можно рассмотреть какие-нибудь фильтры для входа в позицию, если они будут полезны. Этап №2. Здесь можно произвести некоторые изменения в уровнях фиксации прибыли и убытков. Например, система совершает прибыльных сделок больше, чем убыточных, но в ходе оценки тестирования выяснилось, что средняя прибыльная сделка меньше средней убыточной. Поэтому логично предположить, что необходимо поэтому откорректировать соотношение прибыли к убытку в большую сторону, и снова протестировать систему, чтоб понять правильно мы поступили или нет. Или же можно подумать над перенесением позиции в безубыток используя при этом трейлинг-стоп, или, возможно, стоит делить позицию, т.е. для одной части оставлять первоначальный ордер для фиксации прибыли, а для вторую позицию уже тралить. Вобщем все зависит от самой стратегии и предпочтений трейдера. Этап №3. Это проведение повторного тестирования уже оптимизированной торговой системы с необходимыми новыми параметрами и повторная оценка результатов. В результате оптимизации торговой системы в идеале желательно добиться того, чтобы чистая прибыль и профит-фактор были максимальными, а просадка нашего депозита – минимальной. Подводя итоги важно сказать, что обязательно следует знать и помнить о том, что торговая система должна обладать определённым запасом прочности для каждого параметра, т.к. результаты тестирования на демо в любом случае будут лучше, чем результаты реальных торгов. Это связано с тем, что система строится на базе исторических данных, и проверяется так же на них, а в условиях реальных торгов рыночные условия постоянно меняются.Оптимизация торговой системы. Полезные рекомендации
Лучшие брокеры РФ и мира
Здравствуйте, дорогие гости блога womanforex.ru, сегодня мы рассмотрим такой важный вопрос, как оптимизация торговой системы. Как только спекулянт выберет подходящую для себя методику открытия ордеров и научится ее грамотно применять, ему необходимо потратить определенное количество времени и сил для проведения оценки используемой стратегии. В процессе выполнения оценки применяемой торговой методики вам необходимо решить, требует ли она оптимизации или нет.Оптимизация торговой системы. Особенности
Важно сразу упомянуть тот факт, что в настоящее время не существует каких-либо четких правил, которые необходимо строго соблюдать.
Оптимизация торговой системы является специализированным процессом, который предполагает выявление подходящих настроек для применяемых инструментов. Целью вносимых в настройки применяемых инструментов изменений является улучшение общей результативности применяемой методики создания позиций.
В большинстве случаев первая оптимизация торговой системы осуществляется спекулянтом после проведения ее тестирования на демо-счете. На корректность результатов, которые были получены в результате тестирования выбранной стратегии, оказывает влияние огромное количество факторов, среди которых:
- Продолжительность периода тестирования.
- Число ордеров, которые были открыты и т.д.
Для оценки результатов проведенного тестирования спекулянты в первую очередь обращают внимание на такие параметры, как размер чистой прибыли и объем максимальной просадки по отношению к применяемому депозиту.
Следует четко осознавать тот факт, что оптимизация торговой системы осуществляется не только по результатам ее тестирования на демо-счете. Довольно часто оптимизация применяемой методики открытия ордеров осуществляется из-за изменившихся рыночных условий. Практика свидетельствует о том, что изменившиеся рыночные условия могут снижать доходность применяемой торговой методики, а в некоторых случаях делать ее убыточной. Своевременная оптимизация торговой системы дает возможность оперативно решить эту проблему.Порядок оптимизации торговой стратегии
Процесс оптимизации торговой системы состоит из целого ряда последовательных этапов, которые заслуживают более подробного рассмотрения.
На первом этапе оптимизации выполняется корректировка сигналов, которые вы применяете для открытия ордеров. Если для создания прибыльных ордеров вы ориентируетесь на сигналы инструментов для анализа рыночной ситуации, вам необходимо попробовать изменить их настройки таким образом, чтобы увеличить точность получаемых сигналов. Также можно попробовать добавить дополнительные индикаторы или заменить используемые ранее. Если ваша торговая система не предполагает применение каких-либо индикаторов для оценки ситуации на рынке, то вам необходимо задуматься о добавлении в собственную стратегию фильтров для отсеивания ошибочных сигналов.
На втором этапе происходит оптимизация методов фиксации убытков и дохода. Допустим число открываемых по вашей стратегии успешных ордеров больше количества убыточных, но при этом доход от удачной сделки меньше убытков от неудачной, то вам требуется корректировка правил закрытия ордеров. Вам необходимо пересмотреть применяемые правила таким образом, чтобы размер потенциальной прибыли существенно превышал объем потенциальных убытков.
После внесения изменений вам необходимо протестировать применяемую торговую методику. Еще одним эффективным вариантом увеличения объема потенциального дохода является применение трейлинг-стоп. Выбор подходящих вариантов фиксации доходов и убытков напрямую зависит от особенностей применяемой вами методики создания позиций, а также от личных предпочтений спекулянта.Третий этап оптимизации торговой системы предполагает проведение полного тестирования после внесения изменений на первых двух этапах. Если по результатам проведенного тестирования результативность вашей методики создания позиций ухудшилась или не изменилась, вам необходимо начать процесс оптимизации заново.
Заключение
Основной задачей оптимизации торговой системы является увеличение размера чистой прибыли. Кроме того, в результате внесения изменений в применяемую методику открытия ордеров вы должны добиться максимального сокращения размера просадки по отношению к применяемому депозиту.
Важно отметить тот факт, что результативность любой методики открытия ордеров на демо-счете обычно выше, чем при торговле на реальном счете. Эту особенность необходимо обязательно учитывать при выборе подходящей торговой системы. Таким образом, если выбранная вами стратегия во время тестирования на демо-счете показала довольно средние результаты, то ее необходимо обязательно оптимизировать. Это связано с тем, что довольно часто методики открытия ордеров, которые во время тестирования на демо-счете показывали средние результаты, во время торговли на реальные деньги практически не приносят дохода, а в некоторых случаях и вовсе оказываются убыточными.Оптимизация торговой системы позволит вам не только улучшить результативность применяемой методики открытия ордеров, но и лучше разобраться в особенностях ее функционирования. Также не стоит забывать выполнять оптимизацию применяемой стратегии после изменения ситуации на рынке.
womanforex.ru
Оптимизация торговых систем
В одной из предидущих статей я отмечал, что средний человек имеет наилучшие шансы стать удачливым трейдером в том случае, если он или она применяет 100% механический подход. Это единственный надежный способ уменьшить эмоциональные воздействия, которые рано или поздно разрушают всех трейдеров.Это также единственный путь, позволяющий оценить ваш метод торговли на прибыльность на основании уже существующих исторических данных. Отбросьте надежду найти когда-либо "совершенную систему". Совершенная система этого месяца может принести потери в следующий. Совершенно очевидно, что она будет иметь много сложных периодов в будущем. Так же как каждый трейдер и каждая методология имеет период потерь, так и каждая торговая система, внезависимости от того, насколько удачно она создана, будет иметь периоды, когда она не сможет успешно торговать.
ПОГОВОРИМ О ХОРОШЕЙ СИСТЕМЕ.
Поговорим о хорошей системе. Я определяю как хорошую систему, которая при гипотетическом тестировании на исторических данных приносит относительно низкие потери и достаточную прибыль в размерах, приемлимых для меня, будучи одновременно достаточно устойчивой для того, чтобы торговать с прибылью разные рынки с использованием одних и тех же параметров.ЛОВУШКА OVER-CURVE-FITTING TO BACK DATA
При создании системы следует остерегаться ловушки over-curve-fitting to back data (подгонки под исторические данные). Чем более вы подгоняете свою систему к историческим данным для улучшения ее производительности, тем меньше вероятность того, что она будет торговать с прибылью в будущем. Этот момент очень тяжел для восприятия начинающих трейдеров.Они ожидают, что метод, хорошо работавший в прошлом, будет так же хорошо работать в будущем. Прибыльность в прошлом не подогнанной под исторические данные торгововой системы только приблизительно соответствует (я подчеркиваю это - только приблизительно) прибыльности в будущем.
Наилучшим способом эффективно противостоять подгонке системы под исторические данные - это убедиться, что ваша система работает на многих рынках с одними и теми же параметрами. Успешные системные трейдеры используют одни и те же параметры систем на разных рынках не взирая на то, что это кажется противоестественным. Если не верите мне, почитайте две книги Jack Schwager. Jack сам управлял деньгами используя систему, которая имела одни и те же параметры на всех рынках.
Чем большее количество рынков сможет торговать прибыльно ваша система и чем на более длинных исторических отрезках - тем более она устойчива.
Я торгую одну из моих систем на 15 рынках с одними и теми же параметрами. При тестировании она была прибыльной даже на большем колическтве рынков в течение более чем 10 лет.Далее, если система дает хорошие результаты на большом количестве рынков, совсем не обязательно чтобы вы торговали ее на всех этих рынках для диверсификации. Вы можете иметь десять торговых систем, каждая из которых была прибыльной на 15 рынках в течение последних шести лет, и использовать каждую из них для торговли только на одном рынке.
Это позволит вам торговать 10 диверсифицированных рынков используя на каждом из них систему без подгонки. Теоретически это приемлемо не менее, чем торговля одной из этих систем на всех 10 рынках.
Этот принцип разрешает такой тип оптимизации, коpторый позволяет вам торговать одну систему с использованием различных наборов оптимизированных параметров для каждого рынка. Те, кто хотят оптимизировать каждый рынок отдельно, могут делать это не опасаясь подгонки под исторические данные.
ВОТ КАК ВЫГЛЯДИТ ПРАВИЛЬНЫЙ ПРОЦЕСС.
Решите, какой рынок вы хотите торговать.
Для большей безопасности следует выбирать только те рынки, которые оказываются прибыльными при тестировании с одним набором параметров (значения данной системы по умолчанию) в течение по крайней мере пяти лет. Давайте предположим, что ваша система торгует с прибылью 12 рынков используя одни и те же параметры. Это будет область вашего исследования.Вы можете оптимизировать систему индивидуально для каждого рынка.
Для начала пытаемся изменить параметры так, чтобы максимально нарастить прибыль и уменьшит потери на каждом из рынков. Скорее всего в результате получится 12 различных наборов параметров оптимизации. После этого наступает самая сложная часть.Нужно взять каждый из 12 наборов оптимизированных параметров и опробовать их на всех 12 рынках.
Необходимо обратить внимание на то, сохраняет ли данный набор оптимизированных параметров свойство исходного набора оставаться таким же прибыльным на всех остальных 11 рынках. Если данный набор оптимизированных параметров торгует с прибылью все 12 рынков, вы можете быть уверены, что не произошло подгонки параметров под исторические данные. Можно использовать данный набор оптимизированных параметров для торговли того рынка, для которого они были оптимизированны.Если же даннай оптимизированный набор плохо работает на других рынках, это предупреждающий сигнал о наличии подгонки под исходные данные. Вам надо повторить оптимизацию данного рынка, пытаясь найти такой набор оптимизированных показателей, который будет прибыльно работать и на других рынках.
Должны ли вы требовать, чтобы набор оптимизированных показателей торговал с прибылью все рынки или только какой-то процент от них - это предмет дискуссионный. Вы можете захотеть использовать набор оптимизированных параметров, которые будут прибыльны не на всех рынках, а на большинстве из них. Однако чем на большем количестве рынков будет успешно работать ваша система, тем больше вероятность того, что ваша система будет работать хорошо не только в прошлом, но и в будущем.
Хотя я и описал весь этот процесс гипероптимизации, однако я не уверен, что он стоит затрачиваемых на него трудов. Я не имею доказательств того, что индивидуально оптимизированый под конкретный рынок набор параметров будет в будущем более прибылен, нежели исходный неоптимизированный набор. Однако если вы себя будете лучше чувствовать при использовании системы, которая имеет больший профит при обратном тестировании - то почему бы и нет?
После того, как вы стали удовлетворены наборами оптимизированных параметров для всех тестируемых рынков, вы готовы к созданию портфеля, который вы будете реально торговать. Я располагаю рынки в порядке прибыльности, используя в качестве показателя среднюю прибыль.
Затем я экспериментирую с различными портфелями, пытаясь создать один, который будет диверсифицирован настолько, насколько это возможно, имея при этом минимальное соотношение максимального убытка к средней прибыли по портфелю за год. Правильная позиция должна быть равна или больше удвоенного максимального убытка плюс обжая начальная маржа по портфелю.
Моя компьютерная программа позволяет расширить процесс выбора оптимального портфеля еще дальше путем тестирования и включения в общий торговый план множества систем. Брюс Бэбкок
ru.forex.ooo
Оптимизация торговых систем (много букв)
перепост: https://sites.google.com/a/alextrend.com/myrobot/home/optimizacia-torgovyh-sistem Критерии оптимизацииЛюбой метод поиска должен иметь некоторый способ определения того, является ли торговая модель «хорошей», чтобы принять ее или отвергнуть. Хорошей торговой моделью может быть модель с максимальной прибылью, с максимальной прибылью на сделку, с максимальным процентом выигрышей или с комбинацией трех этих показателей. Такой метод определения качества торговой стратегии называется методом оценки. В статистике он также известен как целевая функция. Хорошая торговая стратегия зависит отнюдь не только от чистой прибыли. На самом деле, хорошая стратегия — это комплекс показателей.При использовании методов поиска очень важным оказывается тип оценивания. Поскольку методы поиска, по определению, в процессе поиска лучшего пути постоянно принимают торговые стратегии или отвергают их, крайне важно применять правильный метод оценивания: именно этот метод обладает наибольшей предсказательной силой и будет успешным в реальной торговле. При использовании неправильного или неподходящего типа оценивания можно пропустить хорошую стратегию, и что еще хуже, можно выбрать для торговли в реальном времени плохую стратегию.Например, если критерием отбора является максимальная чистая прибыль, то будет отобрана стратегия, приносящая максимальную прибыль. В конечном счете, для торговли важна именно прибыль. Тогда почему такая модель может быть плохой? Потому что одна лишь максимальная прибыль не является адекватным показателем качества торговой стратегии. Например, 50% этой максимальной чистой прибыли могли быть получены стратегией на одной крупной сделке, которая может никогда больше не повториться. Показатель одной только чистой прибыли игнорирует очень важное требование равномерности распределения прибылей.Более того, поиск наибольшей чистой прибыли полностью игнорирует вопрос риска. Стратегия с максимальной чистой прибылью может также иметь очень большое и неприемлемое проседание счета. Другой ее недостаток в том, что лучшая прибыль могла быть получена посредством очень небольшого числа сделок. Стратегия с таким набором сделок имеет ограниченную статистическую валидность.Метод оценки исключительно по чистой прибыли игнорирует многие важные характеристики, которые необходимо учитывать при выборе топ-модели, обладающей наибольшей предсказательной способностью в отношении будущей реальной прибыли.
Подчеркнем некоторые из ключевых характеристик хорошей торговой стратегии: равномерное распределение сделок; равномерное распределение прибыли; приемлемый риск; статистическая валидность. Тип оценки должен быть разработан для отбора наиболее устойчивой и стабильной торговой стратегии, которая не обязательно будет самой прибыльной. Неправильный тип оценки может фактически и неумышленно привести в процессе оптимизации к подстройке. Метод оценивания, отбирающий стратегии не по их устойчивости, ставит под сомнение весь процесс тестирования. При реальной торговле устойчивая торговая стратегия скорее всего принесет прибыль, а неустойчивая стратегия — убытки. Норма доходности — альтернативный способ выражения чистых прибылей и убытков и полезная мера эффективности стратегии, поскольку она облегчает сравнение различных временных периодов и разных инструментов. Однако в качестве метода оценивания она подвергается той же критике, что и чистая прибыль. Она полезна для установки минимальной цели, но неприемлема в качестве единственного показателя. Максимальное проседание счета — показатель риска и важный показатель эффективности стратегии. Оно оценивается двумя способами: как денежная величина крупнейшей последовательности убыточных сделок, или как наибольшее проседание кривой доходности. В любом случае оно представляет «защитный» критерий, поскольку ищет наименьший денежный проигрыш, а не наибольший выигрыш. В качестве критерия оценки максимальное проседание обладает теми же слабыми сторонами, что и чистая прибыль, и поэтому неприемлемо в качестве единственного показателя. Максимальное проседание полезно в качестве порогового ограничения. Стратегии, превышающие определенное проседание, могут сразу исключаться из рассмотрения. Однако минимальное проседание является недостаточным в качестве единственного критерия: проседание равно нулю тогда, когда у стратегии нет проигрышных сделок, и, вероятнее всего, выигрышных тоже. Корреляция между кривой доходности и идеальной прибылью — критерий оценки, неявно включающий распределение сделок. Более важно то, что этот показатель рассчитывает коэффициент полезного действия стратегии на основе реальных прибыльных возможностей, предоставляемых рынком. Идеальная прибыль — это теоретический показатель рыночного потенциала, а именно, общая денежная прибыль, получаемая в результате покупки каждой «впадины» и продажи каждого «пика», возникающих в ценовом движении. Очевидно, что данная задача невыполнима, откуда и название — идеальная прибыль. Математически она равна сумме разностей цен, взятых по модулю.Кривая доходности стратегии — это накопленная стоимость всех совершенных сделок. Кривая доходности связана с идеальной прибылью стандартным статистическим показателем — коэффициентом корреляции, который находится в интервале между -1 и + 1. Значение -1 будет плохим, поскольку оно показывает, что при повышении идеальной прибыли размер счета снижается. Значение +1 является хорошим, так как свидетельствует о том, что по мере роста идеальной прибыли размер счета тоже растет. Это отличный вариант на роль единственного критерия. Это также хороший кандидат на роль порогового ограничения. Пессимистическая доходность (далее ПД)-это годовой доход, скорректированный на «пессимистическое допущение», согласно которому в реальной торговле стратегии будет выигрывать меньше и проигрывать больше, чем при тестировании.ПД корректирует валовую прибыль путем вычисления новой, пессимистической, заниженной валовой прибыли. Первый шаг — найти число выигрышных сделок, уменьшенное на квадратный корень или скорректированное на свою стандартную ошибку. Это скорректированное число выигрышных сделок далее умножается на среднюю выигрышную сделку, чтобы получить новую, заниженную валовую прибыль.Затем ПД корректирует валовой убыток путем вычисления нового, пессимистического, завышенного валового убытка. Первый шаг — вычисляется количество проигрышных сделок, увеличенное на квадратный корень из себя или скорректированное на свою стандартную ошибку. Затем это скорректированное число проигрышных сделок умножается на среднюю проигрышную сделку, чтобы получить новый, завышенный валовой убыток. Далее новые чистые прибыль и убыток вычисляются по этим скорректированным валовым прибыли и убытку. Это, в свою очередь, делается для получения годовой нормы доходности.ПД исходит из предположения, что торговая стратегия не будет выигрывать в реальном времени так часто, как при тестировании, а нести убытки в реальном времени будет чаще, чем при тестировании. ПД отражает эти пессимистические допущения посредством корректировки чистой прибыли на стандартную ошибку. А раз так, он является более консервативным показателем. Его ценность также в том, что он включает число выигрышей и проигрышей.ПД является достоверной мерой эффективности стратегии, поскольку учитывает валовую прибыль, средний выигрыш, валовой убыток, средний проигрыш, число выигрышей и число проигрышей. Пессимистическая доходность — очень хороший и достоверный показатель эффективности торговой модели. Будучи «пессимистически» скорректированной, доходность также представляет хороший способ сравнения эффективностей различных торговых стратегий. ОптимизацияТестирование торговой стратегии с помощью компьютера есть моделирование, имитация торговли. Как и любая имитация, она может быть точной или неточной. Точная имитация воспроизводит торговый процесс на исторических данных таким же образом, как и в режиме реального времени. Чем точнее имитация, тем, как правило, лучше бывает эффективность торговли в режиме реального времени. Неточная имитация будет приводить к ложным выводам об эффективности торговой стратегии. А эти ложные выводы вероятнее всего будут приводить к убытком при реальной торговле. Тестовое окно — это размер той части исторических ценовых данных, на которых тестируется торговая стратегия. При определении размера тестового окна должны выполняться два основных условия. Первое — это статистическая представительность; второе — релевантность данной торговой стратегии и данному рынку. Эти два условия не дают однозначного ответа на вопрос о размере конкретного тестового окна в днях, неделях или месяцах. Но они устанавливают набор правил, которыми следует руководствоваться при определении правильного размера окна для конкретной торговой стратегии и конкретного рынка. Нет размера тестового окна, который был бы подходящим для всех случаев.Тестовое окно должно быть достаточно большим, чтобы генерировать статистически достоверные результаты и включать достаточное количество данных, отражающих разные состояния рынка. Что значит статистически достоверные результаты? По существу, это означает выполнение двух условий. Должно быть достаточное количество сделок, чтобы результаты можно было считать статистически адекватными. Тестовое окно также должно быть достаточно большим относительно числа и временной продолжительности переменных торговой стратегии. Если это не так, то тестовые результаты будут статистически сомнительными. Есть формула для вычисления статистической ошибки. Этот статистический показатель несет полезную информацию относительно адекватности размера торговой выборки. Чем больше торговая выборка, тем меньше стандартная ошибка. Стандартная ошибка вычисляется по следующей формуле М=1/квадратный корень(N)где N — размер выборки, М- стандартная ошибка. Стандартная ошибка говорит нам о степени точности наших результатов. Например, если средний выигрыш составляет 200 при стандартной ошибке 25%, то на самом деле средний выигрыш равен 200±25%. Другими словами, наш средний выигрыш скорее всего окажется в интервале 150-250. При консервативном подходе допускаем, что средний выигрыш окажется равным 150. Если Вам демонстрируют чудесную систему с большой доходностью, поинтересуйтесь, в первую очередь количеством сделок и количеством баров на которых проводился расчет. Помните, что например 16 сделок дадут Вам статистическую ошибку 25%, 100 сделок 10% статистической погрешности и это без учета возможной подстройки или других махинаций. Стабильность торговой стратегии связана с устойчивой торговлей по этой системе. Чем более устойчива торговая стратегия по каждому из ее показателей, тем она стабильнее. Как правило, чем выше стабильность стратегии на статистически валидном тесте, тем выше ее надежность в процессе торговли. Должно быть хорошее соотношение прибылей и убытков. Сделки должны быть равномерно распределены по всему тестовому окну. Чем меньше стандартное отклонение величины и продолжительности выигрышей и убытков, тем лучше. Эти показатели торговой устойчивости стратегии являются важными показателями ее стабильности. Лучший размер тестового окна — такой, который позволяет надежно получать такую информацию. При всяком тестировании и оптимизации используется некоторый тип метода поиска, задающий число проводимых тестов и порядок их выполнения, а также диапазон временных периодов, на котором будет применяться исследуемая стратегия. Метод поиска — это способ перебора различных параметров, определяемый данной оптимизацией, и выбора наилучшего набора параметров модели.Другими словами, любая оптимизация подвергает набор исторических данных серии тестов. Порядок, в котором проводятся эти тесты, может влиять на определение лучшего набора параметров. Это является причиной существования разных видов поиска в, так называемом, пространстве параметров. С помощью переменных модели торговая имитация рассчитывает все сделки и вычисляет статистическую характеристику модели. Оптимизация или тестовый прогон — это связка или набор тестов. Успешный результат такого теста — набор моделей, удовлетворяющих критериям эффективности. Неуспешный тестовый прогон может привести к отсутствию моделей, удовлетворяющих критериям эффективности. Решетчатый поиск. Два диапазона переменных задают решетку комбинаций переменных. Оценивается эффективность каждой комбинации. Другими словами, исследуются все узлы решетки. Это самый распространенный метод поиска. Преимущество поиска по узлам решетки в его скрупулезности. Поскольку оценена каждая возможная комбинация, пропустить лучшую невозможно. Недостаток решетчатого выбора — его низкая скорость. Следующий простой расчет показывает что если мы сканируем одну переменную с 60 шагами, а один расчет занимает 1 сек, то для одной переменной это составит 1 минуту, для двух переменных 60 минут, для 3 переменных 3600 минут или 2.5 дня, а для 4 переменных уже 150 дней.Поиск с приоритетом шагов сканирует в одно время одну переменную, а выбранное значение сохраняется постоянным для каждого из следующих сканирований, в целях снижения отрицательного воздействия на эффективность. Поиск методом прямого спуска — один из многих очень быстрых методов направленного поиска. Главное отличие направленного поиска от поиска на решетке — это то, что может быть названо «информированной избирательностью». Поиск на решетке последовательно рассматривает каждого кандидата в тестовой группе. Направленный поиск отыскивает путь к наивысшей эффективности в тестовой группе и доводит его до логического завершения. В течение этого он отбрасывает эффективность, которая меньше уже найденной, отдает предпочтение лучшей эффективности и двигается в этом «направлении» в рамках набора тестов или модельного пространства, как его иногда называют. Методы генетического поиска — наиболее продвинутые и сложные из новых методов, разработанных на сегодня. Методы генетического поиска являются методами направленного поиска, но включение «мутаций» (то есть нестандартных случайных шагов в области пространства переменных, отклоняющихся от пути направленного поиска) снижает вероятность выбора локального максимума в качестве глобальной топ-модели. Поскольку для пространства торговых моделей характерно обилие экстремумов, надежность генетических методов делает их наиболее перспективными в исследовании торговых моделей. В своей работе я пользуюсь методами генетического поиска.У методов направленного поиска в целом есть несколько недостатков. Поскольку метод направленного поиска не оценивает каждого кандидата, существует риск недостаточной точности. Направленный поиск гораздо более тщателен, чем пошаговый поиск. Но он менее точен, чем поиск на решетке. Опыт многоточечного направленного поиска в сочетании с методом поиска на решетке свидетельствует, что таким комбинированным методом можно находить модели, входящие по эффективности в лучшие 10-20%. Вторая и, возможно, более серьезная проблема методов направленного поиска состоит в том, что они не всегда гарантируют нахождение истинного пика, называемого глобальным максимумом, но могут ошибочно принимать за него локальный максимум.
Глобальный максимум — это самая эффективная модель во всей тестовой группе, а локальный максимум — самая эффективная модель в «локальной области» тестовой группы. Ошибочное принятие локального максимума за глобальный может происходить по причинам, связанным с особенностями метода поиска и «формой пространства переменных».Наши торговые роботы тестируются или методом прямого перебора или генетическим оптимизатором. УстойчивостьТестовое пространство — это визуализация результатов тестовой связки в виде трехмерного графика. Худший из случаев, которые можно себе представить, будет напоминать горную гряду очень узких и высоких пиков прибыли. Почему это плохо? Такой стратегии будет не хватать устойчивости. Любой небольшой сдвиг параметра стратегии может изменить результаты стратегии с крупной прибыли на такой же крупный убыток. Лучшим случаем, который можно представить, будет топ- стратегия, расположенная на вершине большого, пологого, постепенно снижающегося холма. Этот случай хорош, потому что данная стратегия будет очень устойчивой. Любой небольшой или даже большой сдвиг параметра стратегии снизит ее эффективность на 5-10 процентов. В этом преимущество устойчивой стратегии. Такая стратегия черпает свою устойчивость из относительной нечувствительности к изменениям параметров.Идеальная оптимизация по одной переменной должна создавать линию эффективности по прибыли, которая снижается постепенно в обоих направлениях от своего пика прибыли. Идеальная оптимизация по двум переменным должна создавать круг с лучшей моделью в центре и ступенчатым снижением эффективности на расходящихся концентрических окружностях. Идеальная оптимизация по трем переменным должна создавать округлый холм с лучшей моделью на вершине и ступенчатым снижением эффективности на любых концентрических окружностях большего диаметра, расходящихся от вершины этого холма. В общем случае самым эффективным подходом оказалась групповая оценка результатов. Суть ее сводиться к тому, что оценивается результат не отдельного теста с фиксированным набором параметров, а группы тестов, в самом простом случае для одного параметра можно рассчитать среднюю величину для трех тестов, в точке с максимальной целевой функцией, и для каждого отклонения вправо, влево на величину минимального шага. На практике, выбрав наиболее подходящею Вам стратегию, посмотрите результаты ее тестов для близких значений по времени. Например, выбрав в качестве временного масштаба 60 минут, посмотрите 30, 40, 50, 70, 90, 100 минут для выбранной стратегии и выбранного торгового инструмента. В случае если наилучший результат находится на вершине полого холма, то незначительные отклонения вправо, влево не должны приводить к существенному ухудшению результатов. Однако оценка единичной оптимизации или даже некоторой группы не дает комплексного анализа ситуации. Наиболее полноценный результат дает только форвардный тест.
smart-lab.ru
Оптимизация торговых систем - Через тернии к тренду
Средний человек имеет наилучшие шансы стать удачливым трейдером в том случае, если он или она применяет 100% механический подход. Это единственный надежный способ уменьшить эмоциональные воздействия, которые рано или поздно разрушают всех трейдеров. Это также единственный путь, позволяющий оценить ваш метод торговли на прибыльность на основании уже существующих исторических данных. Отбросьте надежду найти когда-либо «совершенную систему». Совершенная система этого месяца может принести потери в следующий. Совершенно очевидно, что она будет иметь много сложных периодов в будущем. Так же как каждый трейдер и каждая методология имеет период потерь, так и каждая торговая система, вне зависимости от того, насколько удачно она создана, будет иметь периоды, когда она не сможет успешно торговать.
Поговорим о хорошей системе. Я определяю как хорошую систему, которая при гипотетическом тестировании на исторических данных приносит относительно низкие потери и достаточную прибыль в размерах, приемлемых для меня, будучи одновременно достаточно устойчивой для того, чтобы торговать с прибылью разные рынки с использованием одних и тех же параметров.
При создании системы следует остерегаться ловушки over-curve-fitting to back data (подгонки под исторические данные). Чем более вы подгоняете свою систему к историческим данным для улучшения ее производительности, тем меньше вероятность того, что она будет торговать с прибылью в будущем. Этот момент очень тяжел для восприятия начинающих трейдеров. Они ожидают, что метод, хорошо работавший в прошлом, будет так же хорошо работать в будущем. Прибыльность в прошлом не подогнанной под исторические данные торговой системы только приблизительно соответствует (я подчеркиваю это — только приблизительно) прибыльности в будущем.
Наилучшим способом эффективно противостоять подгонке системы под исторические данные — это убедиться, что ваша система работает на многих рынках с одними и теми же параметрами. Успешные системные трейдеры используют одни и те же параметры систем на разных рынках не взирая на то, что это кажется противоестественным. Если не верите мне, почитайте две книги Jack Schwager. Jack сам управлял деньгами используя систему, которая имела одни и те же параметры на всех рынках.
Чем большее количество рынков сможет торговать прибыльно ваша система и чем на более длинных исторических отрезках — тем более она устойчива. Я торгую одну из моих систем на 15 рынках с одними и теми же параметрами. При тестировании она была прибыльной даже на большем количестве рынков в течение более чем 10 лет.
Далее, если система дает хорошие результаты на большом количестве рынков, совсем не обязательно чтобы вы торговали ее на всех этих рынках для диверсификации. Вы можете иметь десять торговых систем, каждая из которых была прибыльной на 15 рынках в течение последних шести лет, и использовать каждую из них для торговли только на одном рынке. Это позволит вам торговать 10 диверсифицированных рынков используя на каждом из них систему без подгонки. Теоретически это приемлемо не менее, чем торговля одной из этих систем на всех 10 рынках.
Этот принцип разрешает такой тип оптимизации, который позволяет вам торговать одну систему с использованием различных наборов оптимизированных параметров для каждого рынка. Те, кто хотят оптимизировать каждый рынок отдельно, могут делать это не опасаясь подгонки под исторические данные.
Вот как выглядит правильный процесс. Решите, какой рынок вы хотите торговать. Для большей безопасности следует выбирать только те рынки, которые оказываются прибыльными при тестировании с одним набором параметров (значения данной системы по умолчанию) в течение по крайней мере пяти лет. Давайте предположим, что ваша система торгует с прибылью 12 рынков используя одни и те же параметры. Это будет область вашего исследования.
Вы можете оптимизировать систему индивидуально для каждого рынка. Для начала пытаемся изменить параметры так, чтобы максимально нарастить прибыль и уменьшит потери на каждом из рынков. Скорее всего в результате получится 12 различных наборов параметров оптимизации. После этого наступает самая сложная часть.
Нужно взять каждый из 12 наборов оптимизированных параметров и опробовать их на всех 12 рынках. Необходимо обратить внимание на то, сохраняет ли данный набор оптимизированных параметров свойство исходного набора оставаться таким же прибыльным на всех остальных 11 рынках. Если данный набор оптимизированных параметров торгует с прибылью все 12 рынков, вы можете быть уверены, что не произошло подгонки параметров под исторические данные. Можно использовать данный набор оптимизированных параметров для торговли того рынка, для которого они были оптимизированны.
Если же даннай оптимизированный набор плохо работает на других рынках, это предупреждающий сигнал о наличии подгонки под исходные данные. Вам надо повторить оптимизацию данного рынка, пытаясь найти такой набор оптимизированных показателей, который будет прибыльно работать и на других рынках.
Должны ли вы требовать, чтобы набор оптимизированных показателей торговал с прибылью все рынки или только какой-то процент от них — это предмет дискуссионный. Вы можете захотеть использовать набор оптимизированных параметров, которые будут прибыльны не на всех рынках, а на большинстве из них. Однако чем на большем количестве рынков будет успешно работать ваша система, тем больше вероятность того, что ваша система будет работать хорошо не только в прошлом, но и в будущем.
Хотя я и описал весь этот процесс гипероптимизации, однако я не уверен, что он стоит затрачиваемых на него трудов. Я не имею доказательств того, что индивидуально оптимизированный под конкретный рынок набор параметров будет в будущем более прибылен, нежели исходный не оптимизированный набор. Однако если вы себя будете лучше чувствовать при использовании системы, которая имеет больший профит при обратном тестировании — то почему бы и нет?
После того, как вы стали удовлетворены наборами оптимизированных параметров для всех тестируемых рынков, вы готовы к созданию портфеля, который вы будете реально торговать. Я располагаю рынки в порядке прибыльности, используя в качестве показателя среднюю прибыль. Затем я экспериментирую с различными портфелями, пытаясь создать один, который будет диверсифицирован настолько, насколько это возможно, имея при этом минимальное соотношение максимального убытка к средней прибыли по портфелю за год. Правильная позиция должна быть равна или больше удвоенного максимального убытка плюс общая начальная маржа по портфелю.
Моя компьютерная программа позволяет расширить процесс выбора оптимального портфеля еще дальше путем тестирования и включения в общий торговый план множества систем.
faustusfx.livejournal.com
Чем опасна оптимизация торговой системы
Многие трейдеры довольно часто превращают тестирование торговых систем в разработку стратегий ориентированных на максимальное извлечение прибыли из исторических данных. Аргументируют они это тем, что если система показывала прибыль в прошлом, то и в будущем она будет приносить такой же доход. Если бы это было правдой, то сейчас каждый трейдер умеющий мало-мальски обращаться с тестером стратегий был бы миллиардером.
Как правило, трейдер подбирает несколько индикаторов в сочетании с техническими фигурами или другими техническими исследованиями, создаёт на их основе торговую систему, а потом прогоняет её в тестере стратегий, добиваясь положительных результатов на истории (путем подбора оптимальных параметров, составляющих систему элементов). Фантастические результаты тестирования, как правило, не заставляют себя долго ждать (благо быстродействие современных компьютеров позволяет перебирать миллионы комбинаций за считанные минуты). Глядя на эти огромные, но пока виртуальные деньги, трейдер поддаётся искушению, диктуемому ему жадностью, и начинает торговать.
Торговля в реальном времени по его «безупречной» стратегии рано или поздно приводит к убыткам. Какой вывод делает трейдер? Что-то не так с его системой и, следовательно, её надо оптимизировать. Последующая оптимизация системы устраняет большинство убыточных сделок совершённых в процессе первой попытки торговли. И воодушевлённый этими результатами трейдер вновь начинает торговать по уже «исправленной» системе и вновь несёт убытки. Эта ситуация повторяется до тех пор пока у него не закончится терпение или не иссякнут деньги. Первыми обычно заканчиваются деньги, а трейдер продолжает верить в то, что вот еще одна оптимизация и Грааль, вечно приносящий прибыль готов.
В этом случае наиболее рациональным решением будет остановиться и проанализировать причины произошедшего. И самым главным выводом станет то, что оптимизация имеет весьма сомнительную ценность. Размышляя трезво легко понять, что любой индикатор можно превратить в мега прибыльный комбайн для зарабатывания денег, но лишь на исторических данных. Ведь компьютер в состоянии перебрать миллионы комбинаций параметров и потому велика вероятность того, что среди них найдутся те, которые сделают систему супер прибыльной. Но, к сожалению лишь задним числом.
Многие здесь возразят по поводу того, что весь технический анализ, по сути, есть набор выводов, сделанный на основе наблюдений за историей цены. И будут отчасти правы. Бесспорно, наблюдение за историческими данными и их анализ есть необходимая составляющая работы трейдера. Но при этом необходимо понимать, что рынок находятся в постоянном динамически изменяющемся состоянии и поэтому далеко не факт, что сегодня он будет вести себя, как и вчера.
В чём же тогда смысл наблюдений за историей и анализа оной? И есть ли этот смысл вообще. Смысл, несомненно, есть, и наблюдать за историей цены любой трейдер должен, но делать это необходимо в контексте конкретной ситуации на рынке. То есть надо понимать, что в целом рынок непредсказуем (сегодня он в тренде, завтра во флэте, сегодня цена изменяется плавно, а завтра зашкаливает), а вот в каждой конкретной ситуации (будь то тренд, флэт, повышенная волатильность и т.д.) его поведение относительно прогнозируемо.
То есть, задачей трейдера становится определить, в каком состоянии находится в данный момент рынок и применить стратегию, разработанную специально для такого случая. Например, если рынок вошел в сильное трендовое движение, нужно применять тактику, основанную на трендследящих индикаторах. А когда трендовое движение прекратится необходимо приостановить торговлю до того момента, пока не станет ясно какую тактику наиболее целесообразно применять далее.
Так и только так. Любая автоматическая система требует правильного применения. В нужном месте и в нужное время она принесет прибыль. А пытаться с помощью оптимизации добиться её универсальности – Сизифов труд.
Ясного видения рынка и стабильного профита вам уважаемые коллеги!
www.azbukatreydera.ru