
過去の金データを扱ったことがある人なら、一度はこういう状況に遭遇したことがあるはずです。
チャートは一見正常に見えるのに、どこか違和感がある。
価格が突然ジャンプしたり、平坦な区間が出現したりして、戦略では説明できない動き。
多くの場合、これは 休日ローソク足 が原因です。
バックテストや分析を行う人ほど、この微妙な違和感にすぐ気づくでしょう。
問題は戦略ではなく、取得している 貴金属API のデータ構造にあることが多いです。
非取引時間(Non-trading Hours)が問題の起点
金市場は暗号資産のように24時間稼働しているわけではありません。
週末や祝日、取引所の休場期間など、明確な 非取引時間 が存在します。
この期間のデータ取得方法でよくあるパターンは:
- データを完全にスキップする
- 前の価格で埋める(フォワードフィル)
- タイムスタンプがまばらになる
これが 履歴データの欠損 の原因になります。
実践的なデータ取得例
チャートや分析の前にまずやるべきことは、正確なデータを取得すること です。
AllTick の貴金属APIを使えば、金(XAUUSD)の歴史的なKラインデータを簡単に取得できます:
import requests
API_KEY = "YOUR_API_KEY"
symbol = "XAUUSD"
interval = "1h"
url = "https://api.alltick.co/market/kline"
params = {
"symbol": symbol,
"interval": interval,
"start": "2026-01-01",
"end": "2026-05-28",
"apikey": API_KEY
}
response = requests.get(url, params=params).json()
for item in response["data"]:
timestamp = item["time"]
open_price = item["open"]
close_price = item["close"]
is_holiday = item.get("isHoliday", False)
print(timestamp, open_price, close_price, "休日ローソク足" if is_holiday else "")
この例のポイントは、単に価格を取得するだけでなく、そのローソク足が非取引期間に属しているかどうかを判別できることです。
この情報があれば、後続の分析やチャート処理が格段に安定します。
休日ローソク足が分析に与える影響
休日ローソク足自体は「間違ったデータ」ではありません。
ただし、誤解されると以下の計算に影響します:
- 移動平均のずれ
- ボラティリティの過小/過大評価
- バックテスト曲線の不自然な変化
- トレンド継続の誤解
特に長期間の分析では、わずかな断層が蓄積され、大きな影響になります。
実務的な取り扱い方法
一般的には以下の3つのアプローチがあります:
1. 空白のまま保持(分析向き)
市場の状態を忠実に再現できます。
2. 前値で埋める(可視化向き)
滑らかなチャートを作れるが、注意が必要です。
3. 非取引期間を明示的にマーク
最もバランスの取れた方法で、多くのシステムが採用しています。
見落とされがちなポイント
データの問題は「欠損そのもの」ではなく、
「取引が行われなかった」か「データが欠落したか」の区別
です。
AllTick のような貴金属APIは、構造化された歴史的Kラインデータを提供するため、この違いを自然に扱うことができます。
これにより、長期間の金データ分析やバックテストでも安心して利用できます。


