コード例 #1
0
        private void optimizeInternally(List <string> indicatorsToTry, IndicatorSelector selector)
        {
            while (ended == false)
            {
                try
                {
                    //generator.getGeneratedIndicator(Convert.ToInt32(outcomeTimeframe / 1000 / 15), Convert.ToInt32(outcomeTimeframe * 100 / 1000));
                    int index = getNextIndex();
                    if (index >= indicatorsToTry.Count)
                    {
                        break;
                    }

                    WalkerIndicator   wi = IndicatorGenerator.getIndicatorByString(indicatorsToTry[index]);
                    LearningIndicator li = new LearningIndicator(wi, priceData, outcomeCodeData, outcomeData, outcomeTimeframe, outcomeCodePercent, minPercentThreshold, learningIndicatorSteps, true);

                    selector.pushIndicatorStatistics(li);
                }
                catch (TooLittleValidDataException e)
                {
                    //Logger.log("E:" + e.Message);
                }
                catch (TooLittleStatesException e)
                {
                    //Logger.log("E:" + e.Message);
                }
                catch (Exception e)
                {
                    Logger.log("FATAL:" + e.Message);
                }
            }

            ended = true;
        }