Не получается получить открытый интерес
Atom Ответить
21.03.2016


Здравствуйте, подскажите как можно получить открытый интерес по инструменту, вользуюсь методом: _lkoh.LastTrade.OpenInterest - в итоге ничего не получается, в тоже время другие данные по инструменту идут, такие, как:
Код
                Console.WriteLine(_lkoh.LastTrade);
                Console.WriteLine(_lkoh.LastTrade.Price);
                Console.WriteLine(_lkoh.LastTrade.Id);
                Console.WriteLine(_lkoh.LastTrade.OpenInterest); // почему-то не получаем его
                Console.WriteLine(_lkoh.LastTrade.Volume);
                Console.WriteLine(_lkoh.LastTrade.Time);


Может его можно получить еще какие-то образом или что-то возможно не настроено в квике? хотя в таблице всех сделок, имеется колонка открытого интереса.

Теги:


Спасибо:




10 Ответов
risty

Фотография
Программист
Дата: 21.03.2016
Ответить


Apollon Перейти
Здравствуйте, подскажите как можно получить открытый интерес по инструменту, вользуюсь методом: _lkoh.LastTrade.OpenInterest - в итоге ничего не получается, в тоже время другие данные по инструменту идут, такие, как:
Код
                Console.WriteLine(_lkoh.LastTrade);
                Console.WriteLine(_lkoh.LastTrade.Price);
                Console.WriteLine(_lkoh.LastTrade.Id);
                Console.WriteLine(_lkoh.LastTrade.OpenInterest); // почему-то не получаем его
                Console.WriteLine(_lkoh.LastTrade.Volume);
                Console.WriteLine(_lkoh.LastTrade.Time);


Может его можно получить еще какие-то образом или что-то возможно не настроено в квике? хотя в таблице всех сделок, имеется колонка открытого интереса.


Судя по всем у это проперти, а не метод.
Варианта два -
Первый посмотреть в исходниках, что оно там в get'тере возвращает и чего ему для счастья не хватает.
Второй написать проперти самостоятельно и посчитать открытый интерес, если он считается на основании имеющийся(приходящих) данных по инструменту.

А вообще зарегистрируйте инструмент:
Connector.RegisterTrades(security);
далее подписываетесь на событие
Connector.SecuritiesChanged
и посмотрите, может подтянутся изменения инструмента, а в месте с ними и OpenInterest
Спасибо:

Apollon

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


Я подписываюсь на инструмент вот таким образом

Код
                            // Регаем инструмент для приянтия сделок
                            Trader.RegisteredSecurities.Contains(_lkoh);
                            Trader.RegisterSecurity(_lkoh);
                            Trader.RegisterTrades(_lkoh);


Потом подписываюсь на событие:
Trader.NewTrades += newTradeM;

При этом не могу получить этот открытый интерес :(
Также попробовал получить данные таким образом:
Код

                Console.WriteLine(Trader.GetSecurityValue(_lkoh, Level1Fields.BestBidPrice));
                Console.WriteLine(Trader.GetSecurityValue(_lkoh, Level1Fields.OpenInterest)); // тоже почему-то не получается получить

В итоге цену я получаю, а открытый интерес нет :(

> Первый посмотреть в исходниках, что оно там в get'тере возвращает и чего ему для счастья не хватает.
А как это можно сделать?
Хотелось бы просто тупо получить все данные которые получает коннектор из квика, было бы как-то проще разбираться :)
Автор топика
Спасибо:

Slepoy

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


Если это Квик 6.17, то у меня данное поле null. Ты не можешь его вывести, т.к. Квик просто его не транслирует для последней сделки в ТТП.
Если у тебя новый Квик 7.ххх , то там ОИ стали транслировать в ТВС, можно от туда попытаться вытащить. Ниже скрин, но там я пока не запускал экспорт ТВС(RegisterTrades), запустил только ТТП(RegisterSecurity)

http://i11.pixs.ru/storage/3/4/2/OInulljpg_9060967_21207342.jpg
Спасибо:

Slepoy

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


Цитата:
вользуюсь методом: _lkoh.LastTrade.OpenInterest -


Это не метод. Если используется Квик, то строчка читается так:
_lkoh - ссылка(переменная ссылочного типа) указывающая на объект класса КвикТрейдер
LastTrade - свойство(поле) объекта класса КвикТрейдер на который указывает ссылка _lkoh, представляющее из себя ссылку на объект класса Trade
OpenInterest - свойство(поле) объекта класса Trade, на который указывает ссылка LastTrade

Спасибо:

orphan

Фотография
Программист
Дата: 22.03.2016
Ответить


А security.OpenInterest пробовали?
Спасибо:

Apollon

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


slepoy, а не подскажите где именно можно взять или открыть приведенную табличку из скрин шота?) у меня 7-ой квик

Хотел попробовать для интереса получать дополнительные колонки как в примере: https://stocksharp.ru/do...50-93e0-a72ed660270e.htm

на примере миллисекунд:
Код

Trader.TradesTable.Columns.Add(DdeTradeColumns.TimeMs);


Но так и не понял как потом получить эти миллисекунды для последней сделки, не подскажете?

Цитата:

Это не метод. Если используется Квик, то строчка читается так:
_lkoh - ссылка(переменная ссылочного типа) указывающая на объект класса КвикТрейдер
LastTrade - свойство(поле) объекта класса КвикТрейдер на который указывает ссылка _lkoh, представляющее из себя ссылку на объект класса Trade
OpenInterest - свойство(поле) объекта класса Trade, на который указывает ссылка LastTrade

Спасибо за пояснения :) У меня пока подход к программированию на C# больше похож на метод научного тыка) раньше писал только не сложные программки с самописными классами, функциями, на java и php, а все эти библиотеки S# как-то тяжеловато даются, и вся информация очень разрозненная, нет четкой инструкции че и к чему, поэтому тяжеловато дается изучение :(

orphan, пробовал не помогает :(

Хоть самому писать этот коннектор для квика :(

Неужели ни у кого не стояло цели получать информации об открытом интересе из квика? неужели нет какого-то легкого рабочего метода? :(
Автор топика
Спасибо:

orphan

Фотография
Программист
Дата: 22.03.2016
Ответить


Apollon Перейти


orphan, пробовал не помогает :(

Хоть самому писать этот коннектор для квика :(

Неужели ни у кого не стояло цели получать информации об открытом интересе из квика? неужели нет какого-то легкого рабочего метода? :(


У меня security.OpenInterest работает, security.LastTrade.OpenInterest - нет
Спасибо:

Slepoy

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


orphan Перейти
У меня security.OpenInterest работает, security.LastTrade.OpenInterest - нет

У меня он тоже транслируется т.к. это общий ОИ для конкретного инструмента. Он в старых версиях Квика транслируется нормально. Тут же автор пытается получить ОИ к конкретной сделке, а это можно лишь из новых Квиков.


Apollon Перейти
slepoy, а не подскажите где именно можно взять или открыть приведенную табличку из скрин шота?) у меня 7-ой квик

В ВизуалСтудии ставишь точку останова напротив любой строчки где фигурирует твой инструмент, т.е. ссылка _lkoh. Естественно, строчка должна идти после подписки на данный инструмент т.е. за методом RegisterSecurity(), чтоыб ссылка _lkoh уже содержала в себе адрес объекта-инструмента. И далее запускаешь своего бота, он как раз подвиснет на этой точке останова. И далее просто наводишь мышкой на ссылку _lkoh и автоматом вываливается меню объекта-инстурмента, со всеми свойствами и подполями- короче увидишь такую же картинку как у меня.



Apollon Перейти
Хотел попробовать для интереса получать дополнительные колонки как в примере: https://stocksharp.ru/do...50-93e0-a72ed660270e.htm

Там используется старое подключение через ДДЕ. Я же использую ЛУА, если ты тоже, то тот пример точно не прокатит. Я не могу пока сказать как именно это сделать на ЛУА, я пока сам до этого не дошёл. Я тоеж пока в процессе изучения данных библиотек.


Apollon Перейти
а все эти библиотеки S# как-то тяжеловато даются, и вся информация очень разрозненная, нет четкой инструкции че и к чему, поэтому тяжеловато дается изучение :(

Чёткие инструкции есть в обучении и в техподдержке. Но данные привелегии платные. В принципе, мы уже должны радоваться и благодарить М.Сухова, за то, что он нам нахаляву замутил такие библиотеки.



Apollon Перейти
Неужели ни у кого не стояло цели получать информации об открытом интересе из квика?

А нафиг он нужен? Мне в моих ТС - он бесполезен. Я даже на общий ОИ не особо гляжу, а ты хочешь получать ОИ для каждой новой сделки. Какой в нём прок?


Спасибо: Apollon

Mikhail Sukhov

Фотография
Автор статей Программист Трейдер
Дата: 25.03.2016
Ответить


Slepoy Перейти
orphan Перейти
У меня security.OpenInterest работает, security.LastTrade.OpenInterest - нет

У меня он тоже транслируется т.к. это общий ОИ для конкретного инструмента. Он в старых версиях Квика транслируется нормально. Тут же автор пытается получить ОИ к конкретной сделке, а это можно лишь из новых Квиков.


В новых Квиках - это начиная с какой версии? В 7-ке его нет. На уровне Луа так же нет фишки.
Спасибо:

Slepoy

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


Mikhail Sukhov Перейти
В новых Квиках - это начиная с какой версии? В 7-ке его нет. На уровне Луа так же нет фишки.


Ну типа с октября 2015, те брокера которые перешли на Квик 7.0 получили в ТОС(бывшая ТВС) новый столбец "ОИ".
Я лично не видел, т.к. мой брокер пока не спешит обновлять терминал. Но это типа официальная инфа с сайта АРКИ.

Цитата:
Версия 7.0, 07.10.2015
Возможности новой версии
1. Реорганизовано основное меню приложения.
2. Изменен подход к управлению таблицами данных.
3. Названия некоторых таблиц изменены, например:
«Таблица Всех Сделок» переименована в «Таблицу обезличенных сделок»;
«Таблица Текущих Параметров» — в «Текущие торги».
4. Настройка задания количества отображаемых котировок в «стакане» экономит не только место на экране, но и трафик.
5. В Таблицу текущих торгов добавлены параметры: «Наличие спроса/предложения АКП», отображающий индикатор наличия заявок на покупку или продажу на аукционе крупными лотами и «CFI-код бумаги».
6. В Таблицу заявок добавлены параметры:
«Стоп-заявка» с номером стоп-заявки, «породившей» эту заявку,
«Средневзвешенная цена приобретения»,
«Средняя цена исполнения заявки»,
«UID снявшего заявку»,
«Время окончания срока» со временем действия заявок типа «До времени».
7. В Таблицу сделок добавлены:
«Валюта расчетов» с валютой расчетов сделки на Московской Бирже;
«ID транзакции» — TRANS_ID заявки, породившей сделку.
8. В Таблицу лимитов по бумагам добавлен параметр «Заблокировано на покупку», отображающий сумму денег, заблокированную под исполнение всех заявок на покупку по данной бумаге.
9. В Таблицу транзакций добавлен параметр «Биржевой номер» с биржевым номером заявки.
10. Для инструментов Срочного рынка Московской Биржи в «Таблице обезличенных сделок» добавлена трансляция открытого интереса (столбец «Открытый интерес»).
11. Добавлена возможность точной настройки всех трендов и линий Фибоначчи.
12. Выполнены доработки, позволяющие обеспечить корректную трансляцию и экспорт количеств бумаг/лотов, превышающих 2147483648.

Полный список изменений доступен в документе «Изменения в рабочем месте QUIK 7.0.0.pdf».


http://i10.pixs.ru/storage/6/2/0/OIvluajpg_1365403_21264620.jpg
Спасибо:


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

loading
clippy