def get_stock_day_trading_info(code, start_date, end_date): obj = DayTrading.model(code) query = obj.query.filter( db.and_( db.column('stock_code') == code, db.column('trading_date') >= start_date, db.column('trading_date') <= end_date)).order_by( db.text("trading_date desc")) return query.all()
def get_stock_info_by_sql(code, cols=None): name = Stock.__tablename__ schema = Stock.__table_args__ schema = schema['schema'] tbl_name = '{schema}.{table}'.format(schema=schema, table=name) if cols: cols = ['{}.{}'.format(tbl_name, col) for col in cols] cols = ','.join(cols) else: cols = '*' result = db.session.connection().execute(db.text( 'select {cols} from {tbl_name} where code = :code'.format( cols=cols, tbl_name=tbl_name)), {'code': code}) return result.fetchone()
def get_stock_finance_by_code_date(code, date, cols=None): name = StockFinance.__tablename__ schema = StockFinance.__table_args__ schema = schema['schema'] tbl_name = '{schema}.{table}'.format(schema=schema, table=name) if cols: cols = ['{}.{}'.format(tbl_name, col) for col in cols] cols = ','.join(cols) else: cols = '*' result = db.session.connection().execute( db.text( 'select {cols} from {tbl_name} where stock_code=:code and date=:date order by date desc' .format(cols=cols, tbl_name=tbl_name)), { 'code': code, 'date': date }) return result.fetchone()
def get_stock_trading_info_by_SQL(code, date, cols=None): obj = DayTrading.model(code) name = obj.__tablename__ schema = obj.__table_args__ schema = schema['schema'] tbl_name = '{schema}.{table}'.format(schema=schema, table=name) if cols: cols = ['{}.{}'.format(tbl_name, col) for col in cols] cols = ','.join(cols) else: cols = '*' result = db.session.connection().execute( db.text( 'select {cols} from {tbl_name} where stock_code = :code and trading_date =: trading_date order by trading_date desc' .format(cols=cols, tbl_name=tbl_name)), { 'code': code, 'trading_date': date }) return result.fetchone()
def get_sz50_history_trading(start_date, end_date): return SZ50StockTrading.query.filter( db.and_( db.column('trading_date') >= start_date, db.column('trading_date') <= end_date)).order_by( db.text("trading_date desc")).all()