Блог им. Tyam

Поисковик волновых паттернов

 
 Поисковик волновых паттернов
2020 год.
    — Эллиот? Вульф? Хмм… Нет, не слышал. Старичок, ты от куда?
2016 год. Векипедия.   
    Волновой анализ рынка ценных бумаг — анализ движения котировок при помощи программы StockPatternViewer в режиме поиска волн.
Present Day:
    ЗакончилWave Pattern Viewer. Это такая БЕСПЛАТНАЯ программа для поиска волновых паттернов и сбора по ним  статистики. Получилось немного лучше, чем ожидал… Ну, если честно, то прямо откровение какое-то. Было даже пару мыслей притырить, как сделали сотни программистов до меня. Но нет! Я хочу посмотреть на Их и Ваши лица. Они же даже и продавать такие штуки не хотят редиски, а я БЕСПЛАТНО ВСЕМ РАЗДАМ!!! Ахахахаха!!! (Разразился хохотом)

Качаем: http://sib-algo.ru/pattern-viewer
 
 
Новости проекта:
1) Сменил вывеску, с пафосного WangStation  на говорящее StockPatternViewer;
2) Добавил дополнительный вид паттернов. Волновой, на основе индикатора ZigZag;
3) Расширил список собираемой статистики во время прогона. Теперь программа ещё собирает статистику по первому пробою пределов паттерна и по первому закрытию цены за пределами паттерна. Вопрос: Какую ещё статистику можно собрать?
4) Поправил несколько ошибок.
5) Поправил кое-чего в архитектуре. Теперь на зло врагам могу клепать поисковики по одному в день.
6) Добавил возможность просматривать приращения цены после паттернов в виде Графика. В углу каждого поисковика в связи с этим появилась кнопка "IncrementChart". Вот так:
 
 Поисковик волновых паттернов
    В нижней части графика показаны приращения после каждого паттерна в процентах. В верхней части, его суммированное значение.
1) На самом графике можно выбрать движение после определённого паттерна и его номер появиться в поле «Выбранный паттерн».
2) После того, как выбран какой-то паттерн можно нажать на кнопку «Перейти» и график основного окна (с котировками), переместится к этой формации.
3) Навигация
 
 WavePatternViewer  Общие сведения и ограничения 
   
    1. Прогон паттернов на основе этого индикатора очень тяжёл для процессора ПК. Поэтому автоматический подгон Коэффициента узнаваемости включать не рекомендуется. А если включен, то надо понимать, что время прогона в таком случае может увеличится от 2 до 10 раз.
    2. Поисковик во время сверки паттернов смотрит на вертикальное распределение вершин и игнорирует горизонтальное расстояние между ними.
    3. Во время прогона паттерна на истории используется динамическая генерация рыночных данных и происходит генерация ZigZag. Поэтому возможны вот такие штуки:
Поисковик волновых паттернов
 
    Т.е. не зная будущего, в момент формирования волны, алгоритм определил формацию (выделено красным) как искомый паттерн и снял по ней статистику.
    Время начала анализа движения начинается на открытии третьей свечи от последней вершины:
Поисковик волновых паттернов
 
    Именно в момент открытия этой свечи заканчивает формирование последняя вершина. Напоминаю, для тех кто не юзал Candle Pattern Viewer, что конец сбора статистики регулируется во всплывающем меню «Выход через». 
ZigZag
 
    Для расчета ZigZag существует несколько способов, в зависимости от того, какой тип локальных вершин / минимумов использовать для его построения.  Фракталы или другие, экстравагантные типы обозначения вершин / минимумов. В данном случае использован способ создания ZigZag на фракталах.
    Для того чтобы регулировать минимальную длину волны ZigZag, надо записывать её в поле «длинна волны»:
Поисковик волновых паттернов
Также, рядом регулируются количество вершин в паттерне.
Статистика выхода за формацию и пробоев собирается по последней волне в паттерне.
 
 
Планы:
1) Fractal Pattern Viewer and Fractal+Candle Pattern Viewer. В начале следующей недели.
2) Тесты со шлюзом пора заканчивать. В конце следующей недели коннект с Quik и динамически обновляемым файлом. Будет возможность подключиться к нескольким инструментам одновременно, и к каждому подвесить по нескольку поисковиков. Короче: БОМБА. Свой личный Гуру у каждого дома, с 10 летним опытом непрерывной торговли одновременно нескольких инструментов, таймфреймов и рыночных парадигм.
 
ВНИМАНИЕ! Перед употреблением необходимо убедится, что ваш ноутбук (ПК) продут, а на процессоре свежая термопаста!  
 
    Напоминаю, что делаю проект один. И кроме Вас больше некому посмотреть на программу со стороны. В проекте уже больше 100 классов и километры кода. Наверняка я где-то ошибся. Поэтому она может падать и глючить в каких-то местах. Если нашли баг, обязательно пишите. Исправлю. 



 
Ну и где твоя совесть, А? Скачал => поставь плюс.
★34
64 комментария
AdvancedGET наше все, а за усердие поставил плюсик в профиль.
avatar
acme, Спасибо.
?? Пиаришь клона TsLab.
Что в AdvancedGET есть блоки машинного обучения для динамического подключения к рынку?
Или быть может функционал по формализации и поиску прибыльных паттернов?
Или она бесплатна?
Алексей Ван, парень, ты с какого района? )
авторов ТсЛаб еще в проекте не было, когда появился АГет.
avatar
acme, ))
Ок. TsLab это клон AGet. Но несмотря на это, подобного функционала как в Pattern Viewer ни в одной, ни в другой программе нет.
Алексей Ван, очень интересная штука, законнектите с квикой отпишитесь!
avatar
СМ, В следующую субботу, на этом же месте.
Алексей Ван, ок, спасибо!
avatar
Алексей Ван, есть, например в моей голове такой Pattern Viewer, что ни одна программа не угонится )
… в любом случае успехов, надо же кому то изобретать велосипеды.
avatar
Автор,

чем не устроили Amibroker, Metastock или wealth-LAB?

Там все это есть безо всяких мучений
avatar
s_mike@rambler.ru,
Приветствую.
))
Там этого нет.
Вот по этому.

upd:
1) Никаких мучений. Всё в два клика. Пол часа и смотришь любые волновые формации. Со статистикой движения после волны и шансами на пробои и т.д.
2) Никаких внутренних языков.
3) Удобная навигация по найденным паттернам.
4) Бесплатно.
Алексей Ван,

Да вы что? На самом деле? какие-то разные у нс амиброкеры…

Поиск паттернов в том виде, что у вас, реализуется там за полчаса.
avatar
s_mike@rambler.ru, А в ТСЛаб за час. А… за 20 минут. Просто надо выучить внутренний язык платформы перед этим, потратив на это несколько недель/месяцев. Потом сделать. Всё очень и очень просто же.
Ну и чтобы просмотреть 500 паттернов, надо 500 раз код стратегии переписать. Но это же такая мелочь.
Ну и конечно же, в следующую субботу в Амиброкере появиться возможность динамически парсить текущие из терминала паттерны и выдавать по ним статистику в течении нескольких секунд после их появления в ядре биржи.
Вы меня раскусили с товарищем. Я делаю Баян.
Алексей Ван, несомненно. Именно баян.
avatar
возможность динамически парсить текущие из терминала паттерны и выдавать по ним статистику в течении нескольких секунд

Хм. А разве это невозможно прямо сейчас делать в амиброкере?
avatar
s_mike@rambler.ru,
Не могу спорить. Все мои статьи вызывают срач страшнейший. Что делать не знаю…
Давай попробую объяснить как я это вижу.
На свечках.
Pattern Viewer: пришло 10 свечек из Quik, и программа берёт эти 10 свечек и проверяет на истории, смотрит как цена вела себя после такого паттерна, собирает статистику. И выдаёт трейдеру статистику движения после конкретных 10 свечек.
TsLab/AmiBroker и т.д.: пришло 10 свечек из Quik, смотрим шаблон (ы) в стратегии и выдаём результат: Наш шаблон / не наш шаблон.
Не так?
Алексей Ван,

Способов сделать в амиброкере такую штуку я вижу несколько.

Если делать в режиме индикатора.

Приходит ТИК (!) — амиброкер смотрит историю на требуемую глубину, детектирует паттерны на всей этой истории, собирает статистику на требуемом таймфрейме (таймфреймах) и выдает ее. Приходит следующий тик — все по новой.

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

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

Если график не нужен, то можно делать все в режиме автоанализатора. Анализ истории с периодичностью 1 секунда, никаких красот, на выходе табличный результат.

Если уж совсем охота поизвращаться — то оптимизатор амиброкера в помощь. В этом случае можно сделать хитро: задать паттерны не жестко, а с допустимыми отклонениями (оптимизируемыми параметрами в терминологии амиброкера). Запускаете оптимизатор по расписанию с какой-то периодичностью (например 1 час) — он вам соберет информацию по всем возможным модификациям паттернов в задаваемых вами пределах.
avatar
s_mike@rambler.ru,
Хорошо. Это можно и в Excel сделать, без разницы. И в TSLab. Там есть для таких хитрозадых, вроде меня и Вас Api для этого дела. Есть? — да.
Только никто не сделал и не выложил в открытый доступ подобную программу кроме меня. Нет разве? Или есть где-то уже скрипт / плагин для какой-то платформы с таким функционалом? Ну нет же)) Это я гарантирую. В каждом посте мне пишут что я Баян делаю. И не один ещё ссылку не дал на подобную штуку. Посмотрите мои предыдущие посты на тему.
Кроме того для этого нужно выучить внутренний язык платформы (ну или Excel) и быть специалистом в ней. Займет это с нуля очень много времени. От нескольких месяцев до лет.
А тут готовое. Качай и через пять минут проверяй своих Гусевых, Вульфов, Эллиотов, Россов. Никаких языков, паролей, кряков/х… ов, без траты времени. + будут ещё много паттернов по такой схеме. Круто же))
В этом согласен. ))
avatar
Напиши, когда первый миллион usd с помощью программы на реальном рынке поднимете.
Надеюсь к этому моменту все мы еще живы будем.
avatar
Ссылка битая, на конце ненужный пробел.
avatar
Лучше чем индекатор зиг заг, который находится в терминале нету относительно волновой разметки
Программа может автоматически торговать?
avatar
Станислав Дорошин, Пока нет.
Алексей Ван, это было бы очень удобно — нашел прибыльный паттерн и тут же запустил торговлю.
avatar
Станислав Дорошин, да.
Заложил в основание свой привод. Вся инфраструктура готова. Реализовать это можно будет довольно быстро. С автостопами/тэйками/трейлингами. Дней за 5 может. Привод с ИИ советниками. Круто. Только время бы найти на всё. Очень много работы…
Отлично, мне как раз нужно быстро искать 1-2-3
амиброкер вроде как платный, а тут халява)))
avatar
если честно, не верю в волновой и свечной анализ, но Ваш подход мне нравится. Мне кажется, интересно было бы все таки сделать полную автоматизацию, то есть, брать последний кусок, делать поиск, принимать решение, делать на истории сделку, идти дальше.

Тогда можно было бы построить эквити на истории, и на него было бы весьма интересно взглянуть.
avatar
Lafert, У меня есть такие штуки, но они корявые, падают если не на ту кнопку нажмёшь и половину параметров забивается прямо в коде.)) Поэтому выкладывать не скоро ещё буду.
Скажу пока вот что, но поверить придётся на слово: «Форвардные тесты подтверждают формацию 100% если найдено от 2000 паттернов»
Алексей Ван, ну, можно ведь только скрин выложить) По крайней мере, он покажет сразу перспективность метода) Вообще, я, конечно, считаю, что американские стаки уж точно не для алготрейдинга (интернализация, сложная система ЕЦНов и прочие технологии, отнимающие деньги), но по-моему, такие штуки надо реализовывать на амер. рынке и из 10000 стаков искать десяток подходящих, и по ним диверсифицированно заходить, но для такого подхода нужна полная автоматизация, ибо не все тут Герчики, и не все умеют просматривать 1500 стаков в час)
avatar
Lafert, Всему своё время. Не надо торопить события.
Про 1000 стаков не совсем ясно мне. У меня 4ёх ядерный проц, хороший. Он и от двух на бок ложиться при таком подходе. Но идея хорошая.
Алексей Ван, вы вообще все неправильно делаете. не буду говорить почему )))
avatar
Изико, Если это связано с рассчётом индикаторов, то очень может быть. Другие напишут если что-то не так.
Если вы про то, что надо было пилить привод по тихой, пока он не будет полностью готов и потом продать его 10000 раз за 10000. Ну может. А может и нет. Никакой предприниматель не выдержит конкуренции, когда у его соперника на рынке цена «БЕСПЛАТНО». Пусть делают и другие параллельно тоже, чё))
Алексей Ван, оставьте платежные реквизиты ( на сайте укажите ), если ваша прога поможет заработать деньги, имхо, думаю что народ обязательно отблагодарит вас.
avatar
Алексей Ван, ну понятно все умрут, а я останусь ))
avatar
Изико, Да нет никого)) Ни одной такой программы в открытом доступе. Не кому отмирать. А сегодня рынок занят чуваком, который раздаёт это что-то «Бесплатно». Через неделю подключаемся к Quik и базе финама. В понедельник-вторник ещё ТРИ — ПЯТЬ поисковиков (фракталы, свечи+фракталы, тренды, объёмы, объёмы + свечи). В течении пары недель SmartCom + ещё 3-5 поисковика. Кому то нужны эти гонки? Тратить деньги… Собирать команду может. А потом раздать бесплатно? Ахах )) Я бы посмотрел на этих пришибленных. На это никто не пойдёт…
Алексей Ван, отличный план! Кста про конкурентов. Вот недавно же был Теханализ 2.0 автор правда в Лондон вроде уехал. Он брал 100 тыр за робота у вас 70. Получается правда что вы сами с собой конкурируете )) Каннибализация. Те делаете бесплатную программу для зарабатывания денег и при этом предлагаете платный сервис по разработке роботов.
Признайтесь, вы то намайнили мешочек уже себе патернов прибыльных наверное? ;)
avatar
Изико,
Да, был ТехАнализ 2.0. Но Крамин почему-то не стал воплощать эту идею. До сих пор удивляюсь.
При помощи ЭТИХ поисковиков не майнил. Это не мой таймфрейм. И не смотря на пафосные речи, которые я так люблю ставить в начале статьи, это на самом деле единственная причина, по которой всё это вообще раздаётся.
Изико, нормальный маркетинг у него, реклама его возможностей этот бесплатный софт, заказать робота уже за деньги.
Нормальные программисты так и работают.
avatar
besttrader, программисты может так и делают… )
А вот зачем заказывать, если есть бесплатно и все умеет? Ну находить умеет, ордера ставить судя по всему будет уметь. Нафига заказывать то? А потом такое соображение, эта часть потенциально масштабируется, а клепание роботов нет каждый раз ручная (и трудоемкая) работа человека нужна. Вот Муханчиков нафигачил патернов продал за мильён (ну примерно) и доволен. А здесь сплошной коммунизм. А история про коммунизм все доказала ) Конечно если хочется быть Прометеем то ок, но тот тоже не очень закончил. ;)
avatar
Алексей Ван, может так:
«Форвардные тесты подтверждают формацию 100% если найдено от 2000 паттернов»?
avatar
XXM, )) да, так. Исправил.
можете подробней написать, как в нужный формат данные преобразовать. Что-то не получается у меня. Спасибо, прога реально крутая
avatar
tt095, формат вот такой:
DATE, TIME, OPEN, HIGH, LOW, CLOSE, VOL
Это в инструкции есть. В конце самом.
Не надо ничего преобразовывать. Лучше скачайте вот эту прогу:
www.cognitum-research.com/ru/finam-updater
Просто и быстро скачаете любые данные.
Алексей Ван, а можно брать данные из платформы ninjatrader и загружать в вашу программу?
Еще круче предложение, реализовать в связке с ней и в онлайн режиме юзать.
Расширить функционал получается.
avatar
besttrader, Пока нет.
)) Только в релизе через неделю будет функционал для подключения к Quik. Потом планируется ещё пара поисковиков, потом смартКом. Честно скажу, что Нинзи в списке срочных дел вообще не было… Подумаю как быть.
Алексей Ван, у нинзи офигенная аудитория во всем мире,
Их экосистема ninjatraderecosystem.com/, имхо, сделать функционал к нинзя и подать им заявку на партнерство, после там вы будете в их списке, география расшириться, о вас узнает весь практически мир, есть русскоязычный форум ninjafutures.ru/index.php
На этом американском форуме полно об нинзя www.bigmiketrading.com/platforms-indicators/

Вы как понял из Новосибирска, так вам еще легче, обратиться к своей землячке, которая сейчас там работает брокером в нинзя, www.facebook.com/lana.orlovsky
avatar
Но и о «нQuikе» не забыть ))

ЯЕще бы понять, что там к чему… гы))
А так, спасибо Лехе за прогу…
avatar
продолжайте в том же духе!!!
это смело и правильно взять и сделать то, что вроде можно реализовать на куче существующих инструментов.
можно, но ЛУЧШЕ сделать можно только на своем собственном софте!!!

виртуально плюсую
avatar
Автор научится показывать на истории красивые рисунки, но с будущим прогнозированием, теми способами что закладываются в программу, шансов нет.

Хорошие шашлыки за 200 рублей в Новосибирском зоопарке, вкуснятина.
avatar
Понимаю автора, очень приятно что-то посчитать и потренироваться в программировании заодно. Кстати, на первом скриншоте ошибка — там написано «Мат. ожидание», тогда как это всего лишь значение средней сделки. Мат. ожидание можно только оценить, построив для него доверительный интервал. Если попробуете так посчитать, то сразу будет видно, что на рынке у наивных подходов мат. ожидание сделки ± 0.
Zweroboi, Там нет ошибки.
Мат. ожидание можно посчитать десятком разных способов. В том числе и по «среднему арифметическому всех принимаемых значений».
Каким способом статистику не исчисляй для паттерна на первом рисунке, это всё равно останется скальперским ГРААЛЕМ.
Алексей Ван, хорошо, а это мат. ожидание для чего вообще? Для прошлого или для будущего? Если для прошлого, то его можно посчитать точно, но смысла в этом большого нет. Если для будущего — то посчитать точно нельзя, можно только оценить интервал, улавливаете? И если в этот интервал попадает ноль, то до грааля ещё придется как следует покачаться на качелях эйфория-разочарование.
Zweroboi, кстати — «фрактал» это что такое? Самый низкий лоу или высокий хай из нескольких справа или слева? Через сколько баров становится понятно, что бар это вершина зигзага? Я к тому, что как только бар появился, еще неизвестно станет он вершинкой или нет. Вы с какого момента считаете доходность для демо-сделки?

Вообще, первое правило граалестроителя — при появлении неиллюзорной доходности на истории первым делом тщательно проверить, не подглядывает ли система в будущее, а то если бы можно было открываться на вершинках фракталов, то это уже само по себе тянуло на грааль, и паттерны искать не надо.
Zweroboi,
Извини если обидел.
Я просто написал как есть в «Теории вероятности». И я с этим согласен. Хочешь сратся — пожалуйста, пиши претензии в министерство образования, пусть учебники и теории переписывают. Зачем разводить антинаучную демагогию в посте человека с двумя высшими, одно из которых техническое, мне не совсем ясно.
Ответы на твои вопросы в посте. На рисунках.
Про Граали и ошибки — согласен. Надо проверять почему так вышло. Может и ошибка.
Алексей Ван, у Вас два высших образования? А слово «сраться» без мягкого знака пишете =) Шутка.

Я просто может быть не заметил чего-то необычного на скриншоте. Это какой-то особенно удачный паттерн?
Zweroboi, Форвардные тесты, при количестве входов от 2-3 тыс. полностью подтверждают практически любую тенденцию. И мат. ожидание и всё прочее. Не было ещё у меня случаев, чтоб не подтвердили. В каждом посте это пишу по нескольку раз.
Ну а если 100 — 300 совпадения, то да… В этом случае это просто цифры, не несущие в себе особой нагрузки. Вот в таком случае может и стоит рассчитывать М.О. как-то по хитрому и сгонять в null. Можно подумать над этим…
Алексей Ван, а можно где-то почитать про «Анализ первого пробоя
всего пробоев» и всё, что ниже? Не совсем понимаю, как в этом ориентироваться. Спасибо.
Олег Заворотный, Да, об этом пару строк всего в статье. Добавлю в следующем релизе в инструкцию подробности.
В ZigZag алгоритм смотрит на свечи сформировавшие последнюю волну и анализирует выход за их пределы. Если цена вышла за пределы, но закрылась опять в паттерне, то фиксируется ложный пробой. Если цена вышла и закрылась за пределами паттерна (в Wave Viewer за пределы последней волны), то считается что цена вышла.
Алексей Ван, здравствуйте. а можно ещё раз?? не  совсем понятно… например выход через кол-во интервалов.это кол-во свечек?? и не совсем понятно как собирается статистика.то есть вход идёт на третьей свече, выход через 1 интервал будет равен на 4 свече я правильно понял?
avatar
Алексей Ван, а как именно Вы тогда определяете, подтверждают тесты тенденцию или нет? Или при количестве входов 2-3 тыс всегда подтверждают?
Zweroboi, Всё в статье и в комментариях.
Алексей Ван, Вы об этом — «Форвардные тесты подтверждают формацию 100% если найдено от 2000 паттернов»? Непонятно, что именно это подтверждает? Ну нашлось 2000 паттернов, но хотелось бы ещё понять, могут ли они помочь в торговле. Я пытаюсь у Вас этот момент уточнить.
Zweroboi, Могут помочь)) — ФОРВАРДНЫЕ тесты.
Я понимаю что Вам весело, но я пишу код. Мне не когда упражняться в словоблудии. Вы же тоже программист вроде. Жизни меня учите. Спасибо за заботу кстати. Но вам и так всё понятно должно быть.
Алексей Ван, ну, успехов тогда в написании. Будут вопросы — обращайтесь. Сейчас я вижу Вам и так всё понятно, и славно.

теги блога Алексей Ван <o-s-a.net>

....все тэги



UPDONW
Новый дизайн