Рацпредложение по таблице Инструменты
Atom Ответить
03.01.2011


Вначале приведу картинку из доки:



Предлагаю удалить следующие колонки:

1. Полное название.
2. Спрос (цена).
3. Спрос (объем).
4. Предложение (цена).
5. Предложение (объем).
6. Время послед. сделки.
7. Цена послед. сделки.
8. Объем послед. сделки.
9. Цена открытия.
10. Макс цена сделки.
11. Мин цена сделки.
12. Закрытие.

Тоесть, превратить в это StopOrdersTest.zip

Причина - сделать настройки проще (проблема с временем послед сделки самая острая). Скажем, сейчас таблица с Инструментами самая тяжелая. Я не беру в расчет стоп-заявки, так как это все же больше экзотика, чем реально полезная вещь. Разберемся по пунктам.

1. Оно кому-нибудь нужно?
2-5. Security.BestBid + BestAsk - сейчас есть медленное копия MarketDepth. Не могу найти причину, когда нужна такая информация (ей по сути верить нельзя).
6-8. Security.LastTrade - тоже самое, что и пред пункт.
9-12 - оно кому-нибудь нужно?

Как вариант перехода - сделать опцию в QuikTrader. Если она включена - используется укороченный вариант таблицы с инструментами. Для совместимости, BestBid BestAsk LastTrade будут заполняться, но уже реальными данными (из стакана и тиковых сделок).

Ну как?

Теги:


Спасибо:




34 Ответов
< 1 2 
Alter

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


Добавил следующий код:
Код

((QuikTrader)Trader).SecuritiesTable.Columns.Add(DdeSecurityColumns.LastChangeTime);
...
DateTime lastTradeTime = ((DateTime)WorkingSecurity.ExtensionInfo[DdeSecurityColumns.LastChangeTime]);


В квике добавил в конец таблицы инструментов колонку "Время последнего изменения". При запуске исключение System.InvalidOperationException: Для таблицы 'инструменты' не была найдена колонка 'Количество в последней сделке'. Я что-то не понимаю, или в DdeSecurityColumns колонки перепутаны?
Спасибо:

Mikhail Sukhov

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


Alter Перейти
Добавил следующий код:
Код

((QuikTrader)Trader).SecuritiesTable.Columns.Add(DdeSecurityColumns.LastChangeTime);
...
DateTime lastTradeTime = ((DateTime)WorkingSecurity.ExtensionInfo[DdeSecurityColumns.LastChangeTime]);


В квике добавил в конец таблицы инструментов колонку "Время последнего изменения". При запуске исключение System.InvalidOperationException: Для таблицы 'инструменты' не была найдена колонка 'Количество в последней сделке'. Я что-то не понимаю, или в DdeSecurityColumns колонки перепутаны?


Время последней сделки требует колонки с объемом и ценой. Вот такая зависимость.
Автор топика
Спасибо:

Alter

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


То есть надо добавить еще DdeSecurityColumns.LastTradePrice и DdeSecurityColumns.LastTradeVolume? Порядок значения не имеет?
Спасибо:

Mikhail Sukhov

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


Alter Перейти
То есть надо добавить еще DdeSecurityColumns.LastTradePrice и DdeSecurityColumns.LastTradeVolume? Порядок значения не имеет?


Порядок зависит от того, что вы в Квике сделаете.
Автор топика
Спасибо:

Alter

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


Ну да, это понятно. Спасибо.
Спасибо:

Alter

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


И опять ничего не получилось. Добавляю колонки в квике и коде:
Код

((QuikTrader)Trader).SecuritiesTable.Columns.Add(DdeSecurityColumns.ExpiryDate);
((QuikTrader)Trader).SecuritiesTable.Columns.Add(DdeSecurityColumns.MinStepPrice);
((QuikTrader)Trader).SecuritiesTable.Columns.Add(DdeSecurityColumns.LastChangeTime);
((QuikTrader)Trader).SecuritiesTable.Columns.Add(DdeSecurityColumns.LastTradePrice);
((QuikTrader)Trader).SecuritiesTable.Columns.Add(DdeSecurityColumns.LastTradeVolume);


Смотрю в ExtensionInfo, а там только цена последней сделки и количество последней сделки. К ExpiryDate и MinStepPrice я обращался без ExtensionInfo, через уже имеющиеся свойства Security. Но если я буду лезть в Security.LastTrade.Time, то там будет время последней экспортированной сделки из таблицы всех сделок, а не LastChangeTime из инструментов. Как быть?
Спасибо:

Mikhail Sukhov

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


Alter Перейти
Но если я буду лезть в Security.LastTrade.Time, то там будет время последней экспортированной сделки из таблицы всех сделок, а не LastChangeTime из инструментов. Как быть?


Да, похоже так не получиться, действительно идет перезапись.
Автор топика
Спасибо:

Alter

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


Михаил, в S# 3.1 можно добраться до времени последнего изменения из таблицы инструментов?
Спасибо:

Mikhail Sukhov

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


Alter Перейти
Михаил, в S# 3.1 можно добраться до времени последнего изменения из таблицы инструментов?


Хм, забыл про этот недочет... Ок, пока идет бета тестированию, его реализую.

Я в текущей бете исправил, чтобы добавление какой-то колонки не требовало добавление другой. Может вы это проверите?
Автор топика
Спасибо:
< 1 2 

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

loading
clippy