Постов с тегом "Торговые роботы": 6098

Торговые роботы


торговый робот - это автоматизированная торговая система, принимающая решения и отдающая приказы на выполнение рыночных заявок на основе программного алгоритма.

В этом разделе вы найдете самые актуальные записи по теме торговые роботы.

Еще системка для критики...

Вот решил еще выложить для критики.

РИ 5 мин.
— 1 контракт
— комиссия учтена
— проскальзывание учтено
— на открытии не торгуем

Все года прооптимизированы только по размеру стопа
2009 — 2011 стопы одинаковые
2008 — в 2 раза больше

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

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

UPD1: Стоп, привязанный к ATR ничего не дает. Если просто сделать стоп 2*ATR, то результаты те же, только эквити более дерганная....

Сначала 2011-ый




2008-ой



2009-ый



2010-ый


Вопрос опытным программистам (ну и остальных мнения интересны)....

Вопрос по сути в следующем:

    Когда вы пишете какую-либо программу (в нашем случае торгового робота), которая подразумевает постоянную доработку в части проверки новых идей, вы:
    Добавляете в код реализацию новой идеи, тестируете и, при отрицательном результате —

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

   Сразу скажу — вариант с добавлением чего-то в виде функции — понятен. Просто не все можно реализовать в виде независимой функции.

   Поясню откуда вопрос.

   Мой код на Qpile распух от первоначальных рабочих 300 строк до 2500. Причем работают из них, наверное, те же 500-700. Ini-файл также представляет собой уже подобие реестра Windows))). Добавляется какая-то идея, проверяется — не работает, оставляется для возможности использования в дальнейшем, в ini-файле прописывается выключение этой идеи.

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

Алгоритм v1.0

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

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

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

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


Алгоритм

Оригинал

Бэктестинг на Ваш суд...


    Предлагаю на суд публики результаты бэктестинга одной системы. Хотелось бы выслушать мнения.
Система торгует 5-ти минутные свечи РИ. Сделки на закрытии свечей. Около 50-ти в день. Система реверсная со стопами.

Прооптимизированы:
1. Тайминг — 10.20-18.40.
2. Стоп в пунктах.
3. Количество свечей назад  — для определения характера рынка (система меняет условия входа и выхода, пытаясь определить пилу/микротренд)

Торговля без реинвестирования, 1 контракт
Комиссия учтена (у меня на ВТБ24 = 1 р +  1 р биржи = 2 р на сделку на контракт)
Проскальзывания не учтены (пока анализирую: smart-lab.ru/blog/28160.php)

На рисунках 2011 г. Результаты за 2007, 2008, 2009 годы — аналогичные. 2010 — хай — 100% и к концу года — почти 0.






Вопросы по WealthLab 5

1. Почему при оптимизации даже по 1-му параметру перестали выводиться  результаты оптимизации (Results). Выводится только 1 Parameter Graph?
2. Как запретить пересчет стратегии при каждом изменении параметра?
3. Что это вообще за программа такая — глюки на каждом шагу!!!

Предложение создателям торговых систем

Ищу человека готового сотрудничать в реализации алгоритмов, с опытом кодинга.

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

Предлагаю неплохие условия: 50 на 50, с общей прибыли алгоритма на инвесторском счете.

P.S. Рынки западные, поэтому  желательно иметь опыт кодинга под западный торговый софт.

Пишите в личку или скайп: privet_ya_marsel

p.s. плюсаните плз, чтобы вылезло на главную. 

Размер защитного спрэда при трейлинг-стопе

Озаботился сегодня вопросом: Трейлинг-стоп, какой использовать размер защитного спрэда? То есть размер отката цены, при котором нужно закрывать прибыльную сделку. И с какого момента включать трал?
   (Да простят меня математики! Вышку за 17 лет забыл окончательно, поэтому рассуждения дилетантские...)
   Рассмотрим этот вопрос с точки зрения вероятностей.
   1. Исходим из постулата случайного движения цены. То есть в каждый момент времени вероятности направления движения цены принимаем равными 0,5. Случай, когда цена остается там же — рассматриваем, как нахождение в том же моменте времени, то есть не рассматриваем.
   2. Движение цены в каждый момент времени происходит на 1 тик. Тик может быть равен тику цены инструмента, или N тиков инструмента — неважно, главное рассматриваем постоянно 1 тик.
   3. Берем ситуацию, когда размер стоп-лосса равен 1-му тику, защитный  спрэд для трейлинг стопа также равен 1-му тику.

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

Роботостроителям, и не только. Проскальзывание.

Как известно, проскальзывание при отправке заявки по рынку может быть двух типов:

1. Проскальзывание, возникающее из за разницы во времени между моментом выставления заявки и ее исполнением + спрэд.
2. Проскальзывание, возникающее при превышении объемом заявки объема втречных заявок + спрэд.

Второе рассматривать пока не могу, так как робот торгует 1-м контрактом, в целях выяснения работоспособности стратегии.

Интересует 1-й тип.
Заявки выставляютсяя в конце 5-ти минутной свечи РИ на 59-й секунде
Так вот, дописал сегодня в робота, в части анализа, вычисление 2-х показателей среднего проскальзывания «сделка ЛУЧШЕ или РАВНА цене закрытия» и «сделка ХУЖЕ цены закрытия».
Сегодня было около 40-ка сделок, показатели равны:

«сделка ЛУЧШЕ или РАВНА цене закрытия» = 45 п
«сделка ХУЖЕ цены закрытия» = -20 п

То есть среднее проскальзывание имеет положительное значение = 25 п в сторону лучшей сделки, чем цена закрытия. Это дает 25*40 = 1000 п преимущества перед стратегией.
Интересно, буду наблюдать дальше.




Чем отличается сегодняшний рынок от вчерашнего?

Помогите проанализировать ситуацию.
Сегодня мой робот, основанный на 5-ти минутных свечах РИ зарабатывает ровно столько же, сколько вчера слил. Чем отличаются движения сегодня от вчерашних? Вроде такая же пила, малый диапазон, те же объемы…
Говорить, что хреновый робот не надо, я и не утверждаю, что он граальный...))))
Понятно, что без стратегии что-то сказать сложно, но может быть кто-то наблюдает сегодня отличия каких-нибудь показателей от вчерашних?

Адаптивный Data Mining ^ Live (rev 1.0)

Мне тут одна занятная идея пришла в голову — написать на базе своей инфраструктуры (МТС) некий адаптивный анализатор рынка.

Идея следующая: допустим, у нас есть Nное количество интересных фильтров, а т.ж. другие околорыночные данные (объемы нескольких (сотен?) предыдущих баров, размеры тел/теней у свечей, ОИ, уровни/тренды — вобщем,  джентельменский набор).

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

Промежуточный результат:
+ придумать простой вход
+ сохранение статистики по сделкам и фильтрам
+ визуализация эквити с сортировкой по фильтра


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

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