void GetAvailableMarkets() { _availableMarkets.Clear(); foreach (var market in _client.GetMarketsAll().SelectMany(e => e.GetResult())) { if (market.ProductCode.StartsWith("BTCJPY")) { if (string.IsNullOrEmpty(market.Alias)) { continue; // ******** BTCJPY future somtimes missing alias, skip it ******** } _availableMarkets.Add((BfProductCode)Enum.Parse(typeof(BfProductCode), market.Alias.Replace("_", "")), market.ProductCode); } else { _availableMarkets.Add((BfProductCode)Enum.Parse(typeof(BfProductCode), market.ProductCode.Replace("_", "")), market.ProductCode); } } }
public static IEnumerable <(BfProductCode ProductCode, string Symbol)> GetAvailableMarkets(this BitFlyerClient client) { var result = new List <(BfProductCode ProductCode, string Symbol)>(); foreach (var market in client.GetMarketsAll().SelectMany(e => e.GetContent())) { if (market.ProductCode.StartsWith("BTCJPY")) { if (string.IsNullOrEmpty(market.Alias)) { continue; // ******** BTCJPY future somtimes missing alias, skip it ******** } result.Add(((BfProductCode)Enum.Parse(typeof(BfProductCode), market.Alias.Replace("_", "")), market.ProductCode)); } else { result.Add(((BfProductCode)Enum.Parse(typeof(BfProductCode), market.ProductCode.Replace("_", "")), market.ProductCode)); } } return(result.Distinct(e => e.ProductCode)); }