public Task <SignalStrength> ProcessSignal(TimePeriod timePeriod, Candle[] candles) { var cmo = Indicators.CMO(9, candles); var cci = Indicators.CCI(20, candles); var mfi = Indicators.MFI(14, candles); var cmoUnit = Normalise(cmo.First(), -50, 50); var cciUnit = Normalise(cci.First(), -100, 100); var mfiUnit = Normalise(mfi.First(), 10, 80); var avg = (cmoUnit + cciUnit + mfiUnit) / 3; var strengthCount = Enum.GetNames(typeof(SignalStrength)); var ss = (SignalStrength)(int)(strengthCount.Length - (strengthCount.Length * avg)); return(Task.FromResult(ss)); }