Общие положения

  • Назначение
  • Как работает QPILE
  • Основные возможности
  • Функциональные ограничения
  •  

    Назначение

    Язык QPILE - (QUIK Programmable Interface and Logic Environment) представляет собой набор команд, интерпретируемых рабочим местом QUIK.

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

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

    Примеры использования QPILE:

    1. Динамический пересчет стоимости активов клиентов на рабочем месте брокера.
    2. Динамический пересчет стоимости активов в портфеле клиента и его суммарной стоимости.
    3. Вычисление показателей, отсутствующих в системе QUIK либо торговой системе биржи, на основе собственных алгоритмов.
    4. Расчет параметров маржинального кредитования в соответствии с принятыми нормативами.
    5. Программирование торговой стратегии, генерирующей сигналы на изменение позиций по инструментам.

    Основной областью применения языка QPILE является расчет стоимости портфелей ценных бумаг, поэтому в терминологии описания типов таблиц часто используется определение «Портфели».

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

    1. Структура таблицы  (назначение столбцов, строк, и формулы для вычисления параметров) описывается в виде программы на языке QPILE. Для вычисления в формулах можно использовать стандартные математические и логические операции, использовать переменные и массивы данных, запрашивать информацию из других таблиц системы QUIK.
    2. Код программы может быть получен с сервера QUIK (серверный) или загружен с диска на компьютере пользователя (локальный). Полученный код обрабатывается интерпретатором языка QPILE на рабочем месте QUIK, который производит пересчет значений в формулах с заданной периодичностью. Таким образом формируется внутренний источник данных для отображения полученных значений в таблицах. Несколько таблиц на основе одной и той же программы используют общий источник данных, при этом вычисления не будут дублироваться и снижать производительность системы.
    3. На основе программы можно создавать таблицы, обладающие стандартными функциями при работе с таблицами в системе QUIK.
    4. Рабочее место QUIK имеет встроенный отладчик кода программ на QPILE, позволяющий вести пошаговую отладку и контролировать текущие значения переменных. Подробнее см. Отладка программ QPILE.

    Нумерация строк в таблицах QPILE начинается с единицы, а нумерация символов в строках языка QPILE начинается с нуля.

    Основные возможности

    Основные функции языка QPILE:

    1. Описание новых таблиц произвольной структуры,
    2. Вычисление полей таблиц на основе математических формул и логических выражений,
    3. Выделение ячеек таблицы цветом в зависимости от значений какого-либо показателя,
    4. Уведомление пользователя звуковым сигналом и текстовыми сообщениями.

    Таблица на языке QPILE поддерживает основные действия с таблицами в системе QUIK:

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

     №  Таблица    №  Таблица
    1. Таблица текущих торгов 10. Таблица заявок на внебиржевые сделки
    2. Таблица обезличенных сделок   11. Таблица сделок для исполнения
    3. Таблица заявок  12. Таблица заявок-отчетов на сделки РПС
    4. Таблица стоп-заявок 13. Таблица «Клиентский портфель»
    5. Таблица сделок 14. Таблица «Купить/Продать»
    6. Позиции по инструментам 15. Позиции участника по деньгам
    7. Позиции по деньгам 16. Позиции участника по инструментам
    8. Позиции по клиентским счетам 17. Позиции участника по торговым счетам
    9. Ограничения по клиентским счетам 18. Таблица, создаваемая при расчете программы

    Функциональные ограничения

    Текущая версия языка QPILE и созданные на его основе таблицы не поддерживают следующих операций: