В Главе 7 представлен надлежащий способ оптимизации торговой системы. Оптимизация происходит в два этапа. Первый этап — оптимизация торговой стратегии на множестве различных рынков и- временных периодов. Оптимизационный процесс завершается исчерпывающим форвардным анализом, который оценивает эффективность системы, используя данные, которые не относятся к оптимизационной выборке. [c.6]
Форвардный анализ подробно обсуждается в Главе 7, Оптимизация торговой системы . [c.26]
Другой вопрос, требующий решения — тестировать ли данные единым куском или как серию более мелких кусков. Тестирование данных единым большим массивом с точки зрения статистики выглядит более предпочтительным. Однако этот подход может скрывать некоторую важную информацию, а именно, как разные периоды соотносятся друг с другом Модель, приносящая 100,000 за 10-летний период, на первый взгляд выглядит превосходно. Но что, если такая прибыль была обеспечена одним-двумя очень хорошими годами, а другие восемь лет были убыточными или были близки к предельно допустимой эффективности Следовательно, лучше тестировать весь этот временной период в несколько меньших интервалов. Хорошим было бы деление 10-летнего периода на пять 2-летних отрезков. Если данная торговая модель более долгосрочная и генерирует слишком мало сделок, чтобы обеспечить статистическую валидность на 2-летнем периоде, более подходящими могут быть 3-х или 4-летние интервалы. Более подробно это обсуждается в Главе 7, Оптимизация торговой системы . [c.116]
Оптимизация торговой системы [c.119]
ОПТИМИЗАЦИЯ ТОРГОВОЙ СИСТЕМЫ [c.122]
Что такое оптимизация торговой системы [c.63]
Создание любой торговой системы в первую очередь заключается в том, чтобы сформулировать правила открытия и закрытия длинной и короткой позиций. Обычно в этих правилах присутствуют некоторые индикаторы и параметры. При их изменении меняется доходность торговой системы. Вопрос о том, надо ли оптимизировать торговые системы, или это является просто подгонкой системы под исторические данные, возникает очень часто. Скорее всего, это связано с тем, что разные люди под оптимизацией торговой системы могут понимать абсолютно разные процедуры. Потому сначала попробуем определить, что такое оптимизация. Во-первых, под оптимизацией можно понимать выбор (или создание) торговой системы, которая решает наши задачи лучше, чем другие системы. Например, мы ищем такую систему, которая на рынке йена/доллар в настоящий момент даст наибольшую прибыль, и для этого выбираем систему из некоторого множества систем с фиксированными параметрами. Это может быть, например, выбор между системами, основанными на разных индикаторах. Назовем это оптимизацией первого типа. [c.63]
Параметрами механической торговой системы называются переменные, присутствующие в правилах открытия и закрытия позиций. В результате тестирования и оптимизации МТС определяется такой набор параметров, при котором величина, разброс и устойчивость важнейших показателей системы находятся в оптимальных для конкретного трейдера пределах. Хорошая МТС должна обладать следующими свойствами [c.178]
Как и торговая система, метод управления капиталом должен быть тщательным образом протестирован. При этом требования к нему схожи с требованиями к торговой системе небольшое количество оптимизируемых параметров, устойчивость в области оптимальности параметров, должно существовать по крайней мере несколько активов, на которых совокупность из торговой системы и метода управления капиталом имеет удовлетворительные результаты без повторной оптимизации. [c.204]
Если у вас такой игры нет, тогда никакое управление деньгами в мире не спасет вас.1 С другой стороны, если у вас есть положительное ожидание, то можно, посредством правильного управления деньгами, превратить его в функцию экспоненциального роста. Не имеет значения, насколько мало это положительное ожидание Другими словами, не имеет значения, насколько прибыльна торговая система на основе 1 контракта. Если у вас есть система, которая выигрывает 10 долларов на контракт в одной сделке (после вычета комиссионных и проскальзывания), можно использовать методы управления капиталом таким образом, чтобы сделать ее более прибыльной, чем систему, которая показывает среднюю прибыль 1000 долларов за сделку (после вычета комиссионных и проскальзывания). Имеет значение не то, насколько прибыльна ваша система была, а то, насколько определенно можно сказать, что система покажет, по крайней мере, минимальную прибыль в будущем. Поэтому наиболее важное приготовление, которое может сделать трейдер, — это убедиться в том, что система покажет положительное математическое ожидание в будущем. Для того чтобы иметь положительное математическое ожидание в будущем, очень важно не ограничивать степени свободы вашей системы. Это достигается не только упразднением или уменьшением количества параметров, подлежащих оптимизации, но также и путем сокращения как можно большего количества правил системы. Каждый параметр, который вы добавляете, каждое правило, которое вы вносите, каждое мельчайшее изменение, которое вы делаете в системе, сокращает число степеней свободы. В идеале, вам нужно построить достаточно примитивную и простую систему, которая постоянно будет приносить небольшую прибыль почти на любом рынке. И снова важно, чтобы вы поняли, — не имеет значения, насколько прибыльна система, пока она прибыльна. Деньги, которые вы заработаете в торговле, будут заработаны посредством эффективного управления деньгами. Торговая система — это просто средство, которое дает вам положительное математическое ожидание, чтобы можно было использовать управление деньгами. Системы, которые работают (показывают, по крайней мере, минимальную прибыль) только на одном или нескольких рынках или имеют различные правила или параметры для различных рынков, вероятнее всего, не будут работать в режиме реального времени достаточно долго. Проблема большинства технически ориентированных трейдеров состоит в том, что они тратят слишком много времени и усилий на оптимизацию различных правил и значений параметров торговой системы. Это дает совершенно противоположные результаты. Вместо того, чтобы тратить силы и компьютерное время на увеличение прибылей торговой системы, направьте энергию на увеличение уровня надежности получения минимальной прибыли. [c.26]
Никогда не доверяйте весь свой портфель черному ящику. Согласно системе "черный ящик", вы не можете знать, по каким правилам заключаются торговые сделки. Если показатели черного ящика выглядят слишком хорошо для того, чтобы быть правдой, то, вполне возможно, они таковыми на самом деле и являются. Единственный способ испытать устойчивость метода или торговой системы - это лично проверить, как работают правила, заложенные в систему. Я могу представить вам какую хотите статистику. Я могу создать систему, которая по показателям будет выглядеть "Святым Граалем". Но я не стану начинать торговлю с монеты в 10 центов. Показатели могут быть получены при помощи аппроксимации кривых на основе рыночных данных. Другой популярный термин - это оптимизация. Об оптимизации подробно рассказано в главе 14. [c.182]
Многие торговые системы построены на правилах и формулах, которые могут варьироваться в зависимости от разных типов рынков и условий. Такая торговая стратегия часто будет выигрывать от оптимизации, которая применяется для определения подходящих значений переменных данной торговой системы. [c.6]
Накоплены свидетельства, показывающие две простых, но поразительных истины относительно подстройки. Подстроенная или неправильно протестированная торговая модель с высокой вероятностью приведет к потере денег. Однако, на некоторых этапах оптимизации, ведущей к подстройке, слабая торговая система может быть прибыльной. Еще более неприятен тот факт, что хорошая торговая идея может быть убыточной в реальном времени, если она была подстроена или неправильно оптимизирована. Форвардный анализ обнаруживает это, и в этом одно из его главных достоинств. [c.26]
Согласно этому определению, оптимизировать торговую систему значит сделать ее использование наиболее эффективным. Как оптимизация достигает этого Путем эмпирической проверки и оценки всех возможных переменных модели. Напомним, что торговая система состоит из правил, формул и переменных. Правила и формулы задают структуру модели. Можно сказать, что они являются ее скелетом. Переменные вдыхают в эту систему жизнь. Возможно, их следует рассматривать как ее кровь. [c.119]
Те же самые процедурные ошибки, которые приводили к подстройке статистической модели, могут приводить к подстройке торговой системы. При достаточном числе переменных и сканирований многие торговые системы могут в течение оптимизации демонстрировать прибыльность. Однако лишь то, что система выглядит прибыльной в течение оптимизации, никак не гарантирует, что она будет прибыльной в реальной торговле. [c.165]
Снова обратившись к теории, лежащей в основе данной торговой системы, мы видим, что изменение от 90- до 95-дневной скользящей средней представляет собой изменение, согласующееся с остальным тестовым пространством. Следовательно, подходящей будет оптимизация этой средней от 30 до 100 дней с шагом 5. [c.176]
Оптимизация параметров торговой системы с целью получения желаемых статистических параметров. [c.198]
Все результаты оптимизации сохраняются с именами, определенными пользователем, и могут использоваться неоднократно. Настройки оптимизатора могут экспортироваться/импортироваться аналогично торговым системам. [c.202]
Момент перехода рынка из одного состояния в другое и должен заметить трейдер. Это проявится в том, что прибыльная торговая система внезапно станет убыточной и трейдер должен перенастроить и оптимизировать свою торговую систему применительно к новым рыночным условиям. Из вышеизложенного следует, что нет необходимости стремиться получить максимальную доходность на исторических данных. Это ничего не даст для реальных торгов. Бесконечные попытки оптимизации отнимут время. Существует большое количество научных работ на эту тему Основной вывод, который можно из них сделать,- это то, что при достаточно большом периоде тестирования оптимизация параметров системы не дает принципиальных выигрышей в ее доходности. Если система принципиально правильна, то она будет доходна, если нет, то ни какие оптимизации не помогут. Так же не поможет и правильное управление рисками. Порочную систему нельзя превратить в хорошую, изменяя размеры стоп-ордеров. [c.304]
Раньше такие системы поставляли в виде печатной продукции, теперь - в виде защищенных от копирования дискет. Одни системы совсем простые, другие - изощренные, со встроенной программой оптимизации и инструкциями по распределению денежных средств. Многие трейдеры тратят тысячи долларов в поисках чуда, которое превратило бы несколько страничек компьютерного кода в бесконечный денежный поток. Охотники за автоматическими торговыми системами напоминают средневековых рыцарей, плативших алхимикам деньги за секрет превращения простых металлов в золото. [c.30]
Торговые системы, оптимизация . вероятность, игра с минусовым исходом,. игра с нулевым исходом,. маржа, [c.333]
В этой книге собрана информация, необходимая каждому трейдеру, желающему повысить свою квалификацию. Как источник справочного материала и руководство по разработке систем книга описывает много известных методик, а также предлагает новые способы получения прибыли на рынке и преимущества в торговле. Кроме того, в книге содержатся рекомендации по улучшенным методам контроля риска, показаны рискованные и потенциально убыточные методики, способные привести к разорению. Освещены даже самые основы как приобретать и представлять информацию, как вести тестирование систем на исторических данных с помощью симуляторов, как безопасно проводить оптимизацию и как оценивать результаты всестороннего статистического анализа. В книге показаны преимущества хорошей механической торговой системы над другими торговыми методами. [c.9]
Помимо репрезентативности выборка должна быть достаточно велика. Большие выборки снижают вероятность возникновения артефактов или случайных результатов системы при оптимизации. Эффективность торговой системы, оптимизированной на большой выборке, не будет сильно отличаться от ее эффективности в реальной торговле. [c.63]
После оптимизации правил и параметров торговой системы и получения хорошей эффективности на выборке данных важно так или иначе подтвердить эффективность этой системы, прежде чем рисковать реальными деньгами. Подтверждение дает трейдеру еще один шанс отказаться от неудачного решения. От систем, которые не подтвердили себя, следует отказываться, а использовать лишь подтвержденные. Подтверждение — критический шаг на дороге к успеху при оптимизации и при любом методе совершенствования работы торговой системы. [c.64]
При создании торговой системы разработчик обычно определяет выборку данных из моделируемой популяции. Например, чтобы разработать систему для торговли S P 500 на основе гипотезы Если вчерашняя цена закрытия выше, чем цена закрытия три дня назад, то завтра рынок будет подниматься , разработчик берет выборку цен на конец дня по S P 500, простирающуюся назад, например, на 5 лет. Остается надеяться, что выборка репрезентативна, т.е. отражает реальное типичное поведение рынка, и в будущем (или на другом, неизвестном образце данных) система будет работать не хуже, чем на использованном при разработке образце. Чтобы подтвердить или опровергнуть результаты оптимизации, разработчики системы проводят тестирование на одном или нескольких периодах вне выборки, т.е. на образцах данных, не использовавшихся для разработки или оптимизации системы. Например, в нашем случае разработчик использует данные с 1991 г. по 1995 г. для разработки и настройки системы и резервирует данные за 1996 г. для тестирования вне пределов выборки. Очень рекомендуется заранее зарезервировать один или несколько периодов для подобного исследования. [c.71]
Условия открытия или закрытия позиции не должны меняться на длинных временных интервалах, если это не связано с объективными причинами. Например, если Вы начинаете торговать через час после начала работы банков Японии, то Вы должны учитывать переход с летнего времени на зимнее и обратно-Объективной причиной для изменения торговой системы можно также считать появление более хорошей торговой системы. Если правила включают оптимизацию параметров, то ее надо проводить регулярно, Это позволит Вам убедиться, что правила по-прежнему лают хорошие результаты. Если при тестировании торговой системы оптимальные параметры резко изменились, обязательно выясните, с чем это связано. [c.13]
Основные причины этого различия структурные. Временной период между реоптимизациями составляет, как правило, некоторую долю от первоначального тестового периода. На это особо указывает форвардный анализ, описываемый в Главе 7. Хорошее правило для определения размера торгового окна — от 1/8 до 1/4 тестового окна. Другими словами, если для оптимизации торговой системы используется 24-месячное окно, то данной системой можно уверенно торговать в интервале от 3 (24/8=3) до 6 (24/4=6) месяцев. Влияние оказывают и другие факторы. Это схоже с концепцией, утверждающей, что достоверность статистических прогнозов уменьшается по мере удаления от точки начала прогнозирования. [c.70]
Форвардный анализ (walk-forward analysis) — процедура завершающей проверки торговой системы на произвольном отрезке исторических данных, производится после тестирования и оптимизации системы. (Прим.ред.). [c.4]
Описанная система пересечения двух скользящих средних — хороший пример разработки простой оптимизации. Торговая модель генерирует сигналы на покупку и продажу, когда две скользяшие средние пересекаются. Двумя кандидатами на оптимизацию являются длины, или периоды, двух скользящих средних. Поскольку эти две скользящие средние измеряют два разных масштаба тренда, их длины, или периоды, не должны быть схожими. Учитывая это, данные переменные будут оптимизированы на следующих диапазонах [c.24]
Если оптимизация показывает улучшенные результаты, пора переходить к финальному шагу процесса тестирования форвардному анализу. Форвардный анализ оценивает эффективность торговой системы исключительно на основе пост-оптимизационного трейдинга или теста на данных, не входящих в оптимизационную выборку. Форвардный анализ — моделирование торговой ситуации, наиболее точно воспроизводящей способ использования отоптимизированной торговой системы в реальной торговле. Этот уровень тестирования обстоятельно и убедительно отвечает на три важнейших вопроса относительно торговой системы [c.25]
Размер тестового окна оказывает интересное воздействие на срок годности торговой системы. Торговые системы, применяющие оптимизацию, с некоторой периодичностью требуют ре-оптимизации, для наладки торговой модели на текущие рыночные условия. Уже было показано, что торговые модели, оптимизированные на более крупном тестовом окне, могут дольше использоваться между реоптимизациями, то есть, имеют более длинный срок годности. В отличие от этого, более короткие тестовые окна требуют более частой реоптимизации. Следовательно, о них говорят, как о имеющих более короткий срок годности. [c.70]
В этот момент трейдер просто теряет самообладание. Он не может дождаться понедельника (к счастью, сегодня суббота), чтобы начать делать деньги. Разочарованный, он усаживается за вневыборочный тест. К его великому удивлению, данная торговая система на 6-месячном вневыборочном тесте теряет 15,000. И тем не менее, последняя оптимизация была более чем на 600% лучше первой.Что было сделано неправильно То же самое, что и в примере составителя прогнозов. Трейдер не уделил должного внимания степеням свободы, продолжительностям сканирований переменных, объему выборки данных и вневыборочному форвардному тестированию. К счастью, он провел один форвардный тест, и тайное стало явным до начала торговли по системе в реальном времени, когда убытки стали бы больше, чем страдания его самолюбия. [c.166]
Клиентский терминал MetaTrader предоставляет широкие возможности для тестирования различных существующих торговых систем, а также для создания и тестирования своих собственных. Это делает MetaTrader исключительно привлекательным продуктом для тех, кто собирается посвятить себя работе на финансовых рынках. Далее мы приведем примеры и результаты тестирования нескольких простейших торговых систем, выполненных на клиентском терминале MetaTrader. Это не означает, что мы рекомендуем данные системы к прямому использованию в торговле. Просто читатель получит навыки проведения таких исследований, что позволит далее осуществлять тестирование собственных систем самостоятельно. При тестировании торговых методик мы сознательно не использовали фиксированные значения ордеров на закрытие позиции, как в убытке, так и в прибыли. Критерием закрытия позиции мы выбирали формирование определенных рыночных ситуаций, например, пересечение МА в другую сторону и т. п. Использование фиксированных численных значений при торговле, например закрытие позиции при достижении убытка в 50 пунктов, сильно усложняет задачу тестирования. При таком подходе появляется необходимость оптимизации системы по величинам допустимых убытков и прибылей, что можно делать бесконечно (тестирование системы при ограничении убытков в 10 пунктов, а прибылей в 30, затем тестирование при ограничении убытков в 30 пунктов, а прибылей в 10 и т. д. и т. п.) Желательно, чтобы торговая система принципиально исключала возможность больших убытков, полученных в ходе одной торговой операции. [c.305]
Optimization (Оптимизация). Функция Оптимизация — это Ваш инструмент при проверке любой торговой системы, базирующейся на выбранном наборе аналитических средств. Оптимизация представляет собой расчет на базе накопленных данных таких параметров аналитических функций Вашей торговой системы, при подстановке которых система работает наиболее эффективно — с минимальными потерями и максимальными прибылями. После каждой сессии оптимизации Вы получаете детальный отчет. [c.151]
Прекрасно разрабатывать торговые системы, не задумываясь об оптимизации. Но в реальности создание надежной системы — путь проб и ошибок, на котором какие-либо формы оптимизации неизбежны. Оптимизатор присутствует всегда — если не на поверхности, то в глубине процесса. Оптимизатор как таковой — это программа или алгоритм, пытающийся найти лучшее из возможных решений задачи оптимизация — процесс поиска, подбора этого решения. Оптимизатор может быть отдельной программой, возможно, выполненной в виде класса ++, объекта Delphi или функции A tiveX. Мощные продвинутые оптимизаторы часто создаются в виде компонентов, встраиваемых в программы, которые будет разрабатывать пользователь. Менее сложные оптимизаторы, например встречаемые в программах построения графиков высокого уровня, — обычно простые алгоритмы, занимающие несколько строчек программного кода. Поскольку любое решение, приводящее к оптимизации, является оптимизатором, оптимизация не обязательно связывается с компьютерами — оптимизатором может быть и человек, занятый решением задачи Надо сказать, что человеческий мозг — одна из наилучших эвристических систем на земле [c.47]
Как пример практической оптимизации с лобовым подходом рассмотрим систему, основанную на пересечении двух скользящих средних, реализованную при помощи Trade Station. Система оптимизировалась по показателю общей прибыли (это единственный показатель, который TradeStation может оптимизировать без дополнительных модулей). Ниже приведен код для торговой системы на двух скользящих средних [c.51]
Выходы имеют принципиальное значение. За счет улучшения элементов управления риском и целевых прибылей можно улучшить соотношение риска/прибыли торговой системы и уменьшить ее убытки. Впрочем, полученные в вышеприведенных тестах достижения не столь высоки, как можно было ожидать. Например, хотя на двух наиболее прибыльных рынках при использовании случайного входа получена прибыль, торговля портфелем в целом была убыточной, что расходится с нашим предыдущим опытом (Katz, M ormi k, март, апрель 1998), когда прибыль при случайных входах была получена на рынке S P 500. Тогда выходы настраивались под используемый рынок, а не имели одинаковые параметры для всех рынков в составе портфеля. Эта разница может объяснить несовпадение результатов. В общем, при индивидуальной настройке компонентов системы к данному рынку можно достичь более высоких результатов, но за счет риска избыточной оптимизации и подгонки под исторические данные. Также следует отметить, что эти тесты проводились с весьма [c.358]
При разработке и оптимизации торговых систем величину периода можно менять и методом последовательного перебора вариантов найти наилучшее значение, при котором доходность вашей торговой системы будет максимальная. Однако даже в этом случае надо задать для оптимизации начальное значение и диапазон, в котором проводится оптимизация периода. Кроме того, в большинстве случаев надо просто иметь возможность быстро построить индика- [c.115]
Обычно в торговые системы, которые не приходится оптимизировать на ЭВМ, достаточно легко включить такие фигуры технического анализа, как уровни поддержки и сопротивления, дивергенции, двойные вершины и некоторые другие. Однако при тестировании или оптимизации таких систем с использованием наиболее распространенных пакетов программ (например, MetaSto k или Super hart) могут возникнуть трудности, так как нет возможности в рамках этих пакетов строго определить алгоритм распознавания этих фигур. Поэтому в дальнейшем мы не будем использовать фигуры технического анализа при [c.42]
Смотреть страницы где упоминается термин ОПТИМИЗАЦИЯ ТОРГОВОЙ СИСТЕМЫ
: [c.133] [c.178] [c.201] [c.798] [c.38]Смотреть главы в:
Разработка,тестирование и оптимизация торговых систем -> ОПТИМИЗАЦИЯ ТОРГОВОЙ СИСТЕМЫ