S#

В каком объекте можно получить значение из таблицы "Позиции по деривативам"?


В каком объекте можно получить значение из таблицы "Позиции по деривативам"?
Atom Ответить
19.12.2011


Хотелось бы получить количество Активных покупок и Активных продаж по инструменту.
Скажите пожалуйста, как это сделать?
Полем или свойством какого класса являются эти данные?
Доку читал, там не нашел.

Теги:


Спасибо:




13 Ответов
Alexander

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


Экспортируйте сами как доп. столбец в таблице инструментов
Спасибо:

vader

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


Извините, не нашел в таблице инструментов.
Автор топика
Спасибо:

Alexander

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


vader Перейти
Извините, не нашел в таблице инструментов.


Когда в последний раз смотрел - оно там было где-то.

Если вдруг его там нет - то соответственно и экспортировать нечего, в S# взяться ему неоткуда.
Считайте по стакану тогда сами - сумма по бидам, сумма по аскам.
Спасибо:

vader

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


а из самой таблицы "Позиции по деривативам"?
Автор топика
Спасибо:

Alexander

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


Сразу вопроса не понял.
Это всё пишется в position.ExtensionInfo
Спасибо:

vader

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


Такой код
MessageBox.Show(Trader.GetPosition(Portfolio, Security).CurrentValue.ToString());
Работает отлично и выдает верный результат.

Такой код кидает и исключение, и говорить ,что ссылка на объект не указывает на экземпляр объекта.
Trader.GetPosition(Portfolio, Security).ExtensionInfo[DdeDerivativePositionColumns.CurrentBidsVolume].ToString()

При попытке добавить столбцы Акт.Покупки и продажы говорит, что они уже добавлены.
Автор топика
Спасибо:

Alexander

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


vader Перейти
Такой код
MessageBox.Show(Trader.GetPosition(Portfolio, Security).CurrentValue.ToString());
Работает отлично и выдает верный результат.

Такой код кидает и исключение, и говорить ,что ссылка на объект не указывает на экземпляр объекта.
Trader.GetPosition(Portfolio, Security).ExtensionInfo[DdeDerivativePositionColumns.CurrentBidsVolume].ToString()

При попытке добавить столбцы Акт.Покупки и продажы говорит, что они уже добавлены.


если не указывает на экземпляр объекта - значит GetPosition возвращает null
пройдитесь дебаггером и посмотрите что возвращает GetPosition и каков размер ExtensionInfo
Спасибо:

vader

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


Код

Position pos = Trader.GetPosition(Portfolio, Security);
MessageBox.Show(pos.CurrentValue.ToString());
MessageBox.Show(pos.ExtensionInfo[DdeDerivativePositionColumns.CurrentAsksVolume].ToString());
MessageBox.Show(pos.ExtensionInfo[DdeDerivativePositionColumns.CurrentBidsVolume].ToString());


сама позиция не null, т.к. вторая строчка выводит верный результат.

ExtensionInfo - оказалось что null.
нужно подключить какой-то доп.столбец?
Автор топика
Спасибо:

Alexander

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


Оказалось, что мы сумма сразу считаем и пишем в BlockedValue
А для чего понадобилось по отдельности считать?
Спасибо:

vader

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


не очень понял вопрос. Почему по отдельности?
Автор топика
Спасибо:

Alexander

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


vader Перейти
не очень понял вопрос. Почему по отдельности?


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

в общем придётся вам создавать отдельную таблицу и экспортировать её отдельно.
Спасибо:

vader

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


я хотел использовать эту инфу для слежения за корректностью работы стратегии.
Автор топика
Спасибо:

Alexander

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


vader Перейти
я хотел использовать эту инфу для слежения за корректностью работы стратегии.


Неправильный подход.
Могут быть несколько стратегий по одному инструменту - тогда не сможете понять

Смотрите по заявкам стратегии, те которые активны. И суммируйте объём.

Или, как я написал - в BlockedValue записывается сумма покупок и продаж.
Спасибо:


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

loading
clippy