董監持股
取得指定個股在年月區間內、每月董事、監察人及經理人之持股餘額、設質股數與設質比率明細。
GET /ownership/director-holdings/{symbol}
版本資訊
v2.4.0 起新增功能
Parameters
| Name | Type | Description |
|---|---|---|
symbol* | string | 個股代號(如 2330),路徑參數 |
from | string | 開始年月(格式:yyyy-MM,亦接受 yyyy-MM-dd、僅取年月);與 to 皆省略時回最新月 |
to | string | 結束年月(格式:yyyy-MM,亦接受 yyyy-MM-dd、僅取年月);僅提供 from 或 to 其一時,視同查詢該年月 |
sort | string | 依年月排序,預設 desc 降冪;可選 asc 升冪 |
Response
| Name | Type | Description |
|---|---|---|
type* | string | 證券類型 |
exchange* | string | 交易所 |
market* | string | 市場別 |
symbol* | string | 個股代號 |
data* | object[] | 每月一筆 |
data.date* | string | 資料年月(格式:yyyy-MM) |
data.directors* | object[] | 董事、監察人及經理人持股明細 |
data.directors.order* | number | 揭露順序(自 0 起) |
data.directors.title* | string | 職稱(如 董事長本人、獨立董事本人、總經理本人) |
data.directors.name* | string | 姓名或法人名稱 |
data.directors.electedShares | number | 選任時持股數(股) |
data.directors.heldShares | number | 目前持股數(股) |
data.directors.pledgedShares | number | 設質股數(股) |
data.directors.pledgeRatio | number | 設質比率(比例值,0.2146 即 21.46%) |
data.directors.relatedHeldShares | number | 配偶、未成年子女及利用他人名義合計持有股數(股) |
data.directors.relatedPledgedShares | number | 前述持股之設質股數(股) |
data.directors.relatedPledgeRatio | number | 前述持股之設質比率(比例值) |
資料說明
- 資料來源:整理自公開資訊觀測站之董事、監察人及經理人持股餘額明細資料。
- 資料頻率:每月一筆,
date為資料年月。 - 歷史涵蓋:自 2017-01 起提供。涵蓋上市、上櫃、興櫃個股;ETF 等無董監資料之代號回傳
data: []。 - 年月語意:
from/to以月為單位;帶日的格式僅取年月(2026-07-15視同2026-07)。 - 查詢區間:單次查詢
from與to的間隔須小於 1 年,超過會回傳400;日期不合法或from晚於to亦回傳400。 - 查無資料:代號不存在或該區間無資料時,皆回傳
200與data: [](不回404);此時type/exchange/market為預設值,不代表該代號的真實屬性。
Example
- Python
- Node.js
- C#
from fubon_neo.sdk import FubonSDK, Order
sdk = FubonSDK()
accounts = sdk.login("Your ID", "Your password", "Your cert path", "Your cert password") # 需登入後,才能取得行情權限
sdk.init_realtime() # 建立行情連線
reststock = sdk.marketdata.rest_client.stock
## 2.2.6 及以後版本使用更簡化 (使用 Exception 進行例外處理)
from fubon_neo.sdk import FugleAPIError
try:
response = reststock.ownership.director_holdings(**{"symbol": "2330", "from": "2026-07", "to": "2026-08"})
except FugleAPIError as e:
print(f"Error: {e}")
print("------------")
print(f"Status Code: {e.status_code}") # 例: 429
print(f"Response Text: {e.response_text}") # 例: {"statusCode":429,"message":"Rate limit exceeded"}
print(response)
const { FubonSDK } = require('fubon-neo');
const sdk = new FubonSDK();
const accounts = sdk.login("Your ID", "Your Password", "Your Cert Path", "Your Cert Password");
sdk.initRealtime(); // 建立行情連線
const client = sdk.marketdata.restClient
client.stock.ownership.directorHoldings({ symbol: '2330', from: '2026-07', to: '2026-08' })
.then(data => console.log(data));
using FubonNeo.Sdk;
using FugleMarketData.QueryModels.Stock.Ownership;
var sdk = new FubonSDK();
var result = sdk.Login("Your ID", "Your Password", "Your Cert Path", "Your Cert Password");
sdk.InitRealtime(); // 建立行情連線
var rest = sdk.MarketData.RestClient.Stock;
var directorHoldings = await rest.Ownership.DirectorHoldings("2330", new()
{
From = new DateTime(2026, 7, 1),
To = new DateTime(2026, 8, 1)
});
var directorHoldings_cont = directorHoldings.Content.ReadAsStringAsync().Result;
Console.WriteLine(directorHoldings_cont);
Response Body(為節省篇幅,directors 僅列前 2 筆並以 ... 註記截斷;實際回應為當月全部明細,此處以 2026-07 期別的資料為例(查詢時 2026-08 尚未公布,故僅回傳 2026-07)):
{
"type": "EQUITY",
"exchange": "TWSE",
"market": "TSE",
"symbol": "2330",
"data": [
{
"date": "2026-07",
"directors": [
{
"order": 0,
"title": "董事長本人",
"name": "魏哲家",
"electedShares": 6392834,
"heldShares": 7452349,
"pledgedShares": 1600000,
"pledgeRatio": 0.2146,
"relatedHeldShares": 700261,
"relatedPledgedShares": 0,
"relatedPledgeRatio": 0
},
{
"order": 1,
"title": "董事本人",
"name": "行政院國家發展基金管理會",
"electedShares": 1653709980,
"heldShares": 1653709980,
"pledgedShares": 0,
"pledgeRatio": 0,
"relatedHeldShares": 0,
"relatedPledgedShares": 0,
"relatedPledgeRatio": 0
}
// ... 其餘董監明細略
]
}
]
}