Товарищи, подскажите, как можно формализовать консолидации цены, чтобы алгоритм мог четко отличать, где тренд, а где пила?
Какие могут быть критерии для ряда данных?
Один из множества вариантов: диапазоны (H-L) последних N свечей полностью входят в диапазон N-1 свечи. Или более мягкая вариация: только закрытия и открытия последних N свечей (без учета выносов) входят в диапазон N-1 свечи.
Marcello, я так понимаю, это больше для плотных консолидаций, в которых все свечи примерно одинаковые. С этим проблем нет. Но что делать для размашистых боковиков, где даже свои микротренды есть?
v3Rtex,
однозначной формализации боковика, единой для всех, нет и быть не может.
Всё зависит от того, как вы это собираетесь использовать — то ли как фильтр трендовых сделок, то ли как способ торговли отскоков внутри боковика, то ли ещё каким-нибудь способом (пробой гориз. канала, например).
А может вы захотите выявлять треугольники? )
Вроде не тренд, но и не пила… Хотя… Кому как )
VladMih, мне просто нужно проанализировать огромный массив котировок, чтобы выяснить средние, малые и аномальные длительности боковиков. Руками тут понятное дело никак, т.к. перелопатить несколько лет 5и минутных графиков разных инструментов мне не под силу)
v3Rtex, мои слова не противоречат вашей задаче, а лишь уточняют её. Вам сначала надо определиться ДЛЯ ЧЕГО вы это затеваете, тогда станут понятны параметры, отличающие ВАШ боковик от ВАШЕГО тренда.
Тогда и остальное решится. Без этого никак.
VladMih, я так понимаю, вопрос в субъективности восприятия термина «боковик». Я под этим словом подразумеваю строго горизонтальный ценовой канал, прямоугольной формы, с равномерными колебаниями.
Ну и цели, под которые затевается все это исследование стары и примитивны — торговля непосредственно от границ пилы, когда вовнутрь, когда наоборот на пробой
v3Rtex, я и пишу о том, что надо от субъективности переходить к формализации. А вы добавили еще один субъективный параметр — «равномерность колебаний». Теперь я и о нём могу сказать всё то, что написал выше.
Если задача только в использовании границ, то задачу можно упростить в 3 раза — уберите 2 из 3-х вариантов канала, оставьте в своей задаче только выявление ОДНОГО типа боковиков — рабочего горизонтального канала. У него будет заданная вами высота и длинна. Остальное — дело техники.
Только на отбой и на пробой требования могут быть разными.
оставьте в своей задаче только выявление ОДНОГО типа боковиков — рабочего горизонтального канала. У него будет заданная вами высота и длинна. Остальное — дело техники.
Вот тут то и начинается самое интересное, ради чего я и пришел искать помощи на форум. Каковы критерии для горизонтального канала в целом? Как оперировать последовательностью чисел, чтобы заключить, горизонтальный ли это канал, либо что то иное.
Допустим, мне известны параметры для искомой консолидации, т.е. длина и амплитуда. Как двигаться дальше? Если я просто отфильтрую данные на предмет длительности и ширины, я получу все варианты, где цена прошла требуемый диапазон за требуемую длительность, и это не будет иметь ничего общего с искомыми консолидациями.
Ну а задавать длительность флета заранее не имеет смысла, т.к. это и есть цель задачи — выявить среднюю длительность консолидации.
У меня были мысли строить плотность распределения для выбранного диапазона данных, искать участки, где цена не изменилась больше опред. процента и прочее, но это все не то
v3Rtex, нет, не будет канала если цена просто прошла заданное расстояние за указанное время.
Еще раз повторю — начните уточнять свою задачу и тогда решения (пусть не все) начнут сами приходить. Нарисуйте на бумаге как должен выглядеть ваш канал и вы поймете, что для вас важно, по крайней мере не будете писать то, что сейчас написали.
VladMih, есть алгоритм. Он работает с массивом ценовых данных, где в каждой строке описана свеча в формате OHLC.
Алгоритм берет первую строчку(свечку) и следующие за ней N свечек. Далее, получившийся диапазон данных оценивается, и если подходит под критерии, алгоритм выдает результат в виде координат типа 1:N. Если диапазон критерии не проходит, алгоритм повторяет процесс, смещая диапазон данных на 1 свечку. И так до конца.
Собственно задача, которая стоит на данный момент — выявить и формализовать эти критерии, по которым чуждый до абстракций машинный код сможет определять принадлежность ценового ряда к боковику.
Вот к примеру
Критерии для отбора боковика такого типа просты — цены закрытия растущих свечей ~= ценам открытия падающих и наоборот.
v3Rtex, ГЛАВНОЕ: сформулируйте чётко свою задачу! Правильно сформулированный вопрос — это больше половины ответа, а у вас заголовок поста совсем не стыкуется с тем, о чем сейчас пишете.
v3Rtex, я тебе отправил формализацию флета (по своей тс) в личку. Только надо иметь ввиду что для GC она в принципе не очень подходит, а работает на 6B и 6E. ТФ Н1
Ой, вэй!, если бы это работало, то цена была бы около 1.6 уже позавчера (0.2 рубля оставляем на риск, что что-то пойдёт не так + 2 месяца недополученного дохода на капитал)
Собираем релизную сборку OsEngine для ускорения на 10 %. В данном посте будем учиться собирать сборку OsEngine в, так называемый, релиз. Это нужно в случае, если Вы хотите ускорить работу оптимизатора...
Придурки из Евротранса с экономили 75 млн занизив норму выплат… зачем озвучивать 8-10 и согласно отчету выходило 8 при той же норме, взять и занизить..
Самый главный минус из всего этого это недовер...
Максим, такое лучше не читать, тут прямым текстом говорится о возврате того, что в России при этом ключевое слово *некоторые* чиновники, ну отпад пишется.
Чингачгук (Великий Змей), понятно. Если бы я контролировал этот процесс, то я бы сказал монтажнику: «делай как себе, и я тебе доплачу. Но если мне это не понравится, потеряешь больше»…
Ольга Тимченко,
это удел обычных, если брать масштабы государств и исторических эпох., да и без ракет в отдельных государствах страдают обычные люди, шортсквиз тоже принесет страдания обычным лю...
однозначной формализации боковика, единой для всех, нет и быть не может.
Всё зависит от того, как вы это собираетесь использовать — то ли как фильтр трендовых сделок, то ли как способ торговли отскоков внутри боковика, то ли ещё каким-нибудь способом (пробой гориз. канала, например).
А может вы захотите выявлять треугольники? )
Вроде не тренд, но и не пила… Хотя… Кому как )
Тогда и остальное решится. Без этого никак.
Ну и цели, под которые затевается все это исследование стары и примитивны — торговля непосредственно от границ пилы, когда вовнутрь, когда наоборот на пробой
Если задача только в использовании границ, то задачу можно упростить в 3 раза — уберите 2 из 3-х вариантов канала, оставьте в своей задаче только выявление ОДНОГО типа боковиков — рабочего горизонтального канала. У него будет заданная вами высота и длинна. Остальное — дело техники.
Только на отбой и на пробой требования могут быть разными.
Вот тут то и начинается самое интересное, ради чего я и пришел искать помощи на форум. Каковы критерии для горизонтального канала в целом? Как оперировать последовательностью чисел, чтобы заключить, горизонтальный ли это канал, либо что то иное.
Допустим, мне известны параметры для искомой консолидации, т.е. длина и амплитуда. Как двигаться дальше? Если я просто отфильтрую данные на предмет длительности и ширины, я получу все варианты, где цена прошла требуемый диапазон за требуемую длительность, и это не будет иметь ничего общего с искомыми консолидациями.
Ну а задавать длительность флета заранее не имеет смысла, т.к. это и есть цель задачи — выявить среднюю длительность консолидации.
У меня были мысли строить плотность распределения для выбранного диапазона данных, искать участки, где цена не изменилась больше опред. процента и прочее, но это все не то
Еще раз повторю — начните уточнять свою задачу и тогда решения (пусть не все) начнут сами приходить. Нарисуйте на бумаге как должен выглядеть ваш канал и вы поймете, что для вас важно, по крайней мере не будете писать то, что сейчас написали.
Как вы делаете цитаты в комменте?
Алгоритм берет первую строчку(свечку) и следующие за ней N свечек. Далее, получившийся диапазон данных оценивается, и если подходит под критерии, алгоритм выдает результат в виде координат типа 1:N. Если диапазон критерии не проходит, алгоритм повторяет процесс, смещая диапазон данных на 1 свечку. И так до конца.
Собственно задача, которая стоит на данный момент — выявить и формализовать эти критерии, по которым чуждый до абстракций машинный код сможет определять принадлежность ценового ряда к боковику.
Вот к примеру
Критерии для отбора боковика такого типа просты — цены закрытия растущих свечей ~= ценам открытия падающих и наоборот.
Каковы критерии для такого боковика: