Germany | Finland | Saint Petersburg | Drive

Настраиваемый детектор паттернов

Опубликовано в Роботы

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

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

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

Конечно, ничего выдающегося в том, чтобы вычленить из графика какую-то конкретную фигуру типа молота или утренней звезды нет. Мне временами приходилось делать это в рамках других заказов. Но этот заказ меня удивил. Заказчик хотел иметь возможность вычленять из свечной истории ЛЮБЫЕ свечные конструкции по своему желанию.

Задача оказалась интересной. Для пользователя был разработан несложный язычок описания паттернов. Используя этот язык, пользователь может задать любую свечную конфигурацию не только качественно (малое тело свечи, длинные хвосты), но и количественно (например, во сколько раз тело свечи должно быть меньше всего размаха и так далее). Кроме описания критериев диагностики каждой свечи в паттерне можно задать и относительное расположение свечей друг относительно друга. Таким образом, внутри интерпретатора QPILE пришлось разместить еще один  интерпретатор  формата описания паттернов.

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

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

Второй этап торговой системы - реакция на обнаруженный паттерн. Задача Заказчика состояла в автоматической реакции торговой системы на него. Оперативную часть Заказчиком было решено выделить в отдельную задачу. Заказчику виднее ) Таким образом, алгоритм поиска паттернов на графиках завершался выдачей во внешний мир ohlcv информации о каждой свече паттерна и обработку этой информации уже иной программой. Подозреваю, что искусственное разделение задачи связано с желанием непредоставления всей информации о методе торговли в одни уши Wink

 

Реализация  - декабрь 2011г. 

 


См. также: Heiken-Ashi

Публикуется с разрешения Заказчика 

Комментарии   
# bealtrader 09.11.2014 11:14
Михаил, добрый день! Тестировали ли вы торговлю по найденным паттернам? Особенно интересно в связи со статьями smart-lab.ru/blog/215208.php#comments

Если не ошибаюсь, вы дискутировали с автором статей...
Ответить | Ответить с цитатой | Цитировать
# admin 09.11.2014 11:47
Добрый день!

Да, я общался с автором той статьи.

Его энтузиазм вызывает уважение.

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

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

Что касается торговли по паттернам - любая позиционная торговля есть торговля по паттернам в том или ином виде. Вопрос лишь в поиске пригодных на текущий момент - рынок изменчив.
Ответить | Ответить с цитатой | Цитировать
Добавить комментарий