Skip to content

Account Reports and Analysis

Mofesto edited this page Aug 7, 2026 · 1 revision

帳戶、回報與分析

本頁涵蓋 8 個帳戶工具、5 個 process-local 主動回報工具、7 個唯讀量化工具與 12 個 MCP prompts。

帳戶工具

Tool 參數 回傳用途
get_account_info account? 未指定時列出全部帳戶;指定時回傳單一帳戶
get_inventory account 正式庫存明細
get_bank_balance account 銀行水位/資金餘額
get_maintenance account 融資融券維持率
get_settlement_info account, range=0d 當日或三日交割資訊
get_realized_pnl account 已實現損益明細
get_realized_pnl_summary account 已實現損益摘要
get_unrealized_pnl account 目前未實現損益

account 必須能與登入結果中的帳戶匹配。不要把帳戶顯示名稱、branch number 或遮罩後字串當成 account ID。

主動回報 buffer

Server 在登入後註冊四個 SDK callbacks:order、order changed、filled、event。每種資料只保留目前 process 中最新 10 筆,並加上 server 收到事件的 ISO timestamp。

Tool 內容
get_all_reports 四類 buffer 的 snapshot
get_order_reports 委託回報
get_order_changed_reports 改價、改量、刪單回報
get_filled_reports 成交回報
get_event_reports 連線與系統事件

這些 buffer 不持久化,server 重啟或 logout 後會清空,也不是完整稽核紀錄。需要完整交易生命週期時應搭配券商歷史查詢與自己的受控資料庫。

唯讀量化工具

calculate_portfolio_var

欄位 範圍/預設
account 必填
confidence_level 0.8–0.999,預設 0.95
time_horizon 1–30,預設 1
method historicalparametricmonte_carlo
lookback_days 60–252,預設 252
simulations 1,000–1,000,000,預設 10,000

使用目前持倉權重與共同交易日報酬。Monte Carlo 使用固定 random seed 以維持可重現性。

run_portfolio_stress_test

scenarios 可有 1–20 筆,每筆包含:

{
  "name": "Caller supplied scenario",
  "equity_change": -0.1,
  "symbol_changes": {
    "2330": -0.15
  }
}

變動值為比例且須介於 -1 與 1。工具只套用呼叫者明確提供的衝擊,不自行推測利率、Beta、產業敏感度或流動性折價。

optimize_portfolio_allocation

  • symbols 可省略以使用持倉,或明確提供 2–30 個商品。
  • optimization_methodmax_sharpemin_volatilitytarget_return
  • lookback_days:60–252。
  • max_weight:大於 0 且不超過 1。
  • target_return 方法必須提供 target_return
  • 求解為 long-only、fully invested,使用 SciPy SLSQP。

此輸出不包含交易成本、滑價、稅負、Black-Litterman 或主觀預測,也不會自動送出再平衡委託。

其他分析

Tool 重要邊界
calculate_performance_attribution 使用成交現金流、目前未實現損益與 benchmark 價格報酬;period 為 1M/3M/6M/1Y/YTD
detect_arbitrage_opportunities statisticalfutures_calendar;Z-score 是統計偏離,不保證可成交套利
generate_market_sentiment_index 只使用 technicalvolume,不含新聞、社群或選擇權情緒
analyze_stock 以正式日 K 分析單一商品,不執行交易

資料不足契約

量化矩陣至少需要 60 筆有效共同報酬,亦即通常需至少 61 筆共同價格。空倉、缺少行情、行情過期、商品共同交易日不足或最佳化無可行解時,回應形狀為:

{
  "status": "error",
  "data": null,
  "message": "insufficient_data: <具體原因>"
}

呼叫端應顯示原因、資料日期與觀測數;不得補入預設波動率、固定報酬或模擬情緒。

富邦目前可用介面未提供本專案所需的新聞/社群情緒、選擇權未平倉量、隱含波動率、Greeks、期間起始淨值及完整入出金歷史。因此本專案不宣稱能計算完整帳戶總報酬、Brinson 歸因或隱含波動率策略。

MCP prompts

Prompt 主要參數 目的
trading_analysis symbol 技術分析工作流
risk_assessment account 帳戶風險盤點
market_opportunity_scanner 市場掃描框架
portfolio_rebalancing account 再平衡分析框架
trading_strategy_builder symbol, strategy_type? 交易策略框架
performance_analytics account, period? 正式成交與損益貢獻
advanced_risk_management account VaR/CVaR 與明確情境
portfolio_optimization account, objective? 正式歷史報酬配置
market_sentiment_analysis symbols? 技術/成交量市場狀態
algorithmic_strategy_builder symbol, strategy_type? 可重現的唯讀策略研究
futures_spread_analyzer near_symbol, far_symbol, lookback_days? 跨月價差
volatility_trading_advisor symbol 實現波動率、ATR、布林通道

Prompt 是文字模板,不是 safety boundary。Host 必須另外限制可呼叫 tools,尤其不得因 prompt 名稱含「trading」就自動授權 WRITE tools。

Clone this wiki locally