Микаелян Саро
Микаелян Саро личный блог
27 марта 2019, 19:35

Сложности в алгоритмизации боковика

Приветствую!


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

1 Что есть боковик? почему в одном случае мы считаем что это боковик, а в другом похожем случае это не является боковиком?
2 Размер боковика! Локальный боковик может быть как 0.1% от цены так и несколько процентов от цены. 
Так же можно описать множество пунктов, но они все смежные будут с выделенными двумя пунктами. 

Как определить, что рынок возле той или иной цены остановится и пойдет обратно? только не постфактум, а именно онлайн. Да, мы рисуем уровни руками, или же смотрим на объемы и тд, но изначально никто не знает где и почему цена остановилась. Мы всегда наблюдаем уже постфактум, либо это синусоида цены, либо  накопление объемов на уровне и тд. А значит мы с определением боковика всегда будем опаздывать от реального рынка. 
Второй же пункт, это границы бокового движения. Пример сбера, последние две три недели он гулял в большом диапазоне от 20300 до 21000 грубо говоря, но при этом были и локальные уровни остановки цены в пределах 100-200р канала. В таком ракурсе получается, что при движении от нижнего канала к верхнему с учетом остановок, можно получать 300-400р с движения если отталкиваться от того, что цена вышла из маленького боковика и движется к большому. 
Именно эти сложности приходится преодолевать при алгоритмизации. Ведь алгоритм должен сам определить боковое это движение или вялотекущее направленное. 
Пока что не придумал ничего толкового. Есть идея, которую наполовину реализовал
1 проверяю выше закрытие предыдущего или нет, и строю верхний канал по большему значению
2 аналогично для нижнего канала, проверяю ниже мы предыдущего закрытия или нет. 
3 слежу за ситуациями при которых верхнее значение канала как и нижнее значение не менялось более 60минут (это уже параметр, можно и без него конечно, через счетчик получив просто силу канала, например что мы 5 часов не вышли за границы, или же например сколько раз «кололи» канал но вернулись в его границы и тд)
4 канал считается не действительным при резком закреплении цены выше его границ, допустим большой минутной свечой закрылись выше/ниже границ
5 границы канала должны меняться после направленного движения и новой остановки
6 размах от верхнего к нижнему значению, не должен превышать Х% от цены 

Какие минусы
1 Процент размаха дает возможность смотреть маленький ли канал в данный момент или большой, но это является параметром, а значит может привести к «лудоманству». Каких либо других возможностей поиска локального боковика пока что, не видится возможным, потому остановился на этом
2 Я всегда опаздываю за ценой. Если действовать сразу и брать с первых же баров определение боковика, то будет очень большое количество ложных определений, и соответственно, множество не правильных входов
3 Любые остановы движения цены, ломают логику и идет поиск очередного боковика, обычно это преждевременно получается. 
4 Ложное расширение боковика, которое можно определить только постфактумом и нужно перерисовывать границы. 
Ниже примеры в картинках
 Сложности в алгоритмизации боковика
Ложный выход из боковика
Сложности в алгоритмизации боковика

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

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

40 Комментариев
  • виталюня
    27 марта 2019, 20:06
    Глупость скажу но очень хочется 

    Границу боковика определяет стоп и тейк

    Обяснять не буду 
  • T-800
    27 марта 2019, 20:17
    Алгоритма нет, но есть рабочий совет, как действовать:
    Волю в кулак, нервы в узду,
    Нашел боковик, не ахай!
    Заработал бабла — посылай всех в п… зду,
    Не смог — сам пошел н… акуй!
  • Андрей К
    27 марта 2019, 20:28
    Берём экстремумы за последние n свечей. Смотрим чтобы верхние экстремумы отличались друг от друга в заданном диапазоне (m пунктов). Тоже самые делаем с нижними экстремумами. Если условия проходят, то боковик длится уже n свечей. Я давно так уже делал
    • SergeyJu
      27 марта 2019, 20:49
      Андрей К, определили боковик. Как это применить? 
      • Андрей К
        27 марта 2019, 21:23
        SergeyJu, 
        Как это применить? 
        да фиг его знает.

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

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


    • ezomm
      27 марта 2019, 23:43
      Андрей К, ADX(14) . Линия мишек и линия бычков. У А.Элдера тоже сила мишек и сила бычков. Автора я не понимаю тк уже забыл -когда я занимался такими вопросами.Мне интереснее как кукл переводит цели(расчетную цену) во время с помощью манипуляций с объемом. Как можно писать какие то алгоритмы не зная что такое тренд? Даю подсказку — тренд это нечетное количество новых перемен.Сила тренда в перекрытии волн=  L-ref(H,-2)= для роста.
  • XXM
    27 марта 2019, 20:34
    Разве можно ответить иначе на этот вопрос?

  • Дмитрий Новиков
    27 марта 2019, 20:51
    Границы= (Среднее из N интервалов (ln(последняя цена/предыдущая цена)-ln(средняя цена))^2. Получаем дисперсию (разброс относительно среднего). Из дисперсии извлекаем корень (дисп^0.5) Вот и вся ширина канала, в процентах. Так понятно?
      • Дмитрий Новиков
        27 марта 2019, 21:03
        Микаелян Саро, Только побольше интервалов возьмите.
      • Александр Элс
        28 марта 2019, 13:37
        Микаелян Саро, Дмитрий — вумный. Не то что я. Я тоже когда пытался строить наклонные каналы, дорыл до каналов регрессии, но застрял. Еще там вариант есть брать по пикам, типа фрактал или зиг-заг и на них строить что-то. Криво выходило и не понятно было где конец канала рисовать и начинать новый.
        Но сервисы типа FinViz как то рисуют автоматически фигуры ТА. Значит задача посильна.
        Оч хотелось бы докопаться.
  • А. Г.
    27 марта 2019, 22:14
    Боковик бывает двух видов: боковик — случайное блуждание и боковик — контртренд. В первом торговать бессмысленно, а второй отличает отрицательная корреляция соседних приращений цен. Во втором случае можно вообще границы не определять, а усредняться по «разумной» сетке и тейки делать по ней же. Всегда «поймаешь» реальные границы, если конечно это контртренд.
      • А. Г.
        27 марта 2019, 22:55
        Микаелян Саро,  если пренебречь издержками, то таймфрейм значения не имеет. Более того, именно на минутках внутри дня контртренд имеет более высокую долю, а на дневках глобально нельзя говорить о существовании контртрендов, хотя в отдельные годы они статистически выделяются своей долей. 
    • Александр Элс
      28 марта 2019, 13:45
      А. Г., вот я тоже делал скальпера с усреднением на разных идеях: и с фикс уровнями и просто по боллинджерам — результат примерно одинаковый выходил. Получается, определять границы особо нет смысла? Достаточно смотреть какой-то средний локальный разброс или отклонение и стараться поймать его границы. Но, выброс может быть пробоем и тогда профит боковика быстро начинает таять :) Не хватает какого-то еще компонента, потому что стопы тоже не прогнозируемы. Большие — набираем опасную позицию и когда-то они реализуются. Маленькие — играем в игру с отрицательным ожиданием.
      • А. Г.
        28 марта 2019, 13:48
        Александр Элс, да у меня собственно эта торговля с нулевым средним. Поэтому как в такой торговле на линейных активах добиться прибыли, я не знаю. Наверное ее лучше  применять к разным спредам. Вся ее «прелесть» для меня в том, что она снижает просадки трендовых систем.
      • Дмитрий Овчинников
        28 марта 2019, 14:17
        Александр Элс, 
        ключевая ошибка- усреднение.

        Контртренд выигрывает за счет высокого соотношения прибыльных сделок к убыточным, при этом средняя прибыльная сделка априори будет меньше средней убыточной. Усреднением вы существенно увеличиваете среднюю убыточную сделку, а соотношение прибыльных к убыточным увеличиваете несущественно. 
  • Vanches
    27 марта 2019, 22:15
    А пробовали этот способ:
    https://www.mql5.com/ru/market/product/7648
    Чем меньше значение, тем более выраженный боковик. Моя разработка ;)
    • Александр Элс
      28 марта 2019, 13:39
      Vanches, TR/ATR — волатильность относительная. Юзал как фильтр. Где то улучшает гладкость эквити. Использовать можно, но для определения канала не особо помогает.
  • Replikant_mih
    27 марта 2019, 22:23
    Ну тут два варианта) — либо ты прогнозируешь либо идентифицируешь. Хотя по факту, конечно, это частные случаи от одного общего. Если ты идентифицируешь — тут понятней с критериями, просто надо понимать, что ищешь, понять как искать и дальше, собственно, находить. Но если ты идентифицируешь боковик по факту его обнаружения — тут важен критерий инерции — а даст ли тебе что-то факт обнаружения? Боковики скорее продолжится или скорее разродится импульсом. Нипанятна). Ну а с прогнозированием боковика — ну опять-таки, если критерий определения боковика пост-фактум определен четкий, то ничто не мешает проверить разные закономерности на предмет прогнозирования боковиков. Т.е. ты бэктестишь не способность системы торговать в плюс, а способность системы прогнозировать боковики. Ну а дальше уже следующим слоем отторговываешь боковики. 
  • Friendly Deep Space
    27 марта 2019, 22:27
    Если эквити примитивного трендового робота приобретает плавную нисходящую траекторию, значит точно на рынке боковик)
  • Тимофей Мартынов
    27 марта 2019, 23:17
    Хорошая тема!
    • VladMih
      27 марта 2019, 23:23
      Тимофей Мартынов, прям благословляешь, как минимум как отец.
      Делаешь это постоянно — аж тошнит. Лучше бы плюсанул тему.

      Не как хозяину написал, а как человеку, поэтому не извиняюсь. )
    • ezomm
      27 марта 2019, 23:53
      Тимофей Мартынов, Ага? ребята колесо изобретают, а проги по волно анализу давно написаны типа EWA 3.0-6.0. Ребят надо ткнуть носом в цену закрытия свечи и спросить — что это и зачем это?.. Что есть свеча? Чем крест от марибозы отличается психологически?
  • ezomm
    27 марта 2019, 23:57
     Я популярно объясняю для невежд.Тренд — это  9-3-1 новых перемен и больше ничего. Все остальное те тренд это или слабый тренд или растущий боковик? Ответ в правиле перекрытия.Учим волновую теорию и становимся гуру.
    • spebe
      28 марта 2019, 10:39
      ezomm, хорошее определение, но есть еще лучше)))
      И главное — не просто заметить закономерность, а понять почему и как определенные перекрытия влияют на способность тренда продолжиться или загнуться. Кстати, оттуда же становится ясно зарождение боковика, в самом его начале. 
  • Владимир Безукладов
    28 марта 2019, 00:02
    А можно ещё самому назначать будущие боковики.

    • Александр Элс
      28 марта 2019, 13:41
      Владимир Безукладов, эт у вас бот скальпирует по уровням на ATR или работа такая у вас? :)
  • Влад(и)Мир
    28 марта 2019, 10:36
    1) используйте средние цены для каждого бара, вместо Hi/Lo.
    2) бОльшая часть точек должна попадать в получаемый прямоугольник.
  • spebe
    28 марта 2019, 10:55
     Боковик имеет два происхождения, и оба связаны с понятием поддержка/сопротивления. Проблема алгоритмизации начинается с проблемы реального представления, что такое S/R. В одной из дискуссий с известным бывшим местным персонажем я дал ему самое общее определение S/R, как сильное желание большой группы игроков/одного крупного игрока купить или продать инструмент. За это был сначала «высмеян», а потом и занесен в ЧС))).
        Смех или сожаление, однако, вызывают именно попытки определить S/R и все, что с ними связанно, с помощью нехитрых технологий: скользящие средние (как у упомянутого персонажа), каналы, и т.п.
        Но S/R — не единственные маркеры будущего боковика. Их в моей системе убеждений — 6 шт. Второй из которых — как я их называю — «фаза спекулятивного цикла».
        В общем и целом, есть четкие критерии боковика (включая расширяющийся), в самом начале его зарождения.    
  • GSV_pusher
    28 марта 2019, 18:29
    Я использую подход в котором минимизирую возможность попадания в боковик: использую такие фазы рынка, в которых боковик маловероятен. Это — фазы рынка с «естественной» волатильностью:
    — начало-конец рабочего сессии
    — начало-конец недели
    — начало-конец месяца
    ну и так далее. есть ещё много поведенческих паттернов

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

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