合約轉換調整

通常在結算日或轉倉日,我們就會需要重新維護我們的歷史資料,以保證策略的運算正確

在我們要轉倉的那一天 (有可能是結算日當天、有可能是期貨商的海期最後交易日或網路下單截止日、有可能提前到最大未平倉量或成交量交替日、提早或延後都可以)

先假設你想要轉倉的symbol的資料裡已經有之前的 BackAdjusted Data歷史資料(沒有的話可以直接從平台中的"歷史資料下載中心"進行下載已處理過的歷史資料) 從我們使用的symbol中將資料匯出

勾選 Minute,然後點選 OK 將資料匯出 (註:如果商品是海外期貨,可能會需要改成 Exchage交易所時間)

將著打開剛剛我們所匯出的 Ascii 歷史資料進行檢查,確認最後一筆資料日期為我們想要進行調整的日期

如果有時候我們可能會因為偷懶、忘記或某些原因而沒有在當天處理,在隔天早上或過幾天想到之後才處理(通常是因為你大概知道你的策略可能暫時不會有訊號就沒那麼急) 以這裡為例,恆生的10/29為舊合約的最後一天,10/30為連續月新合約的資料,所以我們就將10/30之後的內容直接刪除後儲存即可

接著打開平台的歷史資料下載中心頁面,點選"合約轉換調整"調整按鈕

點選"匯入歷史資料",選擇我們剛剛匯出的 Ascii 歷史資料檔案

然後填入新的接續合約價格(可以是你在轉倉時的實際新倉轉倉價格或是新一根K棒日期的開盤價格),然後點選 BackAdjust

顯示調整完畢後,我們即可在平台的目錄中找到已調整過的 BackAdjusted Data 資料 (位於 BackAdjustedData 資料夾中)

打開該 Ascii 資料做檢查,會發現歷史資料已將偏差做了調整

接著我們打開 QuoteManager ,找到我們使用的Symbol,選取 Delete Data 刪除舊資料以及 Import Data (Ascii) 重新匯入新資料即可。

這邊要另外講的是

我們不一定要使用連續月合約。個別月合約(非連續月)也是一個選擇。

也就是我們可以不要使用 TWF.FITX HOT ,取而代之我們改用 TWF.FITX 2109 TWF.FITX 2110 這類個別月合約

什麼時機我們可以使用個別月的合約?

通常連續月合約的 rolling 規則是由報價商預先決定的,可能是固定結算日(指數)或最大成交量。 但有時候我們可能在實務操作的時候不一定想照著這個規則走,有的人可能喜歡使用"最大未平倉量"作為轉倉的依據,有的人可能就是想早個一兩天或晚個一兩天隨興地轉倉 這樣的情況我們就可以改將資料匯入至個別月合約來做交易(當然之後就是從這裡匯出處理後再匯入下一個月或季合約),以取得正確的接續報價。

2021/11/20 功能新增"乘數"功能

目前平台上的歷史資料來自於 eSignal,部分商品(多為外匯商品)報價與國內報價商格式可能不一致,以6J為例,eSignal的報價可能是 0.0091875,而國內報價商可能為 9187.5,所以我們可以透過乘數功能,在匯入eSignal的報價資料之後,透過乘數 1000000來調整小數點的位置。

最后更新于