Tinkoff / invest-api-csharp-sdk

51 stars 19 forks source link

Получить стоимость актива (к примеру курс доллара к рублю) #15

Closed OdCheban closed 2 years ago

OdCheban commented 2 years ago

Как получить курс доллара к рублю или стоимость любого актива?

1) Вот способ, но единственный ли он? GetCandlesRequest candlesRequest = new GetCandlesRequest() { Figi = "BBG0013HGFT4", Interval = CandleInterval._15Min, From = DateTime.Now.AddDays(-1).ToUniversalTime().ToTimestamp(), To = DateTime.Now.ToUniversalTime().ToTimestamp() }; var usd = clients[0].MarketData.GetCandles(candlesRequest); Console.WriteLine(usd.Candles.Last().Close);

2) Как использовать .MarketData.GetLastPrices(GetLastPricesRequest), если у GetLastPricesRequest figi только get{}?

vabka commented 2 years ago

Как использовать .MarketData.GetLastPrices(GetLastPricesRequest), если у GetLastPricesRequest figi только get{}?

figi - это не одно поле, а по сути коллекция, куда можно добавить несколько разных инструментов. Механика такая же, как при работе с List<T> - можно добавить через .Add, а можно через Collection Initializer.

var request = new GetLastPricesRequest{
    Figi={"BBG0013HGFT4"}
};
var response = client.MarketData.GetLastPrices(request);
foreach (var lastPrice in response.LastPrices)
{
    Console.WriteLine(lastPrice.Price); // 61.62
}