快速開始
| 項目 | 說明 |
|---|---|
| 前置條件 | 完成事前準備 |
| 支援語言 | Python / C# / JavaScript (Node.js) / C++、Go(僅支援證券交易帳務及條件單) |
| 下載來源 | SDK 下載頁面 |
| 安裝方式 | 請見安裝與版本相容性 |
| 下一步 | 依語言完成登入與下單範例 |
請先參考事前準備完成風險預告書申請與憑證下載。
安裝 與版本相容性
安裝步驟與最低版本需求請見安裝與版本相容性,下載 SDK 請至SDK 下載頁面。
並將憑證放置您的資料夾結構應該像是:
.
└── XXXXXXXXXX.pfx
- Python
- Node.js
- C#
若您未曾使用 SDK 進行過登入,或更換了 SDK 執行環境,請在資料夾新增一個 index.py 檔案,貼上以下內容並執行:
from fubon_neo.sdk import FubonSDK, Order
from fubon_neo.constant import TimeInForce, OrderType, PriceType, MarketType, BSAction
sdk = FubonSDK()
accounts = sdk.login("您的身分證字號", "您的登入密碼", "您的憑證位置", "您的憑證密碼") #若有歸戶,則會回傳多筆帳號資訊
## accounts = sdk.login("您的身分證號", "您的登入密碼", "您的憑證路徑位置") # 若憑證選用"預設密碼 ", SDK v1.3.2與較新版本適用
acc = accounts.data[0]
若您未曾使用 SDK 進行過登入,或更換了 SDK 執行環境,請在資料夾新增一個 index.js 檔案,貼上以下內容並執行:
const { FubonSDK, BSAction, TimeInForce, OrderType, PriceType, MarketType } = require('fubon-neo');
const sdk = new FubonSDK();
const accounts = sdk.login("您的身分證字號", "您的登入密碼", "您的憑證路徑" ,"您的憑證密碼");
// const accounts = sdk.login("您的身分證號", "您的登入密碼", "您的憑證路徑位置"); // 若憑證選用"預設密碼", SDK v1.3.2與較新版本適用
const acc = accounts.data[0];
若您未曾使用 SDK 進行過登入,或更換了 SDK 執行環境,請在資料夾新增一個 index.cs 檔案,貼上以下內容並執行:
using FubonNeo.Sdk;
var sdk = new FubonSDK();
var accounts = sdk.Login("您的身分證字號", "您的登入密碼", "您的憑證路徑", "您的憑證密碼"); // 若 有歸戶,則會回傳多筆帳號資訊
/*
// 若憑證選用"預設密碼", SDK v1.3.2 與較新版本適用
var acc_obj = sdk.Login("您的身分證號", "您的登入密碼", "您的憑證路徑");
*/
var acc = accounts.data[0];
送出委託,買入股票
再將以下範例程式碼補上, 將示範如何使用富邦新一代 API 送出一張以跌停價買入 富邦金(2881)的限價委託:
- Python
- Node.js
- C#
order = Order(
buy_sell = BSAction.Buy,
symbol = "2881",
price = None,
quantity = 2000,
market_type = MarketType.Common,
price_type = PriceType.LimitDown,
time_in_force = TimeInForce.ROD,
order_type = OrderType.Stock,
user_def = "From_Py" # 使用者可自定義填入 , Optional field
)
sdk.stock.place_order(acc, order)
const order = {
buySell: BSAction.Buy,
symbol: 2881,
price: "66",
quantity: 2000,
marketType: MarketType.Common,
priceType: PriceType.LimitDown,
timeInForce: TimeInForce.ROD,
orderType: OrderType.Stock,
userDef: "from Js"
};
//
sdk.stock.placeOrder(acc, order);
var order = new Order(
BsAction.Buy,
"2881",
"66",
2000,
MarketType.Common,
PriceType.LimitDown,
TimeInForce.Rod,
OrderType.Stock,
null
);
sdk.Stock.PlaceOrder(acc ,order); // 使用阻塞委託下單