public override void pushIndicatorStatistics(LearningIndicator li) { string id = li.getName(); string algo = li.getName().Split('_')[0]; double[] pp = li.getPredictivePowerArray(); double score = 0; foreach (double d in pp) { if (double.IsNaN(d) == false && Math.Abs(d) < 1 && Math.Abs(d) > 0) { score += Math.Abs(d); } } ValueAndIDPair pair = new ValueAndIDPair() { _id = id, _value = score }; if (candidates.ContainsKey(algo) == false) { candidates.Add(algo, pair); } else if (candidates[algo]._value < score) { candidates[algo] = pair; } analysedIndicators++; }
public override void pushIndicatorStatistics(LearningIndicator li) { string id = li.getName(); string algo = li.getName().Split('_')[0]; double[] pp = li.getPredictivePowerArray(); double buySellCodeScore = pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.maxBuyCode] + pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.maxSellCode]; ValueAndIDPair pair = new ValueAndIDPair() { _id = id, _value = buySellCodeScore }; if (candidates.ContainsKey(algo) == false) { candidates.Add(algo, pair); } else if (candidates[algo]._value < buySellCodeScore) { candidates[algo] = pair; } analysedIndicators++; }
public override void pushIndicatorStatistics(LearningIndicator li) { string id = li.getName(); string algo = li.getName().Split('_')[0]; double[] pp = li.getPredictivePowerArray(); double score = 0; double wightCode = pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.valuesOverMinPercentRatioCode]; double wightOutcome = pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.valuesOverMinPercentRatioOutcome]; score = pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.buySellCodeDistanceStD] * wightCode //Codeprop + pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.buyCodeStD] * wightCode //Codeprop + pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.sellCodeStD] * wightCode //Codeprop + pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.minStD] * wightOutcome //Diff + pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.maxStD] * wightOutcome //Diff + pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.minMaxDistanceStd] * wightOutcome //Diff + pp[(int)LearningIndicator.LearningIndicatorPredictivePowerIndecies.actualStD] * wightOutcome; //Pred if (double.IsNaN(score) || double.IsInfinity(score)) { throw new Exception("Score is wired: " + score); } ValueAndIDPair pair = new ValueAndIDPair() { _id = id, _value = score }; if (candidates.ContainsKey(algo) == false) { candidates.Add(algo, pair); } else if (candidates[algo]._value < score) { candidates[algo] = pair; } }