问题1:xtdata.get_market_data_ex返回空data frame
这种现象发生在使用"迅投极速交易终端 睿智融科版"上,可能是官网给的版本太久没有更新了(XtItClient_x64_rzrk_itclient_1709_sp3_gaodun_1.0.1.10889.exe 2024年5月31日),但是用"国金QMT交易端模拟"就可以获得返回值,版本(XtItClient_x64_国金证券QMT模拟_模拟_1.0.0.37073.exe 2024年12月5日)
问题二:xtdata.download_financial_data,在调用后不会返回
而xtdata.download_history_data是可以很快返回的,xtdata.download_financial_data应该是陷入某种死循环出不来了,用download_financial_data2取代download_financial_data则不会死锁,和函数 xtdata.download_history_data 相比,download_financial_data2消耗的时间极长,还不如手动去UI界面下载
代码:
from xtquant import xtdata
from datetime import datetime, timedelta
from dateutil.relativedelta import relativedelta
# 获取股票的日线历史财务数据
# 格式"YYYYMMDD" 开始下载的日期
start_date = one_month_ago.strftime("%Y%m%d")
# date = ""时全量下载
end_date = ""
period = "1d"
print(
f"download history financial data start_date={start_date} end_date={end_date} period={period}"
)
xtdata.download_financial_data(
stock_list,
table_list=[],
start_time=start_date,
end_time=end_date,
)
问题三:xtdata.get_financial_data常常获得空的财务数据
如下图所示,我本意是想获取流通盘的大小

date_one_year_ago = one_year_ago.strftime("%Y%m%d")
capital_data = xtdata.get_financial_data(
stock_list,
table_list=["Capital"],
start_time=date_one_year_ago,
end_time="",
report_type="report_time",
)
print(capital_data["002046.SZ"])#可以获得财务数据
print(capital_data["002047.SZ"])#财务数据居然为空
|