Shopping Cart

購物車內沒有任何商品。

API是什麼?API介紹與串接教學|股票量化交易從零開始(一)元富證券API權限申請

你有沒有想過,為什麼我們在手機上就能即時看到各國的股價資訊?而你送出的買進股票指令又是怎麼傳送到券商的主機呢?

其實這一切都是API的功勞!

在本系列文章中,量化通將會進一步介紹,完整的API串接流程。API 串接是每個程式交易者,都必須知道的功能。從一開始的取得股價資訊到最後的下單交易都少不了API的存在,可以說是量化交易中最重要的一個環節。

立即訂閱電子報,掌握最新資訊!

    稱呼

    電子郵件

    以下非必填,但若您願意分享,我們將能推送更精準的內容給您

    投資經驗

    是否為理工科背景、工程師或有寫程式的經驗?

    有興趣的主題
    量化交易台股期貨海外期貨虛擬貨幣美股

    有興趣的量化交易軟體/平台
    不清楚MultiChartsTradingViewPythonXQ

    想透過量化交易達成甚麼目的?
    不確定自動交易選股回測投資績效量化自己的投資方法想找現成的策略套用

    還有什麼想詢問的?

    2024tv黑五 1920 X 400 像素(pc端的banner)
    2024tv黑五 978 X 258(移動端的banner)


    API 的全名為(Application Programming Interface),是一種能夠接受資料和數據的應用程式介面接口,並且讓接口兩端的裝置或應用程式,可以做資料和數據的接收和傳送。

    在一般的看盤軟體或是APP 中,背後所需的 API 串接處理都已經由軟體商整合完畢,留下一些設定讓使用者可以輸入,如:標的代號,買賣選擇,價格,交易張數等等。使用者設定完畢按下送出鈕,便會透過事先串接好的 API 將買賣指令送出,所以我們一般感受不到 API 的存在。

    若我們要進行程式交易,在股票中最常見的便是透過 Python 串接 API 達成全自動交易。而使用 API 統一的格式,能夠降低使用者在程式開發的成本,同時也可以實現資料交換的目的。用戶可以直接從券商的主機,取得最原始的即時量價數據,以滿足量化交易的需求。

    Py 101209161710
    Py 101209161711

    API 的運作流程

    一般而言,API 的運作流程會有以下四個步驟:

    1. 發出請求: 由程式發送出 API 的請求(Request),這通常包括所需要的參數和數據。
    2. 處理請求:接收 API 請求的伺服器或服務商,根據 API 的定義處理請求,執行相應的操作。
    3. 回應:伺服器或服務商,將處理後的數據以 API 指定的格式回應(Response)給請求方。
    4. 請求方的程式收到返回的數據,並根據數據進行後續操作。

    如果要以實際的例子,可以將 API 的運作流程,想像成在餐廳的場景。

    當你走進一家餐廳後,你會跟服務生點餐,服務生接收到訂單後,接著就會將訂單交給廚房人員。而當廚房做好餐點後,再通知服務生取餐,接著服務生再把餐點送到你的桌上。

    以上的流程,就像是 API 的完整運作流程,而在這個過程中,各自所扮演的角色如下:

    • 你 = 發出請求的程式端
    • 服務生 = API
    • 廚房人員 = 接收請求的伺服器或服務商

    API 的實際應用

    在日常生活中,像是購物網站串接第三方金流,或者是餐廳網站串接 Google Map 等等,這些都是透過 API 串接的原理,來達到技術與資訊共享的目的。

    而在程式交易中,交易員也會透過 API 的串接,來達到自動化交易的目的。

    舉例來說,在執行量化交易時,交易員會需要取得股市最原始以及最即時的數據,才能夠進行回測,並且擬定適當的交易策略。

    能夠串接 API 達成全自動交易的軟體與工具有很多,本系列文章將會以 Python 串接元富證券的 API 作為例子,若想了解各種的程式交易軟體的優勢與比較,可以參考此文(插入軟體比較連結)

    元富證券 API 特色

    特色一:模擬交易所,全天候24小時開放

    身為一個專業的量化交易者,在執行正式交易前,除了會需要使用歷史資料進行「回測」,來驗證策略的可靠性之外,還需要在即時的真實環境中進行實戰測試。

    而元富證券所推出的模擬交易所,在台股開盤至收盤期間可以提供行情逐筆撮合機制,讓交易者可以用貼近市場的數據進行測試。以制定更完善的交易策略和風險管理,提高獲勝機率。在非開盤時間可以可以進行虛擬的測試。

    特色二:支援 Python 與 C# 語法

    元富證券的數位 API,同時支援市面上最熱門的程式語言「Python」與「C#」,讓善於程式交易的投資人,可以用更靈活、更彈性的方式打造屬於自己的交易策略。

    特色三:即時行情與歷史行情 API

    全新的「數位API」除了原有的下單與即時行情API元件外,也提供投資人近一個月的歷史行情API,讓投資人能更完整驗證個人策略。

    特色四:最多元的技術指標API

    不僅如此,元富證券除了提供完整的 API 元件,以及多元的技術指標外。如果不想要花費太多時間在開發新的指標和策略,元富證券也有提供指標資料的訂閱服務,可以節省交易者的開發成本。

    API 權限申請

    在開始寫程式串接 API 之前,我們必須有能夠交易股票的證券戶,還需要申請 API 的使用權限,才可以正式進入程式交易的世界。

    若你還沒有元富證券的帳戶,可以到此處開戶,還可以領取開戶禮與交易禮等多種優惠。

    一般的開戶流程可以透過手機或電腦完成,不過申請權限與後續串接,將會以電腦(Windows 或 macOS)來操作。

    第一步:申請憑證

    首先因為後續的 API 申請的過程中,簽署線上文件需要憑證,因此請先到元富證券官網申請憑證,然後請依序下列步驟:

    1. 下載「憑證e管家」(請根據自身的電腦版本下載)
    2. 依序輸入身分證、元富證券戶密碼後,按下「登入」
    3. 系統會提醒,尚未申請憑證,接著請按下「確定」
    4. 系統會發送手機驗證碼,輸入後按下「確定」
    5. 閱讀約定條款,確認無誤後,勾選並按下「下一步」
    6. 接著會開始安裝授權憑證,請按下「是」
    7. 下一步請設定一組憑證密碼,設定完成後請按下「確定」
    8. 密碼設定完成後,下一步會將憑證匯入至瀏覽器時,會需要再輸入一次憑證密碼,接著按下「確定」
    申請 1
    申請 2
    申請 3
    申請 4
    申請 5
    申請 6
    申請 7
    申請 8

    第二步:線上簽署文件

    憑證密碼設定完成後,接著會需要至元富證券數位 API 專區進行線上簽署文件,請依序下列步驟:

    1. 到頁面下方「Step2 線上簽署」的右邊,點選「 線上簽署
    2. 接著會跳出線上簽署的頁面,請點選下方的「未簽署」
    3. 系統會跳出提醒,接著請按下「確定」
    4. 接著會跳出服務申請聲明書,請全部勾選後,並在最下方勾選自己的未簽署帳號,並按下「確定簽署」
    5. 按下確定簽署後,會再出現一次相同的內容給你確認,沒問題的話一樣按下「確定簽署」
    6. 接著系統會跳出一個提醒視窗,請點選視窗內的網址後,接著會在跳到之前的申明書頁面,請點選頁面下方的「確定簽署」
    7. 下一步會要求輸入上一步所申請的憑證密碼,輸入後按下「確定」,接著系統會跳出「簽署成功」的提示
    申請 9
    申請 10
    申請 11
    申請 12
    申請 13
    申請 14

    結語 

    至此我們就完成元富證券 API 的線上簽署,後續的系列文章將會接著介紹如何透過 Python 來串接 API,獲取即時的行情與全自動下單。

    總結來說,API 的存在不僅可以減少開發成本,同時也可以達到資訊共享的目的。除此之外,透過串接 API,也能夠讓程式交易者,實現全自動化交易的目標。

    不過還是要特別注意,在進行任何投資交易時,都可能會有虧損的風險。因此在使用程式交易擬定交易策略時,還是要評估自身狀況,將風險考慮進去,才能夠確保在投資過程中達到預期獲利!


    加入LINE社群量化交易討論群」無壓力討論與分享!

    加入Discord 「量化交易討論群」即時獲取實用的資源!

    Write Together 101306261122
    Write Together 101306261121
    量化通
    量化通

    量化通是個致力於全民量化金融教育的社群,我們希望透過由淺入深的內容,帶領大家以正確觀念來實踐自動化的金融投資研究分析。

    文章: 209

    發佈留言

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *