您當前的位置:首頁 > 詩詞

通達信資料匯入VNPY資料庫

作者:由 人世間 發表于 詩詞時間:2020-10-21

市面上很多收費資料比較昂貴,但通達信的資料可以免費下載,下載後的資料轉換成vnpy需要的格式就可以在vnpy裡回測了。

我們看一下vnpy的資料BarDate類定義:

class

BarData

BaseData

):

“”“

Candlestick bar data of a certain trading period。

”“”

symbol

str

exchange

Exchange

datetime

datetime

interval

Interval

=

None

volume

float

=

0

open_interest

float

=

0

open_price

float

=

0

high_price

float

=

0

low_price

float

=

0

close_price

float

=

0

def

__post_init__

self

):

“”“”“”

self

vt_symbol

=

f

“{self。symbol}。{self。exchange。value}”

從類屬性可以看到,資料一共有10個變數,分別對應品種程式碼、交易所程式碼、週期、日期時間、開盤價、最高價、最低價、收盤價、成交量、持倉量

通達信資料有日期、時間、開盤價、最高價、最低價、收盤價、成交量、持倉量、結算價

所以把日期時間合併,把結算價刪除,再增加品種程式碼、交易所程式碼、週期,資料抬頭按照BarData屬性設定,修改後如下:

通達信資料匯入VNPY資料庫

這樣的資料便能匯入vnpy資料庫回測了。

若是用指令碼模式匯入,可以用pd。read_csv讀取資料檔案,讀取後的資料都是字串型別,注意需要把交易所程式碼和週期重新設定成列舉常量Exchange和Interval,日期時間轉換成datetime。datetime型別,開、高、低、收、成交量、持倉量則轉換成浮點型資料。

資料修改好後,可匯入進SQLite或MongoDB資料庫,匯入完成就可以回測了。

標簽: float  資料  vnpy  Price  self