예제 #1
0
 def loadBar(self, dbName, collectionName, days):
     """从数据库中读取Bar数据,startDate是datetime对象"""
     startDate = self.today - timedelta(days)
     
     d = {'datetime':{'$gte':startDate}}
     barData = self.mainEngine.dbQuery(dbName, collectionName, d, 'datetime')
     
     l = []
     for d in barData:
         bar = VtBarData()
         bar.__dict__ = d
         l.append(bar)
     return l
예제 #2
0
    def loadData(self):
        """加载数据"""
        mc = MongoClient()
        db = mc[DAILY_DB_NAME]

        for vtSymbol in self.vtSymbolList:
            flt = {'datetime': {'$gte': self.startDt, '$lte': self.endDt}}

            collection = db[vtSymbol]
            cursor = collection.find(flt).sort('datetime')

            for d in cursor:
                bar = VtBarData()
                bar.__dict__ = d

                barDict = self.dataDict.setdefault(bar.datetime, OrderedDict())
                barDict[bar.vtSymbol] = bar

            self.output(u'%s数据加载完成,总数据量:%s' % (vtSymbol, cursor.count()))

        self.output(u'全部数据加载完成')