Для выставления лимитированных заявок с длинным сроком жизни я взял соответсвующие поля из tri файла подобной заявки. Это флаги Move order=Yes (в русской версии tri файла: Переносить заявку=Да)
Из этих двух полей при выставлении заявки через Lua работает только Move order (заявка переносится через вчерний клиринг, и умирает на следующий день). Поле Expiration date не работает :-( Дату я пытался выставлять как YYYYMMDD так и как YYMMDD. Не подскажите, в чём может быть причина?
Заявка сейчас успешно выставляется в такой форме. Работает всё, кроме последнего поля.
в вопросе не написал второй флаг, исправляюсь: Это флаги Move order=Yes (в русской версии tri файла: Переносить заявку=Да) и Expiration date=20160613 (в русской версии tri файла: Дата экспирации=20160613)
Сам мучаюсь таким же вопросом. Я думаю, дело в том, что параметр EXPIRY_DATE согласно руководства пользователя (6 Работа с другими приложениями, стр. 34) относится к стоп-заявкам, а не к лимитным.
Цитата
EXPIRY_DATE Срок действия стоп-заявки. Возможные значения: «GTC» – до отмены «TODAY» – до окончания текущей торговой сессии, Дата в формате «ГГГГММДД»
Вопрос к администраторам форума: Какой параметр следует указать при отправке лимитной заявки sendTransaction(), аналогично выделенному на рисунке:
Поддерживаю вопрос. На опционах если лимитную заявку ставить в ручную, то можно указать время действия (жизни) заявки, а программно (Lua) этого сделать нельзя. Почему так?
Ответ есть в ветке https://forum.quik.ru/forum10/topic1409/ от Егора. Дело в том что, установив Move order=Yes;Expiration date=20160323 заявка создается без этих параметров. Версии терминалов 7.1.0.371 и 7.0.4.10. Егор, можете прокомментировать???
Владимир написал: Ответ есть в ветке https://forum.quik.ru/forum10/topic1409/ от Егора. Дело в том что, установив Move order=Yes;Expiration date=20160323 заявка создается без этих параметров. Версии терминалов 7.1.0.371 и 7.0.4.10. Егор, можете прокомментировать???
а я именно так всё и делаю. Не работает...
Т.е. создаю tri файл (причём делал как английскую, так и русскую версию), беру от туда нужные поля, но дата действия заявки не работает. Было подозрение на региональные настройки Windows с кучей форматов YYMMDD, YYYYMMDD, YY.MM.DD, MM/DD/YYYY - попробовал менять, не помогло.
Вопрос к сожалению никак не отвечен пока. Как видно я не один такой, с проблемой даты лимитированых заявок
Коля Маржин написал: а я именно так всё и делаю. Не работает...
Т.е. создаю tri файл (причём делал как английскую, так и русскую версию), беру от туда нужные поля, но дата действия заявки не работает. Было подозрение на региональные настройки Windows с кучей форматов YYMMDD, YYYYMMDD, YY.MM.DD, MM/DD/YYYY - попробовал менять, не помогло.
Добрый день,
Для переноса лимитной заявки на Срочном рынке необходимо использовать русские названия параметров. Рекомендуем воспользоваться следующим примером :
local trans = { ["TRANS_ID"] = "541", ["ACTION"] = "Ввод заявки", ["CLASSCODE"] = "SPBFUT", ["Инструмент"] = "SRM6", ["Торговый счет"] = "SPBFUT*****", ["Тип"] = "Лимитированная", ["К/П"] = "Покупка", ["Цена"] = "10900", ["Количество"] = "1", ["Условие исполнения"] = "Поставить в очередь", ["Переносить заявку"]="Да", ["Дата экспирации"]="20160327" } local res = sendTransaction(trans)
ААААААА написал: Да, действительно решается переходом на кириллицу (поля прописываем кириллицей)
На демо версии с сайта разработчика все работает, а на версии брокера (ОТКРЫТИЕ и БКС) выдает ошибку "Ошибка транзакции открытия/закрытия: Неправильно указан вид транзакции: "Ввод заявки". Как быть? Кто подскажет
Попробуйте отправить транзакцию с описанием в универсальном формате.
Вы можете получить полный набор параметров транзакции в таком формате из "Кармана транзакций": 1) откройте таблицу "Карман транзакций"; 2) создайте транзакцию с необходимыми параметрами; 3) в контекстном меню таблицы выберите "Сохранить транзакции в tri-файл" - сохраненный tri-файл будет содержать список параметров и их значений введенной Вами транзакции, их можно использовать в Lua-скрипте.
Универсальный формат позволяет отправлять любые транзакции, если известно их описание
Описание набора полей транзакции можно посмотреть в окне создания кармана транзакций.
Ок. Смотрим на поля окна для фондовой секции по акциям. Есть такое поле "Код клиента". Собственно оно обязательно для акций. Вводим в карман транзакций заявку, указывая код клиента. Сохраняем в файл. Смотрим - а кода клиента нет. Ну ладно, бывает. Пробуем отправить транзакцию в этом формате, добавив поле "Код клиента" (выше же сказано, что поля можно увидеть в окне).
Получаем:
Ошибка выставления лимитной заявки: Не найдено поле "Код клиента" для транзакции "Ввод заявки" по классу "Акции 1-го уровня (эмулятор)"
Убираем поле "Код клиента" - работает. Но как же так, код-то нужен. Код видно только в поле "Примечание" вместе с введённым комментарием.
Внимание вопрос: это так демо-сервер работает или лыжи не едут...
Этот квест с универсальным форматом просто великолепен. Если бы сделали перенос заявки в фиксированном формате, то, видимо, никто бы не задавал больше вопросов. Но нет...
На Учебном сервере QUIK-Junior для транзакции "Ввод заявки" по классу "Акции 1-го уровня (эмулятор)" отсутствует поле "Код клиента" - Вы можете убедиться в этом, добавив такую транзакцию в "Карман" и проверив список ее параметров. Соответственно, при указании параметра "Код клиента" отправка этой транзакции приводит к ошибке.