Постов с тегом "алгоритмическая торговля": 605

алгоритмическая торговля


Алгоритм v1.0

В первую очередь хочу поблагодарить создателя проекта Stock#, Михаила Сухова.
Я считаю, что Stock# – достаточно успешный стартап, который объединяет прогрессивно мыслящих трейдеров и, безусловно, является частью МФЦ:)

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

Начнем с блок-схемы, описывающей основные элементы системы.
1. Выбор источника данных.
В качестве источника данных может выступать торговый терминал (Quik, Альфа-Директ, SmartCOM) или шлюз Plaza2.
2. Проверка работы источника данных
В случае проблем с подключением выдает сообщение об ошибке и предлагает выбрать другой источник данных.
3. Выбор стратегии
Предоставляет возможность тестировать несколько стратегий в одной оболочке. Например, торговля волатильностью, торговля спредами, арбитраж.
4. Грааль
Основной элемент системы. Рассчитывает оптимальные параметры для совершения торговых операций.
5. Проверка сигналов на сделку
Решение о сделке принимается на основании получаемых данных. В случае если соблюдается условие, необходимое для совершения сделки, программа переходит к этапу отправки заявки.
На этом этапе предусматривается возможность изменять параметры для принятия решения. Например, менять значение волатильности или стоимости спреда -n страйков от центра.
6. Отправка заявки
Программа отправляет заявку в торговый терминал или шлюз. Если от биржи приходит ответ о выставлении заявки, сообщает об этом пользователю. Если возвращает ошибку или не приходит ответ, сообщает пользователю об ошибке и пытается отправить заявку повторно.
Здесь можно настроить время или количество попыток для отправки заявки.
7. Проверка активных заявок
Этот элемент проверяет, исполнилась ли заявка. В случае исполнения заявки и ответа от биржи сообщает пользователю о сделке.
8. Изменение заявки
Если заявка не исполнилась, предлагает изменить цену.
Бывают такие ситуации, когда мы согласны на исполнение по худшей цене. Можно ввести условие, например, увеличивать цену на 15 пунктов, если заявка не исполняется в течение 5 секунд.
Или исполнить по рынку, если заявка висит больше 15 секунд. При этом алгоритм перейдет в п.6 (Отправка заявки). Программа также сообщает пользователю о снятии первоначальной заявки.

Буду признателен за конструктивную критику и рацпредложения.


Алгоритм

Оригинал

проверка правильности сделок в тесте

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

Пожелайте чтобы мне хватило сил завершить проверку всех 1611 сделок :))




я рассчитываю получить на выходе около 35-40тыс долларов и до 3к просадки. длительность просадки до 45 дней.

посмотрим, окажутся ли мои ожидания верными.

до этого я тестил несколько месяцев только ручками. 

Ценная подборка №11. Роботы снимают скальпы или очевидные вещи про ЛЧИ

«Нет историй о том, что кто-то из призеров прошлых лет выстроил удачно карьеру управляющего активами. Кроме того, практика показала, что по стране гастролируют с платными семинарами не столько люди, добившиеся успеха в ЛЧИ, сколько самопровозглашенные гуру. Это те, кто умеет уверенно говорить о собственных успехах, гениальности и блистать харизмой. Они добиваются большей известности, чем биржевые чемпионы, и значит, для того, чтобы зарабатывать консалтингом, необходимы не публичные достижения в торговле, а упражнения перед зеркалом.»


Конкурс «Лучший частный инвестор» (ЛЧИ) — самое яркое светское событие на российском фондовом рынке. Его можно назвать чемпионатом по биржевой игре, где победителем становится участник, заработавший больше других. Главный приз — один миллион рублей минус налог. Последние годы ЛЧИ устраивала РТС, но в связи с объединением РТС и ММВБ конкурс в этом году проводится в рамках обеих бирж под лозунгом «Одна биржа — один герой». В конкурсе несколько номинаций, которые отражают специализацию обеих бирж (ММВБ — акции, РТС — деривативы на FORTS). Сейчас соревнование в разгаре, и продлится оно до 15 декабря.

( Читать дальше )

Алгоритм. Брать ли мелкопрофит?

В продолжении поста http://smart-lab.ru/blog/21980.php

Неделя прошла в поисках оптимального варианта«И нашим и вашим», т.е. и  мегапрофит забрать и синичку из рук не упустить. Тесты явно показывают, что хочешь хороший R на сделку — минипрофиты придется отдавать обратно рынку без фиксации. Как только начинаешь охоту за пипсами  - теряешь направленный ценовой импульс и перезаходы только обрезают твою прибыль. Плюс конечно количество сделок в день возрастает, и с учетом проскальзывания даже на 50п — прибыль системы стремится к нулю.

Какие только формулы в код не засовывал, прописывая по 5-6 условий одновременно выполняемых для выхода из сделки и фиксации мелкопрофита. Все равно итог теста на диапазоне более одного дня (под который индикаторы подогнал) значительно отличается от простого и понятного кода "Режь убытки, давай прибыли течь".

В моем случае на формулах все выглядит просто: профит до 600п я готов вернуть рынку без фиксации, а убыток не готов принять более 300п-400п (но как правило алгоритм выходит из сделки с убытком около 200п). Данное правило отлично проявило себя на тестах в волатильные дни. Сразу вопрос, а не распилит ли в узком боковичке? Проверил — не распилит. Сделок с фиксацией минилося становится больше, но сам лось меньше и профит даже от нескольких движений на 600-700п выводит итог по дню в плюс.

( Читать дальше )

Алгоритм. Первые оптимизации

Идея алгоритма внутридневной торговли, которую пытаюсь реализовать, достаточно проста. Есть внутридневные уровни цены и поведение цены у значимых внутридневных уровней, подкрепленное дополнительными индикаторами иногда перевешивает чашу весов в трейдинге в Вашу сторону. А положительное мат.ожидание на большом количестве трейдов делает кривую счета восходящей.
На первом этапе тестирования столкнулся с двумя проблемами:
а) Определение значимых внутридневных уровней
б) Количество собранных стопов за день (размер стопа менял от 300 до 500п на большем стопе даже хуже).
 
Кажется, что вопросы разные, но при изучении где именно собирает стопы, оказалось, что прежде всего проблема попадания на несколько стопов за час – это проблема определения уровня. Алгоритм пробойно/отбойный, т.е. не состоялся пробой уровня и есть достаточная сила сигнала для отката – позиция открывается на отбой, состоялся прорыв, подтвержденный краткосрочными индикаторами, позиция открывается на поддержание пробоя. Есть еще фильтр ложных движений, который пытается учитывать внутридневную динамику цены и варьирует силу сигнала для лонга и шорта в зависимости от текущей ситуации.


( Читать дальше )

Повесить на стену и выучить наизусть. Как играть и не проигрывать на бирже.

В свое время статья Дмитрия Толстоногова стала для меня неким граалем. Завидую тем, кто еще не читал, потому как увидев эти строки впервые восторгу моему небыло предела. Приятного чтения.


Как играть и не проигрывать на бирже
Имея удовольствие наблюдать и общаться с клиентами двух брокерских компаний в течение двух лет, могу утверждать, что поведение людей, желающих «играть и выигрывать на бирже », типично и хорошо прогнозируемо, в отличие от торгуемых ими акций. 
Ожидаемая доходность от спекуляций на старте обычно бывает «не менее 1000% годовых». После нескольких совершенных сделок она снижается до «хотя бы 100% годовых». Спустя некоторое время, она падает до «хотя бы вернуть начальный капитал», после чего спекулянт на неопределенное время, до достижения плановой доходности 0% годовых, становится инвестором.
В методах принятия торговых решений также прослеживается определенная эволюция.
 
На первой стадии новый клиент читает все экономические издания, слушает новости с таким вниманием, будто ожидает узнать их первым. Важным считается поведение бразильского фондового индекса Бовеспа. Исключительное значение придается прогнозам всевозможных аналитиков и мнениям коллег по дилинговому залу. Типовой вопрос, который задают на этой стадии: «что ты думаешь о рынке?» или «будет ли расти такая-то акция?» (если он ее уже купил). Мой типовой ответ: «не знаю» или «подбрось монетку». Клиент не успокоится, пока не найдет того, кто подтвердит, что «такая-то акция будет расти». На этой стадии клиент ищет кого-то, кто говорил бы ему определенно, когда и что покупать или продавать на рынке.

( Читать дальше )

частотность системы - граница комфорта - грань переоптимизации

в предыдущем посте http://smart-lab.ru/blog/21728.php мне предложили еще фильтровать входы, исходя из ожидаемой волатильности. 

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

так где та грань между добром и злом? как вы считаете, какое минимальное кол-во сделок в день должно быть у системы, чтобы вам было комфортно ее использовать, и считать ее надежно работающей?

Инвесторы, тоже напишите, где по вашему опыту проходит та граница комфорта в кол-ве сделок и частоте торговли?

============================== 

лично для меня — это минимум 1 сделка в день, винрейт не менее 50%, период обновления хая не более 50 дней.

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

последняя подготовка перед запуском системы. последняя неделя тестов

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

Рост золота система обогнала (на 1 фьюч система заработала 105$ по золоту, а золото выросло на 60$), больших просадок не было (просадки тоже значительно меньше, чем могли бы быть при B&H — 34$ против 85$)

 



последний вопрос: как понять, что система больше не работает?

эта система не универсальна, т.к. торгует не вниз/вверх, а только вверх, поэтому, при затяжном нисходящем тренде вниз, она скорее всего будет терять (это, конечно, еще зависит от характера снижения — т.е. за время последнего падения она еще и неплохо заработала ( первая сделка в этом промежутке прошла по цене в 1888$, а минимум был на 1520$)

( Читать дальше )

Раскормленная синица почти журавль

За то время, что я на Смарт-Лаб, сайт активно развивается. Интересными авторами заполнены ниши «прогнозы на сегодня», «видеообзор», «вот какая классная сделка у меня была», «глянь на график», «а не кажется ли Вам, что…», «энтомологи» и т.д.
 
Немного пустовата ниша алготрейдеров, тут может быть вполне понятная причина – напишешь о своем алгоритме и поимеешь кучу аналогичных кодов в стакане. Но на своем малом опыте в попытках написать и оттестить алгоритм я уже убедился, что идея может быть одна, а путей ее реализации тысячи и даже чтобы протестить малую долю вариантов, жизни не хватит. Потому поделюсь найденными тактиками по выходу из сделки. Да, именно выход я считаю наиболее важным моментом в торговле. Если выход не дал прибыли течь, то вся система начнет загибаться, если выход вовремя не обрезал убытки, то на стопах алгоритм разорит трейдера и т.п.
 
Сразу оговорюсь, что речь идет об интрадейных сделках на 5ти минутках, сейчас тестирую на стопе 500п. Система дает в день около 20 сигналов, поэтому кусать локти, что «тут меня выкинуло, а потом вон как поперло», я не буду, т.к. скорее всего алгоритм найдет где-то рядом еще точку для обсчета на вход в шорт или лонг. Итак, мои попытки реализовать в коде всем понятные принципы «дай прибыли течь, обрезай убытки»:


( Читать дальше )

хостинг робота / контроль работоспособности робота в ночное время

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




Так как роботы сделаны для работы на СМЕ, то это означает торовлю 24/5 — на домашнем компьютере это не очень удобно, и ненадежно, так как если он зависнет, то перезагрузка приведет к тому, что при подключении стратегий, сделки будут закрыты — синхронизированы. такая вот особенность ниньзи. это неприятно, но с этим надо мириться, пока не будет написан своя оболочка робота под API ниньзи.

отсюда встает вопрос хостинга робота — где это делать?

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

в общем, отпишитесь, как вы решаете эти вопросы, а я потом расскажу, как я обеспечу надежное функционирование робота в режиме 24/5 с целью минимизации нерыночных рисков

....все тэги
UPDONW
Новый дизайн