Михаил Е (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Получение данных без lua
 
Цитата
SDL написал:
Цитата
Михаил Е написал:

Но как же они могут получать рыночные данные и данные "стаканов" без  какого-либо кода в lua скрипте ?
Рекомендую ознакомиться с библиотекой, где реализован подобный подход:
https://github.com/elelel/qluacpp

Да, чтобы работали колбэки, совсем не обязательно определять эти функции в lua-скрипте. И даже использовать Trans2Quik. Функции колбэков можно регистрировать в глобальном окружении (_G) луа-машины из C-кода своей подключенной через 'require ...' DLL, тогда Quik обнаружит их и сможет вызывать.
Спасибо.
Правда этот код изобилует макросами, я так понимаю структуры там после обработки макросов
преобразуются в функции-callback'и
Получение данных без lua
 
Цитата
Egor Zaytsev написал:
Цитата
Михаил Е написал:
Здравствуйте.
На сколько я знаю, общая схема работы lua "коннекторов" к квиву,
что они переопределяют почти все функции обратного вызова (callback'и onXXX)
по их действию собирают данные в объекты-таблицы
и отправляют их своей программе (через разные библиотеки например socket core.dll)

Но в одном проекте
 https://github.com/StockSharp/StockSharp/blob/master/References/StockSharp.Quik.lua  
я увидел что в lua нет особо никакого кода,
они просто подключают свою dll-ку через require и всё.

Да, для транзакций у них внутри наверняка работает Trans2Quik.
Но как же они могут получать рыночные данные и данные "стаканов" без  какого-либо кода в lua скрипте ?
Другими словами, какие функции нужно определить в DLL, написанной на C# или C++,
чтобы получать данные из квика?
Добрый день.
При помощи Trans2Quik можете подписать на состояние заявок и сделок в QUIK.
Функции описаны в руководстве пользователя QUIK: Раздел 6. Совместная работа с другими приложениями/Раздел 6. Совместная работа с другими приложениями/Функции для работы с транзакциями через API
Транзакции это не главное.
Мне не понятно, каким образом можно сделать dll библиотеку на C# или C++,
чтобы она принимала к себе вызовы функций OnXXX из вашего Quik Lua.
При этом не прописывая этот код в .lua файле.
Получение данных без lua
 
Здравствуйте.
На сколько я знаю, общая схема работы lua "коннекторов" к квиву,
что они переопределяют почти все функции обратного вызова (callback'и onXXX)
по их действию собирают данные в объекты-таблицы
и отправляют их своей программе (через разные библиотеки например socket core.dll)

Но в одном проекте
https://github.com/StockSharp/StockSharp/blob/master/References/StockSharp.Quik.lua
я увидел что в lua нет особо никакого кода,
они просто подключают свою dll-ку через require и всё.

Да, для транзакций у них внутри наверняка работает Trans2Quik.
Но как же они могут получать рыночные данные и данные "стаканов" без какого-либо кода в lua скрипте?
Другими словами, какие функции нужно определить в DLL, написанной на C# или C++,
чтобы получать данные из квика?
Таблица обезличенных сделок. Удобный фильтр по инструментам
 
Цитата
Andrey Bezrukov написал:
Иными словами, Вы бы хотели, чтобы выбор инструментов для таблицы "Обезличенные сделки" был реализован аналогично тому, как этот функционал выполнен для таблицы текущих торгов, правильно?





Да, чтобы в фильтре инструментов была такая же иерархия как в таблице текущих торгов.
Например для опционов это разбиение по фьючерсному контракту, потом разбиение по датам экспирации
и наконец сами инструменты.
Можно выбрать что-нибудь в этой иерархии и сразу добавить все инструменты,
которые к "этому узлу" относятся.
Таблица обезличенных сделок. Удобный фильтр по инструментам
 
Здравствуйте.
Просьба к таблице обезличенных сделок прикрутить
такой фильтр по инструментам, который есть в котировках и таблице текущих торгов:


В таком списке отфильтровать одну серию опционов - очень неудобно,
да и нету каких-то шаблонов текста, например "BR*BG9", "BR*BS9":
Замена срочных инструментов, замена срочных инструментов на следующий день
 
Цитата
Imersio Arrigo написал:
Цитата
Михаил Е написал:
В день экспирации он ещё торгуется, на срочном рынке МБ до 18:45 этого дня,
Можно делать склейку в следующий день.
Т.е. 20 был экспир, мы от склейки отказались. А 21, в ручном режиме делаем замену и склейку.
Тогда получается так как вы хотите, если я правильно понимаю вопрос.
Проблема в основном в том, что в один день заканчиваются сотни контрактов (опционов и фьючерсов),
там неудобно в этом списке искать что тебе нужно оставить, а что можно заменить.

Что вы имеете ввиду под включенной склейкой?
Она позволит смотреть график и торговать текущим контрактом, пока он не закончился?
Замена срочных инструментов, замена срочных инструментов на следующий день
 
Цитата
Alexey Ivannikov написал:
Цитата
Михаил Е написал:
Здравствуйте.
Было бы удобно, если в настройках программы, замены инструментов
можно было указать не замену инструментов за 0 дней до погашения (т.е. сегодня или вчера, позавчера...в прошлом),
а попросить заменять только истекшие контракты.

То есть например 21 сентября он бы проверял на замену инструменты с исполнением (или погашением)
20 сентября, 19 сентября или ещё раньше. А 20 сентября - предлагал бы заменить инструменты с погашением
не позднее 19 сентября.
Добрый день.
Можно просто соглашаться на замену инструмента в день экспирации.
В день экспирации он ещё торгуется, на срочном рынке МБ до 18:45 этого дня,
не удобно заменять инструмент если он ещё нужен или по нему есть позиции.
Замена срочных инструментов, замена срочных инструментов на следующий день
 
Здравствуйте.
Было бы удобно, если в настройках программы, замены инструментов
можно было указать не замену инструментов за 0 дней до погашения (т.е. сегодня или вчера, позавчера...в прошлом),
а попросить заменять только истекшие контракты.

То есть например 21 сентября он бы проверял на замену инструменты с исполнением (или погашением)
20 сентября, 19 сентября или ещё раньше. А 20 сентября - предлагал бы заменить инструменты с погашением
не позднее 19 сентября.
Trans2Quik + Lua - нормально ли?
 
Цитата
Sergey Gorokhov написал:
нужен конкретный пример транзакции (дата, время, класс, инструмент), ваш UID, и кто Ваш брокер.
Далее запросим логи у брокера и по логам разберемся.
это типичная транзакция которых по инструменту были десятки если не сотни за день.
По синтаксису она корректна. На сервер брокера она выставилась,
проблема что в Lua её оповещение не прошло... Луа так понимаю локальный язык, с брокером никак не связан.

Цитата
Sergey Gorokhov написал:
Сообщите дату этих транзакций и хотя-бы примерное время, Ваш UID и кто брокер.
Пока этого будет достаточно.
В личные сообщения могу прислать...
Trans2Quik + Lua - нормально ли?
 
Цитата
Sergey Gorokhov написал:
Пока же просто проверьте актуальные ли у Вас версии (терминал QUIK 7.19 и qlua.dll версии 2.7.0.3)
Да, версии совпадают

Цитата
Sergey Gorokhov написал:
Если есть проблема с Lua мы готовы разбираться, но нам нужен конкретный пример.
схематически я описал что произошло, а по поводу примера
я не представляю данные какой подробности тут нужны.
Проблема была на версии то ли 7.16 то ли 7.18 в квике,
про новую версию не знаю, пока ещё не видел.
Trans2Quik + Lua - нормально ли?
 
Цитата
Sergey Gorokhov написал:
ЦитатаМихаил Ершов написал:
Сталкиваюсь с проблемой иногда что в Lua не приходят транзакции с номером заявки,
Если есть проблема следует разобраться с причиной проблемы, а потом уже делать выводы.
Приведите пример такой такой транзакции (скриншот или лог), сообщите Ваш UID и кто брокер.
Это редкая ситуация, происходит раз другой среди тысяч ордеров.
Последний раз было как-то так, что отсылаются две транзакции на лимитные ордера
по двум разным инструментам. По первому инструменту получили нормальный отклик (transaction reply) с номером заявки,
сохранили номер у себя и всё хорошо. По второму инструменту отклик на транзакцию не пришел!

Цитата
Sergey Gorokhov написал:
Зачем? Всё что есть в trans2quik уже есть в Lua
Есть, но если Lua это не очень надежный инструмент, разработчик говорит навертели много защиты от его ошибок
и все равно такие косяки. Я думаю вещи на C++ будут работать четко, не как на интерпретируемых скриптах.
Trans2Quik + Lua - нормально ли?
 
Здравствуйте, вижу что очень популярно использовать Lua скрипт в квике
для экспорта данных в свои приложения, написанные на некотором языке - C++, C#, Python ...
Такой вопрос, можно ли технически в паре с Lua скриптом использовать trans2quik для заявок из программы,
а Lua - для поступления торговых данных?

Сталкиваюсь с проблемой иногда что в Lua не приходят транзакции с номером заявки,
хотя они выставляются, они теряются из виду у робота и т.д. Посоветовали trans2quik как "прямой API" к квику,
типа такой проблемы не будет, поэтому думаю попробовать его
если это нормальная и не устаревшая технология?
Улучшение функционала алгоритмической заявки
 
Цитата
Sergei Kunitckii написал:
Михаил, по поводу "другого "тикера""  просьба дать пояснения. Сейчас берется базовый актив для расчета, Вы хотите, чтобы можо было указать совсем другой инструмент, произвольный?
Это был бы самый универсальный и самый лучший вариант.
Я привел пример, например если не доверяем фьючерсу SBRF-3.18, то можно брать цену с акции "Сбербанк ао" с фондового рынка,
или например вместо MGNT-3.18 брать цену акций "Магнит". Например для нефти...даже какую-то индикативную котировку вместо фьючерса, скажем если брокер транслирует Brent Oil Index, либо RTSI (индикативный индекс РТС).
В более простом варианте можно сделать только возможно выбирать среди доступных фьючерсов у актива
(например для опционов по доллар-рублю можно выбирать между Si-3.18, Si-6.18, Si-9.18, ... как источником цены БА. С поправкой своими коэффициентами)
Улучшение функционала алгоритмической заявки
 
Цитата
Sergei Kunitckii написал:
Уже сейчас есть возможность заменять заявку и это происходит через снятие заявки, это особенность реализации.
Сергей, возможно это особенность брокерской сборки!
Я вижу что "Изменить алго-заявку Ctrl+A" не доступно,
активен только вариант "Снять алго-заявку Ctrl+D"
Улучшение функционала алгоритмической заявки
 
Цитата
Sergei Kunitckii написал:
2. Про замену не совсем понятно ,что Вы хотите. Уже сейчас есть возможность заменять заявку и это происходит через снятие заявки, это особенность реализации.
Это небольшое удобство, сейчас сначала нужно щёлкнуть Ctrl+D или пункт меню отменить заявку,
потом нужно ещё раз щёлкнуть по отменённой заявке в таблице алго-заявок,
чтобы она открылась с теми же параметрами, их можно было поменять и выставить заново.

Почему бы не сделать активной замену заявки, чтобы и заявку снимало,
и сразу же открывало окно с её параметрами (можно выставить заново, можно нажать отмену и не выставлять).
Цитата
Sergei Kunitckii написал:
3. Мы зарегистрировали пожелание по поводу применения коэффициентов к цене базового актива при расчете цены алгозаявки.
Да, именно что получать цену с другого "тикера", символа как базового актива. И поправку коэффициентами.
Если это сложно реализовать, тогда ладно...
Улучшение функционала алгоритмической заявки
 
Здравствуйте.

Есть пожелания по улучшению работы с алгоритмической заявкой "Волатильность"
для опционов
1) Очень неудобно что все выставленные заявки пропадают после 23:59
на следующий торговый день. Хотя в принципе они могут быть актуальны для меня.
Можно ли сделать
- либо, чтобы данные заявки переносились на следующий день,
соответственно например на FORTS они снимают связанные ордера перед закрытием в 23:50
и продолжают работать в следующий торговый день с 10:00 плюс несколько секунд.
Собственно как-то так работает заявка со сроком действия (GTD)
- либо сделать возможность сохранять такие заявки в карман транзакций
и потом доставать их в следующий день. Соответственно в кармане транзакций
желательна возможность редактировать все её параметры.
При доставании одной или нескольких таких заявок,
наверно, стоит показывать подтверждающие диалоги на каждую (то же самое, когда создаешь заявку и видишь
"Вы действительно хотите выполнить транзакцию "Ввод алго-заявки", и т.д.")
2) Хотелось бы, чтобы алго-заявку волатильность можно было заменять.
То есть в таблице алго-заявок выбираешь Изменить алго заявку (Ctrl+A),
тогда текущая заявка и ордера - отменяется,
всплывает окно с параметрами только что снятой алго-заявки.
Их можно поменять и поставить новую заявку.
3) Последний пункт чисто пожелание,
в алгоритме который переводит волатильность в цену ордера есть параметр
S – текущая цена базового актива (для опционов FORTS используется параметр «Расчетная
цена»);

Неплохо, если можно будет гибко задавать S как a*S'+b,
где a, b - коэффициенты; S' - текущая цена другого инструмента.
Например, если мы рассматриваем опцион по фьючерсу сбербанка (SBRF-3.18),
и хотим использовать котировку "Сбербанк ао" с фондового рынка как более точную и динамично меняющуюся, то есть
S = 100,5000 * Котировка (МБ ФР:Сбербанк ао) + 0,0000.
(100,50 потому что цена фьючерса равна цене 100 акций и фьючерс несколько дороже из-за безрисковой ставки)
QUIK виснет из-за Таблица изменений параметров
 
Ещё попробовал совет отсюда - [ Закрыто ] FAQ: Возможные проблемы с производительностью и рекомендации по их устранению
когда ставишь «Сохранение данных» - «Только данные, отражающие текущее состояние».
Вышло, что данная таблица вообще не получает новых изменений, вроде бы.
QUIK виснет из-за Таблица изменений параметров
 
Добрый день,
пытаюсь с помощью данных таблиц отслеживать бид/аск,
например строю таблицу по изменению "Лучшей цены спроса"
на 20-30 неликвидных инструментах,
потом строю ещё одно таблицу по изменению  "Лучшей цены предложения"
на этих же инструментах.
Записей там не много, думаю за сессию 1-2-3 тысячи строк выходит,
но где-то через полчаса работы терминал зависает,
только его разворачиваешь - он что-то грузит, отвисает и сразу же снова что-то грузит, отвисает
и так зацикливается. Кнопка крестика из-за этого не работает. Windows предлагает только убивать зависшее приложение.
А при повторном открытии эти два окна уже пропадают...
Страницы: 1
Наверх