Сергей Дворцов (Все сообщения пользователя)
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Вот эта
luafilesystem наверно....
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Подскажите библиотеку для работы с каталогами в Lua: проверить существование, получить список подкаталогов и список файлов в каталоге и т.п... Если таковая существует в природе....
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Может просто просто соединение было потеряно?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Цитата Василий Петров написал: Запускал на SRH7 на 5 минутах. Лог длинный, вот его кусок, где видно, что OnCalculate отрабатывает 2 разаКод VERSION = 7.8 . 1.21
TRADEDATE = 14.02 . 2017
SERVERTIME = 20 : 01 : 52
LASTRECORDTIME = 20 : 01 : 52
NUMRECORDS = 5401561
LASTRECORD = 8011148
LATERECORD = 7965462
CONNECTION = установлено
IPADDRESS = 217.14 . 50.203
IPPORT = 15100
IPCOMMENT = Демо контур
SERVER = VTB24
.. .. .. .
02 / 14 / 17 20 : 02 : 00 OnCalc() CandleExist( 3530 ): true ; T( 3530 ); 20170214193500 ; C( 3530 ): 16422
02 / 14 / 17 20 : 02 : 00 OnCalc() CandleExist( 3531 ): true ; T( 3531 ); 20170214194000 ; C( 3531 ): 16413
02 / 14 / 17 20 : 02 : 00 OnCalc() CandleExist( 3532 ): true ; T( 3532 ); 20170214194500 ; C( 3532 ): 16421
02 / 14 / 17 20 : 02 : 00 OnCalc() CandleExist( 3533 ): true ; T( 3533 ); 20170214195000 ; C( 3533 ): 16418
02 / 14 / 17 20 : 02 : 00 OnCalc() CandleExist( 3534 ): true ; T( 3534 ); 20170214195500 ; C( 3534 ): 16412
02 / 14 / 17 20 : 02 : 00 OnCalc() CandleExist( 3535 ): true ; T( 3535 ); 20170214200000 ; C( 3535 ): 16406
02 / 14 / 17 20 : 02 : 01 OnCalc() CandleExist( 1 ): false ; T( 1 ); 20170109151500 ; C( 1 ): -
02 / 14 / 17 20 : 02 : 01 OnCalc() CandleExist( 2 ): false ; T( 2 ); 20170109152000 ; C( 2 ): -
02 / 14 / 17 20 : 02 : 01 OnCalc() CandleExist( 3 ): false ; T( 3 ); 20170109152500 ; C( 3 ): -
02 / 14 / 17 20 : 02 : 01 OnCalc() CandleExist( 4 ): false ; T( 4 ); 20170109153000 ; C( 4 ): -
02 / 14 / 17 20 : 02 : 01 OnCalc() CandleExist( 5 ): false ; T( 5 ); 20170109153500 ; C( 5 ): -
02 / 14 / 17 20 : 02 : 01 OnCalc() CandleExist( 6 ): false ; T( 6 ); 20170109154000 ; C( 6 ): -
.. .. .. ..
02 / 14 / 17 20 : 02 : 02 OnCalc() CandleExist( 3534 ): true ; T( 3534 ); 20170214195500 ; C( 3534 ): 16412
02 / 14 / 17 20 : 02 : 02 OnCalc() CandleExist( 3535 ): true ; T( 3535 ); 20170214200000 ; C( 3535 ): 16406
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Моя работа предполагает постоянное использование демки Квик, Можно ли получить более длительный логин и пароль для квик джуниор?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Цитата Stanislav Tvorogov написал:Цитата Сергей Дворцов написал: Как получить список инструментов из таблицы текущих параметров?
Добрый день, Работая через LUA Вы работаете непосредственно с данными, на которые подписан терминал, а не с теми что видны визуально в Таблице текущих торгов (ранее параметров). Таким образом Вы можете работать со всеми инструментами, на которые подписан терминал QUIK. Так, например, с помощью функции getParamEx можно получить любой из параметров инструмента данной таблицы.
Переиначим вопрос... Могу ли я в принципе получить список инструментов из таблицы текущих торгов?. Это список мне нужен, как способ "сформировать" набор инструментов, на базе, которого рассчитываются индикатор...
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Как получить список инструментов из таблицы текущих параметров?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Уточню мой вопрос... Задача - выбрать из таблицы обезличенных сделок опционы с определенным базовым активом... Можно ли это сделать без разбора кода инструмента опциона?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Как при помощи кода инструмента (и кода класса) опциона получить код инструмента базового актива? Интересует способ не связанный с разбором кода инструмента самого опциона...
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Цитата Космонавт написал:Цитата Сергей Дворцов написал: Раундтрип самой быстрой заявки в Квике будет 150 мс
вот мои свежие логи 01/06/17 10:13:06,864 sec_code=MSNG;price=2.4205;client_code=000;balance=0;time=101308;status=3;qty=3;class_code=TQBR;trans_id=532782944;account=Y01+00000B00;exchange_code=;quantity=3;firm_id=MC0020800000;flags=262145;result_msg=(160) Заявка на покупку N 15836586314 зарегистрирована.;brokerref=/1.5774;order_num=15836586314;R=532782944;server_trans_id=329;uid=6695;ordernum=15836586314; 01/06/17 10:13:06,864 532782944 zaderzhka 30.999999988126 01/06/17 10:13:06,973 sec_code=MSNG;price=2.4205;client_code=000;balance=0;time=101308;status=3;qty=3;class_code=TQBR;trans_id=1623615465;account=Y01+00000B00;exchange_code=;quantity=3;firm_id=MC0020800000;flags=262145;result_msg=(160) Заявка на покупку N 15836586321 зарегистрирована.;brokerref=/1.5774;order_num=15836586321;R=1623615465;server_trans_id=329;uid=6695;ordernum=15836586321; 01/06/17 10:13:06,973 1623615465 zaderzhka 31.000000017229 Задержка 30 миллисекунд. Это время между отправкой и получением ответа. Виртуалка в москве, обычный КВИК.
.1. Какой брокер? 2.А потом это заявки на фонде, там сама торговая система быстрее и очередь на сервере брокера скорее всего меньше...
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Существует ли стандартный способ получить значение индекса элемента таблицы, например индекс определенной сделки в таблице "all_trades"?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Раундтрип самой быстрой заявки в Квике будет 150 мс и это на хостинге у брокера, поэтому что два Квика, что три - один фиг... Поэтому используйте один Квик не не морочьте себе голову... Если нужно скорость, то на Плазу....
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Можно в скриптах с индикаторами использовать функцию dofile()?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Цитата Stanislav Tvorogov написал: Добрый день, Для переноса заявки необходимо в форме ввода установить опцию "Переносить заявку" и указать дату переноса.
А что нужно указать в заявке при выставлении ее через программу... Например, при помощи луа?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Правильно ли я понимаю, что срок "жизни" заявки в тестовом контуре ФОРТС - торговая сессия. Или есть варианты, чтобы заявка автоматически выставилась в следующей сессии?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
К меня демка Квика... Вчера лимиты для ФОРТС были около 300 000 и средств хватало. Сегодня лимиты непонятным образом стали 30 тыс. Вылезает Ошибка "nehvatka sredstv po limitam klienta" Как сделать чтобы на ФОРТСе kbvbns jgznm cnfkb 300 000 код клиента: 10412. логин: U0102730 Счет SPBFUT00738
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Не могу добавить фьючи в таблицу обезличенных сделок - таблица пуста. логин - 105632
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
С двойным слэшем заявка выставляется нормально.. Не могли бы Вы уточнить ситуации, когда нужно выставлять один слэш, а когда два?
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
Я выложил кусок лога, в котором видно указание кода клиента и счета.. Сам код выкладывать нет смысла, т.к. она написан с использованием s#.
Скрытый текст
2015/12/22 13:52:52.515| |LuaServer |Request: Type = OrderRegister TrId = 49741275 Value = t = {} t["ACCOUNT"] = "L01-00000F00" t["CLASSCODE"] = "TQOB" t["SECCODE"] = "SU25080RMFS1" t["QUANTITY"] = "1000" t["CLIENT_CODE"] = "122795/quotestrategy" t["EXPIRY_DATE"] = "GTC" t["OPERATION"] = "B" t["TYPE"] = "L" t["ACTION"] = "NEW_ORDER" t["PRICE"] = "96,1" t["EXECUTION_CONDITION"] = "PUT_IN_QUEUE" t["TRANS_ID"] = "49741275" return sendTransaction(t) SecId = OrdType = Limit IsSubscribe = False DataType = Level1 2015/12/22 13:52:52.515| |FixServer |Fr om quik11 127.0.0.1:25261: TestRequest 2015/12/22 13:52:52.516|Debug |FixServer |To client quik11 (127.0.0.1:25261): 8=FIX.4.0^9=76^35=0^49=quik11^56=StockSharpTS^52=20151222-10:52:52.516^34=346^112=49741278^10=124^ 2015/12/22 13:52:52.516|Debug |FixServer |Сессия 'quik11 127.0.0.1:25261'. Получено: '8=FIX.4.4^9=74^35=1^49=quik11^56=StockSharpTS^52=20151222-10:52:52.516^34=5^112=49741278^10=023^' 2015/12/22 13:52:52.516| |FixServer |From quik11 127.0.0.1:25261: NewOrderSingle 2015/12/22 13:52:52.516|Debug |FixServer |In. OrderRegister,T(L)=0001.01.01 00:00:00.000,Sec=S#:SU25080RMFS1@TQOB, Native:,Type:Stock,TransId=49741277,Price=96,6,Side=Sell,OrdType=Limit,Vol=1000,Sec=S#:SU25080RMFS1@TQOB, Native:,Type:Stock 2015/12/22 13:52:52.517|Debug |FixServer |Сессия 'quik11 127.0.0.1:25261'. Получено: '8=FIX.4.4^9=231^35=D^49=quik11^56=StockSharpTS^52=20151222-10:52:52.516^34=6^11=49741277^55=SU25080RMFS1^207=TQOB^48=SU25080RMFS 1^22=8^100=TQOB^75=20151222^60=10:52:52.516^54=2^40=2^1=122795^38=1000^461=E^21=1^167=CS^44=96.6^59=1^58=quotestrategy^10=143^' 2015/12/22 13:52:52.517| |LuaServer |Request: Type = OrderRegister TrId = 49741277 Value = t = {} t["ACCOUNT"] = "L01-00000F00" t["CLASSCODE"] = "TQOB" t["SECCODE"] = "SU25080RMFS1" t["QUANTITY"] = "1000" t["CLIENT_CODE"] = "122795/quotestrategy" t["EXPIRY_DATE"] = "GTC" t["OPERATION"] = "S" t["TYPE"] = "L" t["ACTION"] = "NEW_ORDER" t["PRICE"] = "96,6" t["EXECUTION_CONDITION"] = "PUT_IN_QUEUE" t["TRANS_ID"] = "49741277" return sendTransaction(t) SecId = OrdType = Lim it IsSubscribe = False DataType = Level1 2015/12/22 13:52:52.534|Debug |LuaServer |OnQuote 2015/12/22 13:52:52.535|Debug |LuaServer |Out. QuoteChange,T(L)=0001.01.01 00:00:00.000,T(S)=2015.12.22 13:52:52.535 2015/12/22 13:52:52.535|Debug |LuaServer |OnQuote done 2015/12/22 13:52:52.535|Debug |LuaServer |OnQuote 2015/12/22 13:52:52.536|Debug |LuaServer |Out. QuoteChange,T(L)=0001.01.01 00:00:00.000,T(S)=2015.12.22 13:52:52.536 2015/12/22 13:52:52.536|Debug |LuaServer |OnQuote done 2015/12/22 13:52:52.599|Debug |LuaServer |OnTransReply 2015/12/22 13:52:52.600|Error |LuaServer |OnTransReply Result: Неверный код клиента 2015/12/22 13:52:52.600|Debug |LuaServer |Out. Execution,T(L)=0001.01.01 00:00:00.000,T(S)=2015.12.22 13:52:52.600,(Order),Sec=S#:@, Native:,Type:,Ord=/0/49741275,Fail=System.Exception: Неверный код клиента,TId=,Pf=,TPrice=,UId= 2015/12/22 13:52:52.600|Debug |FixServer |To client quik11 (127.0.0.1:25261): 8=FIX.4.0^9=148^35=8^49=quik11^56=StockSharpTS^52=20151222-10:52:52.600^34=347^41=49741275^150=8^39=8^58=nevernyi kod klienta^75=20151222^60=10:52:52.600^40=2^54=1^10=220^ 2015/12/22 13:52:52.600|Debug |LuaServer |OnTransReplyF done 2015/12/22 13:52:52.608|Debug |LuaServer |OnTransReply 2015/12/22 13:52:52.608|Error |LuaServer |OnTransReply Result: Неверный код клиента 2015/12/22 13:52:52.608|Debug |LuaServer |Out. Execution,T(L)=0001.01.01 00:00:00.000,T(S)=2015.12.22 13:52:52.608,(Order),Sec=S#:@, Native:,Type:,Ord=/0/49741277,Fail=System.Exception: Неверный код клиента,TId=,Pf=,TPrice=,UId= 2015/12/22 13:52:52.608|Debug |FixServer |To client quik11 (127.0.0.1:25261): 8=FIX.4.0^9=148^35=8^49=quik11^56=StockSharpTS^52=20151222-10:52:52.608^34=348^41=49741277^150=8^39=8^58=nevernyi kod klienta^75=20151222^60=10:52:52.608^40=2^54=1^10=239^
Пользователь
Сообщений: 20
Регистрация: 24.12.2015
После подключения субсчета при выставлении заявки через Lua стал получать ошибку "неверный код клиента"... Ошибка возникает только, если к заявке добавлен комментарий.. При отключении субсчета все работает нормально...