Beispiel #1
0
 def select(self, gateway, exchange, symbol, interval, start_time):
     session = get_session()
     pens: List[PenDO] = session.query(PenDO) \
         .filter(PenDO.gateway == gateway) \
         .filter(PenDO.exchange == exchange) \
         .filter(PenDO.symbol == symbol) \
         .filter(PenDO.interval == interval) \
         .filter(PenDO.start_datetime >= start_time) \
         .all()
     session.close()
     return pens
Beispiel #2
0
    def insert(self, chan_bar_data: ChanBarData):
        chan_bar_data_do = self.chan_bar_data_mp.mapper(chan_bar_data)

        # 创建session对象:
        session = get_session()
        # 添加到session:
        session.merge(chan_bar_data_do)
        # 提交即保存到数据库:
        session.commit()
        # 关闭session:
        session.close()
Beispiel #3
0
 def select(self, gateway, exchange, symbol, interval, limit):
     session = get_session()
     bars: List = session.query(ChanBarDataDO) \
         .filter(ChanBarDataDO.gateway == gateway) \
         .filter(ChanBarDataDO.exchange == exchange) \
         .filter(ChanBarDataDO.symbol == symbol) \
         .filter(ChanBarDataDO.interval == interval) \
         .order_by(ChanBarDataDO.datetime.desc()) \
         .limit(limit) \
         .all()
     session.close()
     bars.reverse()
     return bars
Beispiel #4
0
    def delete(self, pen: Pen):
        pen_do = self.pen_mp.mapper(pen)

        # 创建session对象:
        session = get_session()
        # 添加到session:

        old_pen = session.query(PenDO) \
            .filter(PenDO.gateway == pen_do.gateway) \
            .filter(PenDO.exchange == pen_do.exchange) \
            .filter(PenDO.symbol == pen_do.symbol) \
            .filter(PenDO.interval == pen_do.interval) \
            .filter(PenDO.start_datetime == pen_do.start_datetime) \
            .first()
        if old_pen:
            session.delete(old_pen)
        # 提交即保存到数据库:
        session.commit()
        # 关闭session:
        session.close()
Beispiel #5
0
    def insert(self, centre: Centre):
        centre_do = self.centre_mp.mapper(centre)

        # 创建session对象:
        session = get_session()
        # 添加到session:

        old_centre = session.query(CentreDO) \
            .filter(CentreDO.gateway == centre_do.gateway) \
            .filter(CentreDO.exchange == centre_do.exchange) \
            .filter(CentreDO.symbol == centre_do.symbol) \
            .filter(CentreDO.interval == centre_do.interval) \
            .filter(CentreDO.start_datetime == centre_do.start_datetime) \
            .first()
        if old_centre:
            session.delete(old_centre)
        session.add(centre_do)
        # 提交即保存到数据库:
        session.commit()
        # 关闭session:
        session.close()