|
本帖最後由 taipaz 於 10-11-20 06:09 PM 編輯
期交所的 rpt 檔提供的資料一共有八個欄位
交易日期,商品代號,交割年月,成交時間,成交價格,成交數量(B+S),近月價格,遠月價格
而我需要將 當天 TX, MTX, TF, TE 及 TX交割期為次月的五項成交資料, 匯入 MultiCharts 的資料庫,
Multicharts 是可採用 csv 檔匯入資料, 不過只需要
交易日期,成交時間,成交價格,成交數量, 四個欄位.
另外則是, rpt 檔中的成交時間尾數的兩個 00 需要去除.
還有, 有時候有些商品會伴隨著有近遠月合約轉換的交易產生. 資料欄位需修改, 但順序不可變動.
我只會用 php 寫一些網頁要用的互動程式, 讀寫檔與修改資料內容的基礎程式反而沒曾學過.
於是, 只好拿 Excel 這種工具, 用最笨的方法: (以 TX 當月期為例)
1. 先用 Excle 讀取整個 rpt 檔, 將不屬於 TX 當月期的資列位去除
2. 在第九欄 依資料列數 預建一欄數列
3. 以近月價格(G)或交割年月(C)欄為排序基準, 整理出所有近遠月轉換交易的資料列,
將這幾筆資料的交割年月修改為與其他列相同, 並將這幾筆個別的近月價格複製到成交價格欄
4. 依預建於第九欄的數列為排序基準, 重新排序, 恢復原來的順序
5. 修改成交時間, 去掉尾數兩個 00
6. 去除不需要的五個欄位
7. 存成 csv 檔 ....
重覆進行上述的動作 (當然, 有些商品當天不一定有合約轉換的交易, 就可省略一些程序)
然後, 分別存成以下幾個 csv 檔 (檔名中的交割日期與交易日期依實際進行之當日調整)
TX_201012_20101119,
MTX_201012_20101119,
TF_201012_20101119,
TE_201012_20101119,
TX_201101_20101119,
這樣的動作, 每天都要花個大約10來分鐘. 其實, 醬的事讓會寫程式的人來做, 就把我這麼做看成笑話了 ......
不知有沒那位仁人君子能指導協助, 能用來每天處理這事的程式 |
|