不只一個時鐘
匯率的觀測、發布、伺服器取得及瀏覽器顯示,可能發生在不同時間。若以最新請求時間取代觀測時間戳記,會讓未變動的匯率看起來比實際更新。
如需衡量傳輸或快取行為,請將請求或取得資料的時間儲存在獨立的應用程式欄位中,不得覆寫匯率附帶的時間戳記。
一起讀取 Narwhal 欄位
目前匯率紀錄包含 timestamp 和 stale。回應層級的 market_session 為 open、weekend 或 interbank_closed。這些欄位分別說明觀測值適用的時間、服務是否將其標示為過時,以及目前的交易時段背景。
換算回應除了包含換算金額,也會附上所選匯率的時間戳記與過時狀態。市場處於開市時段,並不代表每筆貨幣紀錄都具有足夠時效。
計算距觀測時間的長度時保留時區資訊
以同日 09:00 UTC 的觀測值為例,在 09:07 UTC 查看時,距觀測時間已過七分鐘。若應用程式規定資料最多只能是五分鐘前的,即使請求剛成功回傳,也會拒絕將該觀測值用於有時效要求的操作。
Observation: 2026-09-24T09:00:00Z
Application time: 2026-09-24T09:07:00Z
Age: 420 seconds
Application limit: 300 seconds
Within age limit: false明確寫出接受規則
請使用能辨識時區的日期解析器,以及可靠的應用程式時鐘。無效或非預期落在未來的時間戳記,應視為驗證問題,而非時效特別好的匯率。
- 讀取並保留 API 的 stale 旗標。
- 將距觀測時間的長度與應用程式文件所載的上限比較。
- 套用該操作所需的任何市場時段限制。
- 選擇備援處理方式:顯示帶有日期與清楚標示的觀測值,或停用操作,直到取得符合要求的資料。
遵守發布時程
每日參考序列與目前的指示性資料來源有不同的發布時程。ECB 通常於工作日中歐時間 16:00 左右更新歐元參考匯率,TARGET 休業日除外。這個時程說明,僅憑隔夜或假日期間的資料缺口,無法認定資料處理流程發生故障。
Narwhal 會公開其交易時段與時效資訊。週末時,先前已接受的觀測值仍可供使用,並保留原始時間戳記。介面應保留該日期,不能重新標示為新的週末觀測值。
將脈絡與數值一起快取
將匯率、方向、時間戳記和過時狀態一併快取為同一筆紀錄。更新失敗時,舊快取距觀測時間的長度仍會持續增加。不要為了通過應用程式檢查而重設時間戳記,或逕自更改 stale 旗標。
歷史匯率觀測值使用觀測日期,不包含目前匯率的過期狀態或市場時段欄位。歷史日期應作為該序列的一部分來理解,而非依今天目前匯率的短期時效限制來判斷。相關語意請參閱歷史匯率 API 參考文件。
來源與參考
發布日期: 。最近審閱日期: 。

