Volume At Price для QUIK (Профиль объёма)

4.1/5 оценка (74 голосов)
  • Версия: 5.10
  • Требования: Lua 5.4
  • Размер: 1.16 MB
  • Просм: 38791
  • Добавлено: 23.05.15
  • Скачано: 9183
  • Изменено: 28.10.25

Индикатор горизонтальных объёмов (он же профиль рынка) для терминала QUIK.

Внешний вид демонстрационной версии:

И полной:

И полной с выводом соотношения покупок и продаж по дням

 

 

 

Установка

  1. Прочтите файл Readme
  2. Убедитесь, что в настройках терминала для скриптов и индикаторов установлена версия Lua 5.4 (Где?)
  3. Скопируйте файлы демонстрационной версии iVAP.lua из архива в <папка quik>\LuaIndicators. Если такой папки еще нет, создаем ее вручную. Файл bot4sale64.dll кладем в папку терминала quik. Файл VAP.lua помещаем в любую папку по вашему выбору. Внутри архива VolumeAtPrice.zip есть запароленный архив iVAP_Full.zip, содержащие полную версию. Если у вас нет пароля от этого архива - игнорируйте его.
  4. Создаём папку с любым именем и помещаем в нее файлы VAP.lua и FinamCSV.exe
  5. В меню терминала Скрипты Lua добавьте файл VAP.lua и запустите его. Этот скрипт должен быть запущен всегда. Он собирает информацию о текущих торгах в базу данных, останавливать его не нужно никогда.
  6. Дайте идентификатор графику котировок, для которого будем строить объёмы
  7. Добавляем индикатор на нужный график, указав в настройках идентификатор из предыдущего пункта. Галочку "Поместить график в новую область" снимаем.
  8. Получим следующее сообщение терминала
  9. Заходим теперь в параметры нашего индикатора и указываем ему идентификатор, который мы дали графику цены
  10. ВАЖНО! Если вы впервые устанавливаете индикатор в неторговый день, соединения с брокером нет и таблица обезличенных сделок у вас пуста, то для расчета индикатора нет данных. В таком случае отложите установку до начала торгов.
  11. ОЧЕНЬ ВАЖНО!!! Построение индикатора может занять некоторое время. Оно требуется чтобы терминал мог получить необходимые ему данные с сервера брокера. Будьте терпеливы!
  12. И наконец, самое наиглавнейшее. Чтобы все это счастье работало, необходимо, чтобы брокер транслировал вам данные о обезличенных сделках. По умолчанию эта опция у большинства брокеров отключена - они экономят трафик.  Попросить брокера включить эту опцию обычно можно по телефону

Информация об обезличенных сделках (по которым строится индикатор) в терминале quik доступна только за текущую торговую сессию. Поэтому если вы включите терминал в середине торгового дня, индикатор получит все данные начиная с начала сессии и корректно их обработает. Если же вы выключите терминал до окончания торгового дня и включите его только на следующий день, то пропущенная информация станет уже недоступной и индикатор отобразить ее не сможет. Для того, чтобы получить пропущенные данные, предназначена утилита  FinamCSV (о ней ниже в статье) 

 

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

 

Если такого никогда не планируется, можно полностью удалить все данные в базе по этому инструменту и получение/сохранение данных по этому инструменту будет прекращено. Чтобы это сделать, необходимо удалить индикатор с графика этого инструмента, выключить терминал и удалить папку инструмента. Папка находится в <квик>\www.bot4sale.ru\vap

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

 

Нажатие клавиши F12 в экранной таблице скрипта vap.lua приводит к открытию меню с дополнительными действиями.

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

 

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

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

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

 

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

 

  Demo Full
Файл iVAP.lua iVAP_Full.lua
Показ общего объёма на цене да да
Показ соотношения объемов Buy/Sell нет да
Показ общего количества сделок на цене да да
Показ соотношения сделок Buy/Sell нет да
Показ дневной статистики нет да
Утилита получения истории по FTP да да
Утилита импорта из CSV файлов Финама да да

 

 

Получить пароль к полной версии можно, перечислив материальную помощь Министерству Нефтедобычи Псковской области. Не скупитесь на благое дело!

 

 

 


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

  • 1.0 Начальная версия
  • 1.1 Добавлена полная версия - профиль рынка с разбивкой на покупки и продажи
  • 1.2 Значительно (в несколько раз) увеличена скорость работы. Добавлена возможность менять направление отрисовки полос
  • 1.3 Исправлена ошибка утечки памяти.
  • 1.4 В полной версии добавлена возможность строить полосы не только по объемам, прошедшим по цене, но и по количеству сделок.
  • 1.5 Исправлены обнаруженные неточности.
  • 1.6 Адаптировано для работы с библиотекой bot4sale.dll
  • 2.0 Переписано полностью, чтобы обеспечить возможность накапливать и отображать историю за предшествующие дни.
  • 2.1 Регулярное сохранение информацию в базу данных в течение торгового дня. Уменьшает риск потери данных при сбое терминала quik
  • 3.0 Полный редизайн. Индикатор разделен на 2 компонеyты - формирующую базы и отрисовывающую информацию из базы на диаграммах. Теперь нет торможения при запуске терминала. Дополнительно выводятся уровни High и Low дня. Пароль к полной версии изменён.
  • 3.01 Добавлена возможность видеть суммарные данные по дням в разрезе покупок и продаж. Небольшие изменения для ускорения работы.
  • 3.02 Исправление ошибки, связанной с предоставлением терминалом скрипту неверных данных об обезличенных сделках разработчиками терминала затягивается (как обычно) на неопределённый срок. Был подставлен костыль, который существенно уменьшает частоту падений скрипта из-за этой ошибки терминала.
  • 3.03 Показ сохраняемых в базу данных инструментов в экранной таблице
  • 3.04 В версии 7.16 рабочего места QUIK исправлена серьёзная ошибка интерпретатора lua, влиявшая на стабильность работы индикатора. Индикатор адаптирован, с более ранними версиями рабочего места он работать откажется. Добавлена индикация получения данных по инструментам в экранной таблице
    Улучшена производительность, убраны мелкие неточности.
  • 3.05  Часть кода вынесена в dll. Изменений функционала нет.
  • 3.06 Добавлена индикация получения данных скриптом vap.lua. При получении новой сделки соответствующая строчка в экранной таблице меняет цвет
  • 4.00  Добавлена утилита для получения архива данных из интернета. Изменен формат хранения данных. Добавлена настройка, определяющая количество отображаемых на графике дней
  • 4.01 Вдвое ускорена работа индикатора
  • 4.02 Изменена утилита WAP_Downloader - изменился ftp сервер с историей сделок.
  • 5.00 Адаптировано для работы с терминалом версии 8
  • 5.01 В главную таблицу выведено время последней сделки по каждому инструменту: можно контролировать процесс загрузки данных. Добавлена возможность работать с инструментами, имеющими точку в коде.
  • 5.02 Адаптировано для работы с quik 8.6
  • 5.03 Оптимизация скорости исполнения
  • 5.04 Еще одна оптимизация. Загрузка пропущенных данных при старте cкрипта происходит в ~10 раз быстрее
  • 5.05 Добавлена утилита FinamCSV, позволяющая импортировать котировки инструментов, скачанные с сайта Финам в базу скрипта
  • 5.06 Оптимизация рисования
  • 5.07 Устранение ошибки в FinamCSV, при которой объёмы в некоторых классах формировались в штуках, а не в лотах
  • 5.08 Убрана ошибка, из-за которой скрипт не запускался в некоторых версиях терминала
  • 5.09 Пересобрано для Lua 5.4. Поставлена заплатка для обхода ошибки в терминале, из-за которой невозможно вывести очень маленькие полоски на график. Эти маленькие полоски теперь рисуются чуть-чуть больше.
  • 5.10 Пересобрано: пропали мелкие ошибки, экранная таблица теперь сохраняет свое местоположение между запусками и т.п. мелочи

 

 

P.S. Спасибо всем, кто тестировал индикатор. Отдельная благодарность трясогузке и ее вечно голодному потомству за дружный хор под крышей моего летнего кабинета в саду.

 

Известные проблемы:

  1. Если переключать окно в индикатором в режиме связанных окон, то на нем остаются полосы от прежнего инструмента. Причина: ошибка в терминале. При переключении окна в режиме связанных окон терминал не вызывает функцию возврата OnDestroy и скрипт не в состоянии (хочет, но не может) убрать полоски с графика. Разработчики обещали исправить эту ошибку в одной из будущих версий, но конечно же этого не сделают.
  2. Если размножить окно с нанесенных на него индикатором сочетанием кнопок Ctrl-N, то в созданном новом окне не будет заполнен идентификатор и, соответственно, работа индикатора невозможна без перенастройки параметров. Причина - идеологическое устройство терминала Quik

Разделы

  • Индикатор