Exemplo n.º 1
0
        static public OnePeriodResult Load(string path, DateTime startDateTime, int period)
        {
            OnePeriodResult result = new OnePeriodResult();

            using (StreamReader strReader = new StreamReader(Path.Combine(path, "strategy_allData.csv")))
            {
                string[] strEquity  = strReader.ReadLine().Replace("{", "").Replace("}", "").Trim().Split(new char[] { ',' });
                int      lastEquity = 0;
                foreach (string currString in strEquity)
                {
                    if (currString.Length == 0)
                    {
                        continue;
                    }

                    int currEquity = Int32.Parse(currString);
                    if (lastEquity == 0)
                    {
                        result.dictDayEquity.Add(startDateTime, 0);
                    }
                    else
                    {
                        result.dictDayEquity.Add(startDateTime, currEquity - lastEquity);
                    }

                    lastEquity = currEquity;
                    do
                    {
                        startDateTime = startDateTime.AddDays(1);
                    } while (startDateTime.DayOfWeek == DayOfWeek.Saturday);
                }
            }
            return(result);
        }
Exemplo n.º 2
0
        static public TestResult Load(string path, int learningPeriod, int testPeriod)
        {
            TestResult result = new TestResult();

            foreach (string periodPath in Directory.GetDirectories(path))
            {
                string[] testParam = Path.GetFileName(periodPath).Split(new char[] { '_' });
                DateTime dateTime  = DateTime.ParseExact(testParam[0], "yyyyMMdd", CultureInfo.InvariantCulture);
                result.listOnePeriodresult.Add(OnePeriodResult.Load(periodPath, dateTime, testPeriod));
            }
            return(result);
        }