Просим Вас уточнить, какую версию терминала Вы используете, а также подробно описать последовательность действий, при которых Вы сталкиваетесь с такой ситуацией.
В Таблице текущих торгов транслируются параметры "Минимально возможная цена" (PRICEMIN) и "Максимально возможная цена" (PRICEMAX) - цена заявки ограничена этими значениями. Получить эти параметры можно с помощью функции getParamEx.
ограничение на отправку связанной заявки TPSL, стоп-заявка N [ххх], отвергнута торговой системой: ОШИБКА: (580)
Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
По всей видимости, Вы решаете некоторую довольно обширную задачу, связанную с системой QUIK, и текущий формат взаимодействия в этом случае нам представляется не самым подходящим и удобным. Предлагаем написать на нашу почту и подробно рассказать о решаемой задаче, а также направить список интересующих вопросов. В этом случае мы сможем предоставить более полную информацию и, возможно, предложить какие-то решения.
Речь идет о трансляции рыночной информации на сервере QUIK. Сервер QUIK получает эту информацию из торговых систем через специализированные интерфейсы, а пользователь в свою очередь получает информацию с сервера, подключаясь клиентским приложением.
Как мы писали ранее, в QUIK в качестве текущей цены позиции используется цена последней сделки. В случае отсутствия цены последней сделки также может использоваться цена закрытия.
Однако позиции по инструментам Срочного рынка не рассчитываются в QUIK, а транслируются из торговой системы. Уточнить информацию об оценке этих позиций Вы можете у специалистов биржи.
waprice - Средневзвешенная цена - Отношение оборота текущей сессии в деньгах к инструментам во всех сделках, в ден.выражении. Official Current Price - Официальная текущая цена - Текущая цена, официально объявленная торговой системой trade - в этом контексте не совсем понятно, о каком параметре идет речь, просим уточнить.
Цитата
И какой лучше использовать для отображения цены в позиции?
Уточните, пожалуйста, какую задачу Вы решаете?
В QUIK Junior в 11.4.1.3 перестала работать функция getDepoEx
Переход на схему ведения позиций в календарных датах на сервере QUIK-Junior был выполнен 16 января 2025.
Сообщение об изменении схемы ведения позиций пользователи получают при подключении к серверу, продублируем его здесь:
Цитата
Здравствуйте. С 16 января сервер QUIK Junior переведен на современную схему ведения позиций - по календарным датам. Если ранее каждой позиции соответствовал код расчетов (T0, T1, T2), то теперь - конкретная дата. Например, если сегодня 16.01.2025, значит код расчета T0 соответствует дате расчета 16.01.2025 , код T1 - 17.01.2025 и так далее. Ожидается, что в будущем на эту схему перейдет большинство брокерских компаний. Кроме того, теперь расчеты по всем инструментам на сервере происходят по схеме T+1, что соответствует режиму реальных торгов на Московской Бирже.
В связи с этим в таблицах с позициями по инструментам и деньгам следует заменить параметр Срок расчетов на Дата расчетов. В таблице Состояние счета вместо кодов расчета теперь подставляется конкретная дата.
При использовании схемы с календарными датами срок расчетов портфеля соответствует плановой позиции - в этом случае в getPortfolioInfoEx передается limit_kind = 365.
Как можно взять текущую цену по инструменту без создания Datasource?
На Учебном сервере QUIK-Junior для транзакции "Ввод заявки" по классу "Акции 1-го уровня (эмулятор)" отсутствует поле "Код клиента" - Вы можете убедиться в этом, добавив такую транзакцию в "Карман" и проверив список ее параметров. Соответственно, при указании параметра "Код клиента" отправка этой транзакции приводит к ошибке.
Просьба помочь с возможными причинами одинаковых значений Объема и Доходности для таблицы Ордеров. расчет выполняется с использованием функций: get_value(trade,"VALUE") get_value(trade,"YIELD")
Действительно, описанная в данном обращении ошибка имеет место начиная с версии 8.2.0 и будет исправлена в одной из очередных версий ПО. Приносим извинения за причиненные неудобства.
На сервере QUIK-Junior заявок с таким параметром нет.
Конкретный пример затруднимся привести, однако если параметр доступен для заявки, можно сформировать транзакцию ввода заявки с этим параметром в "Кармане транзакций" и сохранить ее описание в tri-файл.
Вопрос разработчикам. Как указать "Время окончания срока действия заявки "?
Время окончания срока действия заявки может быть задано, если торговая система предоставляет такую возможность для данного типа заявок. В таком случае параметр может быть установлен на форме ввода заявки в терминале, либо передан в строке с описанием транзакции.
Одинаковые значения Объема и Доходности таблицы Ордеров
Ваше обращение получено, проблема изучается. Постараемся в ближайшее время дать ответ.
Отметим, что QPILE является устаревшим продуктом, развитие которого на данный момент прекращено. Рекомендуем использовать для выполнения скриптов актуальное решение - интерпретатор QLua,
Мы привели пример функций для работы с позициями в календарных датах, основанных на getMoneyEx и getDepoEx. Исходные функции (getMoneyEx и getDepoEx), а также другие функции QLua остались без изменений.
Схема ведения позиций по календарным датам поддерживается Рабочим местом QUIK версии 10.2.0 и выше, соответственно, приведенный код будет работать начиная с этой версии. При подключении к серверу QUIK-Junior рекомендуем использовать терминал актуальной версии 11.4.1.
как будут работать методы, где есть входной параметр limit_kind?
При работе в схеме с календарными датами в limit_kind необходимо передать дату расчетов, на которую необходимо получить позицию (NUMBER в формате YYYYMMDD).
Цитата
как теперь для инструментов, торгуемых в разных режимах определять позицию
Предлагаем воспользоваться следующими функциями - функции могут принимать на ввод в параметре limit_kind конкретную дату расчетов, либо значение "Tx". Если передана дата, функция вернет позицию на указанную дату, если такая имеется - в противном случае возвращается позиция, установленная на ближайшую предшествующую указанной дату, либо 0, если позицию по такому условию не удалось найти. Если передано значение "Tx", функция вернет плановую позицию (с максимальной датой рачетов).
Скрытый текст
Код
function getMoneyEx_byDate(firmid, client_code, tag, currcode, limit_kind)
res = getMoneyEx(firmid, client_code, tag, currcode, limit_kind)
if not res then
res = 0
n = getNumberOf("money_limits")
lk = 0
function fn(m)
if limit_kind == "Tx" then
qry = (m.firmid == firmid and m.client_code == client_code and m.tag == tag and m.currcode == currcode)
else
qry = (m.firmid == firmid and m.client_code == client_code and m.tag == tag and m.currcode == currcode and m.limit_kind < limit_kind)
end
if qry then
if m.limit_kind > lk then
lk = m.limit_kind
res = m
end
return true
else
return false
end
end
SearchItems("money_limits", 0, n - 1, fn)
end
return res
end
function getDepoEx_byDate(firmid, client_code, sec_code, trdaccid, limit_kind)
res = getDepoEx(firmid, client_code, sec_code, trdaccid, limit_kind)
if not res then
res = 0
n = getNumberOf("depo_limits")
lk = 0
function fn(d)
if limit_kind == "Tx" then
qry = (d.firmid == firmid and d.client_code == client_code and d.sec_code == sec_code and d.trdaccid == trdaccid)
else
qry = (d.firmid == firmid and d.client_code == client_code and d.sec_code == sec_code and d.trdaccid == trdaccid and d.limit_kind < limit_kind)
end
if qry then
if d.limit_kind > lk then
lk = d.limit_kind
res = d
end
return true
else
return false
end
end
SearchItems("depo_limits", 0, n - 1, fn)
end
return res
end
Создать заявку с признаком - полностью или отклонить через формат .tri-файла
Однако стоит учитывать, что в рамках одной транзакции все параметры должны быть заданы в одном формате (универсальном или фиксированном). Смешивать параметры в различных форматах нельзя - в этом случае транзакция не может быть корректно обработана.
Также для корректного чтения кириллицы в скрипте файл .lua должен быть сохранен в кодировке ANSI.
Создать заявку с признаком - полностью или отклонить через формат .tri-файла
Все верно, в этом случае в tri-файл сохраняется описание транзакции в универсальном формате. Если в Вашем сообщении идет речь о дальнейшей передаче такой транзакции в скрипт QLua, это возможно в таком виде:
1. Правильно я понимаю, что через формат .tri-файла не существует возможности выставить заявку "полностью или отклонить", и это предусмотрено только непосредственно в терминале и в ручном режиме?
Нет, это не так. В tri-файле могут быть переданы все параметры транзакции, доступные в Рабочем месте QUIK.
Вы можете получить описание транзакции из окна "Карман транзакций" в терминале: 1) откройте окно "Карман транзакций", при создании окна выберите необходимый класс и транзакцию; 2) добавьте транзакцию в карман (пункт контекстного меню "Положить в карман"), заполнив ее параметры в интерфейсе терминала; 3) сохраните описание транзакции в tri-файл (пункт контекстного меню "Сохранить транзакции в tri-файл").
Создать заявку с признаком - полностью или отклонить через формат .tri-файла
пс. (чего?) и (что это?!) мои. Исполнение не только частичное. Определение данное в Руководстве "«Количество» – количество инструментов, выраженное в лотах. Количество инструментов в одном лоте указано в скобках" я не понимаю вообще.
При вводе заявки указывается количество лотов инструмента, которое необходимо купить или продать. Один лот может содержать несколько штук инструмента - например, акции SBER торгуются лотами по 10 штук. Это количество в одном лоте указывается на форме ввода заявки в скобках.
Цитата
Для поддержки, если читает: Есть пожелание сделать выбор для пользователя условия по умолчанию, например, не «Поставить в очередь», а «Только пассивная».
Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Вы можете самостоятельно реализовать любой индикатор, используя язык Lua.
С подробной информацией о создании индикаторов Вы можете ознакомиться в документах : - Руководство пользователя Интерпретатора языка Lua, раздел 7. Индикаторы технического анализа; - Использование Lua в Рабочем месте QUIK, раздел 3. Создание индикаторов технического анализа с помощью скриптов Lua.
Коннектор на Lua "не аидит" инструменты на споте у одного из брокеров!?, Коннектор на Lua "не аидит" инструменты?
Рекомендуем убедиться, что в обоих терминалах включен "умный" заказ данных (Основные настройки (F9) / Программа / Получение данных / Котировки). После включения "умного" заказа проверьте, доступны ли необходимые инструменты и параметры в Таблице текущих торгов.
Если нужных инструментов по-прежнему не будет в списке, рекомендуем уточнить информацию у Вашего брокера.
Коннектор на Lua "не аидит" инструменты на споте у одного из брокеров!?, Коннектор на Lua "не аидит" инструменты?
1. В Вашем коде отсутствует вызов TRANS2QUIK_CONNECT для соединения с терминалом QUIK. 2. В директории с тестовым приложением (test_x64.exe) необходимо разместить библиотеку trans2quik.dll.
Получение исторических значений для Implyed Volatility
Получить историю изменения параметра можно с помощью функции CreateDataSource - см. описание функции в .
Также рекомендуем ознакомиться с порядком получения служебных идентификаторов параметров - см. п.3.12.3 "Особенности получения значений Таблицы текущих торгов".
Вылетает квик 50 раз за сессию!, вылетает квик при работе в период торговой сессии
В письме от 26.08.2024 мы запрашивали у Вас дополнительную информацию для изучения ситуации. Продублируем его содержание:
Цитата
Если ошибка прямо сейчас у вас повторяется, пришлите нам архив рабочего места без ключей и подкаталогов, но DAT, LOG файлами и WND-файлом настроек, а также описание действий, которое приводит к ошибке.
Если ошибка не повторяется, тогда, чтобы разобраться с причиной давайте сделаем следующее:
- запускайте терминал с ключом -full-dump (т.е. командная строка должна иметь вид INFO.EXE -FULL-DUMP), в этом случае при возникновении ошибки DMP-файл будет содержать больше информации.
- в случае повторения ошибки нужно прислать нам новый DMP-файл (он будет иметь больший размер, чем в предыдущий раз), архив терминала, сделанный сразу же после возникновения ошибки и описание последовательности действий, которая предшествовала возникновению ошибки. Архив надо сделать без ключей и подкаталогов, но во всеми dat-, log- файлами и wnd-файл с вашими оконными настройками. Уточним, что данный wnd-файл может находиться не в текущей папке терминала, нужен именно тот, который указан в настройках программы.
Ответ на этот запрос мы, к сожалению, не получили.
Просим Вас собрать указанную информацию и отправить ее на нашу почту - в продолжение предыдущей переписки или новым письмом. Просьба указать в письме ссылку на данную тему форума.