COCO研究院

 找回密碼
 註冊
搜索
查看: 9886|回復: 22

[工具] 利用 Python 抓取資料導入 AB

[複製鏈接]
發表於 13-6-18 08:14 | 顯示全部樓層 |閱讀模式
之前在別的主題內討論了很多如何抓證交所、期交所的資料
我把相關檔案放到這裡,有興趣的大大們可以參考參考。應該還有很大的修改空間
不過目前我自己用還蠻 OK 的
盤後.rar (15.96 KB, 下載次數: 1084)
參考壓縮檔內的README.TXT 或以下文字

(1) TSE_CLOSE.bat 下載上市股票(不含權證)收盤資料
    指令格式範例 C:\python33\python C:\盤後\TSE_CLOSE.py 3 C:\盤後\TSE\
    (第一個是Python 執行檔的路徑)上述例子為 C:\python33\python
    (第二個是Python Script 的路徑)上述例子為 C:\盤後\TSE_CLOSE.py
    (第三個的數字是檔案下載的日數,以今日回算) 上述例子為 3 , 如果以 2013/6/9 看,數字3就是 2013/6/7 ~ 2013/6/9
    (最後一個是輸出檔案的目錄) 上述例子為 C:\盤後\TSE\
    執行後 在C:\盤後\TSE\ 會產生兩個次目錄 CLOSE 與 AB
    CLOSE內存放證交所的原始資料
    AB 是彙整後的資料 可以給AB import 用import 的格式如下 (參考 TW_STOCK.format)
   
    # Format definition file generated automatically
    # by AmiBroker's ASCII Import Wizard
    $FORMAT Ticker, Date_YMD, Open, High, Low, Close, Volume, Fullname
    $SKIPLINES 1
    $SEPARATOR ,
    $CONT 1
    $GROUP 255
    $AUTOADD 1
    $DEBUG 1
   
   
(2) OTC_CLOSE.bat 下載上櫃股票(不含權證)收盤資料
    指令格式範例 C:\python33\python C:\盤後\OTC_CLOSE.py 3 C:\盤後\OTC\
    (第一個是Python 執行檔的路徑)上述例子為 C:\python33\python
    (第二個是Python Script 的路徑)上述例子為 C:\盤後\OTC_CLOSE.py
    (第三個的數字是檔案下載的日數,以今日回算) 上述例子為 3 , 如果以 2013/6/9 看,數字3就是 2013/6/7 ~ 2013/6/9
    (最後一個是輸出檔案的目錄) 上述例子為 C:\盤後\OTC\
    執行後 在C:\盤後\OTC\ 會產生兩個次目錄 CLOSE 與 AB
    CLOSE內存放證交所的原始資料
    AB 是彙整後的資料 可以給AB import 用import 的格式 (參考 TW_STOCK.format)
(3) IDX_15Sec_1Min.bat 與  IDX_15Sec_Day.bat 下載指數類收盤資料
    指令格式範例分別為 C:\python33\python C:\盤後\IDX_15Sec_1Min.py 1 C:\盤後\IDX\  
                        C:\python33\python C:\盤後\IDX_15Sec_Day.py 1 C:\盤後\IDX\
                        
    (第一個是Python 執行檔的路徑)上述例子為 C:\python33\python
    (第二個是Python Script 的路徑)上述例子分別為 C:\盤後\IDX_15Sec_1Min.py C:\盤後\IDX_15Sec_Day.py
    (第三個的數字是檔案下載的日數,以今日回算) 上述例子為 1 , 如果以 2013/6/9 看,數字1就是  2013/6/9
    (最後一個是輸出檔案的目錄) 上述例子為 C:\盤後\IDX\
   
    執行後 在C:\盤後\IDX\ 會產生兩個次目錄 IDX 與 AB
    IDX內存放證交所的原始資料               
    AB 是彙整後的資料 可以給AB import 用import 的格式
    檔案前置文字分別為 1Min_ 與 Day_ 代表 一分鐘K 與 日K
    請注意:匯入AB 時 1Min 與Day 需要的DATABASE 格式不同 (分別參考 IDX_1Min.format 和 IDX_Day.format)
(4) TSE_Vol.bat下載加權指數類收盤資料
    指令格式範例為 C:\python33\python C:\盤後\TSE_vol.py 1 C:\盤後\TSE\
                  
                        
    (第一個是Python 執行檔的路徑)上述例子為 C:\python33\python
    (第二個是Python Script 的路徑)上述例子為 C:\盤後\TSE_vol.py
    (第三個的數字是檔案下載的日數,以今日回算) 上述例子為 1 , 如果以 2013/6/9 看,數字1就是  2013/6/9
    (最後一個是輸出檔案的目錄) 上述例子為 C:\盤後\TSE\
   
    執行後 在C:\盤後\TSE\ 會產生兩個次目錄 1Min 與 1MAB
    1Min內存放證交所的原始資料               
    1MAB 是彙整後的資料 可以給AB import 用import 的格式 (參考 TSE_vol.format)
  
(5) import.bat
    因為不知哪個原因 如果利用工作排程 批次檔的指令建議如下
    start "匯入資料 to AB" c:\python33\python C:\盤後\import.py  D:\AmiBrokerData\TWSTOCK\ C:\盤後\TSE\AB\ C:\盤後\TW_STOCK.format
    (第一個是批次檔另開視窗指令)上述例子為 start
    (第二個是視窗名稱)上述例子為 "匯入資料 to AB"
    (第三個是Python 執行檔的路徑)上述例子為 c:\python33\python
    (第四個是Python Script 的路徑)上述例子為  C:\盤後\import.py
    (第五個是要先用AB建立成功的的 DATABASE 路徑,)上述例子為  D:\AmiBrokerData\TWSTOCK\
    (第六個是匯入的資料檔案存放路徑)上述例子為 C:\盤後\TSE\AB\
    (最後一個是AB使用的格式檔案) 上述例子為  C:\盤後\TW_STOCK.format
   
    執行後 所有在C:\盤後\TSE\AB\ 當原始資料會在匯入完成後移到C:\盤後\TSE\AB\BAK\ 下
    日後如果需要 可以再搬回 C:\盤後\TSE\AB\
    這樣不會重複進行同一檔案的匯入

評分

參與人數 10金錢 +22 收起 理由
jconstantine + 2 太強了
shonyu + 1 太強了
sdnian + 2 按一個讚
Fesimi + 2 感謝分享
lwhuang + 2 感謝分享
Sirius + 2 感謝分享
ambercrystal + 2 感謝分享
kilroy + 5 太強了
joey0415 + 2 感謝分享
jiuhtsair + 2 按一個讚

查看全部評分

發表於 13-6-18 08:19 | 顯示全部樓層
感謝您的分享
感恩
 樓主| 發表於 13-6-18 08:23 | 顯示全部樓層
期貨 選擇權
不多做說明 請參考 .bat 和 .py檔案

FUT_RPT.rar

5.36 KB, 下載次數: 774

OPT_RPT.rar

7.01 KB, 下載次數: 736

評分

參與人數 4金錢 +11 收起 理由
lwhuang + 2 太強了
Sirius + 2 感謝分享
kilroy + 5 太強了
joey0415 + 2 等我學了後再請教大大。感謝分享.

查看全部評分

發表於 13-6-18 14:29 | 顯示全部樓層
嘆為觀止,目瞪口呆,五體投地
發表於 13-6-19 17:10 | 顯示全部樓層
本帖最後由 lwhuang 於 13-6-19 17:25 編輯

今天發現怪狀
http://www.twse.com.tw/ch/tradin ... myear=2013&mmon=06#
的成交量是65,566,737,458
但是calvinhorng大的TSE_VOL是去抓
http://www.twse.com.tw/ch/tradin ... ?chk_date=102/06/19
成交量是65,187
不一樣耶,我用2卷商的看盤軟體都是前1個數值

然後TSE_VOL今天的OHLC跟卷商看到的也不同
發表於 13-6-19 17:24 | 顯示全部樓層
又發現第3個數字
http://www.twse.com.tw/ch/tradin ... r=2013&mmon=06#
成交量是66,364,752,234
 樓主| 發表於 13-6-19 21:09 | 顯示全部樓層
本帖最後由 calvinhorng 於 13-6-19 21:13 編輯
lwhuang 發表於 13-6-19 17:10
今天發現怪狀
http://www.twse.com.tw/ch/tradin ... myear=2013&mmon=06#
的成交量是65,566,737,458

加權指數的日Volume 我是用累積成交金額
http://www.twse.com.tw/ch/trading/exchange/MI_5MINS/genpage/Report201306/A12520130619.php?chk_date=102/06/19
所以 6/19 應該是 65187 百萬元
但是 他沒包括盤後大額交易吧
所以
http://www.twse.com.tw/ch/trading/exchange/FMTQIK/genpage/Report201306/201306_F3_1_2.php?STK_NO=&myear=2013&mmon=06#
66,364,752,234 元 這個金額應該含盤後大額交易
所以 這個比較準
 樓主| 發表於 13-6-19 21:35 | 顯示全部樓層
lwhuang 發表於 13-6-19 17:24
又發現第3個數字
http://www.twse.com.tw/ch/trading/exchange/FMTQIK/genpage/Report201306/201306_F3_1_2 ...

這個金額應該是比較準的
所以 要修改一下程式碼才行

 樓主| 發表於 13-6-19 21:55 | 顯示全部樓層
lwhuang 發表於 13-6-19 17:10
今天發現怪狀
http://www.twse.com.tw/ch/tradin ... myear=2013&mmon=06#
的成交量是65,566,737,458

我用 凱基全球理財王
用一分鐘K  excel 輸出後再存 CSV 格式
和我的CSV 比 應該都一樣 (除了 9:00:00 的 OPEN)
請參考附件內兩個CSV 檔案參考一下
TSEVOL_20130619.rar (7.89 KB, 下載次數: 626)
建議你也把卷商的資料輸出來比對一下

還有 用一分鐘K 我發現  總成交金額也沒有包括盤後交易金額
所以 證交所的原始資料就有點xxxx了

評分

參與人數 1金錢 +2 收起 理由
lwhuang + 2 太強了,晚點來試試

查看全部評分

發表於 13-6-20 10:01 | 顯示全部樓層
可是open價也很重要呀
發表於 13-6-20 10:27 | 顯示全部樓層
calvinhorng大這個TSEVOL_20130619.rar裡面沒有修改的原始碼呀
 樓主| 發表於 13-6-20 16:59 | 顯示全部樓層
lwhuang 發表於 13-6-20 10:27
calvinhorng大這個TSEVOL_20130619.rar裡面沒有修改的原始碼呀

我用的是第一訊息附檔 盤後.rar 內的TSE_vol.py
沒有修改過
你比對後如果有問題 方便放上來 我看一看嗎?
 樓主| 發表於 13-6-20 18:01 | 顯示全部樓層
lwhuang 發表於 13-6-20 10:01
可是open價也很重要呀

有點搞懂盤商的邏輯,證交所資料(如 http://www.twse.com.tw/ch/trading/exchange/MI_5MINS_INDEX/genpage/Report201306/A12120130620.php?chk_date=102/06/20)  把昨日收盤指數當今日9:00:00 的開盤指數
但是盤商是把 9:00:15 的指數當作今日開盤指數
我覺得也是合理 所以改一下 Code TSE_vol_1.rar (2.3 KB, 下載次數: 768)
此外 我也把 最後總金額更正
試用一下 看看吧

評分

參與人數 1金錢 +2 收起 理由
lwhuang + 2 感謝分享

查看全部評分

發表於 13-6-21 18:25 | 顯示全部樓層
本帖最後由 lwhuang 於 13-6-21 19:02 編輯

價位是跟券商一樣了,但是今天(6/21)的量還是跟富邦e01不同,不過大大的量跟證交所網頁上的一樣了 :) 我準備把他改成精準的數字,不是以億為單位,我是精準狂
 樓主| 發表於 13-6-21 22:02 | 顯示全部樓層
lwhuang 發表於 13-6-21 18:25
價位是跟券商一樣了,但是今天(6/21)的量還是跟富邦e01不同,不過大大的量跟證交所網頁上的一樣了 :) 我準 ...

我以前發現證交所有時候還會去改之前的數字
所以 還要偶爾對一對原始資料
您需要登錄後才可以回帖 登錄 | 註冊

本版積分規則

手機版|Archiver|站長信箱|廣告洽詢|COCO研究院

GMT+8, 24-11-22 13:37

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回復 返回頂部 返回列表
理財討論網站 |