public static ForexTimePeriodStats OHLCStats(this List <ForexPriceRecord> records) { string symbol; if (records.Count == 0) { return(new ForexTimePeriodStats()); } symbol = records[0].Symbol; ForexTimePeriodStats stats = new ForexTimePeriodStats() { SymbolId = records[0].SymbolId, Symbol = symbol, DateTimeBegin = records[0].PriceDateTime, DateTimeEnd = records[records.Count - 1].PriceDateTime, Open = records.Open(), High = records.High(), Low = records.Low(), Close = records.Close() }; return(stats); }
public static void ToCsvFile(this List <ForexTimePeriodStats> records, string Filepath, bool IncludeHeader) { try { List <string> recs = (from r in records select r.ToCsv(true)).ToList(); if (IncludeHeader) { recs.Insert(0, ForexTimePeriodStats.CsvHeader()); } File.WriteAllLines(Filepath, recs.ToArray()); } catch (Exception ex) { throw ex; } }