protected string ResolveEcoIndexName(EcoIndexEnum ecoIndex) { switch (ecoIndex) { case EcoIndexEnum.RSI: return("rsi"); case EcoIndexEnum.EMA: return("ema"); case EcoIndexEnum.ForceIndex: return("force_index"); } return("unknown"); }
public List <EcoIndex> GetLastEcoIndex(string pattern, EcoIndexEnum ecoIndex, string pairName, int size = 1) { RestRequest restRequest = new RestRequest(pattern + "/_search", Method.POST); ElasticSingleRequest request = new ElasticSingleRequest { query = new ElasticEcoQuery { @bool = new ElasticBool { filter = new ElasticFilter { term = new ElasticTermId { Id = (int)ecoIndex } }, must = new ElasticMustFilter { term = new ElasticMustName { Name = pairName } }, } }, size = size, sort = new List <ElasticSort> { new ElasticSort { Time = new ElasticTimeSort() } } }; restRequest.AddJsonBody(request); IRestResponse <ElasticItemResponse> response = _client.Execute <ElasticItemResponse>(restRequest); return(response?.Data?.hits?.hits?.Select(h => h._source)?.ToList()); }