なぜEAが入らない?犯人は“スプレッドの単位ズレ”

EAが正常でも、テスターの「スプレッド」欄をpipsだと思い込むと実質コストが想定より何倍にも膨らみ、スプレッドガードに常時ひっかかります。

MT4の入力はpipsではなくpoints(最小刻み)

さらにpoints→pipsの換算は**Digits(小数桁)**で変わります。

まずはこの“単位の整合”を取ることが、安定したバックテストと実運用の出発点です。


「points」ってなに?pipsと何が違うのかを一度で理解

points=その銘柄の最小価格刻みpips=取引慣習上の幅の単位。MT4のテスターはSpreadをpointsで入力します。

pipsへ直す式は簡単で、pips = points ÷ PointsPerPip

この「PointsPerPip」はDigitsで決まり、5桁/3桁は10、4桁/2桁は1が一般則。

式を一つ覚えるだけで、どの銘柄でも瞬時に換算できます。

5桁/3桁ルール:1 pip = 10 points(ユーロ/円など)

価格が1.23456(5桁)や123.456(3桁)の銘柄は1 pip=10 points

テスターにSpread=15と入れたら1.5 pipsです。

小数第5位(または第3位)が最小刻み=1 pointで、1 pip幅(第4位や第2位)を作るのに10ポイント必要、という構造になっています。

4桁/2桁ルール:1 pip = 1 point(旧4桁/金の2桁など)

価格が1.2345(4桁)や2350.12(2桁)の銘柄は1 pip=1 point

Spread=20なら20 pips。最小刻みそのものがpips幅なので、pointsとpipsが一致します。

ここを5桁/3桁と混同すると、コストの読み違いが一気に拡大します。


ゴールド(XAUUSD)は“2桁”と“3桁”で世界が変わる

XAUUSDはブローカーにより2桁(0.01刻み)と3桁(0.001刻み)の両方が存在します。

2桁なら1pt=1pipで、Spread=20は20pips。3桁なら10pt=1pipなので、同じSpread=20でも2.0pipsです。

ネット記事の「金は10ポイント=1pip」は3桁前提で、2桁では当てはまりません。

まずDigitsを確認するのが最優先です。


まずは30秒チェック:Digits/Pointの見方(失敗の9割はここで防げる)

バックテスト前にテスター右側の「通貨ペアのプロパティ」で**Digits(小数桁)Point(最小刻み)**を確認しましょう。

価格の見た目でも判定可。

2350.12なら2桁、2350.123なら3桁。ここを見ずにSpreadに数値を入れると、points→pips換算を誤って“実質超高コスト”で検証してしまう落とし穴にハマります。


テスターのSpreadはpoints入力――こう読めば二度と迷わない

Spread欄はpoints。pipsに直すにはpips = points ÷ PointsPerPipを適用します。

例を4つ覚えると実務が早くなります。

  • EURUSD(5桁):Spread=15 → 1.5 pips(15÷10)

  • USDJPY(3桁):Spread=12 → 1.2 pips(12÷10)

  • XAUUSD(2桁):Spread=20 → 20 pips(20÷1)

  • XAUUSD(3桁):Spread=20 → 2.0 pips(20÷10)


  • この読み替えをガード閾値(MaxSpreadPips)と合わせれば、EAの“入らない”が激減します。


一般定義で安心運用:EAはAuto設定+起動ログで答え合わせ

「標準(一般的)な定義で運用したい」なら、EAパラメータはPipModel=0(Auto)PipOverridePoints=0でOK。

初回だけPipDiag=1にして起動ログを確認し、PtPerPipSpread=20(=2.00p)のようにpoints→pips換算が意図通りかを一度だけ確かめましょう。

例外的なCFDだけManualで固定すれば十分です。


それでもエントリーしない?詰まりを外すチェックリスト

まずスプレッドガード:実測pips(points÷PointsPerPip)がMaxSpreadPipsを超えていないか。

次に時間帯:UTC換算(TZMode/UTC_OffsetHours)のズレ有無。ワンポジ(OnePosition)やクールダウン(ReentryCooldownMin)、ATR最小(ATR_MinPips)も確認。順に潰すと、ほぼ必ず原因に到達します。


暗算で即わかる「points→pips」早見表(印刷推奨)

実務でよく使う組み合わせだけを厳選。Spread=20の読み替えも併記しています。貼っておくと入力ミスが激減します。

区分 表示桁 PointsPerPip Spread=20 のpips
通貨(5桁) 5 10 2.0 pips
通貨(3桁) 3 10 2.0 pips
旧4桁通貨 4 1 20 pips
XAUUSD(2桁) 2 1 20 pips
XAUUSD(3桁) 3 10 2.0 pips

よくある誤解をここで解消:ミニQ&A

初心者がつまずきやすい論点を一問一答で整理。短時間で“危険な思い込み”を潰せます。
Q. テスターのSpreadはpips入力?いいえ、pointsです。
Q. 金は10pt=1pip?3桁表示ならYes、2桁表示なら1pt=1pipです。
Q. 一般定義で使うには?Autoにして起動ログでPtPerPipを確認。
Q. EAが入らない最頻原因は?スプレッドの単位ズレ。次いでUTC設定のズレ。


まとめ:points入力を正しくpips換算すれば、EAは素直に動く

テスターはpoints入力、pips換算はDigits依存

  • 5桁 / 3桁1 pip = 10 points(= Spread[pips] は points÷10
    例:EURUSD 1.23456、USDJPY 123.456、XAUUSD 3桁表示

  • 4桁 / 2桁1 pip = 1 point(= Spread[pips] は points÷1
    例:旧4桁通貨、XAUUSD 2桁表示

この一点を守るだけで、スプレッドの思い違いによる「EAが入らない」を根こそぎ減らせます。

一般定義で運用したいならAuto+起動ログ確認が最短経路。最初の1分でDigitsと換算を確かめる習慣が、バックテストの信頼性とEAの安定性を大きく引き上げます。

おすすめの記事