返回列表 发布新帖

关于download_history_data数据错误问题

33 0

例如 000026.SH

我使用download_history_data下载1m历史数据后,用 get_market_data_ex 查看,收盘价几千元,而这个股票实际才十几块,请问是下载的数据错了吗?是不是需要删了重新下载?

以下是代码:


from xtquant import xtdata
import time


def my_download(stock_list:list,period:str,start_date = '', end_date = ''):
    '''
    用于显示下载进度
    '''
    import string

    if [i for i in ["d","w","mon","q","y",] if i in period]:
        period = "1d"
    elif "m" in period:
        numb = period.translate(str.maketrans("", "", string.ascii_letters))
        if int(numb) < 5:
            period = "1m"
        else:
            period = "5m"
    elif "tick" == period:
        pass
    else:
        raise KeyboardInterrupt("周期传入错误")


    n = 1
    num = len(stock_list)
    for i in stock_list:
        print(f"当前正在下载 {period} {n}/{num}")

        xtdata.download_history_data(i,period,start_date, end_date)
        n += 1
    print("下载任务结束")

def do_subscribe_quote(stock_list:list, period:str):
  for i in stock_list:
    xtdata.subscribe_quote(i,period = period)
  time.sleep(1) # 等待订阅完成

if __name__ == "__main__":

  start_date = '20250626'# 格式"YYYYMMDD",开始下载的日期,date = ""时全量下载
  end_date = "" 
  period = "1m" 

  need_download = 1  # 取数据是空值时,将need_download赋值为1,确保正确下载了历史数据

  code_list = ["000026.SH"] # 股票列表

  ############ 仅获取历史行情 #####################
  count = -1 # 设置count参数,使gmd_ex返回全部数据
  data1 = xtdata.get_market_data_ex([],code_list,period = period, start_time = '', end_time = '')

#   ############ 仅获取最新行情 #####################
#   do_subscribe_quote(code_list,period)# 设置订阅参数,使gmd_ex取到最新行情
#   count = 1 # 设置count参数,使gmd_ex仅返回最新行情数据
#   data2 = xtdata.get_market_data_ex([],code_list,period = period, start_time = start_date, end_time = end_date, count = 1) # count 设置为1,使返回值只包含最新行情

#   ############ 获取历史行情+最新行情 #####################
#   do_subscribe_quote(code_list,period) # 设置订阅参数,使gmd_ex取到最新行情
#   count = -1 # 设置count参数,使gmd_ex返回全部数据
#   data3 = xtdata.get_market_data_ex([],code_list,period = period, start_time = start_date, end_time = end_date, count = -1) # count 设置为1,使返回值只包含最新行情


  print(data1)# 行情数据查看
#   print(data2[code_list[0]].tail())
#   print(data3[code_list[0]].tail())



{'000026.SH':                          time      open      high       low     close  volume  \
20200803093000  1596418200000  2234.010  2234.010  2234.010  2234.010  126852   
20200803093100  1596418260000  2233.437  2235.109  2232.344  2234.687  317125   
20200803093200  1596418320000  2232.764  2232.957  2226.241  2226.241  181679   
20200803093300  1596418380000  2228.664  2229.454  2227.139  2227.740  188514   
20200803093400  1596418440000  2227.988  2228.134  2223.660  2223.660  208940   
...                       ...       ...       ...       ...       ...     ...   
20250707145600  1751871360000  3803.066  3803.518  3802.039  3802.039   58421   
20250707145700  1751871420000  3802.790  3803.615  3802.224  3803.319   59097   
20250707145800  1751871480000  3804.056  3804.362  3804.056  3804.362    2344   
20250707145900  1751871540000  3804.362  3804.362  3804.362  3804.362       0   
20250707150000  1751871600000  3803.890  3804.204  3803.890  3804.204   70766   

                     amount  settelementPrice  openInterest  preClose  \
20200803093000  135070243.0               0.0             0  2240.037   
20200803093100  327998575.0               0.0             0  2234.010   
20200803093200  191493513.0               0.0             0  2234.687   
20200803093300  209831216.0               0.0             0  2226.241   
20200803093400  211746838.0               0.0             0  2227.740   
...                     ...               ...           ...       ...   
20250707145600   80430856.0               0.0             0  3802.899   
20250707145700   78849071.0               0.0             0  3802.038   
20250707145800    3859424.0               0.0             0  3803.320   
20250707145900          0.0               0.0             0  3804.362   
20250707150000  105531631.0               0.0             0  3804.361   
...
20250707145900            0  
20250707150000            0  

[287754 rows x 11 columns]}

回复

您需要登录后才可以回帖 登录 | 立即注册

客服专线

400-080-8112

用思考的速度交易,用真诚的态度合作,我们是认真的!
  • 关注公众号
  • 添加微信客服
Copyright © 2001-2025 迅投QMT社区 版权所有 All Rights Reserved. 京ICP备2025122616号-3
关灯 快速发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表