Индикатор объёмов с разделением на покупки и продажи + Cumulative Delta

4.7/5 оценка (61 голосов)
  • Версия: 5.14
  • Требования: Quik 8.11+ Lua 5.4
  • Размер: 1.36 MB
  • Просм: 37921
  • Добавлено: 30.09.15
  • Скачано: 9609
  • Изменено: 12.11.25

Индикатор, позволяющий анализировать рынок в разрезе действий покупателей и продавцов. Показывает одновременно объёмы покупок и продаж, разницу между ними (дельту),  накопительную дельту, а также позволяет накладывать на полученные результаты ряд встроенных индикаторов.

В качестве дополнения может показывать свечи, в которых были замечены крупные сделки (с объёмом более заданного в параметрах)

 

Индикатор позволяет отображать на экране только необходимые линии. Любую линию можно включить и выключить. Это делается в настройках индикатора (параметр "Список линий для отображения").

 

Внешний вид индикатора, в котором включено отображение только объёмов. Зеленые линии есть покупки, красные - продажи:

 

 

 

Если добавить вывод дельты (разницы между покупками и продажами, задаётся в настройках), индикатор принимает следующий вид:

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

 

Добавление отрисовки кумулятивной дельты (накопительной разницы) :

 

 

Индикатор позволяет наложить как на линию дельты так и на линию кумулятивной дельты скользящую среднюю или построить канал. Можно наложить на обе laughing. Встроены следующие виды скользящих средних (формулы расчета):

а также следующие виды каналов:

  1. Bollinger Bands
  2. Keltner Channel
  3. Donchian Channel

Формальное описание расчета скользящих средних

Конечно, параметры скользящих и каналов можно менять или вообще их отключить.

Так выглядит скользящая средняя Hull Moving Average, наложенная на кумулятивную дельту:

Или, например, канал Боллинджера, наложенный на обычную дельту:

 

Также можно включить режим "По дням", когда суммирование кумулятивной дельты начинается с нуля в начале каждого торгового дня. Также можно указать индикатору, что расчет необходимо начать с указанного времени. Иногда вместо объёмов необходимо анализировать количества сделок - этот режим также можно включить в индикаторе. Дополнительно можно вывести на экран минимальные и максимальные значения дельты за время свечи (как по объёмам, так и по количеству сделок).

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

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

 

Индикатор отображает в экранной таблице список инструментов, которые сохраняются в текущий момент в базу. Если вы откроете индикатор на новом инструменте, он также начнет записываться в базу данных. Удаление индикатора не прекращает запись информации по нему в базу - она может вам потребоваться в дальнейшем. Если количество сохраняемых  инструментов становится чересчур большим, можно отказаться от получения некоторых из них. Для необходимо просто удалить в папке <quik>\www.bot4sale.ru\Buy~Sell соответствующие подпапки вместе с их содержимым (можно предварительно сохранить их в другом месте).

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

Для получения информации о предшествующей истории, которой нет в базе данных, можно использовать утилиту BSFinamCSV.exe.

Утилиты получения исторических данных BSFinamCSV.

Если в базе отсутствуют котировки за какой-то торговый день или они неполны, можно воспользоваться дополнительными утилитами для восстановления полноты данных в базах

  1. BS_FinamCSV: утилита для конвертации скачанных с сайта Финама котировок формата CSV в базу данных скрипта. При скачивании котировок на сайте Финама необходимо установить следующие настройки:

 

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

Архив содержит 2 версии - ознакомительную и полную. Ознакомительная (Demo) версия работает на интервалах от 1 до 4 минут.

 
  Demo Full
Ограничение по интервалам 1 мин - 4 мин нет
Работа внутри дня да да
Работа на истории да да
Рисование продаж отрицательными да да
Режим отображения объемы/сделки да да
Вывод разницы между покупками и продажами (Delta) да да
Вывод накопительной дельты да да
Режим накопительной дельты "по дням" да да
Возможность построения скользящих средних и каналов по дельте и кумулятивной дельте да да
Возможность задать дату/время начала вывода информации да да
Возможность выбора отображаемых линий да да
Показ больших сделок да да
Получение истории из интернета да да
Вывод минимального и максимального значений дельты за время свечи да да
Распространение бесплатно Гренландия

 

Для получения полной версии достаточно сделать посильный вклад в фонд отопления Гренландии  на банковскую карту или электронный кошелёк:

 

 

Как это работает

Драйвер BS.lua создает на диске базу данных по требуемым вам инструментам. Это происходит автоматически, когда вы запускаете индикатор на требуемом вам инструменте.

Через некоторое время (НЕ СРАЗУ!) данные становятся доступны и вы сможете увидеть их на графике. Индикатор анализирует таблицу обезличенных сделок, а на ее получение терминалом в сервера требуется время.

Заполнение базы данных возможно при включенном терминале. Если терминал у вас включен постоянно, база будет содержать полные данные. Если вы включаете терминал (с запущенным BS.lua в середине дня, все данные с начала торгового дня будут сохранены в базе. Если вы выключите терминал до окончания торгов и включите только на следующий день, часть истории будет пропущена и не будет отображена на графике. Для восстановления полной информации в этом случае можно использовать утилиту BS_FinamCSV

 

Установка.

  1. Прочитайте файл readme.html
  2. Библиотеку bot4sale64.dll поместите в папку терминала quik.
  3. Проверьте, что в настройках терминала для скриптов и индикаторов установлена версия Lua 5.4 (Где?)
  4. В папке терминала QUIK создайте (если её там еще нет) папку LuaIndicators.
  5. Файлы индикаторов из архива Delta.lua, Hippo (или Delta_Full.lua, Hippo_Full.lua если вам известен пароль) поместите в папку LuaIndicators. 
  6. Файлы BS.lua и BS_FinamCSV.exe поместите в любое удобное вам место. BS.lua запускайте посредством меню терминала Скрипты Lua. На экране появится таблица, содержащая список инструментов, по которым идет сбор, обработка и сохранение данных. При первом запуске таблица будет пуста.
  7. Добавляем индикатор Buy/Sell Delta в отдельное окно диаграммы на интересующем вас инструменте. При этом название инструмента появится в таблице скрипта их предыдущего пункта. По мере получения данных по каждому инструменту в таблице будет выводиться время последней обработанной сделки из таблицы обезличенных сделок.
  8. Если получение данных не происходит - это означает, что ваш терминал не получает от брокера тиковые данные. Проверить это можно путем создания на экране стандартной таблицы обезличенных сделок по нужному инструменту. Если таблица пуста - обратитесь к брокеру, вероятно у него стоит запрет на трансляцию вам этой информации, он включит.
  9. Настройте список линий в параметрах, чтобы получить необходимый вам вид индикатора.
  10. Не торопитесь! Это не простой индикатор. Чтобы он показал данные, необходимо наличие большого объёма данных, который должен приехать с сервера брокера. Этот объём приходит постепенно, в течение минуты вы должны увидеть прогресс. Терминал во время загрузки и обработки данных будет нормально работать.

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

 

 

История версий

Версия Список изменений
5.14
  • Утилита BS_FinamCSV получила возможность получать параметры (исходный файл, класс и код инструмента, расположение терминала) из командной строки. Список параметров выдается по параметру -help
    Если все параметры заданы в командной строке, утилита работает молча. Если какой-то параметр не указан, утилита его запрашивает. Сделано для возможности конвертации в базу программно скачанных с сайта Финам данных о сделках.
5.12
  • В дополнение к кумулятивной дельте добавлена возможность строить кумулятивные покупка и кумулятивные продажи
5.11
  • Исправлен расчет минимальной и максимальной дельты за время свечи
  • Ускорена работа утилиты FinamDownloader
5.10
  • Запрет на одновременный запуск двух копий драйвера BS.lua в одном терминале
5.09
  • Пересобрано для Lua 5.4
5.08
  • Исправлена ошибка, при которой в некоторых версиях терминала скрипт не запускался
5.07
  • Исправления в Finam Downloader
5.06
  • Поскольку сервер, хранивший архив котировок, больше не функционирует, утилита downloader заменена на BS_FinamCSV, которая позволяет конвертировать полученные на сайте Финама CSV файлы в формат базы данных индикатора
5.05
  • Ускорена работа
5.04
  • Адаптировано для Quik 8.5
  • Устранены мелкие неточности
5.03
  • Добавлена возможность работы с инструментами, код которых содержит точку
5.02
  • Добавлен вывод минимального и максимального значений дельты за время свечи.
5.01
  • В Downloader добавлена возможность указать глубину закачиваемой истории
5.00
  • Адаптировано для квик 8
  • В окне скрипта BS.lua теперь отображается время последней обработанной сделки по каждому инструменту
  • Внесено множество мелких исправлений
4.03
  • Изменен ftp server для Downloader
  • Добавлена очистка временного каталога от файлов, оставшихся от предыдущего сеанса
4.02
  • Индикаторы Delta и Hippo научились работать, если кроме них на графике присутствуют сдвинутые вправо другие индикаторы
4.01
  • В утилиту Downloader добавлена визуальное и звуковое оповещение об ошибках
4.00
  • Добавлена утилита получения архива исторических данных из хранилища в интернете. На текущий момент доступна история по акциям и валютам.
  • Ускорена начальная загрузка индикатора на старших таймфреймах и большом количестве свечей на графике.
  • Изменен формат хранения баз данных.
3.10
  • В архив добавлен индикатор HIPPO, показывающий свечи, в которых были сделки большого объема (бегемоты)
3.09
  • В версии 7.16 рабочего места QUIK исправлена серьезная ошибка интерпретатора lua, влиявшая на стабильность работы индикатора. Индикатор адаптирован, с более ранними версиями рабочего места он работать откажется
  • Добавлена индикация получения данных по инструментам в экранной таблице
    Улучшена производительность, убраны мелкие неточности.
3.08
  • Добавлен Donchian channel
3.07
  • Добавлен вывод на экран списка сохраняемых в базу инструментов
3.06

 Добавлена возможность наложения скользящих средних

  • SMA
  • EMA
  • WMA
  • DEMA
  • TEMA
  • HMA
  • JMA
  • STDEV
  • TRIMA

Добавлена возможность наложения каналов

  • Bollinger Bands
  • Keltner Channel

Выбор источника для расчета индикаторов - Delta или Cumulative Delta (настраиваемо)

Исправлены некоторые ошибки

3.05

Исправление ошибки, связанной с предоставлением терминалом скрипту неверных данных об обезличенных сделках разработчиками терминала затягивается (как обычно) на неопределённый срок. Был подставлен костыль, который уменьшает частоту падений скрипта из-за этой ошибки.

3.04

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

3.03

В терминале quik обнаружена ошибка, из-за которой при активной работе скрипта с таблицей обезличенных сделок расходовалась доступная память и в результате терминал мог прекратить работу с диагностикой "Not enough memory". Разработчики обещают ее исправить. Поставлена заплатка.

3.02

Исправлена ошибка, из-за которой иногда приходилось перезапускать BS.lua в начале каждого торгового дня.

3.01

Индикатор в некоторых случаях завершался аварийно, если не был запущен bs.lua. Исправлено

3.0

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

Прежние индикаторы BS_Volume и Cumulative Delta объединены в один индикатор.

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

Поддержка графиков, содержащих пустые диапазоны

Возможность выбора нужных для показа линий

Полный редизайн. Пароль от полной версии изменен.

1.8 База сохраняется на диск каждую минуту
1.7 Добавлена возможность рисовать продажи в отрицательной области
1.6 Кардинально ускорена начальная загрузка индикатора
1.5 Исключена версия intraday. Вместо нее в остальные версии добавлен параметр, позволяющий отключить вывод истории
1.4 В полную версию добавлена возможность отображения гистограмм не только по объёмам, но и по количеству сделок.
1.3 В полной версии добавлена поддержка брокеров, транслирующих в таблице обезличенных сделок информацию о вчерашних вечерних торгах на срочном рынке.
1.2 Полная версия разделена на два варианта: с отрисовкой разницы между покупками и продажами и без этой отрисовки
1.1  В полной версии добавлена возможность работы на истории
1.0 Добавлен режим, показывающий разницу между покупками и продажами (в версии Intraday)
0.99 Начальная версия