比較此處使用的九個國家代碼,需要發出九次政策利率請求,每次計為一個計量單位。跨國比較政策利率時,請為每個數值保留對應的工具、幣別與來源日期。
使用 API
所有方案皆提供即時政策利率,包括 Free。每次請求會回傳一個國家在 UTC 今日或之前最新的來源觀測資料。比較使用 USA、CAN、AUS、SWE、NOR、BRA、CZE、MYS 與 DEU。DEU 代表歐洲中央銀行(ECB)的存款便利利率。
- 設定你的 API 金鑰 在 shell 中使用
export NARWHAL_API_KEY="your_api_key"設定NARWHAL_API_KEY環境變數。使用python -m pip install requests pandas安裝 Python 相依套件。程式會從環境讀取金鑰,並在 Authorization 標頭中傳送。 - 請求各國最新利率 使用單一
requests.Session,並以迴圈逐一處理大寫國家代碼。對每個代碼呼叫一次/v1/economics/{country}/central-bank/policy-rate。請將回應欄位保存在一起,讓每筆利率保有其幣別、利率工具與日期。 - 計算單一比較值 單一利率回應請讀取
rate。區間回應則以十進位運算計算(lower_bound + upper_bound) / 2。此中點是你自行計算的數值:Narwhal API 只回傳已發布的上下限,絕不計算中點。數值為以年利率百分比表示的十進位字串。 - 建立表格並排序 建立包含
country、currency、instrument、rate及date的 pandas DataFrame。日期取自effective_on或observed_on;每個回應恰好只包含其中一個欄位。依計算後的利率排序。保留 Decimal 數值可維持所提供字串的精確度。 - 執行完整程式 將此程式另存為
compare_rates.py,並在公開存取開放後執行python compare_rates.py。程式會由低到高印出利率。HTTP 錯誤會透過raise_for_status()停止程式,因此無法取得資料的國家不會在沒有提示的情況下從比較中消失。import os from decimal import Decimal import pandas as pd import requests api_key = os.environ["NARWHAL_API_KEY"] base_url = "https://api.narwhalapi.com" countries = ["USA", "CAN", "AUS", "SWE", "NOR", "BRA", "CZE", "MYS", "DEU"] rows = [] with requests.Session() as session: session.headers.update({"Authorization": f"Bearer {api_key}"}) for country in countries: response = session.get( f"{base_url}/v1/economics/{country}/central-bank/policy-rate", timeout=10, ) response.raise_for_status() observation = response.json() if observation["rate_type"] == "point": rate = Decimal(observation["rate"]) elif observation["rate_type"] == "range": rate = ( Decimal(observation["lower_bound"]) + Decimal(observation["upper_bound"]) ) / Decimal("2") else: raise ValueError(f"Unexpected rate_type for {country}") date = ( observation["effective_on"] if "effective_on" in observation else observation["observed_on"] ) rows.append({ "country": observation["country"], "currency": observation["currency"], "instrument": observation["instrument"], "rate": rate, "date": date, }) comparison = pd.DataFrame( rows, columns=["country", "currency", "instrument", "rate", "date"], ).sort_values("rate") print(comparison.to_string(index=False))
各國利率衡量的是什麼?
這些利率只能粗略比較。隔夜利率目標、附買回利率與存款利率代表不同的利率工具。各利率所屬幣別也各有其通膨率。單憑數值排名,無法判定哪個國家的貨幣政策較緊縮。
| 國家代碼 | 貨幣 | 政策利率工具 |
|---|---|---|
| USA | USD | 聯邦資金目標區間;早期歷史資料採單一目標 |
| CAN | CAD | 隔夜利率目標 |
| AUS | AUD | 現金利率目標;早期歷史資料包含目標區間 |
| SWE | SEK | 政策利率,在 8 June 2022 之前稱為附買回利率 |
| NOR | NOK | 活期存款利率 |
| BRA | BRL | Selic 目標利率 |
| CZE | CZK | 兩週附買回利率 |
| MYS | MYR | 隔夜政策利率 |
| DEU | EUR | ECB 存款機制利率 |
已儲存的美國範例中,聯邦資金目標區間為百分之 3.50 至 3.75,自 11 December 2025 生效。計算出的中點為百分之 (3.50 + 3.75) / 2 = 3.625。此數字是從範例推算的比較值,並非已發布的單一目標,也不是對今日利率的陳述。
若要保留比較結果,請一併保留原始上下限。只使用單一中點,會讓印出的表格失去目標區間的寬度資訊。巴西請使用 BRA 回傳的 Selic 目標。
這些觀測資料的來源聲明如下:
- Source: Board of Governors of the Federal Reserve System
- 來源:加拿大央行。此資訊可於加拿大央行網站免費取得:https://www.bankofcanada.ca。Narwhal 已統一資料格式。
- Source: Reserve Bank of Australia 2026. This information is available free of charge on the RBA website: https://www.rba.gov.au. No endorsement is implied.
- Source: Sveriges Riksbank, with the date of the data.
- Source: Norges Bank
- Source: Banco Central do Brasil (SGS 432), Open Data Commons Open Database License (ODbL).
- Source: the CNB
- Source: Bank Negara Malaysia. Data and information are subject to Terms of Use for BNM Datasets. https://www.bnm.gov.my/terms-of-use-bnm-datasets
- 來源:歐洲央行(ECB)。此資訊可於 ECB 網站免費取得:https://www.ecb.europa.eu。Narwhal 僅修改格式。
如何比較實質利率
簡單的近似實質利率,是以名目政策利率減去通膨率:real rate ≈ policy rate − inflation。相減的兩個數值都應使用百分比。對於目標區間,請明確標示名目利率輸入值為自行計算的中點。
對於有通膨路由的國家,請求 /v1/economics/{country}/inflation 並讀取 year_over_year。這包括 USA、CAN、AUS 及 DEU。404 表示沒有資料;請讓該國的實質利率結果維持缺漏,不要以零通膨代替。
請將通膨期間與政策利率日期並列保留,因為兩者的觀測資料可能對應不同時間。實質利率計算說明了相減方式。即使經過通膨調整,各項政策利率工具之間仍有差異。
為什麼歐元區只有一列?
任何受支援的歐元區成員國代碼,都會回傳相同的 ECB 存款機制利率。只使用一次 DEU,可避免在比較中重複同一項利率工具。歷史資料請求的涵蓋範圍,從各成員國採用歐元的日期開始,因此不同成員國代碼可取得的歷史資料可能不同。
為什麼各國日期不同?
effective_on 是利率生效日期。observed_on 是來源記錄該數值的日期。各來源發布觀測資料的模式也不同,因此最新回應的日期不一定相同。未來才生效的利率不會提前取代目前利率。
進行歷史比較時,請在每次請求中加入相同的 date=YYYY-MM-DD。每次請求都會回傳該日期或之前最新的來源觀測資料。不會為沒有來源觀測資料的日期虛構資料,因此請保留各自回傳的日期。
發布於 。
後續步驟
建立免費金鑰,從自己的程式碼呼叫 API。 取得免費 API 金鑰
