Skip to main content

事前準備

caution

開始 Nova API 前,須完成以下步驟

  1. 完成線上開戶 線上開戶
  2. 申請憑證
  3. 簽署 API 使用風險暨聲明書
  4. 完成 API 認證(未開通過台新 API 者,首次登入時執行)

完成線上開戶​

若您已有台新證券帳戶請跳過此步驟,若尚未開戶請點選 線上開戶

申請憑證​

至 憑證申請專區,使用「憑證e管家」申請並匯出憑證(Windows 與 Mac 皆有提供)。

caution

請務必使用「憑證e管家」申請與匯出憑證;「憑證快遞」不支援 API,以其處理的憑證將無法用於 API 登入。

匯出的憑證檔(.pfx)路徑與憑證密碼,即為登入(login)時的第三、四個參數。
Linux 用戶請先於 Windows 或 Mac 完成申請與匯出,再將憑證檔複製至執行環境使用。

簽署​

依照下方連結範例簽署
線上簽署連結 線上簽署

caution

簽署完畢後,需間隔一天才會生效

安裝套件​

至 SDK 下載頁面 下載相關套件

pip install taishin_sdk-<version>-cp37-abi3-win_amd64.whl

目前支援 3.8、3.9、3.10、3.11 與 3.12。

執行認證,開啟程式交易之旅​

from taishin_sdk import TaishinSDK, Order, TimeInForce, OrderType, PriceType, MarketType, BSAction
# 載入設定檔與登入
sdk = TaishinSDK()
accounts = sdk.login("您的身分證字號", "您的登入密碼", "您的憑證位置", "您的憑證密碼")

acc = accounts[0]

sdk.register_api_auth(acc) # 未開通過台新 API 之用戶,第一次登入時,需加入此行程式認證,認證完畢後,即可移除此行

可先單獨執行以上程式,
完成認證後,即可使用 SDK 各項功能

#建立委託物件
order = Order(
buy_sell = BSAction.Buy,
symbol = "2887",
quantity = 2000,
price = "15",
market_type = MarketType.Common,
price_type = PriceType.Limit,
time_in_force = TimeInForce.ROD,
order_type = OrderType.Stock,
)
order_res = sdk.stock.place_order(acc, order)
print(order_res)

太棒了🎊,完成下單任務,即可看到系統回覆的結果

PlaceOrderResponse  { 
order_date: "20241028",
order_time: "095945300",
work_date: "20241028",
is_pre_order: false,
order_no: "h0001"
}