25 lines
897 B
C#
25 lines
897 B
C#
using Tinkoff.InvestApi;
|
|
using Tinkoff.InvestApi.V1;
|
|
|
|
namespace KLHZ.Trader.Core.Exchange.Extentions
|
|
{
|
|
internal static class InvestApiClientExtentions
|
|
{
|
|
public static async Task<Dictionary<string, string>> GetAccounts(this InvestApiClient client, params string[] managedAccountNamePatterns)
|
|
{
|
|
var accounts = await client.Users.GetAccountsAsync();
|
|
var accs = new Dictionary<string, string>();
|
|
foreach (var pattern in managedAccountNamePatterns)
|
|
{
|
|
var aids = accounts.Accounts
|
|
.Where(a => a.Name.ToLower().Contains(pattern) && a.AccessLevel == AccessLevel.AccountAccessLevelFullAccess);
|
|
foreach (var a in aids)
|
|
{
|
|
accs.Add(a.Id, a.Name);
|
|
}
|
|
}
|
|
return accs;
|
|
}
|
|
}
|
|
}
|