Инструменты Quik

Инструменты Quik
Atom
1/30/2017
klim95vlad


Подскажите, может кто сталкивался с проблемой и как ее лучше решить. Программа загружает в комбобокс все возможные инструменты из quik, а их очень очень много. Можно ли как-то настройками конфигурации в Квике ограничить нужные инструменты, которые будут загружаться в приложение или же лучше сделать поиск по комбобоксу? Поиска хочу избежать, так как в комбобоксе тип данных Security[], а поиск получилось сделать только по String.

Tags:


Thanks:


1 2  >
Support

Avatar
Date: 1/31/2017
Reply


Можно так: 1) Установить QuikTrader.RequestAllSecurities = false... 2) Нужные инструменты запросить в обработчике события Security.Connected при помощи Connector.LookupSecurities() 3) Инструменты будет получены в событии Connector.LookupSecuritiesResult() 4. В результате Connector.Securities будет содержать только запрошенные инструменты.
Thanks: Evgeny

klim95vlad

Avatar
Date: 2/1/2017
Reply


Support
Можно так: 1) Установить QuikTrader.RequestAllSecurities = false... 2) Нужные инструменты запросить в обработчике события Security.Connected при помощи Connector.LookupSecurities() 3) Инструменты будет получены в событии Connector.LookupSecuritiesResult() 4. В результате Connector.Securities будет содержать только запрошенные инструменты.


А, если не сложно, не могли бы Вы написать на примере одного любого инструмента.
Thanks:

Support

Avatar
Date: 2/2/2017
Reply


trader.RequestAllSecurities = false;
trader.Connected += () =>
{
trader.LoocupSecurities(new Secucrity() { Id = "RIH7@FORTS", Board = ExchangeBoard.Forts });

}

trader.LookupSecuritiesResult += securities =>
{
//TODO Здесь получаем запрошенные инструменты... Теперь в trader.Securities будет только RIH7@FORTS
}
Thanks:

Support

Avatar
Date: 2/2/2017
Reply


.
Thanks:

klim95vlad

Avatar
Date: 2/2/2017
Reply


Support
trader.RequestAllSecurities = false;
trader.Connected += () =>
{
trader.LoocupSecurities(new Secucrity() { Id = "RIH7@FORTS", Board = ExchangeBoard.Forts });

}

trader.LookupSecuritiesResult += securities =>
{
//TODO Здесь получаем запрошенные инструменты... Теперь в trader.Securities будет только RIH7@FORTS
}



А как получаем запрошенные инструменты? (Что нужно прописать в блоке trader.LookupSecuritiesResult += securities =>{ } , который Вы закомментрировали)

И после всего этого использовать стандартное?
Trader.NewSecurities += securities => this.GuiAsync(() =>
{
comboBox.ItemsSource = Trader.Securities;

});
Thanks:

klim95vlad

Avatar
Date: 2/2/2017
Reply


Trader.LookupSecuritiesResult += securities =>
{
comboBox.ItemsSource = Trader.Securities
};

Вот так должно быть?
Thanks:

Support

Avatar
Date: 2/3/2017
Reply


Да
Thanks:

Георгий

Avatar
Date: 2/3/2017
Reply


А как получить инструменты только по определенному рынку (только акции например)?
Thanks:

Support

Avatar
Date: 2/7/2017
Reply


trader.Connected += () =>
{
trader.LoocupSecurities(new Secucrity() { Type = SecurityTypes.Stock });
}
Thanks:

klim95vlad

Avatar
Date: 2/13/2017
Reply


Trader.RequestAllSecurities = false;
Trader.Connected += () =>
{
Trader.LookupSecurities(new Security() { Id = "RIH7@FORTS", Board = ExchangeBoard.Forts });

};

Trader.NewSecurities += securities => this.GuiAsync(() =>
{

Security.ItemsSource = (Trader.Securities);
});

Trader.LookupSecuritiesResult += securities =>
{
Security.ItemsSource = Trader.Securities
};

Вот так все сделал, как Вы сказали, а в последнем блоке начиная с "Trader.LookupSecuritiesResult" выдает ошибку "Делегат "Action<Exception, IEnumerable<Security>>" не принимает аргументы 1"
Thanks:
1 2  >

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy