Python量化資料獲取:綜合指數介紹及如何獲取資料
通常綜合指數指的是一個市場全部股票按照一定的權重進行加權和,並且以某一個交易日為基準計算出來的數值。這個數值反映了整個市場的走向和趨勢,能反映系統性的資訊。A股市場比較常用的綜合性指數就是有名的上證指數sh.000001和深證綜指sz.399106。
其它的綜合指數還包括,B股指數,工業指數,商業指數等。
可以通過BaoStock獲取歷史的資料,包括價格和成交量資訊,以此來分析市場的熱度,趨勢和活躍程度。獲取指數資料的方式和獲取個股的資料方式一樣,使用同一個函式介面。
import baostock as bs
import pandas as pd
#### 登陸系統####
lg = bs.login()
# 顯示登陸返回資訊
print('login respond error_code:'+lg.error_code)
print('login respond error_msg:'+lg.error_msg)
#### 獲取指數(綜合指數、規模指數、一級行業指數、二級行業指數、策略指數、成長指數、價值指數、主題指數)K線資料 ####
##綜合指數,例如:sh.000001 上證指數,sz.399106 深證綜指 等;
# 詳細指標引數,參見“歷史行情指標引數”章節
rs = bs.query_history_k_data("sh.600000",
"date,code,open,high,low,close,preclose,volume,amount,pctChg",
start_date='2017-01-01', end_date='2017-06-30',
frequency="d",adjustflag="3")
print('query_history_k_data responderror_code:'+rs.error_code)
print('query_history_k_data respond error_msg:'+rs.error_msg)
#### 列印結果集 ####
data_list = []
while (rs.error_code == '0') & rs.next():
# 獲取一條記錄,將記錄合併在一起
data_list.append(rs.get_row_data())
result = pd.DataFrame(data_list, columns=rs.fields)
#### 結果集輸出到csv檔案 ####
result.to_csv("D:\\history_Index_k_data.csv",index=False)
print(result)
#### 登出系統####
bs.logout()