예제 #1
0
 //Internal functions
 private void loadMktData(int barId, int barLength)
 {
     if (!_mktData.ContainsKey(barId))
     {
         DataTable dt   = _db.getHistoricalData(barId, Strategy.getExchangeTime(_currTime, _mktTimeZoneMap[barId]), Strategy.getLocalTime(_endDate, _mktTimeZoneMap[barId]));
         Bar[]     bars = dt.Rows.Cast <DataRow>().Select(x => new Bar(barId, x)).Select(x => { x.time = x.time.AddSeconds(barLength); return(x); }).ToArray();
         lock (_lock)
         {
             _mktData.Add(barId, bars);
             _currMktIndices.Add(barId, 0);
             _barIds = _currMktIndices.Keys.ToList();
             _isDone.Add(barId, false);
         }
     }
 }