基于Python的指数基金量化投资——估值数据的直接获取

2021-11-30  本文已影响0人  小将前行

在判断个股或者指数的买点通常是通过个股或者指数的市盈率和市净率来进行锚定的,所以市盈率和市净率这两个数据非常的重要。

在baostock上提供了直接获取个股估值的数据接口

该接口可以获得按时间区间定义的数据,包含:

Date:交易信息

Code:证券代码

Close:收盘价

peTTM:滚动市盈率

psTTM:滚动市销率

pcfNcfTTM:滚动市现率

pbMRQ:市净率

但是该接口目前只能获取个股的估值信息,指数的估值信息是没有的,可以参看《指数的市盈率和市净率计算》自行进行计算。

源码

import baostock as bs

import pandas as pd

lg = bs.login()

print('login responderror_code:'+lg.error_code)

print('login respond  error_msg:'+lg.error_msg)

rs = bs.query_history_k_data_plus("sz.399989",

   "date,code,close,peTTM,pbMRQ,psTTM,pcfNcfTTM",

   start_date='2015-01-01', end_date='2017-12-31',

   frequency="d", adjustflag="3")

print('query_history_k_data_plus responderror_code:'+rs.error_code)

print('query_history_k_data_plus respond  error_msg:'+rs.error_msg)

result_list = []

while (rs.error_code == '0') &rs.next():

   result_list.append(rs.get_row_data())

result = pd.DataFrame(result_list,columns=rs.fields)

result.to_csv("D:\\index_valuation.csv",encoding="gbk", index=False)

print(result)

bs.logout()

程序中用到的指数数据如果有问题,大家可以留言,欢迎拍砖^_^

课程参考:网易云课堂  基于Python的量化指数基金投资

上一篇下一篇

猜你喜欢

热点阅读