Торговый робот «BB_Bot» для терминала QUIK

Робот разработан на языке QLUA для торгового терминала QUIK (КВИК).
Для QUIK версии 8.8 и выше.
Чтобы помочь в развитии начинающим трейдерам и Алготрейдерам сократить время, потраченное на поиск стратегий, мы предлагаем уже готовые запрограммированные торговые стратегии в виде Скриптов для терминала QUIK.
Я по себе знаю, как в самом начале своего пути тяжело, когда начинаешь изучать новую для себя тему, то просто голова идет кругом от огромнейшего потока информации. Не знаешь где взять нормальные проверенные временем торговые стратегии, не знаешь с чего вообще начать, чтобы создать своего первого торгового робота, да еще и такого, чтобы генерировал прибыль!
Мы Поможем Вам!!!
Для того, чтобы Вы могли эффективно и прибыльно торговать на бирже, а не вести торговлю совершенно непредсказуемым бессистемным образом. Мы подобрали для Вас уже проверенные временем и отработанные стратегии, вам не придется совершать ошибки и нести потери проверяя их. Мы это сделали за Вас!
Теперь график доходности ваших счетов будет неуклонно расти!!!
Мы предлагаем Вам Торгового робота «BB_Bot»
Стратегия Трендовая с возможностью ограничения потерь и взятие прибыли, также присутствует вариант торговли во время флета
В основе работы Торгового Робота «BB_Bot» лежит самый лучший универсальный индикатор «Полосы Боллинджера (Bollinger Bands, BB)». Границы канала индикатора Bollinger Bands строятся на расстояниях, равных определенному числу стандартных отклонений. Поскольку величина стандартного отклонения зависит от волатильности, полосы сами регулируют свою ширину: она увеличивается, когда рынок неустойчив, и уменьшается в более стабильные периоды.
Если цена выходит за пределы полосы, следует ожидать продолжения текущей тенденции, что и прекрасно использовано в нашем роботе «BB_Bot».
Также движение цен, начавшееся от одной из границ полосы, обычно достигает противоположной границы, что позволяет отработать в роботе «BB_Bot» контртрендовую стратегию в боковике.
Используется Классическая Трендовая стратегия — реверсивная, когда цена закрывается выше верхней Полосы Боллинджера, робот открывает позицию на покупку, если цена закрывается ниже нижней Полосы Боллинджера, робот открывает позицию на продажу, также есть возможность задавать такие дополнительные параметры как:
1. Выход по Тейк-Профиту;
2. Выход по Стоп-Лоссу;
3. Перенос стопа в уровень безубытка;
4. Выбор направления торговли (Только Лонг, Только Шорт, Лонг-Шорт).
+ Робот может торговать и контртрендовый вариант, т.е. совершать противоположные сделки — на отбой цены внутрь канала.
Инструменты: Можно использовать любые ликвидные фьючерсы срочного рынка и ликвидные акции Московской биржи.
Таймфрейм: подбирается индивидуально для каждой стратегии и каждого инструмента.
С помощью нашего Торгового робота «BB_Bot» можно торговать более 8 разных подсистем:
1 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала
В QUIK добавляете индикатор «Bollinger Bands»

Мы подобрали специально для вас самую простую в понимании, но в тоже время самую стабильную в долгосрочном плане стратегию, проверенную на реальном опыте.
Давайте посмотрим график Дохода и результаты нашего робота по 1 Варианту!
График дохода торгового Робота «BB_Bot» на инструменте фьючерс на валютную пару дол/руб. (Si)

2 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала с установкой Стоп-Лосса
С целью ограничения потерь, при резких движениях цены в обратную сторону от направления входа в позицию в роботе можно подключать параметр Стоп-Лосс, тем самым мы уменьшаем просадку.

График дохода и результаты торгового Робота «BB_Bot» на инструменте Акция «Сбербанк».
3 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала с установкой Тейк-Профита
С целью взятия прибыли на резких движениях цены в направлении открытой позиции в роботе можно подключать параметр Тейк-Профит.

График дохода торгового Робота «BB_Bot» на инструменте Акция «Сбербанк».
График дохода торгового Робота «BB_Bot» на инструменте фьючерс на валютную пару дол/руб. (Si).
График дохода торгового Робота «BB_Bot» на инструменте фьючерс на нефть (Br).
4 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала с одновременным использованием Тейк-Профита и Стоп-Лосса
С целью взятия прибыли на резких движениях цены, а также с целью уменьшения просадки, возможно установить сразу два параметра: Тейк-Профита и Стоп-Лосса.

График дохода торгового Робота «BB_Bot» на инструменте Акция «Сбербанк» за период 2009г.-2019г.
График дохода торгового Робота «BB_Bot» на инструменте фьючерс на валютную пару дол/руб. (Si).
5 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала с установкой Стоп-Лосса в положительную зону (в Безубыток)
С целью защиты дохода от потерь, а также с целью уменьшения просадки, возможно установить функцию установки стопа в уровень безубыточности, т.е. в положительную зону.

График дохода торгового Робота «BB_Bot» на инструменте Акция «Сбербанк».
6 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала с использованием установки Стоп-Лосса и далее переноса стопа в положительную зону (в Безубыток)
С целью защиты дохода от потерь, а также с целью уменьшения просадки, возможно установить сразу два параметра — это Стоп-Лосс и Безубыток.

График дохода торгового Робота «BB_Bot» на инструменте Акция «Сбербанк».
7 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала с применением Тейк-Профита и установкой стопа в положительную зону (в Безубыток), когда цена проходит в сторону открытия позиции.
С целью взятия профита при резких движениях цены и с целью защиты дохода от потерь, возможно установить сразу два параметра — это Тейк-Профит и Безубыток.

График дохода торгового Робота «BB_Bot» на инструменте Акция «Сбербанк».
8 Система торговли — это просто использование классических сигналов по Bollinger Bands — реверсивная торговля на выход цены из канала с применением сразу всех доступных функций: Тейк-Профита, Стоп-Лосса, установкой стопа в положительную зону (в Безубыток), когда цена проходит в сторону открытия позиции, а также добавление Фильтра тренда.
С целью взятия профита при резких движениях цены, для защиты дохода от потерь, а также с целью ограничения потерь возможно установить сразу все три параметра — это Тейк-Профит, Стоп-Лосс и Безубыток.

График дохода торгового Робота «BB_Bot» на инструменте фьючерс на валютную пару дол/руб. (Si).
График дохода торгового Робота «BB_Bot» на инструменте фьючерс на нефть (Br).
График дохода торгового Робота «BB_Bot» на инструменте Акция «Сбербанк».
Данный робот очень хорошо себя показал за длительный промежуток времени на довольно сложных периодах рынка.
Один из контртрендовых вариантов торговли — это использование обратных сигналов по Bollinger Bands с применением Тейк-Профита и установкой стопа в положительную зону (в Безубыток), когда цена проходит в сторону открытия позиции.

Общее описание робота «BB_Bot» для терминала QUIK (КВИК)
Торговый скрипт «BB_Bot» реализован на языке QLUA, работает на сигналах, встроенного в КВИК индикатора Bollinger Bands и предназначен для использования в торговом терминале QUIK для торговли акциями на рынке ММВБ (TQBR), фьючерсами на рынке FORTS (SPBFUT).
Робот исполняет заложенный в него торговый алгоритм. Торговля ведётся двумя способами (тренд/контртренд).
Можно указывать направление торговли (глобальные фильтры направления) без перезапуска робота (клик). Это можно делать прямо в окне робота или в настройках робота перед запуском.
1. Только закрытие;
2. Только Short;
3. Только Long;
4. Long и Short.
В работе по трендовому алгоритму вход производится:
• в лонг
• в шорт
В работе по контртрендовому алгоритму вход производится:
• в лонг
• в шорт
Выход из позиции производится:
• при противоположном сигнале (переворот позиции);
• достижения ценой уровней Тейк-профита или Стоп-лосса;
• по безубытку;
• при нажатии на кнопку остановки и закрытия позиции в роботе.
Сделки открываются лимитным ордером, который устанавливается в глубину стакана (фактически срабатывает как рыночный ордер), поэтому на очень слабо ликвидных инструментах запускать не рекомендуется, возможны большие проскальзывания.
Тейк -профит и стоп-лосс (также и безубыток) рассчитываются внутри робота (без выставления заявок в Квик), поэтому вы данные заявки можете не видеть на графике в КВИК, но при этом при касании ценой уровня стоп/ тейка, робот закроет позицию как и положено.
Таймфрейм для робота
Таймфрейм для робота определяется таймфреймом графика, к которому привязан робот. Изменять его во время работы робота не рекомендуется. На другом таймфрейме могут быть другие сигналы, вплоть до противоположных. Также во время работы робота нельзя переключать этот график на другие инструменты, потому как это приведёт к ошибочным расчётам внутри робота, из-за других данных с нового инструмента у индикаторов и цены самого инструмента, которая берётся из другого источника. Всё время работы робота, график должен быть открыт на том инструменте, который прописан у него в настройках.
Учет позиций робота
Робот ведёт собственный учёт позиции, поэтому сделки на том же инструменте одновременно с его работой ему не мешают. По сути, на одном инструменте можно запускать даже несколько копий роботов одновременно и с разными настройками (при условии, что они расположены в разных папках). При этом (в случае ручной торговли или запуска нескольких роботов на том же инструменте) нужно обращать внимание на достаточность средств для открытия роботом позиции выбранного вами объёма и выставления ордеров. Робот будет работать по своему алгоритму со своим значением позиции, не реагируя на то какая реальная позиция по данному инструменту в QUIK.
В таблице робота имеется кнопка сброса внутренней позиции (двойной клик). При этом закрытие позиции производиться не будет, а просто робот удалит из памяти текущее значение позиции (сбросит).
Описание окна основных настроек робота «BB_Bot»

1. Номер счёта. При записи Auto, выполняется авто определение. Если имеется несколько субсчетов, будет выбран первый из них. Можно указать самостоятельно.
2. Код клиента. Необходим при торговле акциями (TQBR). Для рынка FORTS можно не указывать.
3. Код класса. Доступен выбор из двух рынков TQBR – акции, SPBFUT – фьючерсы FORTS.
4. Код инструмента. При ошибке в написании, скрипт будет остановлен. Пример SiH5
5. Рабочий объём (кол-во контрактов. Например, 1).
6. TP — Вирт. тейк профит от средней цены открытия позиции. В шагах изменения цены инструмента (1 шаг у фьючерса SiH5 = 1 п; 1 шаг у фьючерса RIH5 = 10 п). При значении 0, тейк профит отключён.
7. SL — Вирт. стоп лосс от средней цены открытия позиции. В шагах изменения цены инструмента. При значении 0, стоп отключён.
8. Б/у старт – размер расстояния в плюс (сколько цена должна пройти в сторону открытой сделки от цены входа), до перестановки стопа в безубыток (Когда?). В шагах изменения цены инструмента. При значении 0 — безубыток отключён.
9. Б/у профит – отступ в плюс от цены входа (после как сработает перенос стопа в зону безубытка), для определения цены стопа в безубытке (Куда?). В шагах изменения цены инструмента.
10. Номер копии робота. Используется при запуске одновременно нескольких копий робота, для того чтобы trans_id их заявок гарантировано не совпадали. У запущенных роботов эти номера должны различаться!
11. Фильтр разрешённого направления торговли:
— Только закрытие — закрытие ранее открытой позиции;
— Только Short — разрешены только входы в шорт;
— Только Long — разрешены только входы в лонг;
— Long и Short — разрешены входы в лонг и шорт.
12. Выбор варианта стратегии торговли. На пробой границ индикатора (Тренд) или на отбой от них внутрь (Контртренд).
13. Вход в позицию –Если поставить галочку в данном ЧекБоксе, то робот будет использовать сигналы по индикаторам только по закрытию свечи. Если убрать галочку в настройках, то сигнал будет считаться каждый тик и может наступить в момент касания цены и индикатора, что не всегда может привести к правильным сигналом, т.к. индикатор может то касаться цены, то возвращаться. Рекомендуем ставить Галочку в данной настройке!
14. Выход из позиции – Если поставить галочку в данном ЧекБоксе, то робот будет использовать сигналы по индикаторам только по закрытию свечи. Если убрать галочку в настройках, то сигнал будет считаться каждый тик и сработает при касании ценой линии индикатора.
15. ID инд. – уникальный идентификатор индикатора Bollinger Bands в QUIK (без кавычек). Пример, ind_ID_Si.
16. ID цены – уникальный идентификатор графика цены в QUIK (без кавычек). Пример price_ID_Si.
17. Сохранить – Кнопка сохранения настроек.
Описание окна запущенного робота BB_Bot
1. Адрес сайта источника, наименование робота, вид выбранной стратегии торговли и номер запущенной копии робота.
2. Код используемого инструмента для торговли.
3. Таймфрейм – определяется графиком на данных которого запускается робот.
4. Разрешённое направление — Только закрытие ранее открытой позиции; разрешены только входы в шорт; разрешены только входы в лонг; разрешены входы в лонг и шорт.
Можно изменять во время работы робота (без его перезапуска). Для переключения достаточно кликнуть по ячейке один раз левой кнопкой мыши. Список переключается по кругу.
5. Рабочий объём – выбранный в настройках робота объём входа в позицию. Индикация режима входа/выхода из позиции: EonC – вход по свечам; XonC – выход по свечам.
6. Значение индикатора – значение Down и Up уровней на последней закрытой свече.
7. Take | Stop || Last — значения уровней тейка, стопа позиции и последняя полученная роботом цена инструмента.
8. Кнопка Сброс – сброс внутренней позиции робота. Робот удаляет из памяти текущую позицию (забывает о ней). Активируется двойным кликом левой кнопкой мыши.
9. Направление – текущее направление открытой позиции. Раскрашивается в красный при шорте и в зелёный при лонге.
10. Текущая позиция – индикация текущей позиции робота.
Объём | средняя цена входа | текущий результат на 1к(л) | текущий результат на весь объём | индикация переключения стопа в режим безубытка. Окрашивается в зелёный (+) и красный (-) цвета, в зависимости от нахождения последней цены, в плюсовой или минусовой стороне от средней цены открытия. Округляется до 2-х знаков после запятой. Без учёта комиссии
11. Кнопка управления “Закрыть и остановить” – при двойном клике робот останавливается. Рабочее окно робота остаётся открытым. Если при такой попытке остановки у робота была позиция, то он производит попытку её закрытия.
12. Файл лога – кнопка открытия в блокноте текстового файла лога.
13. Файл настроек – кнопка открытия программы редактирования файла настроек. Настройки принимаются после перезапуска робота.
14. Увеличить – кнопка увеличения на 1 объёма для последующей отправки заявки вручную из робота.
15. Объём – текущий объём для последующей отправки заявки вручную из робота.
Сброс значения – кнопка сброса этого значения объёма (двойной клик).
16. Уменьшить – кнопка уменьшения на 1 объёма для последующей отправки заявки вручную из робота.
17. Направление Long – кнопка отправки ручной заявки Long указанного объёма из робота (одинарный клик).
18. Направление Short – кнопка отправки ручной заявки Short указанного объёма из робота (одинарный клик).
19. Расширенный/сокращённый вид – при двойном клике закрывает таблицу текущей размерности и создаёт её заново в расширенном или сокращённом виде. Расширенный вид отличается возможностью ручной корректировки позиции в роботе.