萬事俱備只缺數據?看看如何在策略中引用外部數據源

​雖然真格量化提供了大量的行情數據,但金融市場如此廣大,總會有一些標的的行情或經濟數據我們尚未提供。與其坐等數據“從天而降”或自己手工上傳,用戶可以靈活運用各種數據API來快速獲取這些外部數據。

諸葛亮數據

比如我們想做原油的內外盤套利,需要監控原油的內外盤價差,比如上海國際能源交易中心INE原油和CME WTI原油的價差。我們知道有一些可以通過網頁調用的免費的外盤行情源,可以提供WTI原油價格和人民幣美元匯率。

我們在OnStart部分可以先定義外部行情源網址:

定義外部行情源

比如,我們的外部行情格式是這樣的:

外部行情源格式

我們可以通過urllib2.urlopen來讀取網頁信息,並用re.split來拆分字符串,從中讀取我們需要的數據,比如最新價格:

讀取行情源

對於這個行情源字符串,我們只需要根據引號和逗號就可將其拆分爲數組:

拆分字符串

從數組中取得數據後,我們就可以計算其價差,並進行價差提醒或驅動交易。

計算價差

從外盤標的價格到宏觀經濟數據、天氣信息、輿情數據,現在有越來越多的數據API可供我們使用,用戶可以自己探索,我們以後也會分享一些我們最喜愛的免費數據API。

各種api

當然在調用外部數據API時還應注意:

1,該行情源是否是實時數據,如果該外部數據源存在延時,那需要自己處理延時的狀況,或尋找其他實時的行情源。

2,該外部API支持多高頻率的查詢請求。對於有查詢限流的API過於頻繁的查詢(比如在實盤中進行tick級別交易或回測中頻繁查詢),可能導致該外部API停止響應。

當您關注一些交易機會,但我們恰好沒提供其中某些部分的數據時,不妨試試這個方法來“呼叫外援”。

請求外援

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章