Skip to main content

圈券申請

ReserveStock

版本資訊

v2.2.9 起新增功能

使用限制
  • 申請服務時段為交易日 08:00 ~ 14:30,時段外送出會被後端拒絕。
  • 送出後無法透過 API 取消。
  • 完整作業特性見圈存與匯撥

輸入參數

參數類別說明
accountAccount帳號
stockNostring股票代號
quantityint64圈存股數,單位為股(1 張=1,000 股),須大於 0

Result 回傳

參數類別說明
IsSuccessbool是否成功
Data*ReserveStockRecord回傳圈券申請資訊
Message*string當 IsSuccess = false 回傳錯誤訊息

圈券申請紀錄 ReserveStockRecord 欄位

Return type : Object

參數類別說明
SeqNostring委託單流水序號
StockNostring股票代號
ReservedShareint64本次圈存股數(股)

請求範例

package main

import (
"fmt"
"fubon"
)

func main() {
// 初始化 SDK 並登入
sdk := fubon.NewFubonSDK()

// ... 登入、連線等初始化步驟 ...

// 圈券申請(599 股)
reserveResult, err := sdk.Stock.ReserveStock(account, "2330", 599)

// 錯誤處理
if err != nil {
fmt.Printf("❌ Reserve Stock Error: %v (Type: %T)\n", err, err)
return
}

// 檢查是否成功
if !reserveResult.IsSuccess {
message := "No message"
if reserveResult.Message != nil {
message = *reserveResult.Message
}
fmt.Printf("Reserve stock failed. Message: %s\n", message)
return
}

// 輸出圈券結果
if reserveResult.Data != nil {
record := *reserveResult.Data
fmt.Printf("✅ Reserve stock accepted\n")
fmt.Printf("SeqNo: %s\n", record.SeqNo)
fmt.Printf("StockNo: %s\n", record.StockNo)
fmt.Printf("ReservedShare: %d\n", record.ReservedShare)
} else {
fmt.Println("Reserve stock success but no data returned.")
}
}

回傳範例

// ReserveStock 回傳結構
Result{
IsSuccess: true,
Message: nil,
Data: &ReserveStockRecord{
SeqNo: "417106", // 委託單流水序號
StockNo: "2330", // 股票代號
ReservedShare: 599, // 本次圈存股數
},
}