Заметка

Полуавтомат-помощник для анализа объемов в стаканах Quik

  2  

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

Начнем с того, что скальпинг – это стиль торговли, при котором цель трейдера взять краткосрочное движение с минимальными рисками. Понятие «краткосрочного движения» можно оценивать по-разному. Это может быть быстрый вход в позицию и выход через несколько секунд (не путать с пипсовкой), это может быть вход и удержание позиции в течение дня. Единственное, что объединяет всех успешных скальперов, это то, что они входят в сделку с минимальными рисками. Соотношение риск/прибыль должно быть не менее чем 1 к 3, а лучше еще меньше, т.к. львиная доля дохода уходит на издержки в виде комиссий брокера и биржи. Конечно, риск и потенциал движения зависят от рынка.

Теперь поговорим об алгоритме скальпинга и правилах входа в позицию. Всё ниже перечисленное относится к российскому рынку. В каждой сделке трейдер должен знать три вещи:

1) почему он входит в сделку

2) где он будет выходить

3) почему он стоит в позиции

Если на какой-либо вопрос нет ответа, то лучше их сделки выйти или вообще не заходить в позицию.

Какие принципы используют скальперы для входа в позицию?

1) уровни поддержки/сопротивления

Когда цена подходит к уровню поддержки/сопротивления, скорее всего, будет два варианта развития событий – пробой уровня или отскок. Поэтому нужно быть готовым к открытию позиции. Методов входа довольно много, о них можно прочитать почти в любой книге по классическому техническому анализу

2) направленное движение поводырей

Считается, что все рынки так или иначе коррелируют между собой, поэтому, если американский S&P500 сильно растет в моменте, то, скорее всего, и наши индексы ММВБ и РТС тоже пойдут за ним вверх

3) плотности в стакане терминала

Полуавтоматизация торговли, описанной в этой статье, как раз будет основана на этих плотностях (Рис. 1)

Рис. 1. Плотности в стакане терминала

Определим понятие «плотности». Плотность – это повышенный объем в стакане торгового терминала, отличающийся от среднего объема как минимум в десять раз. Например, возьмем акцию на Сургутнефтегаз об. Средний объем в стакане составляет около 100 лотов. Хорошей плотностью будет считаться объем от 1500 тысяч лотов и более (Рис. 2).

Рис.2. Плотности в стакане на Сургутнефтегазе

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

Для скальпинга подходят не только фьючерсы биржи ФОРТС (которые используются обычно из-за низких комиссионных), но также акции. Лучше всего подходят высоковолатильные акции с большим спредом, например Сургутнефтегаз об. и преф., Роснефть, Ростелеком, Уралкалий, Магнит, МТС и др.

Итак, формализуем алгоритм скальпинга для работы относительно плотностей в стакане.

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

Однако трудно уследить за всеми открытыми стаканами в терминале, а тем более за выявлением крупных плотностей в них. Для этого нам на помощь приходит встроенный в терминал QUIK язык LUA.

Алгоритм нашего будущего приложения следующий:

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

2) Скприт при изменении котировок в стакане анализирует плотности, выбирает максимальные плотности на покупку и на продажу, сравнивает с цифрами, определенными пользователем, и выводит на экран цену, на которой эта плотность стоит (Рис. 3).

Рис. 3. Результат работы скрипта для выявления крупныхплотностей

Как же пользоваться этим полуавтоматом? Для начала нам требуется загрузить данный LUA-скрипт в терминал QUIK. Для этого нужно выбрать Таблицы-LUA-Доступные скрипты (Рис. 4). Затем выбираем место расположения скрипта и запускаем его (Рис. 5).

Рис. 4. LUA-скприты в QUIK

Рис.5. Импорт и запуск LUA-скрипта

Хотелось бы отметить, что для того чтобы указать список интересующих нас бумаг, достаточно открыть файл shares.txt и отредактировать. Формат описания актива следующий:

<Код эмитента>;<Код класса эмитента>;<Отслеживаемый объем>

После запуска скрипта откроется таблица, в которой будут выведены все указанные активы. Чтобы таблица отображалась корректно и данные изменялись, я рекомендую создать новую вкладку в QUIK и стаканы требуемых эмитентов разместить на ней (Рис. 6).

Рис. 6. Рабочее окно в QUIK

Чем хорош данный полуавтомат? Да он не торгует, он просто позволяет отслеживать акции и показывает экстремально большие плотности в стакане выбранного актива. Это значительно упрощает работу трейдера-скальпера. Так или иначе, механизмы работы роботов в стакане, например стратегия фронтраннига, основаны на поведении заявок в стакане. Я надеюсь, что данный скрипт поможет как скальперам в их нелегком труде, так и алготрейдерам, изучающим язык LUA.

Прикрепленные файлы

·   code.rar

Комментарии

Максим Милованов — 19 мая 2014 г.

Если скрипт выдаёт ошибку о том что не может прочитать файл shares.txt, то нужно прописать корректный абсолютный (полный) путь до этого файла.

0 +

photosh — 26 января 2015 г.

Максим Милованов, не подскажите, где найти коды класса эмитентов?
Для того, чтобы вписать дополнительные бумаги для работы скрипта.

0 +

Николай Камынин — 19 мая 2014 г.

Добрый день,Максим,
1) Вот это Ваше утверждение :" Когда цена подходит к уровню поддержки/сопротивления, скорее всего, будет два варианта развития событий – пробой уровня или отскок. "
Справедливо для любого уровня. Т е цена всегда либо вниз, либо вверх.
2) По-моему мнению У Вас статья не про скальпинг, а про торговлю по очереди заявок (по стакану).
Скальпинг - это частный случай торговли по стакану,
но у Вас рассмотрен не скальпинг.

0 +

Максим Милованов — 20 мая 2014 г.

Николай Камынин, если вы внимательно читали, то я об этом упомянул. Из общих принципов скальпинга, в этой статье как раз используется торговля с помощью анализа объемов в стакане.

0 +

alandr777 — 30 мая 2014 г.

Чего-то ссылка не работает...

0 +

alandr777 — 30 мая 2014 г.

заработала... ура...

0 +

k-180666 — 31 декабря 2014 г.

не получается скачать прикрепленный файл ...в чем секрет....))))

0 +

leoelo — 12 января 2015 г.

Не приходит SMS

0 +

orekton — 12 января 2015 г.

leoelo, отключил на время. качайте

0 +

k-180666 — 18 января 2015 г.

Скачал...буду пробовать как помошника в моей стратегии...при выходе заданного обьема хорошо бы еще добавить звуковой сигнал!!!!

0 +

k-180666 — 19 января 2015 г.

Милованов спасибо ....работает.....помогает супер...напишите командную строку для добавления звукового сигнала...сам вставлю..я только учусь..)))

0 +

Максим Милованов — 20 января 2015 г.

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

0 +

leoelo — 6 февраля 2015 г.

density_measure.lua:189: attempt to index local 'row' (a nil value)

0 +

stanislav10 — 26 мая 2015 г.

скиньте этот скрипт со звуковым оповещанием.

0 +

imuhortov — 31 июля 2015 г.

Добрый день. как данное удобство настроить на фьюч?

0 +

imuhortov — 31 июля 2015 г.

Все ок! извиняйте, настраивается элементарно, все работает, спасибо!

0 +

imuhortov — 31 июля 2015 г.

К сожалению тут нельзя редактировать прошлые сообщения, а как настроить что бы значения в таблице не исчезали если в стакане цена от них убегает?

0 +

grishagringo — 29 октября 2015 г.

спасибо, но довольно прожорливый скрипт, квик из-за него висит

0 +

ivan44 — 7 декабря 2015 г.

здравствуйте.а что значит корректный путь к файлу? при повторном запуске терминала скрипт выдаёт ошибку(shares.txt: No such file or directory).как не пытаюсь не получается добиться его корректной работы

0 +

ivan44 — 7 декабря 2015 г.

путь прописываю вроде полностью...

0 +

Написать комментарий

Чтобы написать комментарий, необходимо авторизоваться.

Написать администратору