Объясните пожалуйста, как получить общий объем из стакана.
- нужно создать стакан? - как правильно его создать?
_lkoh = securities.FirstOrDefault(sec => sec.Code == secCode && sec.Type == SecurityTypes.Future); var stakan = MarketDepth(_lkoh); так ошибка, пробовал по разному..
- в консольном примере для смарт добавьте ввод ip'а, тк из-за этого я долго думал, почему он не коннектится..
Console.Write("Введите ip адрес торгового сервера: "); var ipv = Console.ReadLine();
IPAddress ipadress = IPAddress.Parse(ipv); IPEndPoint ip = new IPEndPoint(ipadress, 8090); using (var waitHandle = new AutoResetEvent(false)) { // создаем шлюз к Smart-у using (var trader = new SmartTrader(login, password, ip))
Kommentare (10)
Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen
насколько я понял из примера для смарт, то стакан мы вызываем вот так
судя по всему чтобы показать общий объем бид.. надо как то вот так..
Ошибка 1 "StockSharp.BusinessEntities.Security" не содержит определения для "TotalBidsVolume" и не был найден метод расширения "TotalBidsVolume", принимающий тип "StockSharp.BusinessEntities.Security" в качестве первого аргумента (возможно, пропущена директива using или ссылка на сборку) C:\Users\user\Desktop\StockSharp_4.0.14\Samples\Smart\SampleSmartConsole\Program.cs 138 46 SampleSmartConsole
подскажите пожалуйста
Для работы со стаканом в S# есть класс MarketDepth. У него есть свойства TotalBidsVolume (Получить общий объем по бидам) и TotalAsksVolume (Получить общий объем по офферам) - вот здесь и нужно копать.
ну это понятно, но как? ведь если рассуждать отсюда http://www.stocksharp.com/doc/html/Properties_T_StockSharp_BusinessEntities_MarketDepth.htm , то BestPair тоже имеет класс MarketDepth (и я имею пример с этим BestPair, а как от него сделать TotalBidsVolume)
Примером, как я понимаю, является SampleSmartConsole. var firstMid = _lkoh.BestPair.SpreadPrice / 2; - здесь BestPair является свойством класса Security, экземпляр которого _lkoh имеет код = "LKOH". В данном примере класс MarketDepth не используется.
а не мог бы подсказать пример где используется этот класс?
Для SmartCOM стакан используется в примере SampleSmart.
Посмотри в примере для Quik http://stocksharp.com/doc/html/b6fea084-f43c-4eb7-ab63-ad3031d748a5.htm
вобщем ошибок у меня больше не вылазиет. но вот программа не работает.. вся загвоздка с тем же.. добавил > private static MarketDepth _depth; и> // подписываемся на событие обновления стакана
ну и программа не идет дальше, тк depth у меня равное null остается
Ты подписался на событие обновления стакана, но не вижу, где запустил экспорт стакана. Можно сделать так:
... // подписываемся на событие появление инструментов trader.NewSecurities += securities => { if (_instrument == null) { // находим инструмент и присваиваем ее переменной _instrument _instrument = securities.FirstOrDefault(sec => sec.Code == secCode && sec.Type == SecurityTypes.Future);
if (_instrument != null) { Console.WriteLine("Инструмент появился.");
<mark>trader.RegisterQuotes(_instrument); // запускаем экспорт стакана</mark>
if (_portfolio != null && _depth != null) waitHandle.Set(); } } }; ...