Форум трейдеров » Торговые роботы, советники, индикаторы » Механические торговые системы: проектирование и применение
+ Подписаться
Страница 25 из 52 ПерваяПервая ... 15232425262735 ... ПоследняяПоследняя
  1. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.2. Секционирование (сегментирование) данных.

    5.1.1. Необходимость секционирования.
    .
    После того, как получены необходимые исторические данные, их необходимо подготовить для тестирования. Для этого необходимо весь интервал данных разбить на сегменты (секции), сделав первый сегмент более крупным, чем остальные (см.рис.5.1).



    Рис.5.1. Секционирование данных

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

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

    Проблема подстройки стратегии под параметры рынка является одной из основных проблем при разработке торговых стратегий. Один из путей ее решения – это сведение к разумному минимуму количества параметров оптимизации. Лучше всего, если таких параметров будет 1-2, максимум 3. При большем количестве параметров у торговой системы возникает множество степеней свободы и наблюдая за расположением торговых сигналов на графике цен мы увидим чисто случайный порядок их размещения, несмотря на отличные результаты теста.

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

    В случае переоптимизации изменения параметров «оптимальных» систем от сегмента к сегменту данных могут быть очень существенными, без наблюдаемых закономерностей и трендов, характеризующих изменение параметров рынка. При отсутствии эффекта переоптимизации при переходе к тестированию на новых сегментах данных параметры торговой стратегии будут неизменными или будут меняться незначительно.
  2. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.2.2. Выбор размера сегмента данных.

    На рис.5.1. общий диапазон данных разбит на 8 одинаковых по размеру секций, три из которых на начальном участке объединены в основной (стартовый) сегмент.

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

    В начале нашего курса мы привели в качестве примера один из способов классификации трендов по длительности:
    - сверхкраткросрочные или внутридневные тренды;
    - локальные тренды или тренды недельного цикла;
    - краткосрочные тренды, длительностью до 4-5 недель;
    - среднесрочные тренды, длительностью до полугода;
    - долгосрочные тренды, длительностью до 2-2.5 лет;
    - основные тренды, длительностью до 10-15 лет;
    - глобальные тренды, длительностью свыше 12-15 лет.

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

    Количество рабочих дней одного года, для которых строится график изменения цены дневного масштаба, составляет примерно 250 дней. Поэтому в сегменте размером около 1000 баров будет укладываться около 2-х циклов долгосрочного тренда, а три сегмента содержат данные 5-6 полных циклов, что позволит при проведении теста выявить существенные параметры рынка и несколько сгладит случайную составляющую рыночных движений. Для графиков другого масштаба цифры могут быть другими.

    Приведенные рассуждения не отличаются особой строгостью, но она здесь и не требуется. Если результаты тестирования приведут вас к необходимости по каким-либо причинам использовать другие размеры выборки и величины сегментов данных – это можно сделать в любой момент. Возможные причины уменьшения размера дополнительных сегментов мы рассмотрим позднее.
  3. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.3. План и задачи исследований.

    5.3.1. Торговая система (системы) без настраиваемых параметров.

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

    В случае торговых систем без настраиваемых параметров нет смысла и необходимости секционировать исторические данные. Такую систему можно тестировать сразу на всем диапазоне имеющихся данных, поскольку параметры тынка и параметры торговой стратегии не зависят друг от друга. Поэтому запускаем тест и переходим к отчетным данным для оценки качества торговой стратегии по выбранным нами критериям.
  4. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.3.2. Этапы тестирования торговых систем с оптимизацией.

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

    Типовая процедура оптимизации, как уже отмечалось выше, включает несколько этапов.

    Этап.1. Первоначальная оптимизация – определение параметров МТС.
    Первоначальная оптимизация проводится на основном или стартовом сегменте данных и её целью является поиск параметров торговой модели, способных увеличить эффективность МТС.
    Оптимальные параметры модели для первого сегмента подыскивается путем простого подбора значений параметров модели, при которых параметры МТС оказываются наилучшими.
    Первоначальная оптимизация производится исключительно в пределах стартового сегмента данных, который называется выборкой (sample) и используемый для поиска наилучших значений изменяемых параметров торговой модели. Данные более позднего времени, не подвергавшиеся анализу на этапе первоначальной оптимизации, именуются данными вне выборки (out-of-sample) и будут использованы для продолжения оптимизации на следующих этапах.
    На этапе 1 определяются оптимальные значения параметров, обеспечивающие наилучшие характеристики МТС с точки зрения выбранных критериев оптимизации, однако результаты тестирования на выборке не дают объективной информации об эффективности торговой стратегии. Достоверные данные о параметрах полученной в результате тестирования МТС, характеризующие эффективность системы, могут быть определены только после проведения анализа данных вне выборки.

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

    Этап 3. Добавление данных.
    Сегмент данных, использованный на этапе 2, добавляется к стартовому сегменту этапа 1, увеличивая тем самым количество данных в выборке, и мы опять переходим к этапу 1, но на изменившемся диапазоне исторических данных.

    Этап 4. Циклическая оптимизация.
    Действия этапов 1-3 многократно повторяются до тех пор, пока не будут использованы все данные, находившиеся вне выборки. Т.е. процесс оптимизации, описанный в п.1, проводится с использованием данных, вошедших после этапа 2 в выборку. Далее проверяем полученный параметр на следующем сегменте данных вне выборки и т.д. до тех пор, пока количество данных вне выборки не будет исчерпано.

    Этап 5. Оценка результатов.
    Если анализируемые данные не случайны, а количество сегментов достаточно велико, то в ходе тестирования можно получить достойную доверия информацию о поведении и эффективности торговой системы в течение ряда лет. Полученные результаты покажут, насколько прибыльной и стабильной оказалась торговая система или системы, и дадут возможность из нескольких прошедших тестирование систем выбрать одну для наиболее успешной работы в реальном времени. Ваша торговая модель, таким образом, прошла объективную проверку, по результатам которой она может быть принята или отвергнута.
  5. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    В случае, если оптимизируемый параметр МТС, протестированный на материале всей совокупности данных вне выборки оказался эффективным, следует провести последнюю оптимизацию на полном интервале имеющихся исторических данных и получить значение параметра для последующего использования в реальном времени.

    Не стоит поддаваться соблазну и пропускать полную процедуру исследования системы с прохождением этапов 1-5, а сразу переходить к тесту на основе всех имеющихся данных. При этом будет упущена важнейшая информация о слабых и сильных сторонах МТС, а также об эволюции, которую она претерпевает с течением времени.

    Проводя моделирование и оптимизацию, можно оставлять в выборке все данные, независимо от того, насколько они устарели. Законы поведения рынка устанавливаются людьми, а человеческая природа мало меняется с течением лет. Старые данные, таким образом, могут быть весьма значимыми, а поведенческие модели, характерные для прошлого - иметь тенденцию к повторению.

    С другой стороны допустимо систематически удалять из выборки некоторое количество данных, относящихся к наиболее раннему периоду, заменяя их равным количеством данных из периода вне выборки. Иными словами, для выявления специфического параметра может использоваться скользящее временное окно установленной длины. Это целесообразно в случае допущения, что основные характеристики рынка существенно меняются с течением времени, тогда удаление наиболее старых исторических данных представляется оправданным. Кроме того, такой подход позволяет проследить эволюцию оптимальных параметров МТС со временем.
  6. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.4. Рекомендации по оценке результатов тестирования.

    Разработка надежных прибыльных торговых систем – сложная задача, которая если и поддается практическому решению, то с существенными ограничениями. Сколько бы мы ни экспериментировали с модификацией параметров систем и с развитием их торговых моделей, мы всегда будем находится рядом с ненадежными системами, ибо так устроен рынок.
    Для оценки торговых систем необходимы некоторые критерии качества, с помощью которых можно было бы сравнивать параметры различных МТС. Это не такой простой вопрос, как кажется. На рынке, где все течет и все изменяется постоянно и никогда ничего не повторяется, трудно найти подходящий для всех случаев критерий качества разработанной торговой системы.


    5.4.1. Достоверность результатов тестирования и оптимизации.

    Одна из наиболее частых ошибок при разработке механических торговых систем - это переоптимизация или сверхподгонка торговых правил к специфическому набору данных.

    Прежде чем поверить в то, что разработан «священный грааль» торговых систем, необходимо проверить следующие моменты:

    • Необходимо обратить внимание на линию эквити, которая с одного взгляда позволяет оценить работу торговой системы в целом. В идеальном случае это должна быть пологая восходящая линия. Резкие пики и спады на этой линии свидетельствуют о том, что торговая система неустойчива и рискованна. Также необходимо отметить, что систему, которая генерирует “гигантскую” прибыль на одной сделке, например, короткая позиция во время биржевого “краха”, также нельзя признать пригодной для повседневной работы.

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

    • Если используется оптимизация на полном массиве данных без процедуры циклической оптимизации, то необходимо провести повторную оптимизацию, используя только половину массива данных, а затем протестировать оставшуюся половину с использованием полученных оптимальных значений параметров. Если тест достоверен, то результаты двух тестов должны быть похожи.

    • Хорошая система должна работать при всех типах трендов, поскольку заранее никогда не известно, когда рынок поменяет направление тренда. Ценами на рынке управляют человеческие ожидания, и нереально, чтобы механическая система последовательно прогнозировала изменения в этих ожиданиях.
  7. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.4.2. Комиссионные и спред.

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

    Влияние комиссионных, спреда и проскальзывания незначительно для систем, которые обеспечивают размер средней прибыли на сделку, значительно превышающий размер издержек торговых операций.
  8. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.4.3. Соотношение размера и количества прибыльных и убыточных сделок.

    Процент прибыльных сделок не имеет самостоятельного значения при оценке качества торговой системы.

    В частности, некоторые высокоэффективные торговые системы чаще совершают убыточные сделки, чем прибыльные. Поэтому кроме процента прибыльных сделок необходимо также обратить внимание на отношение средней величины выигрыша (Average Win) к средней величине убытка (Average Loss), выводимое в результатах теста систем.

    Ряд сомнительных моделей может чаще попадать в цель, чем промахиваться, но цена таких редких промахов будет очень высока. С другой стороны, некоторые вполне приличные системы могут иметь количество убыточных операций больше чем прибыльных, но давать превосходный результат из-за высокого отношения средней прибыли к среднему убытку.
  9. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.4.4. Другие критерии качества, используемые при оценке систем.

    5.4.4.1. Фактор восстановления.
    Основным параметром действенности МТС является отношение общей чистой прибыли к максимальному падению капитала, известное также как отношение вознаграждение/риск или фактор восстановления.

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

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

    Тестер систем программного комплекса Метасток не рассчитывает фактор восстановления, эти расчеты придется проводить самостоятельно.
  10. 8,713
    Комментарии
    98
    Темы
    15649
    Репутация Pro
     
    Старожил

    7 Медалей
    5.4.4.2. Профит-фактор.
    Профит-фактор представляет собой отношение суммы всех прибыльных сделок к сумме всех убыточных. Профит-фактор является интегральным показателем, оценивающим общие характеристики системы, как при тестировании, так и на стадии применения.
    Эмпирически принимается, что значение профит-фактора должно составлять не менее 1,6. Если профит фактор системы превышает 1,6, то система показывает хорошую эффективность, если менее 1,6, то недостаточную. В этом случае необходимо проанализировать статистику совершенных торговых операций, выявить сделки, которые внесли максимальный вклад в снижение профит-фактора, и провести целенаправленную модификацию системы.

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

Вверх
РегистрацияX

чтобы писать, читать, комментировать