У меня получилось успешно сделать ввод алгозаявки со сроком (ALGO_GTD), пример передаваемых полей:[CODE]-- Алгозаявка local transSend = { ['TRANS_ID'] = tostring(100000 + math.random(1,899999)), ['Торговый счет'] = Config.tradeAccIdFutures, ['Фирма'] = 'SPBFUT', ['CLASSCODE'] = 'ALGO_GTD',
['Направление'] = 'Продажа', ['Класс'] = 'SPBFUT', ['Инструмент'] = 'IMOEXF', ['Цена'] = '3300.0', ['Количество'] = '1', ['Тип'] = 'Лимитированная', ['Код клиента'] = Config.clientCode, ['Комментарий'] = '', ['Условие исполнения'] = 'До даты', ['Дата истечения'] = '20231231', ['Время истечения'] = '0', ['Оповещения об исполнениях'] = 'Нет', ['Использовать временной интервал'] = 'Да', ['Время старта'] = '190500', ['Время окончания'] = '234900', ['Контрагент'] = 'SPBFUT', ['Код расчетов'] = 'T0', ['Внутренний комментарий'] = '', ['Client qualifier'] = 'No qualifier', ['Client ID'] = '', }; ... [/CODE]Но не могу отправить транзакцию по замене, снятию или возобновлению активной алгозаявки со сроком. В кармане транзакций (где можно подсмотреть название полей) такую создать не удалось из-за ошибки - нельзя выбрать направление, так как контролы задизеблены, кроме того, естественно, никак не указать номер алгозаявки, которую нужно модифицировать!
Приведите, плиз, пример транзакции с полями для замены, снятию и возобновлению алгозаявки.
Пользователь
Сообщений: Регистрация: 22.12.2023
22.12.2023 21:19:07
Цитата
Egor Zaytsev написал: Текст транзакции будет такой:
TRANS_ID=3646;CLASSCODE=ALGO_VOLATIL;ACTION=Ввод алго-заявки;Торговый счет=SPBFUT00001;Фирма=SPBFUT;Направление=Покупка;Класс=SPBOPT;Тип задания отклонения=Абс. изменение волатильности;Инструмент=RI100000BF8;Количество=10;Волатильность=10;Допустимое отклонение=1;Код клиента=Q3;Комментарий=;Внутренний комментарий=1
Добрый день!
У меня получилось успешно сделать ввод алгозаявки со сроком (ALGO_GTD), пример передаваемых полей:
Но не могу отправить транзакцию по замене, снятию или возобновлению активной алгозаявки со сроком. В кармане транзакций (где можно подсмотреть название полей) такую создать не удалось из-за ошибки - нельзя выбрать направление, так как контролы задизеблены, кроме того, естественно, никак не указать номер алгозаявки, которую нужно модифицировать!
Приведите, плиз, пример транзакции с полями для замены, снятию и возобновлению алгозаявки.
При замене заявки невозможно поменять её направление. Если Вы вручную попробуете изменить Алго-заявку, то для изменения будут доступны только поля "Цена", "Количество" и "Срок действия". Попробуйте сформировать заявку для замены в кармане снова, указав класс и инструмент самостоятельно. После этого вручную подставьте номер алго-заявки в получившуюся транзакцию из .tri файла.
Пользователь
Сообщений: Регистрация: 22.12.2023
29.12.2023 16:18:42
Andrey Golik, при попытке создать транзакцию по замене алгозаявки (обратите внимание, в интерфейсе задизеблены кнопки "Покупка" и "Продажа", я не могу их нажать!) получаю ошибку "Не указано значение в поле Операция":
Из-за ошибки я не могу дойти до этапа, где можно посмотреть и отредактировать tri-файл, так как транзакция не создаётся! Таким образом, просьба озвученная в начале темы осталась прежней - приведите, плиз, пример транзакции с полями для замены, снятию и возобновлению алгозаявки (в виде lua-кода).
К сожалению, в текущей реализации работа со снятием\заменой Algo заявок не реализована. Приносим извинения за доставленные неудобства и задержку с ответом. Зарегистрировали пожелание на доработку. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
К сожалению, в текущей реализации работа со снятием\заменой Algo заявок не реализована. Приносим извинения за доставленные неудобства и задержку с ответом. Зарегистрировали пожелание на доработку. Мы постараемся рассмотреть его и сообщить Вам результаты анализа. Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
Добрый день!
Как там с реализацией данного пожелания? Прошло уже больше 3-х лет.
На текущий момент пожелание еще не реализовано. Если доработки предлагаемые в данной теме будут выполнены, мы уведомим Вас в этой теме о выходе соответствующей версии ПО. Ознакомиться с регламентом работы с пожеланиями вы можете по .
Пользователь
Сообщений: Регистрация: 29.07.2023
31.07.2026 11:49:12
Можно ли вывести средствами qlia спикок алгоритмических заявок (по аналогии с обычными заявками myorder1 = getItem("orders", i))?
QUIK clients support
Сообщений: Регистрация: 11.08.2025
31.07.2026 11:54:22
Добрый день.
Обращение к связанным таблицам заявок / сделок по алго-заявкам сейчас нет. Заявки и сделки по алго-заявкам через QLUA сейчас можно найти только в обычных таблицах заявок и сделок.
Пользователь
Сообщений: Регистрация: 22.12.2023
11.09.2026 14:19:52
Цитата
Глушкова Екатерина написал: На текущий момент пожелание еще не реализовано. Если доработки предлагаемые в данной теме будут выполнены, мы уведомим Вас в этой теме о выходе соответствующей версии ПО.
Повысьте, пожалуйста, приоритет до высокого, поскольку РФ сейчас войдёт во времена не стабильной подачи э/э гражданскому населению (2027-2030 года), что означает, что алгоритмический бот в это время не сможет управлять обычными лимитным заявками (например, снять их). Алгоритмические заявки со сроком действия 1-2 минуты, которые пролонгируются каждые 1-2 минуты (без плождения новых алгозаявок), позволят минимизировать этот риск!
QUIK clients support
Сообщений: Регистрация: 11.08.2025
11.09.2026 16:08:32
Здравствуйте.
Данное пожелание находится на этапе рассмотрения и анализа. Приоритетность этой задачи будет сформирована в соответствии с регламентом, который мы отправляли выше. Если доработки предлагаемые в данной теме будут выполнены, мы уведомим Вас в этой теме о выходе соответствующей версии ПО.
Пользователь
Сообщений: Регистрация: 22.12.2023
30.10.2026 20:17:20
Цитата
IlyaKB написал: ['Идентификатор заявки'] = '317713', -- Заявка с ИД=317713 была создана с помощью lua-скрипта (ACTION='Ввод заявки')
Цитата
, как обойти ошибку "Вы не можете снять данную заявку"?
Цитата
: К сожалению, в текущей реализации работа со снятием\заменой Algo заявок не реализована.
-------------------- Ну что ж, методом проб и ошибок получилось сделать замену (и снятие тоже) алго-заявки! Оказалось, что нужно передавать значение из поля transReply.exchange_code (например, "000000752910ALGO_GTD"), а не просто номер алго-заявки "752910"!
Oleg Kuzembaev, просим рассмотреть возможность добавления в QLua API полноценного интерфейса для чтения таблицы алгоритмических заявок и подписки на изменения их состояний — по аналогии с обычными заявками (orders / OnOrder) и стоп-заявками (stop_orders / OnStopOrder).
Сейчас:
При выставлении алгозаявки через sendTransaction() скрипт получает в OnTransReply() статус 3 (успешная регистрация алгоритма на сервере).
Если далее алго-модуль при попытке выставить дочернюю заявку получает отказ от системы риск-менеджмента брокера (например, "Транзакция отклонена системой: Скорректированное значение НПР1 ... меньше 0"), алгозаявка автоматически снимается сервером.
При таком снятии в QLua не вызывается ни один коллбэк (в OnTransReply() ничего не приходит, т.к. дочернюю транзакцию инициировал серверный модуль, а не терминал), а таблицы алгозаявок в функциях getNumberOf() / getItem() нет.
Текущий костыль:
Из-за отсутствия чтения статуса робот «слеп» и считает алгозаявку активной, хотя она уже снята. Чтобы просто проверить, жива ли заявка, сейчас приходится отправлять фиктивную транзакцию на её изменение и ловить ошибку в OnTransReply(). Это создает паразитную нагрузку на сервер брокера и усложняет архитектуру торговых роботов.
Предложение:
Добавить поддержку таблицы алгоритмических заявок (например, "algo_orders") в стандартные функции доступа к таблицам QUIK: getNumberOf("algo_orders"), getItem("algo_orders", index).
Добавить функцию обратного вызова OnAlgoOrder(algo_order), которая срабатывает при создании, изменении параметров, частичном исполнении, снятии или отклонении алгозаявки.
Наличие такого механизма позволит корректно контролировать жизненный цикл алгозаявок в QLua без отправки лишних транзакций на сервер.