1. 程式人生 > >Python量化資料獲取:綜合指數介紹及如何獲取資料

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()