ContextInfo.get_raw_financial_data - 获取原始财务数据

ContextInfo.get_raw_financial_data 是 QMT 内置 Python 中用于获取原始财务数据的接口。

原型

ContextInfo.get_raw_financial_data(fieldList,stockList,startDate,endDate,report_type='announce_time')

释义

ContextInfo.get_raw_financial_data 是 QMT 内置 Python 中用于获取原始财务数据的接口。

研究:官方目录未明确;回测:官方目录未明确;模拟:官方目录未明确;实盘:官方目录未明确。

参数

参数 是否必填 官方原始定义
fieldList fieldList
stockList stockList
startDate startDate
endDate endDate
report_type report_type='announce_time'

返回值

函数根据stockList代码列表,startDate,endDate时间范围,返回不同的的数据类型。如下:

代码数量 | 时间范围 | 返回类型 =1 | =1 | pandas.Series (index = 字段) =1 | >1 | pandas.DataFrame (index = 时间, columns = 字段) >1 | =1 | pandas.DataFrame (index = 代码, columns = 字段) >1 | >1 | pandas.Panel (items = 代码, major_axis = 时间, minor_axis = 字段)

示例

示例返回值

#encoding:gbk


获取财务数据


import pandas as pd

import numpy as np

import talib

def to_zw(a):

'''0.中文价格字符串'''

import numpy as np

try:

header = '' if a > 0 else '-'

if np.isnan(a):

return '问题数据'

if abs(a) < 1000:

return header + str(int(a)) + "元"

if abs(a) < 10000:

return header + str(int(a))[0] + "千"

if abs(a) < 100000000:

return header + str(int(a))[:-4] + "万" + str(int(a))[-4] + '千'

else:

return header + str(int(a))[:-8] + "亿" + str(int(a))[-8:-4] + '万'

except:

print(f"问题数据{a}")

return '问题数据'

def after_init(C):

fieldList = ['ASHAREINCOME.net_profit_excl_min_int_inc','ASHAREINCOME.revenue'] # 字段表

stockList = ['000001.SZ'] # 标的

a=C.get_raw_financial_data(fieldList,stockList,'20150101','20300101',report_type = 'report_time') # 获取原始财务数据

# print(a)

for stock in a:

for key in a[stock]:

for t in a[stock][key]:

print(key, timetag_to_datetime(int(t),'%Y%m%d'), to_zw(a[stock][key][t]))

print('-' *22)

print('-' *22)

详细说明

使用提示

取原始财务数据,与get_financial_data相比不填充每个交易日的数据

功能说明

取原始财务数据,与get_financial_data相比不填充每个交易日的数据

参数详细说明

字段名 类型 释义与用例
fieldList List(必须) 字段列表:例如 ['资产负债表.固定资产','利润表.净利润']
stockList List(必须) 股票列表:例如['600000.SH','000001.SZ']
startDate Str(必须) 开始时间:例如 '20171209'
endDate Str(必须) 结束时间:例如 '20171212'
report_type Str(可选) 时间类型,可缺省,默认是按照数据的公告期为区分取数据,设置为 'report_time' 为按照报告期取数据,可选值:'announce_time','report_time'

返回值

函数根据stockList代码列表,startDate,endDate时间范围,返回不同的的数据类型。如下:

代码数量 时间范围 返回类型
=1 =1 pandas.Series (index = 字段)
=1 >1 pandas.DataFrame (index = 时间, columns = 字段)
>1 =1 pandas.DataFrame (index = 代码, columns = 字段)
>1 >1 pandas.Panel (items = 代码, major_axis = 时间, minor_axis = 字段)