スプレッドとは — 売値と買値の差が表すFX・CFDの取引コストの基礎
「スプレッドが狭いブローカーがよい」「指標発表時はスプレッドが広がるので注意」といった話を、FX や CFD の解説でよく目にします。ただ、スプレッドが具体的にどんな数値で、どのように取引コストとして効いてくるのか、固定と変動の違いはどこにあるのかが曖昧なままだと、戦略の収支検証やブローカー選定の根拠を持ちにくくなります。本記事では、スプレッドの定義から計算例、変動要因、cBot などで扱う際の注意点までをフラットに整理します。
スプレッドは「方向性のシグナル」ではなく、トレードのたびに発生する 取引コスト を示す数値だという点を最初に押さえておくと、後の話が追いやすくなります。
スプレッドとは何か
スプレッド(Spread)は、取引画面に表示される Ask(売値) と Bid(買値) の差を示す数値です。買いポジションを取るときは Ask で約定し、売りポジションを取るときは Bid で約定するため、新規エントリーした瞬間に、その差分だけ含み損が発生する構造になっています。
定義式は次の通りです。
スプレッド = Ask − Bid
たとえば EURUSD で Bid が 1.08000、Ask が 1.08015 と表示されていた場合、スプレッドは 0.00015 = 1.5pips と読み取れます。1 ロット(10 万通貨)で取引すれば、約 1.5 USD 相当のコストが新規約定の段階で計上された状態になります。
スプレッドは 取引のたびに発生するコスト という点が重要です。手数料(コミッション)が別途かかる口座タイプもあるため、実効的なコストを比較する際は「スプレッド + コミッション」をセットで見るのが一般的だと言えます。
固定スプレッドと変動スプレッド
スプレッドの提示形式は、大きく分けて 2 種類あります。
固定スプレッド は、相場環境にかかわらず一定の値で提示される形式です。事前にコストが読みやすい一方で、ブローカー側がリスクを抱える形になるため、相対的に広めの値に設定される傾向があります。
変動スプレッド は、市場の流動性やボラティリティに応じて値が変動する形式です。流動性が高い時間帯では狭くなりやすく、流動性が低い時間帯や指標発表前後では一時的に大きく開くこともあります。多くの ECN/STP 系ブローカーが採用する形式で、cTrader のような板情報を扱う環境とも親和性が高いと考えられます。
戦略のタイプによって、向き不向きは変わります。短期スキャルピング系は 平時の狭さ が重要なため変動型を好む傾向があり、一方で経済指標前後にエントリーする戦略では 広がりリスク をあらかじめ織り込める固定型のほうが扱いやすい、というケースもあります。
スプレッドが広がる主な要因
変動スプレッドの環境では、いくつかの典型的なタイミングでスプレッドが広がりやすくなります。
ひとつは 流動性の低い時間帯 です。日本時間早朝(東京オープン前)や、欧州・NY の取引時間外で板が薄くなる時間帯では、平時と比べてスプレッドが数倍に開くこともあります。
もうひとつは 重要経済指標の発表前後 です。米雇用統計(NFP)、FOMC、各国 CPI、日銀会合など、相場が大きく動く可能性のあるイベントの前後では、ブローカーや流動性提供業者(リクイディティプロバイダー)がリスクを抑えるためにスプレッドを広げる動きが一般的に見られます。
そのほか、週末をまたぐ 金曜後半〜月曜早朝 や、急騰急落で価格が走っている 荒い相場 でも、瞬間的にスプレッドが膨らむことがあります。これらは「異常」ではなく構造的に発生しうる現象なので、運用ルール側であらかじめ織り込んでおくのが基本だと考えられます。
よくある誤解
スプレッドにまつわる誤解で、初心者がはまりやすいパターンを 2 つ取り上げます。
誤解 1: 「スプレッドが狭ければ常に有利」
平時の表示スプレッドが狭くても、約定時のスリッページや指標時の急拡大が大きい場合、実効的なコストは表示値より重くなることがあります。スプレッドはあくまで 新規約定の最小コスト目安 であり、約定品質やコミッションを含めた総コストで比較するのが本質的だと言えます。
誤解 2: 「スプレッドはバックテストでは無視してよい」
バックテストで「ヒストリカルな終値ベース」だけでシミュレーションすると、スプレッドや実効的な約定価格を反映できず、本来は到達できない TP に届いたり、踏まれない SL を踏まなかったり、といったズレが発生しやすくなります。cTrader 系の cBot 環境では Ask/Bid 別系列でのバックテストが基本になりますが、その際もスプレッドの代表値(平時・拡大時の両方)を意識的に確認しておくと、本番との乖離を抑えやすくなります。
リスクリワード比とコストの関係を整理した記事として、別記事「リスクリワードレシオとは — 期待値で考える損切りと利確の比率」もあわせて参考になります。
実装上の注意点
cBot やインジケーターでスプレッドを扱う場合、いくつか注意したいポイントがあります。
ひとつは エントリー時のスプレッド上限フィルタ です。たとえば「平時の 3 倍以上にスプレッドが拡大している場合は新規エントリーを見送る」というロジックを組み込むことで、指標時の異常拡大局面でのエントリーを避けやすくなります。cTrader API では Symbol.Spread(pip 換算)を取得できるため、しきい値判定はシンプルに実装できます。
もうひとつは R:R 計算へのスプレッドの織り込み です。SL・TP を pip 単位で決めると、表示スプレッド分だけ実効的な R:R が変わります。たとえば SL 20pips・TP 30pips で設計しても、スプレッド 2pips を考慮すると、実効的には SL 22pips・TP 28pips に近い形になります。バックテストの数値と実運用の数値が乖離する代表的な要因なので、設計段階から織り込んでおくのが安全です。
最後に、ログにスプレッドを記録 しておくと運用改善に役立ちます。約定時の Ask/Bid とスプレッド、想定スプレッドからの乖離幅を残しておくと、後追いで「想定外の広がりが起きていた局面」「ブローカーごとの提示差」を比較しやすくなります。
まとめ
スプレッドは Ask(売値)と Bid(買値)の差を示す数値であり、FX・CFD 取引において 新規約定の段階で発生する取引コスト として機能します。固定型と変動型のどちらが向くかは、戦略タイプや想定する取引時間帯によって異なると考えられます。
実運用では、平時だけでなく指標時・流動性低下時の 拡大シナリオ をあらかじめ織り込み、エントリーフィルタや R:R 設計、ログ収集の枠組みに組み込んでおくことが基本になります。cBot への具体的な実装手法は、ai-programming.xyz のスクール教材や、本ブログの記事一覧でも順次取り上げていきます。
本記事は一般的な情報提供を目的としています。投資助言ではありません。 取引判断はご自身の責任で行ってください。