Павел Целищев
Павел Целищев Блог компании Marketstat
25 мая 2018, 00:36

О тренде формально.

О тренде формально.

А точнее о том, как формализовать тренд в алго торговле на примере ТСЛаб.

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

Итак, как человек, не верящий в систему с одним параметром, всякий раз при разработке нового алгоритма я пытаюсь впихнуть в него какой-нибудь фильтр, который изрядно увеличит количество этих самых параметров, а заодно и профит). Вбил я себе в голову, что нельзя торговать какой-то сетап (паттерн) в отрыве от контекста. Ну вот и фильтрую всё ненужное. Входим на пробой уровня в лонг? Только если глобально рынок растет! Продаем отскок от value area high? Только если глобально снижаемся, или во флете..

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

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

Итак, вся суть первого способа заключается в тех буквах… AMA! Или Adaptive Moving Average. Всё до безобразия просто: смотрим на изменение AMA и на основе этого делаем вывод какая тенденция сейчас превалирует.

Теперь немного подробнее и с примерами. Для начала давайте объясню, почему именно AMA, а не какие-нибудь другие буквы (SMA, EMA, ТЬМА). В отличие от других скользящих средних, эта имеет одно замечательное свойство. Если говорить простым языком, то она может менять свой период в зависимости от рыночных условий. Когда на рынке есть направленные и импульсные движения, она ведет себя как быстрая скользящая средняя, когда же на рынке флет, её характер меняется на “медленный”. На практике это означает, что в тренде она будет меняться быстро, а во флете, напротив, даже не пошевелится… Этим и будем пользоваться.

 Сравнение АМА и SMA

Итак, весь фильтр сводится к одной простой формуле (пример для Ап тренда):

AMA-AMA[-1]>N

Попросту говоря, если за одну свечу значение АМА меняется больше, чем на N пунктов, то мы считаем, что на рынке тренд вверх. Через величину изменения мы по сути дела определяем крутизну скользящей. Чем больше N, тем круче будет расти AMA, тем сильнее тренд.

Ясное дело, таймфрейм AMA, а также величину N мы изменяем в соответствии с поставленными задачами. N мы можем выразить как в абсолютных величинах (пунктах), так и привязать к текущей волатильности (AMA-AMA[-1]>ATR*N), или цене инструмента (AMA-AMA[-1]>CLOSE*N).

Вот, собственно, и весь фильтр. Ниже несколько примеров с отфильтровыванием Ап тренда, Даун тренда и флета.

 О тренде формально.

Определяем понижательную тенденцию

Определяем боковик

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

P.S. Если статья понравится, то в следующей расскажу про второй способ фильтрования контекста, обладающий некоторыми другими преимуществами. Например, практически полное отсутствие запаздывания ;)

 


51 Комментарий
  • Krechetov
    25 мая 2018, 00:48
    я уж думал про ама ещё лет 10 назад все забыли :)
  • Дмитрий Черников
    25 мая 2018, 07:47
    только кубиками балуетесь или на апи ваяете?
  • orbit
    25 мая 2018, 08:27
    Расскажи лучше, сколько слил денех. )))
  • Replikant_mih
    25 мая 2018, 08:31
    Ну что тут скажешь, да нечего сказать, вроде все правильно в целом, но нету новизны или какой-то изюмистой идеи.

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн