def QA_get_tick(code, start, end, market): """ 统一的获取期货/股票tick的接口 """ res = None if market == MARKET_TYPE.STOCK_CN: res = QATdx.QA_fetch_get_stock_transaction(code, start, end) elif market == MARKET_TYPE.FUTURE_CN: res = QATdx.QA_fetch_get_future_transaction(code, start, end) return res
def QA_quotation(code, start, end, frequence, market, source, output): """一个统一的fetch Arguments: code {str/list} -- 证券/股票的代码 start {str} -- 开始日期 end {str} -- 结束日期 frequence {enum} -- 频率 QA.FREQUENCE market {enum} -- 市场 QA.MARKET_TYPE source {enum} -- 来源 QA.DATASOURCE output {enum} -- 输出类型 QA.OUTPUT_FORMAT """ if market == MARKET_TYPE.STOCK_CN: if frequence == FREQUENCE.DAY: if source == DATASOURCE.MONGO: res = QAQueryAdv.QA_fetch_stock_day_adv(code, start, end) elif source == DATASOURCE.TDX: res = QATdx.QA_fetch_get_stock_day(code, start, end, '00') elif source == DATASOURCE.TUSHARE: res = QATushare.QA_fetch_get_stock_day(code, start, end, '00') elif frequence in [FREQUENCE.ONE_MIN, FREQUENCE.FIVE_MIN, FREQUENCE.FIFTEEN_MIN, FREQUENCE.THIRTY_MIN, FREQUENCE.SIXTY_MIN]: if source == DATASOURCE.MONGO: res = QAQueryAdv.QA_fetch_stock_min_adv( code, start, end, frequence=frequence) elif source == DATASOURCE.TDX: res = QATdx.QA_fetch_get_stock_min( code, start, end, frequence=frequence) elif frequence == FREQUENCE.TICK: if source == DATASOURCE.TDX: res = QATdx.QA_fetch_get_stock_transaction(code, start, end) elif market == MARKET_TYPE.FUTURE_CN: if frequence == FREQUENCE.DAY: if source == DATASOURCE.MONGO: res = QAQueryAdv.QA_fetch_future_day_adv(code, start, end) elif source == DATASOURCE.TDX: res = QATdx.QA_fetch_get_future_day(code, start, end) elif frequence in [FREQUENCE.ONE_MIN, FREQUENCE.FIVE_MIN, FREQUENCE.FIFTEEN_MIN, FREQUENCE.THIRTY_MIN, FREQUENCE.SIXTY_MIN]: if source == DATASOURCE.MONGO: res = QAQueryAdv.QA_fetch_future_min_adv( code, start, end, frequence=frequence) elif source == DATASOURCE.TDX: res = QATdx.QA_fetch_get_future_min( code, start, end, frequence=frequence) elif frequence == FREQUENCE.TICK: if source == DATASOURCE.TDX: res = QATdx.QA_fetch_get_future_transaction(code, start, end) # 指数代码和股票代码是冲突重复的, sh000001 上证指数 000001 是不同的 elif market == MARKET_TYPE.INDEX_CN: if frequence == FREQUENCE.DAY: if source == DATASOURCE.MONGO: res = QAQueryAdv.QA_fetch_index_day_adv(code, start, end) elif market == MARKET_TYPE.OPTION_CN: if source == DATASOURCE.MONGO: #res = QAQueryAdv.QA_fetch_option_day_adv(code, start, end) raise NotImplementedError('CURRENT NOT FINISH THIS METHOD') # print(type(res)) return res