在金融经济研究或量化分析中,经常会使用到wind相关数据。本文以获取宏观经济数据(EDB)为例,简要介绍一下利用python从wind获取相关数据。本文数据来源为wind金融终端。
获取GDP指数[上年=100](M0028611)和GDP指数[1978年=100](M0024737)数据。
# 加载WindPy,启动API接口
from WindPy import w
w.start()
data1 = w.edb("M0028611,M0024737", "1978-01-01",
"2022-11-13","Fill=Previous")
data1
执行后,返回WindData对象,如下。
.ErrorCode=0
.Codes=[M0028611,M0024737]
.Fields=[CLOSE]
.Times=[19781231,19791231,19801231,19811231,19821231,19831231,
19841231,19851231,19861231,19871231,...]
.Data=[[110.181254,106.165664,106.490113,103.774904,107.42341,
109.181137,113.69002,111.896562,107.341433,109.881164,...],
[100.0,106.165664,113.055935,117.323688,126.033106,
137.604378,156.442445,175.053717,187.905169,206.472387,...]]
根据研究的需要,可直接取出Codes列表,Times列表或Data列表使用。其中:ErrorCode为错误代码;Codes为证券代码或指标代码;Fields是指标列表;Times是时间序列;Data是获取的数据。
通过添加参数usedf=True输出DataFrame数据格式,返回值为错误代码error和DataFrame形式数据,获取DataFrame数据即可。
error,data2 = w.edb("M0028611,M0024737", "1978-01-01",
"2022-11-13","Fill=Previous",usedf=True)
data2.head()
返回DataFrame形式的1978-2021年的GDP指数[上年=100]、GDP指数[1978年=100]数据,如下图:
输出结果根据实际需求整理后以供研究使用。
<原创内容,引用请注明出处>