Не удается автоматически подать заявку на SPB

Не удается автоматически подать заявку на SPB
Atom
03.12.2019
LevNNN


Добрый вечер!

Хочу подать автоматическую заявку на биржу СПБ через QUIK. Код , аналогичный тому же , как и подаю на МБ:
Order order = new Order
{
Portfolio = ordPortfolio,
Security = sec,
Volume = volume,
Direction = sides,
ClientCode = _clientCode,
Price = 267
};
Trader.RegisterOrder(order);

На МБ этот код работает. На СПБ заявка не выставляется. Пишет - Не указан код клиента.
Версия ПО - 4.4.16.

Вот что пишется в логах:

t["ACCOUNT"] = "VTBRM_CL"
t["CLASSCODE"] = "SPBXM"
t["SECCODE"] = "AAPL_SPB"
t["QUANTITY"] = "1"
t["EXPIRY_DATE"] = "GTC"
t["OPERATION"] = "S"
t["TYPE"] = "L"
t["ACTION"] = "NEW_ORDER"
t["PRICE"] = "267"
t["EXECUTION_CONDITION"] = "PUT_IN_QUEUE"
t["TRANS_ID"] = "85452835"
return sendTransaction(t)
' SecId='' OrdType='Limit' IsSubscribe='False' DataType='Level1' Arg='' From='' To=''
2019/12/02 23:45:03.444|Error |LuaServer |OnTransReply: trId=85452835, status=5, message='Не указан код клиента'.

Хотя код клиента я явно указал в заявке.
В чем может быть проблема?!

С уважением,
Лев



Спасибо:


< 1 2 
Support

Фотография
Дата: 17.01.2020
Ответить


Квик для разных секций по разному интерпретирует счета. Где то необходимо указывать счёт, где то только код клиента. Последний идёт ввиде названия счёта. Это зависит от настроек брокера.

Пожалуйста попробуйте код ввиде

Order.Portfolio = clientCodePortfolio;

Менять объект не нужно портфеля. Необходимо использовать отдельный объект Portfolio для кода клиента.
Спасибо:

LevNNN

Фотография
Дата: 17.01.2020
Ответить


Что такое clientCodePortfolio?! Где его взять?! У меня есть мой номер клиента - это цифровое значение.
Спасибо:

Support

Фотография
Дата: 17.01.2020
Ответить


Это объект типа Portfolio. Вы можете найти его через Connector.Portfolios или создать сами, указав в качестве имени код клиента.
Спасибо:

LevNNN

Фотография
Дата: 17.01.2020
Ответить


Нашел я такой портфель, попробовал как Вы советовали присвоить Order.Portfolio = clientCodePortfolio. У меня он под номером 327708. Прежняя ошибка пропала, появилась новая - Указанный счет депо не найден: "327708"

Вот строчки из лога.

2020/01/17 14:19:19.584| |FixServer |From quik 127.0.0.1:64525: NewOrderSingle
2020/01/17 14:19:19.584|Debug |FixServer |Session quik: TransId=51514607<->ReqId=51514607
2020/01/17 14:19:19.584|Debug |FixServer |In. OrderRegister,T(L)=0001.01.01 00:00:00.000,Sec=AAPL_SPB@SPBXM,SecType=Stock,TransId=51514607,OrdType=Market,Pf=327708(ClCode=327708),Cond=,UID=51514607,Price=0,Side=Sell,Vol=10/,Till=,TIF=PutInQueue,MM=,MR=,SLP=,MN=
2020/01/17 14:19:19.586| |LuaServer |Request: OrderRegister,T(L)=0001.01.01 00:00:00.000,Sec=AAPL_SPB@SPBXM,SecType=Stock,TransId=51514607,OrdType=Market,Pf=327708(ClCode=327708),Cond=,UID=51514607,Price=0,Side=Sell,Vol=10/,Till=,TIF=PutInQueue,MM=,MR=,SLP=,MN=
2020/01/17 14:19:19.586| |LuaServer |t = {}
t["ACCOUNT"] = "327708"
t["CLASSCODE"] = "SPBXM"
t["SECCODE"] = "AAPL_SPB"
t["QUANTITY"] = "10"
t["EXPIRY_DATE"] = "GTC"
t["OPERATION"] = "S"
t["TYPE"] = "M"
t["ACTION"] = "NEW_ORDER"
t["PRICE"] = "0"
t["EXECUTION_CONDITION"] = "PUT_IN_QUEUE"
t["TRANS_ID"] = "51514607"
return sendTransaction(t)

2020/01/17 14:19:19.586|Error |LuaServer |Result: Указанный счет депо не найден: "327708"
2020/01/17 14:19:19.586|Debug |LuaServer |Out. Execution,T(L)=0001.01.01 00:00:00.000,T(S)=2020.01.17 14:19:19.597,(Transaction),Sec=@,O/T=True/False,Ord=/0/51514607,Fail=System.InvalidOperationException: Указанный счет депо не найден: "327708",Price=0,OrdVol=,TrVol=,Bal=,TId=,Pf=,TPrice=,UId=,State=Failed,Cond=
2020/01/17 14:19:19.610|Debug |LuaServer |ProcessQuote

Полностью лог приаттачил.
Спасибо:

Support

Фотография
Дата: 17.01.2020
Ответить


Могли бы вы приложить скриншот окна регистрации заявки из Квик. По нему будет понятно какая комбинация используется при регистрации.
Спасибо:

LevNNN

Фотография
Дата: 17.01.2020
Ответить


Скриншот прикрепил.
Спасибо:

Support

Фотография
Дата: 20.01.2020
Ответить


Добрый день

Пожалуйста, возьмите ночную сборку. Мы выключили авто-выключение кода клиента, ориентированное для Московской Биржи. Вероятнее всего, аналогичная логика использует для SPB (у нас нет логина Квик к данной бирже). Пожалуйста, проверьте и сообщите о результате. Заполнение полей аналогично вашей картинке. Рекомендуем сделать это на примере SampleConnection первоначально.
Спасибо:

LevNNN

Фотография
Дата: 21.01.2020
Ответить


Взял ночную сборку. Попробовал и получил вот такую ошибку в своей программе -

Message "Лицензия N1448 содержит неправильный идентификатор компьютера 'BFEBFBFF000206A720:41:53:59:4E:FF' вместо 'BFEBFBFF000206A794:DE:80:AA:C3:52'.\r\nЛицензия N1448 истекла 04/11/2014 16:20:17. Посетите сайт https://stocksharp.ru/ чтобы приобрести новую.\r\nЛицензия N1448 не поддерживает 'FIX_#=ZBRMRPO4BMPB$ABOFP75EPZ4HENNF0XZJ87MOLNS='."

Взял SampleConnection.exe - подключил только коннекторы Qiuk - там такая же ошибка.

Что делать?! В предыдущих сборках такого не было! Протестировать не удалось.

Спасибо:

Support

Фотография
Дата: 22.01.2020
Ответить


Пожалуйста, обновите архив. Временно отключили новый вид проверки лицензии из-за ошибочного лицензирования бесплатных коннекторов.
Спасибо:

LevNNN

Фотография
Дата: 23.01.2020
Ответить


В этой версии заработало.
Спасибо:
< 1 2 

Добавить файлы через драг-н-дроп, , или вставить из буфера обмена.

loading
clippy