TEJ API 文件解說

photo by Unsplash

前言

講述完這一陣子金融資料的各式應用之後,小編這邊有收到一些訊息是對於TEJ API一些使用上不太熟悉操作的問題,因此為了讓各使用者更加了解如何去操作TEJ API,在繼續介紹各類應用之前,我們會用一到兩週去將我們API的文件(Document)做一個清楚的說明,如果大家覺得本周內容較為容易,可以回去複習一下之前的重點噢!!

本文重點概要

  • API KEY申請/購買
  • 參數說明
  • 資料篩選

API KEY申請/購買

在正式使用我們API之前,如果尚未有API KEY,可以透過連結當中的申請試用或是EShop當中的產品包進行獲得,如下圖:

申請試用API KEY流程
TEJ E-Shop 介面

有了我們API KEY之後就可以來對我們TEJ龐大資料庫進行資料撈取的動作拉!!

參數說明應用

不論是怎麼樣的API KEY都會有該KEY能夠撈取的資料範圍,因此我們透過

tejapi.ApiConfig.info()

可以得到該KEY的權限,相關資料如下圖:

KEY Information

另一個則是透過時間欄位去決定是否顯示時區,因為在Python裡面如果不經過設定,會將年月日時分秒全部展示出,而時分秒對於日資料來說其實並非最重要的因素,所以為了版面整潔可以選擇將其不顯示。

tejapi.ApiConfig.ignoretz = True

前後差別如下,可以看到設定之後所有的00:00:00已經被去除:

忽略時區展示:是(左)/ 否(右)

在了解這些參數並設定好之後就可以進行資料篩選,接下來會主要以交易面資料作為舉例進行介紹~

先找到自己資料庫的代號

可以透過TEJAPI官網 > 右上角資料庫清單 > 依區域查詢 > 台灣資料庫進行查找,可以找到我們要用的資料庫囉(TWN/APRCD),資料庫網頁介面如下:

資料庫介面

資料撈取

TEJ API資料撈取上主要透過一行指令搭配其中不同的參數針對使用者需求進行篩選,,舉例來說:

tejapi.get('TWN/APRCD',coid='Y9999')

這就是在我們交易資料庫裡面針對台股大盤Y9999的開高低收及其他相關交易面資料進行篩選如果我們想要進行增加篩選欄位亦或是時間時,就可以搭配像是

tejapi.get('TWN/APRCD',opts={'columns':['mdate','open_d']})
tejapi.get('TWN/APRCD',coid='Y9999', 
     mdate={'gt':'2018-01-01','lt':'2018-02-01'})

分別代表指定欄位選取以及時間範圍選取,其中參數相對應的介紹如下圖:

 參數說明

因此,如果將我們資料設定在只要開高低收以及2019年起至今日的資料的話,程式碼以及資料呈現將如下:

tejapi.get('TWN/APRCD',coid='Y9999', 
           opts={'columns':['mdate','open_d', 'high_d', 'low_d',        'close_d']}, 
           mdate={'gt':'2019-01-01'})
台股大盤開高低收

表格資訊

如果在使用之前並不清楚該表格內含有甚麼欄位資訊的話,可以透過

tejapi.table_info('TWN/APRCD')

進行對該資料庫資訊的查詢,如下圖:

 表格資訊

表格查詢

最後就是在眾多TEJ資料庫當中,如果只有關鍵字的時後該如何進行找查,這時就可以透過

tejapi.search_table("未調整股價(日)")

對所有資料庫中含有”特定關鍵字”的資料庫找尋,如下圖:

資料庫查找

結論

今天的內容是讓大家對於我們TEJ API有深入的認知以及了解,程度上稍微簡單,但透過實際的程式碼執行可以了解到這些內建function在TEJ API的使用之外,也可以讓大家透過這些功能對TEJ龐大的資料庫進行更為便捷的撈取噢~

完整程式碼

延伸閱讀

再次附上相關網站連結

有任何使用上的問題都歡迎與我們聯繫:聯絡資訊

返回总览页