Создать заявку с признаком - полностью или отклонить через формат .tri-файла

Страницы: 1
RSS
Создать заявку с признаком - полностью или отклонить через формат .tri-файла
 
Здравствуйте.
В терминале в ручном режиме можно выставить тип заявки - Полностью или отклонить.

Как выставить такую же заявку через формат .tri-файла. Какой параметр транзакций отвечает, за признак "полностью или отклонить".
Если можно приведите пример выставления лимитной заявки с признаком полностью или отклонить для Московской Биржи.
 
EXECUTION_CONDITION Условие исполнения заявки, необязательный параметр. Возможные
значения:
«PUT_IN_QUEUE» – поставить в очередь (по умолчанию),
«FILL_OR_KILL» – немедленно или отклонить,
«KILL_BALANCE» – снять остаток
 
Это и так есть в документации. К сожалению, нет там доступных подробных объяснений, как работают значения этого параметра. И в этом параметре отсутствует параметр транзакции "Полностью или отклонить".

«FILL_OR_KILL» - как работает? И, что значит немедленно? Это за какое время? Или по каким условиям отрабатывается понятие - немедленно. И что будет к примеру выставления заявки на 500 лотов, какие варианты развития событий?

Те же вопросы и по «KILL_BALANCE» на примере выставления лимитированной заявки на 500 лотов?
 
Цитата
Роман Н написал:
Это и так есть в документации. К сожалению, нет там доступных подробных объяснений, как работают значения этого параметра. И в этом параметре отсутствует параметр транзакции "Полностью или отклонить".

«FILL_OR_KILL» - как работает? И, что значит немедленно? Это за какое время? Или по каким условиям отрабатывается понятие - немедленно. И что будет к примеру выставления заявки на 500 лотов, какие варианты развития событий?

Те же вопросы и по «KILL_BALANCE» на примере выставления лимитированной заявки на 500 лотов?
FOK (FILL_OR_KILL) так и работает, как написано в названии. Либо сразу выполняется, если есть встречная заявка достаточного объема (больше или равна) по совпадающей с указанной в заявке цене (или лучшей), или отклоняется. 500 там лотов или 100500 - без разницы. Либо целиком выполняется, либо отклоняется. Заявок типа AON (All or Nothing) я в Квике не видел. В документации объяснение есть, но его нужно править  :what: :

«Условие исполнения» определяет порядок обработки остатка заявки при ее частичном (чего?) исполнении:
— «Немедленно или отклонить» – заявка исполняется только полностью, т.е. при наличии в торговой системе встречных заявок по цене, не хуже указанной и с количеством инструментов (что это?!), превышающим объем заявки.
— «Поставить в очередь» – неисполненный остаток ставится в очередь с ценой, указанной в заявке. Если заявка рыночная, и встречные заявки отсутствуют, то неисполненный остаток снимается с торгов.
— «Снять остаток» – неисполненный остаток снимается с торгов.
— «Аукцион периода закрытия» – подача заявки на аукцион периода закрытия.
— «Только пассивная» – подача заявки с типом «passive only».
По умолчанию заявка имеет условие «Поставить в очередь».

пс. (чего?) и (что это?!) мои. Исполнение не только частичное. Определение данное в Руководстве "«Количество» – количество инструментов, выраженное в лотах. Количество инструментов
в одном лоте указано в скобках" я не понимаю вообще.

Для поддержки, если читает: Есть пожелание сделать выбор для пользователя условия по умолчанию, например, не «Поставить в очередь», а «Только пассивная».
 
Спасибо.

1. Правильно я понимаю, что через формат .tri-файла не существует возможности выставить заявку "полностью или отклонить", и это предусмотрено только непосредственно в терминале и в ручном режиме?

Пример: стоимость акции в продаже 101 р., если я выставляю через формат .tri-файла купить по 100 р. с «FILL_OR_KILL», то заявка автоматически отклониться, т.к в этот момент нет предложений о продаже по 100 р. А если же такую же заявку я выставлю в ручном режиме в терминале с признаком "полностью или отклонить", то такая заявка будет ждать снижения цены и встречного предложения и не отменится.

2. И если первое я правильно написал, то возникает второй вопрос:  "Почему через формат .tri-файла нет дублирования возможностей выставления заявок, как в терминале в ручном режиме?"
 
Игорь М, добрый день.

Цитата
пс. (чего?) и (что это?!) мои. Исполнение не только частичное. Определение данное в Руководстве "«Количество» – количество инструментов, выраженное в лотах. Количество инструментов
в одном лоте указано в скобках" я не понимаю вообще.
При вводе заявки указывается количество лотов инструмента, которое необходимо купить или продать.
Один лот может содержать несколько штук инструмента - например, акции SBER торгуются лотами по 10 штук.
Это количество в одном лоте указывается на форме ввода заявки в скобках.

Цитата
Для поддержки, если читает: Есть пожелание сделать выбор для пользователя условия по умолчанию, например, не «Поставить в очередь», а «Только пассивная».
Ваше пожелание зарегистрировано. Мы постараемся рассмотреть его и сообщить Вам результаты анализа.
Впоследствии, по результатам анализа, будет приниматься решение о реализации пожелания в будущих версиях ПО.
 
Роман Н, добрый день.

Цитата
1. Правильно я понимаю, что через формат .tri-файла не существует возможности выставить заявку "полностью или отклонить", и это предусмотрено только непосредственно в терминале и в ручном режиме?
Нет, это не так.
В tri-файле могут быть переданы все параметры транзакции, доступные в Рабочем месте QUIK.

Вы можете получить описание транзакции из окна "Карман транзакций" в терминале:
1) откройте окно "Карман транзакций", при создании окна выберите необходимый класс и транзакцию;
2) добавьте транзакцию в карман (пункт контекстного меню "Положить в карман"), заполнив ее параметры в интерфейсе терминала;
3) сохраните описание транзакции в tri-файл (пункт контекстного меню "Сохранить транзакции в tri-файл").
 
Цитата
Роман Н написал:
А если же такую же заявку я выставлю в ручном режиме в терминале с признаком "полностью или отклонить", то такая заявка будет ждать снижения цены и встречного предложения и не отменится.
Так не должно быть. Если вы выставляете заявку  с признаком "полностью или отклонить", а она ждет - это ошибка.
 
Спасибо.
Действительно так и есть.
 
Цитата
Anton Belonogov написал:
Роман Н, добрый день.

Цитата
1. Правильно я понимаю, что через формат .tri-файла не существует возможности выставить заявку "полностью или отклонить", и это предусмотрено только непосредственно в терминале и в ручном режиме?
Нет, это не так.
В tri-файле могут быть переданы все параметры транзакции, доступные в Рабочем месте QUIK.

Вы можете получить описание транзакции из окна "Карман транзакций" в терминале:
1) откройте окно "Карман транзакций", при создании окна выберите необходимый класс и транзакцию;
2) добавьте транзакцию в карман (пункт контекстного меню "Положить в карман"), заполнив ее параметры в интерфейсе терминала;
3) сохраните описание транзакции в tri-файл (пункт контекстного меню "Сохранить транзакции в tri-файл").
Сделал как Вы сказали. В файле все на русском языке. В программу это не вставить. Как увидеть реальный запрос в Quik по формату?

Вот что в файле:
TRANS_ID=1;CLASSCODE=TQBR;ACTION=Ввод заявки;Торговый счет=L02-00100K00;К/П=Купля;Тип=Лимитная;Тип по цене=По разным ценам;Тип по остатку=Полностью или отклонить;Тип ввода значения цены=По цене;Назначение заявки=По умолчанию;Тип события активации заявки=Обычная заявка;Режим=TQBR;Инструмент=GAZP;Цена=110.00;Лоты=1;Примечание=4286300/000/;Объем заявки=0.00;Код внешнего пользователя=;Время активации=;Доп. инфо=;Фирма торгового счета=;
 
Роман Н, добрый день.

Все верно, в этом случае в tri-файл сохраняется описание транзакции в универсальном формате.
Если в Вашем сообщении идет речь о дальнейшей передаче такой транзакции в скрипт QLua, это возможно в таком виде:

Код
t = {}

t["TRANS_ID"] = "1"
t["CLASSCODE"] = "TQBR"
t["ACTION"] = "Ввод заявки"
t["Торговый счет"] = "L02-00100K00"
t["К/П"] = "Купля"
t["Тип"] = "Лимитная"
t["Тип по цене"] = "По разным ценам"
t["Тип по остатку"] = "Полностью или отклонить"
t["Тип ввода значения цены"] = "По цене"
t["Назначение заявки"] = "По умолчанию"
t["Тип события активации заявки"] = "Обычная заявка"
t["Режим"] = "TQBR"
t["Инструмент"] = "GAZP"
t["Цена"] = "110.00"
t["Лоты"] = "1"
t["Примечание"] = "4286300/000/"
t["Объем заявки"] = "0.00"
t["Код внешнего пользователя"] = ""
t["Время активации"] = ""
t["Доп. инфо"] = ""
t["Фирма торгового счета"] = ""

res = sendTransaction(t)
 
Я передаю в таком формате:

   transaction = {   # Все значения должны передаваться в виде строк
        'TRANS_ID': str(TransId),  # Номер транзакции задается клиентом
        'CLIENT_CODE': '',  # Код клиента. Для фьючерсов его нет
        'ACCOUNT': my_number_shet,  # Счет
        'ACTION': 'NEW_ORDER',  # Тип заявки: Новая лимитная/рыночная заявка
        'CLASSCODE': classCode,  # Код площадки
        'SECCODE': secCode,  # Код тикера
        'OPERATION': flag_buy_sale,  # B = покупка, S = продажа
        'PRICE': str(price),  # Цена исполнения.
        'QUANTITY': str(quantity),  # Кол-во в лотах
        'TYPE': 'L'}  # L = лимитная заявка (по умолчанию), M = рыночная заявка

Правильно я Вас понял, что не обязательно все параметры передавать на английском, в соответствии с документации, а можно передавать запрос как у Вас на русском языке?
 
Роман Н, все верно.

Однако стоит учитывать, что в рамках одной транзакции все параметры должны быть заданы в одном формате (универсальном или фиксированном).
Смешивать параметры в различных форматах нельзя - в этом случае транзакция не может быть корректно обработана.

Также для корректного чтения кириллицы в скрипте файл .lua должен быть сохранен в кодировке ANSI.
 
Цитата
Anton Belonogov написал:
Игорь М, добрый день.

Цитата
пс.  (чего?)  и  (что это?!)  мои. Исполнение не только частичное. Определение данное в Руководстве  "«Количество» – количество инструментов, выраженное в лотах. Количество инструментов
в одном лоте указано в скобках"  я не понимаю вообще.
При вводе заявки указывается количество лотов инструмента, которое необходимо купить или продать.
Один лот может содержать несколько штук инструмента - например, акции SBER торгуются лотами по 10 штук.
Это количество в одном лоте указывается на форме ввода заявки в скобках.
Вот именно. Вы сами написали "количество лотов инструмента" и "несколько штук инструмента", используя слово "инструмент" в единственном числе. О каких инструментах во множественном числе идет речь в определении мне непонятно. Я бы в определении написал так и написал: "количество лотов инструмента". "Количество инструментов, выраженное в лотах" подразумевает наличие нескольких инструментов, что вызывает вопросы у читающего.
 
Я вспомнил, что уже писал о подобном
 
Игорь М, добрый день.

Цитата
Игорь М написал:
Я вспомнил, что уже писал о  подобном

По этому обращению мы зарегистрировали пожелание на изменение формулировки в документации.
По результатам мы дадим Вам ответ в указанной теме.
Страницы: 1
Читают тему
Наверх