前兩篇文章介紹了獲取股票歷史數據的一些方法,現在就介紹下實盤中必須用到的實時行情了。
通過搜索可知目前免費的實時行情主要是通過新浪財經和騰訊財經的免費 api 獲得。
下面我們來看下 sina 的免費 api 的返回吧
有沒有感覺一頭霧水,因為解析這些返回特別麻煩,而且多隻股票時返回略有差別。
這是就輪到 Python 的實時行情獲取庫 easyquotation 出場了,它已經幫我們把這些都封裝好了。
安裝:
pip install easyquotation使用:
獲取指定幾隻股票的數據
返回的是一個行情的字典,如果是多個股票, 字典的 key 就是對應的股票代碼,我們看下獲取的速度
基本在 10ms 內,新浪的伺服器確實非常快
獲取全市場股票實時價格:
所用時間:
這裡結果就不展示了,可以看到我們獲取了 3775 只股票的實時價格只用了 229 ms,只能再次讚嘆下新浪的伺服器性能
同時獲取指數和股票數據 :
上面的例子可以看到我們的代碼都沒有指定證券市場,那怎麼同時取股票和指數數據呢?查看文檔發現只需要在 real 函數中指定 prefix 參數為 True, 然後獲取的代碼帶上 sh/sz 前綴就好了
騰訊的行情用法也是類似, easyquotation 還額外帶了一個基於 leverfun 的免費十檔行情和集思錄相關的分級基金數據。詳情大家可以訪問 easyquotation 的 github 主頁 github.com/shidenggui/easyquotation 了解。
這樣量化過程中對實時行情需求基本就可以滿足了