Вопрос по автоматизации QUIK (как узнать что сейчас идет сессия квика?)
Доброго времени суток.
Дамы и господа подскажите, есть ли в квике какой нибудь надежный индикатор, что сейчас идет сессия?
Нужно для автоматизации торговой системы, чтобы автоматически изымать наличие сессии. Сответственно сессия идет — радобаем, не идет — ждем когда начнется.
Сколько не ковырял, честно говоря не нашел индикатора того что сессия идет (нужно и по акциям и по фьючам)
Исключу сразу несколько вариантов ответов:
1. Время — это костыльный вариант, если что-то поменятеся, то все пошло прахом
2. Столбец «Сессия» в акциях, работает криво и годен только для акций.
1. isConnected() — возвращает 1 если есть соединение с сервером. 0 — нет соединения.
2. getParamEx(ClassCode, SecCode, «status»).param_value — возвращает 1 если торгуется и 0 если не торгуется.
Dachnik, данная функция хороша тем, что просто получить статус коннекта к серверу достаточно, чтобы не пересчитывать и не пытаться получить данные индикаторов, которые в противном случае могут вернуть ошибки.
вообще TRADINGSTATUS применяется к акциям, потому как там есть еще статусы торгов как «Аукцион открытия», «Аукцион закрытия», кроме «сессия открыта» — торгуется и «сессия завершена» — не торгуется.
на фьючах такого нет. там применяют status.
Константин Б, в quik программируют тремя путями -
1. через портфели qpile
2. через скрипты lua
3. через коннекторы (типа trans2quik.dll) с помощью любых других языков.
Константин Б, это надо спрашивать у техподдержки.
и то и другое выполняется в одном своем потоке. вроде читал, что в будущем скрипты на lua будут работать в мультипотоке, соответственно скрипты и код индикаторов друг другу мешать не будут.
плюс код индикаторов только на lua
Я работаю с фьючами. Ни один из описанных методов для них к сожалению не работает, по крайней мере для дневного клирина. Только что проверял.
Поля STATUS И TRAIDSTATUS — всегда нулевые. lastprice в дневной клиринг прекрасно возвращается. Сейчас еще попробую проверить еще на вечернем клиринге и добавлю в качестве доп. параметра данные стакана
Увы. В вечерний клиринг возвращается и цена последней сделки, и стакан. Так что вопрос о способе определения столь важного параметра остается открытым.
Еженедельный обзор рынка алмазов и бриллиантов.
June 27, 2024
Новости: Цены падают, при этом Индия находится под давлением низких продаж и растущего предложения. Продавцы из США чувствуют себя ...
Chef, ты чего-то столько ответил, что я столько и не спрашивал..) Утром написали, что Губкин Белгородской области без электричества в результате атаки БПЛА, я и спросил…
Первая ежемесячная выплата пайщикам фонда индустриальной недвижимости «Рентал ПРО» уже в пути. 🗓 В пятницу, 28 июня, прошла фиксация реестра пайщиков, доход должен поступить не позднее 19 июля.Инвесто...
2. Проверяете статус торговли акцией или бумагой. Работает отлично.
Вам примеры кода нужны?
=1, торгуется.
1) toNumber (getParamEx....) == 1
2) Меню Связь/Списки/Forts — фильтр параметров, добавьте нужные загружаемые параметры.
разные значения
2. getParamEx(ClassCode, SecCode, «status»).param_value — возвращает 1 если торгуется и 0 если не торгуется.
Я просто беру текущую цену бумаги LASTPRICE_GD = get_param(ClassCode,SecCode,«last») , если ее возвращает функция, то все ОК)
на фьючах такого нет. там применяют status.
1. через портфели qpile
2. через скрипты lua
3. через коннекторы (типа trans2quik.dll) с помощью любых других языков.
мне проще через lua.
и то и другое выполняется в одном своем потоке. вроде читал, что в будущем скрипты на lua будут работать в мультипотоке, соответственно скрипты и код индикаторов друг другу мешать не будут.
плюс код индикаторов только на lua
Поля STATUS И TRAIDSTATUS — всегда нулевые. lastprice в дневной клиринг прекрасно возвращается. Сейчас еще попробую проверить еще на вечернем клиринге и добавлю в качестве доп. параметра данные стакана
если у вас нули — ЗАКАЖИТЕ данные в квике, вам уже писали