1. 程式人生 > >zwQuant學習筆記 (3) 分鐘級別交易

zwQuant學習筆記 (3) 分鐘級別交易

最近太忙了,進度很慢。要抓緊。

今天解決了一個小問題。因為外匯是分鐘級別居多,那麼,需要做到分鐘級別的交易測試。

經過研究發現yahoofeed,好像不能設定FrequencyMinutes的設定。於是用csvfeed.GenericBarFeed來做。

程式碼很粗糙,暫時先不管了。跑完再說。

from pyalgotrade.barfeed import csvfeed

feed = csvfeed.GenericBarFeed("Frequency.MINUTE", None, None)

這樣,就可以用分鐘線進行交易了。

我用的是5分鐘線。

一般從MT4下載資料以後,通過以下指令碼format一下。這樣,pyalgotrade就可以直接使用。

#Read CSV and format the code.

import pandas as pd

n_list=["Date","Time","Open","High","Low","Close","Volume"]

fss=".\\tmp\XAUUSD5.csv" #原始檔案
data=pd.read_csv(fss, names=n_list)


data["Date Time"]=data["Date"]+" "+ data["Time"]

data["Date Time"]=pd.to_datetime(data["Date Time"],format='%Y-%m-%d %H:%M:%S')

new_data=data[["Date Time","Open","High","Low","Close","Volume"]]

new_data["Adj Close"]=data["Close"]

tss=".\dat\XAUUSD.csv" #輸出檔案

new_data.tail(50).to_csv(tss);print(tss);