OpenBB 的 equity.calendar.earnings API 可以查歷史與未來財報日曆,並包含 EPS 與 revenue 數據,適合 Python 量化系統直接整合。[1] AInvest 的 earnings calendar 會返回 eps actual、eps forecast、eps surprise 等欄位,可直接用來判斷財報高於或低於預期。[2] Bigdata 的 Earnings Surprises API 提供 reporting date、eps actual、eps estimated 等數據,適合做財報發布後的 surprise 檢查。[4]

Create a landscape editorial hero image for this Studio Global article: 如图所示,美股的财报每天都会有日历跟踪,假设我有个信号触发列表,我希望列表中新增一列,来获取当前的财报发布时间,已发布的给出 高于预期还是低于预期的判断,还没发布的给出时间 比如5 12 盘前或5 12 盘后, 主要是需要这个数据接口 来集成到我的信号触发程序中, 哪些开源接口可. Article summary: 可以优先看 OpenBB 的 equity.calendar.earnings,它是 Python 侧较容易集成到量化/信号程序里的接口,文档给出了 from openbb import obb 和 obb.equity.calendar.earnings() 示例,并明确支持获取历史和未来财报发布,且包含 EPS 与营收数据。[1] 如果你的核心需求是“已发布后判断高于/低于预期”,AInvest 和 Bigdata 的接口证据更直接. Topic tags: deepresearch, general web, llm, agents, ai. Reference image context from search candidates: Reference image 1: visual subject "`# Upload the required packages library(xlsx);library(zoo);library(quantmod);library(rowr);library(TTR); # Set the parameters here pc_up_level = 6 # Set the high percentage thresh" source context "Quantinsti-博客中文翻译-六- - 绝不原创的飞龙" Reference image 2: visual subject "`# Upload the required packages library(xlsx
如果你想喺自己嘅 交易訊號列表(signal trigger list) 裡面加一欄財報資訊,例如:
5‑12 盤前 / 盤後高於預期 / 低於預期其實只要接入一個 earnings calendar + earnings surprise API 就可以做到。以下幾個接口對量化或自動化系統比較實用。
如果你的策略程式是 Python,OpenBB 通常是最順手的入口。
OpenBB 提供:
obb.equity.calendar.earnings() 查詢財報日曆官方示例:
from openbb import obb
obb.equity.calendar.earnings()
obb.equity.calendar.earnings(
start_date="2024-02-01",
end_date="2024-02-07"
)這個 endpoint 可以取得:
另外 OpenBB 其實可以指定不同 provider(例如 fmp、nasdaq 等),所以底層數據源可以切換。
如果你的核心需求是:
判斷財報是否高於預期
AInvest 的 earnings calendar API 返回的欄位非常直接:
eps_actualeps_forecasteps_surpriserevenue_actualrevenue_forecast示例字段:
{
"ticker": "AAPL",
"eps_actual": 1.46,
"eps_forecast": 1.40,
"eps_surprise": 0.06
}你可以直接寫判斷邏輯:
actual > forecast → Beat
actual < forecast → Miss
actual = forecast → Inline所以如果你的系統只需要 beat / miss 判斷,這個接口很方便。
Bigdata API 提供一個 earnings surprises endpoint,會返回:
reporting_dateeps_actualeps_estimatedrevenue_actualrevenue_estimated示例資料:
{
"reporting_date": "2025-07-23",
"eps_actual": 2.31,
"eps_estimated": 2.15
}這種接口比較適合:
如果你想多幾個資料源做 backup,可以留意以下幾個:
API Ninjas
StockFit
提供比較完整的 earnings pipeline:
如果要整合到 signal list,其實可以做一個標準 schema,例如:
ticker
signal_time
earnings_status
earnings_date
earnings_session
eps_actual
eps_estimate
surprise_result邏輯例如:
def classify_earnings(row):
if row["eps_actual"] is None:
return f"{row['earnings_date']} 待發布"
if row["eps_actual"] > row["eps_estimate"]:
return "高於預期"
elif row["eps_actual"] < row["eps_estimate"]:
return "低於預期"
else:
return "符合預期"如果你要做交易信號系統,通常會用兩層資料:
第一層:Earnings Calendar
第二層:Earnings Result / Surprise
流程大概是:
1️⃣ 先取得財報日期
2️⃣ 判斷是否已發布
3️⃣ 如果已發布 → 計算 beat / miss
4️⃣ 寫入 signal table
你提到的需求:
5‑12 盤前5‑12 盤後目前資料顯示很多 earnings API 會提供發布時間或 session,例如 before market open / after market close,但是否所有接口都穩定返回,需要實際測試。
因此建議:
report_time
session
release_time
bmo / amc再決定是否正式接入。
✅ 簡單結論
如果要快速做一個穩定方案:
如果你想,我也可以幫你整理一個 完整 Python pipeline(signal list + earnings API + beat/miss column),直接可以放入量化策略裡跑。
Studio Global AI
Use this topic as a starting point for a fresh source-backed answer, then compare citations before you share it.
OpenBB 的 equity.calendar.earnings API 可以查歷史與未來財報日曆,並包含 EPS 與 revenue 數據,適合 Python 量化系統直接整合。[1]
OpenBB 的 equity.calendar.earnings API 可以查歷史與未來財報日曆,並包含 EPS 與 revenue 數據,適合 Python 量化系統直接整合。[1] AInvest 的 earnings calendar 會返回 eps actual、eps forecast、eps surprise 等欄位,可直接用來判斷財報高於或低於預期。[2]
Bigdata 的 Earnings Surprises API 提供 reporting date、eps actual、eps estimated 等數據,適合做財報發布後的 surprise 檢查。[4]