タグ: 統計検証

  • EAの利益は実力か偶然か — t値でエッジを検定する監査実録

    EAの利益は実力か偶然か — t値でエッジを検定する監査実録

    「PF1.9で勝率68%です。これ、実力ですよね?」——監査の相談で、僕が最初に開く数字はPFでも勝率でもありません。取引回数と、利益のばらつきです。

    なぜなら、バックテストの利益には「たまたまプラスだった」という可能性が必ず含まれるからです。平均利益が小さく、1回ごとの振れ幅が大きければ、PF1.9でも「利益ゼロのEAと、統計的には区別できない」ことがある。

    この記事では、その区別を数字で行うt値の計算手順と読み方を、監査実録の事例と一緒に解きます。電卓があれば今日のうちに計算できます。

    この記事でわかること

    • t値の意味と、電卓だけで出る計算手順
    • PF1.9が「統計的にはゼロ」になった監査事例
    • bid基準の歪みでt値2.14が1.84に変わった理由
    • 「あと何トレードで判断がつくか」を逆算する式

    PF1.9でも「ゼロと区別できない」ことがある

    結論から言います。EAの利益が本物かどうかは、平均利益を「平均自身のゆらぎ」で割った数字(t値)で判別がつきます。PFが見せるのは見かけの総括で、この判別力を持っていません。

    監査で持ち込まれたEA(事例A・匿名化)は、こんな成績でした。取引58回、平均利益+6.2pips、1回ごとのばらつき(標準偏差)31pips。

    0.1ロット(1万通貨)で換算すると、標準偏差31pipsは「1トレードあたり約3,000円の振れ幅」です。平均利益の6.2pipsは約620円。つまりこのEAは、1回に約3,000円の波を起こしながら、1回あたり620円ずつ貯めている。

    トレードごとの損益のばらつきと平均の関係のイメージ図

    ここで効いてくるのが取引回数です。標準偏差を√n(回数の平方根)で割ると、「平均という数字そのもののゆらぎ(標準誤差)」が出ます。

    • 事例A: 31 ÷ √58 = 約4.1pips(平均のゆらぎ)
    • 平均6.2pips ÷ ゆらぎ4.1pips = t値 1.52

    t値1.52。「利益ゼロのEAと区別できる」という水準に届いていません。平均利益はしっかりプラスなのに、です。

    監査事例 取引回数 平均 標準偏差 t値 判定
    A(PF1.9) 58回 +6.2pips 31pips 1.52 ゼロと区別できない
    B(PF1.3) 214回 +4.1pips 28pips 2.14 区別できる水準

    平均利益はA(6.2pips)のほうが高いのに、判定はBが上です。回数が違うだけ。PFは分子の見かけを見せてくれますが、分母にあたる「証拠の重み」までは見せてくれません。だから監査では、PFの前にt値を計算します。

    あなたのEAの成績表、取引回数から確認したことはありますか?

    t値は電卓で出る — Statementから出す5分の手順

    結論、t値に必要な数字は3つだけです。取引回数n、平均利益、標準偏差SD。MT4のStatement(取引履歴)から全部拾えます。

    1. MT4の「履歴」タブのStatementから、トレードごとの損益をpipsで1列に並べる(コピーして表計算に貼り付け)
    2. 平均を出す(Excelなら =AVERAGE(範囲))
    3. 標準偏差を出す(Excelなら =STDEV.S(範囲))
    4. 電卓で 平均 ÷ (標準偏差 ÷ √回数) を計算する
    5. 出た数字を下の表と比べる
    6. 1点だけ注意です。Statementの損益額をpipsに直すときは、通貨ごとのpip価値で割ってください。たとえばUSDJPYを1万通貨(0.1ロット)で持てば、1pipsは約100円です。ロットが混ざるEAは、ここでpips列そのものが崩れます(可変ロットの例外で再登場します)。

    数式を1行で書くと、t値 = 平均利益 ÷ (標準偏差 ÷ √取引回数) です。割り算が2回できるだけ。統計の専門書は不要です。

    t値(目安) 読み方
    1.0未満 ノイズの範囲。エッジの証拠としては扱わない
    1.0〜1.96 傾向はあるが、偶然の可能性を除外できない
    1.96以上 ざっくり「ゼロと区別できる」水準(95%相当の目安)
    3.0以上 強い。ただし前提の確認がより重要になる

    ※1.96は正規分布を仮定した概数です。FXのように1撃で大勝ちが混ざる分布では、外れ値を外して再計算すると実態に近づきます(この記事の最後で扱います)。

    だから何、というと、この5分で「疑う順番」を作れることです。監査の実務でも、成績表を開いたら最初にこの計算をします。数字の並びが立ってから、個別のトレードを見に行く。

    t値2.14が1.84に下がった場所 — bidの基準

    ここからが監査実録の本題です。結論、t値は「会計が正しい」前提でしか意味を持ちません。約定価格の基準が違うだけで、判定が変わります。

    EAのテストの多くは、1本の価格系列(Bid)から作られます。ところが現実の約定は、買いはAskで入り、決済はBidで出る。テストがBid系列だけで往復を計算していると、往復のスプレッド分を利益に載せていないことがあります。

    askとbidの価格の差と、bid系列のみでテストする場合のイメージ図

    事例Bの再検証では、bid/askの会計に直しただけで成績が動きました。平均利益+4.1pips→+3.4pips、標準偏差28→27pips。

    • 修正前: 4.1 ÷ (28 ÷ √214) = t値 2.14(区別できる)
    • 修正後: 3.4 ÷ (27 ÷ √214) = t値 1.84(水準を割る)

    0.7pipsの差です。平均6pips前後のEAなら利幅の1割以上にあたります。1つの設定差で「区別できる」が「区別できない」に落ちました。

    しかもこれで終わりではありません。スプレッドは時間帯で広がるものなので、固定スプレッド前提のテストなら、コストの実態はさらに重くなります。その辺りの実測はバックテストと実運用のスプレッド差の検証記事にまとめています。

    だから何、というと、t値の分子(平均)と分母(ゆらぎ)が「正直会計」で揃って初めて、比較が公平になる、です。数字が出ることと、数字が正しいことは別の話です。

    あと何トレードで判断がつくか — 逆算の式

    「区別できる水準」に届くのに必要な取引回数は、最初から計算できます。式はこうです。

    必要回数 n =(目安のt値 × 標準偏差 ÷ 平均利益)の2乗

    平均3.0pips・標準偏差28pipsのEAで、t値2を目指すとします。n =(2 × 28 ÷ 3)の2乗 = 約349。約350トレード必要です。

    このEAが月10トレードなら、必要な証拠が揃うまで3年弱かかる。待つ以外の選択肢は2つあります。

    1. テスト期間を最初から長く取る(10年分の分足データなどで回数を稼ぐ)
    2. live(またはデモ)の検証データを先に貯め始める

    2つ目は、EAを止めずに回し続けて実行の記録を取る方法です。liveデータはbid基準の歪みもスワップも最初から織り込み済みの会計になります。

    【広告】PR

    live検証でEAを24時間止めずに回すなら、VPS(仮想サーバー)の利用が選択肢になります。費用感は月数百円から(最新の料金は公式ページで確認してください)。

    XServer VPS for FXの公式ページを見る

    デモ口座でも、この「liveの会計」の役割は果たせます。bid/askの実行は記録されますし、スプレッドの時間変動も最初から織り込み済みです。まずはデモで検証用の記録を貯めるのが、ハードルの低い始め方です(口座開設は書類の提出だけで当日〜数日で終わります。キャンペーンや条件は各社の公式ページで確認してください)。

    今日からできる最初の一歩: いま動かしているEAのStatementから、取引回数・平均・標準偏差の3つの数字を拾って、電卓で平均 ÷ (標準偏差 ÷ √回数) を計算してください。5分で、「あなたのEAの証拠は今どの水準か」が見えます。

    t値だけを信じないための4つの例外

    t値は強い道具ですが、合否を決める道具ではありません。監査で必ず確認する例外を4つ、先に挙げておきます。

    1. 分布の歪み: 1撃の大勝ちが混ざると、pipsベースの前提が崩れます。外れ値を外して再計算すると実態に近づきます。極端な例はデータ破損で勝率96%が52%になった監査実録です。
    2. 可変ロット: ロットを積むEAでは、pipsの平均と損益の平均が別物になります。ロットで重み付けした損益で計算し直す必要があります。
    3. レジーム前提: その期間の相場環境がたまたま味方だった可能性は、t値では排除できません。複数期間・ウォークフォワードで崩れるなら、過剰最適化の4つのサインを疑います。
    4. コスト反映漏れ: スワップや手数料が入っていないStatementがあります。長期保有型のEAほど差が大きくなります(扱い方は正直会計の記事)。

    t値の役割は「疑う順番を作ること」です。順番が立ったら、その順に潰していく。監査とは、この繰り返しです。

    まとめ: 冒頭の問いに答えます

    「PF1.9は実力ですか?」——答えは、取引回数とばらつき次第、です。t値1.52なら、今の証拠では偶然の範囲を外れていません。証拠(回数)を増やすか、会計(bid基準・コスト)を直すかの2択になります。

    判断に迷ったEAを止めるか続けるかは、別の基準で決めます。その方法はドローダウン判別3ステップにまとめました。この記事のt値は「エッジがあるか」を測る道具、あちらは「今耐えるべきか」を測る道具、という分担です。

    あなたのEAのt値は、今日の電卓で出せます。その数字は、2を超えていますか? それとも、これから証拠を増やす側ですか?

    本記事は検証手法の解説であり、特定の取引や商品の推奨ではありません。統計値はあくまで目安で、将来の成績を保証するものではありません。

    t値の計算から始める、EA監査

    EA監査(バックテストの設計検証・実運用との差分解)を承っています。納品はご依頼から3営業日以内をめどに、判断根拠が残る検証ログの形でお返しします。「エッジが本物か確認したい」EAがあれば、まずは相談からどうぞ。

    EA監査を相談する(ココナラ)

    あわせて読みたい: EAのバックテストはこう読む — 信頼できるか見抜く3つの数字 / 勝率7割でも資産が減る トランザクションコストの正体【監査実録】 / EA作成を外注する前の要件定義チェックリスト

  • EA開発はコードを書く前に決まる: 条件設計とt値・スプレッド会計・Bid歪みの実務チェック

    EA開発はコードを書く前に決まる: 条件設計とt値・スプレッド会計・Bid歪みの実務チェック

    「この条件を足せば、EAはもう少し勝てるはず」。そう考えてコードを一行変え、バックテストを回す。数字がよくなると、すぐ実運用に入れたくなるものです。

    でも、改善したのは売買ルールでしょうか。それとも、たまたま過去の値動きに合うよう調整しただけでしょうか。

    EA開発で怖いのは、動かないコードだけではありません。動くのに、根拠が弱いコードです。この記事では、エントリー条件を追加する前に決めたい仕様、検証の順番、t値・取引コスト・Bidデータの点検方法を、実務で使えるチェック表にして整理します。

    この記事でわかること

    • EAの条件を「思いつき」から検証可能な仕様に変える方法
    • t値を使うときの意味と、過信を避ける確認手順
    • スプレッド・スリッページ・スワップを損益へ反映する考え方
    • Bidデータの歪みや欠損を見つけるチェックポイント
    • 今日からできる、小さなEA開発の一歩

    EA開発の検証設計を考えるデスクのイラスト

    EAの条件追加は、コードを書く前に文章で固定する

    先に「何を、いつ、どう判定するか」を文章で決めると、テスト結果を読み違えにくくなります。曖昧な条件は、実装者の解釈やテスト後の後付け判断を混ぜるからです。

    たとえば「押し目で買う」だけではEAの仕様になりません。どの時間足の、どの確定足を使うのか。押し目の幅を何で測るのか。条件が成立した瞬間に発注するのか、次の足の始値で入るのか。停止条件は何か。これらが未定なら、同じ言葉から別のEAができあがります。

    まず、条件を次のように分解します。数値は例です。実際の採用値は、対象通貨ペアと取引時間、データの仕様に合わせて決めてください。

    仕様項目 決める内容 曖昧なままのリスク
    判定時点 確定足のみか、ティックごとか 未来情報の混入、再現性の低下
    価格系列 Bid、Ask、仲値のどれを使うか 発注価格と判定価格のズレ
    シグナル 指標、期間、閾値、比較方法 後から条件を増やす余地
    決済 損切り、利確、時間決済、反対シグナル 損失が想定外に伸びる可能性
    例外処理 取引停止時間、注文拒否、最大保有数 異常時に意図しない注文を繰り返す

    仕様を文章で残すと、検証で変えたものも追えます。つまり、勝ちやすい条件探しより先に「同じ条件を誰でも再現できる状態」を作るのです。

    例外条件こそ、損益グラフに出る前に決める

    EAは通常時より、想定外の場面で設計品質が表れます。週明けの窓、指標前後の急変、通信断、約定拒否、最小ロット未満の計算などは、平均損益だけでは見えにくいからです。

    最低限、注文に失敗した場合の再試行回数、同一シグナルの重複発注防止、最大ポジション数、損切り注文を置けない場合の動作を決めます。「失敗したらもう一度」では危険です。何秒後に何回まで試し、どの条件なら停止するかを明記します。

    こうした仕様は、見栄えのよいバックテストを作るためではありません。実運用でEAが何をするかを、先に人間が理解するためにあります。

    t値は「勝てる証明」ではなく、偶然を疑う入口

    t値は平均的な成績がばらつきに比べてどれほど大きいかを見る指標で、将来利益を保証しません。サンプル数、独立性、分布の偏り、試した条件の数を無視すると、数字だけが一人歩きします。

    単純な平均リターンの検定では、t値は「標本平均 ÷ 標準誤差」で計算します。標準誤差は、標準偏差を標本数の平方根で割った値です。たとえば取引ごとの損益を使う場合、損益の平均とばらつき、取引数が必要になります。

    ただし、FXの取引損益は常に独立とは限りません。同じ相場局面で連続してポジションを持つと、隣り合う取引の成績が似ることがあります。大きな利益が数回だけ含まれる場合も、平均値は見かけ上よくなります。通常のt値をそのまま「有意」と読み替えないでください。

    確認 見る理由 手順
    損益単位 ロットや通貨で比較が歪む R倍数、pips、資産比率などを明記
    取引数 少数の大勝ちに左右される 期間別・相場局面別にも分ける
    連続性 取引の独立性を損なう 日・週単位の集計やブロック再標本化を検討
    試行回数 多数試行から良い結果だけ選ぶ 試した条件数と選定ルールを記録
    未使用期間 作成データへの過剰適合を検出 条件決定後の期間で一度だけ評価

    検証済みの個別案件では、バックテスト表示上の勝率96%が、元データを再点検すると52%になった例もありました。これは全EAに当てはまる割合ではありません。数字が派手でも、元データと計算過程を確かめる必要がある、という監査事例です。

    t値を出す前に、まず取引履歴の欠損・重複、損益計算、試行回数を確認します。t値は最後の飾りではなく、検証設計の一部として扱いましょう。

    価格データからコスト計上と未使用期間の検証へ進む流れ

    スプレッド会計を入れると、勝ちトレードの見え方が変わる

    取引コストは、勝ち負けを決めたあとに引くのではなく、売買の成立条件に組み込みます。特に短期EAでは、小さなコスト差が期待値を削るからです。

    基本の損益は、決済損益からスプレッド、手数料、スリッページ、スワップを差し引いて考えます。口座タイプによって、スプレッドが狭い代わりに取引手数料がある場合もあります。比較するときは「表示スプレッド」だけでなく、同じロット・通貨ペア・時間帯で総コストをそろえます。

    例として、1回の取引で往復コストが平均0.8pips、年間取引数が1,000回なら、単純合計は800pips相当です。これは特定口座の実測値ではなく、計算方法を示す仮定例です。1pipの金額は通貨ペア、ロット、口座通貨で異なるため、自分の条件で換算してください。

    だから何か。バックテストの利益が800pips未満なら、この仮定のコストだけで優位性が消える可能性があります。実際には各取引のコスト分布を使い、平均だけでなく悪化側も検証します。

    正直会計では、バックテストの設定値を「実測」と呼びません。固定スプレッドを設定したなら固定値テスト、変動スプレッドのティックデータを使ったならそのデータ範囲のテスト、と記録します。約定遅延を再現できない環境なら、その制約も結果に添えます。

    コスト表は平均だけでなく、時間帯ごとに作る

    平均スプレッドだけでは、EAが実際に入る瞬間のコストが隠れます。流動性が薄い時間や指標時には、通常時間と異なる値が出ることがあります。

    取引履歴にエントリー時刻を残し、時間帯別にスプレッドとスリッページを集計します。取引の多い時間がコストの高い時間と重なれば、月平均より悪い条件で運用しているかもしれません。曜日、セッション、指標前後を分けるのも有効です。

    費目 記録するもの 見落としやすい点
    スプレッド 発注時のBid/Ask差 固定値で全時間を代用していないか
    手数料 往復・片道、ロット単位 口座通貨への換算時点
    スリッページ 要求価格と約定価格の差 バックテストでゼロ扱いになっていないか
    スワップ 保有日数、通貨ペア、方向 日々変動や付与日の違い

    口座のスプレッド、手数料、スワップは変更されることがあります。利用前に各社の公式ページで、対象口座・取引時間・適用条件を確認してください。広告や比較ページの数字だけで判断しないことが、検証の再現性を守ります。

    Bidの歪みは、ローソク足の外側に潜む

    Bid系列だけの異常は、チャートの形より先にデータ品質の問題として調べます。FXの多くのチャートはBid価格を基準に表示され、買い注文はAskで成立します。Bidだけ見て売買条件を作ると、実際の約定可能価格とずれる場合があります。

    たとえば、短時間だけ価格が飛ぶ、同じ時刻に重複したティックがある、High/Lowが前後の値とかけ離れる、BidとAskの差が不自然に広がる、といった異常です。これが実市場の急変か、データ配信の欠損かは、一本のチャートだけで断定できません。

    確認では、(1)タイムスタンプの重複・逆行、(2)OHLC整合性、(3)隣接ティックの変化幅、(4)スプレッドの分布、(5)別データソースとの同時刻比較を行います。比較元が異なる場合は、サーバー時刻、夏時間、価格更新頻度が一致しているかもそろえます。

    怪しい値を見つけても、都合よく削除してはいけません。元データを保管し、除外条件を先に定義し、除外前後の結果を両方報告します。データを整える操作そのものが、EAの成績を変えるからです。

    BidとAskの差や急変データを点検するイメージ

    検証は「作った期間」と「触っていない期間」を分ける

    条件を決めた期間だけで成績を評価すると、偶然に合った設定を選びやすくなります。開発用データで調整した後、未使用期間や別の相場局面で同じルールを試します。

    実務では時系列を崩さず、過去側を設計・調整に使い、後ろ側を検証用に確保します。検証結果を見て条件を変えたら、その期間はもう「未使用」ではありません。再び別の期間を用意するか、評価を探索的な結果として扱います。

    結果はPFや勝率だけでなく、最大ドローダウン、取引回数、連敗、平均保有時間、月別損益、コスト控除前後を並べます。相場環境別に分けると、利益が特定の数か月だけに集中しているかも見つけやすくなります。

    過去記事の監査事例では、勝率96%と表示されたEAを元データから再検証したところ52%になったケースがありました。原因が違えば必要な対策も違います。数字の大きさより、再現可能な計算過程を確かめることが先です。

    今日できる最初の一歩は、条件を一枚に書くこと

    いきなりEAを作り直す必要はありません。まずは一つのエントリー条件を、検証可能な文章にします。この作業なら、今日30分ほど確保して始められます。所要時間は内容による目安です。

    1. 対象通貨ペアと時間足を書く
    2. シグナル判定を確定足・ティックのどちらで行うか決める
    3. Bid/Askのどの価格を条件と発注に使うか記す
    4. 損切り、利確、時間決済、最大保有数を書く
    5. スプレッド・手数料・スリッページ・スワップの前提を記録する
    6. 開発用期間と未使用の検証期間を分ける
    7. 条件変更のたびに、変更理由と試行回数を残す

    そして小さなデモ検証へ進みます。最初からリアル口座で試す必要はありません。デモ環境でも、注文拒否や価格更新、EAログの読み方を確認できます。ただし、デモの約定条件が実口座と同じとは限らないため、差は別途記録します。

    「勝てそうな条件を見つける」より、「何を試し、何がわかり、次に何を変えるか」を残す。これが、再現できるEA開発の出発点です。

    まとめ: 良いEAは、結果より先に検証の筋道がある

    EAの開発では、条件をコードにする前に文章で固定し、t値を過信せず、取引コストを損益へ反映し、Bidデータの品質を確かめます。さらに、調整に使った期間と未使用期間を分けます。

    派手な勝率の裏に、データ欠損や過剰な条件調整が隠れていないか。最初に抱いた不安への答えは、数字を一つ増やすことではなく、数字がどう作られたかを追える状態にすることです。

    まずは今あるEAのエントリー条件を一つ、紙に書き出してみませんか。そこから、次の検証が始まります。

    関連記事

    EAの条件を、検証できる形に整理しませんか。

    EA作成代行では、売買条件や例外処理を確認し、仕様に沿った実装と検証を進めます。納期は3営業日以内が目安です。内容や難易度により対応可否・納期が変わるため、購入前にご相談ください。

    EA作成代行の内容を確認する

    EAを動かす土台はVPSです

    MT4を24時間止めずに動かすにはVPSが必要です。まずは無料のお試しで動作を確認できます。

    ABLENET VPSを公式サイトで見る(最大10日間無料) →

    ※本記事にはアフィリエイト広告も含みます。

    EAの検証・監査・制作を承っています

    このブログで使っているのと同じ検証の目線で、買う前の数字の検品から、実データでの監査、死因の解剖、月次の健康診断、インジケーター制作まで承っています。

    EA監査・検証の出品一覧を見る

  • 同じEAなのにテスト結果が毎回違う — バックテストを狂わせる「時刻ずれ」の正体

    同じEAなのにテスト結果が毎回違う — バックテストを狂わせる「時刻ずれ」の正体

    「同じEA、同じ期間、同じ設定のはずなのに、口座を変えてバックテストしたら成績がガラリと崩れた」「先月やった検証をやり直したら、なぜか結果が微妙に違う」。こうした経験は、検証のやり方が悪いわけではありません。背後には、チャート上では見えない「時刻のずれ」と「データ品質の差」という犯人がいることが多いのです。

    この記事でわかること:

    • バックテストの再現性を壊す3種類の「ずれ」(バータイムスタンプ・サーバー時刻/DST・ブローカー間のデータ差)
    • それぞれがEAの成績をどう歪めるのか
    • 監査現場で実際に使う、ずれを検出する4つの突合チェック
    • 再現性のある検証を設計する3つのポイント

    まず結論 — バックテストを狂わせるのは3種類の「ずれ」

    EAの検証結果が環境間で再現できないとき、原因はほぼ次の3種類に分類できます。それぞれ「何がずれるか」も「どう検出するか」も違います。

    ずれの種類 何がずれるか 主な症状 検出方法
    バーのタイムスタンプ チャート上の「時刻」と実際のティック到達時刻 シグナルが1本ずれる・高値/安値の使い方が変わる 複数時間足での突合
    サーバー時刻・DST ブローカーのサーバー時間と日本時間の対応(年2回1時間) 「東京時間のつもり」が7時に動く・3月と11月の成績だけ落ちる 年別・月別の成績分解
    ブローカー間のデータ差 提示レート・欠損・更新頻度が口座ごとに異なる 口座を替えると同じEAで期待値が変わる 2データソース突合

    以下で順番に、それぞれのずれがどう成績を歪めるかを見ていきます。

    1つ目: バーのタイムスタンプ — 「8:00の足」には8:00〜8:59が詰まっている

    1分足のバーに実際のティックが到達する様子のイメージ図

    図: バーのスタンプは「開始時刻」。実際のティックはその後の1分間に到達します。

    MT4のヒストリカルデータでは、各バーに「開始時刻」でタイムスタンプが押されます。8:00のM1バーには、8:00:00〜8:59:59のティックの結果がすべて詰まっているのです。

    ここで注意したいのが「8:00になったら判定する」タイプのEAです。テスター上では8:00バーの情報で判定が走りますが、実運用では8:00ちょうどに約定できるとは限りません。ティックの到達順序や、Close[1]のような「1本前の確定足」の参照位置が1本ずれるだけで、シグナルの回数は変わってしまいます。

    同じ理由で、上位足(1時間足など)を参照するEAは「どのタイミングでその足が確定したとみなすか」で結果が変動します。期間の区切り方ひとつで、同じロジックが別の取引をすることがあるのです。

    2つ目: サーバー時刻とDST — 「日本時間のつもり」が1時間ずれる

    サーバー時間と日本時間が1時間ずれるイメージ図

    図: 多くの海外ブローカーのサーバー時間は、年2回のサマータイム切替で日本時間との時差が1時間動きます。

    海外ブローカーのサーバー時間はGMT+2またはGMT+3に設定されていることが多く、多くの場合は米国のサマータイム(DST)に連動して、春と秋の年2回、1時間ずつ切り替わります。つまり、コード上の「同じ8時」でも、3月と11月では指し示す日本時間が1時間違うのです。

    「東京時間の朝に買う」つもりでサーバー時刻を指定したEAは、切替のたびに実際の取引時刻がずれます。時間帯依存の戦略ほど、このずれの影響をまともに受けます。

    見分け方は年別・月別の成績分解です。3月と10〜11月の境目だけ成績の質が変わるEAは、この「DSTのずれ」を疑う兆候です。監査では単月ごとに成績を分離して、時刻指定が切替日をまたいでいないかを確認します。

    3つ目: ブローカー間のデータ差 — 「同じUSDJPYのM1」は存在しない

    これが最も見落とされやすいポイントです。通貨ペアの名前が同じでも、ブローカーごとの提示レートは独立しています。流動性の供給元が違えば、スプレッドも、板が薄い時間帯の一瞬の異常値も、データの欠損の入り方も別物です。

    つまり、口座Aのデータで導いた期待値は、口座Bではそのまま成立しません。これはEAの欠陥ではなく、検証データの「出身」の問題です。監査では2つのデータソースを突合して、対象口座に固有の歪み(例: 特定の時間帯だけ突出して広いスプレッド)を検出してから期待値を計算します。

    このあたりの考え方や事例は、口座ごとの正直会計の記事と、データ破損を見抜いた監査実録で詳しく解説しています。

    監査で使う4つの突合チェック

    では、こうしたずれを実際にどう検出するのか。監査工程で使う4つのチェックを紹介します。

    1. バー数カウント: 期間 × 期待されるバー本数(週末・祝日を除く)と、実際のデータのバー数を比較します。欠損や重複はここで浮かび上がります。
    2. 2ソース突合: 別のデータソースの週足終値と突き合わせ、差分が閾値を超える週がないかを確認します。固有の歪みはここで検出します。
    3. DST境界テスト: 3月・10月末の切替周辺だけを単月で分離して成績を比較します。時間帯指定のEAはここで本質が現れます。
    4. スプレッド実測ログ: エントリー予定時刻の実スプレッドを数日分記録し、テスターが仮定したコストと比較します。テスターのスプレッド固定値は、実コストの代表値とは限りません。

    この4つは特別なツールがなくても、MT4の履歴と地道な突合作業で再現できます。ただ、10年分のM1データ相手にやると数時間はかかるのが実情です。

    再現性を確保する3つの設計

    ずれを検出するだけでなく、EAや検証の設計段階で「ずれに強い構造」にしておくことが可能です。

    • サーバー時刻で書く: コード内の時刻指定はすべてサーバー時間で統一し、日本時間への固定換算(「-6時間」のような固定オフセット)を書かない。DSTは切替のたびに対応が変わる前提で書きます。
    • 確定したバーだけ参照する: シグナル判定は「1本前の確定足」のみを参照する設計にすると、ティックの到達順序に左右されにくくなります。
    • 本番と同じ口座のデータで検証する: 厳密です。別のデータで検証せざるを得ない場合は、実スプレッドの差を上乗せする悲観会計で評価します。

    まとめ — 数字を信じる前に「ずれ」を疑う

    バックテストが再現できないのは、ほとんどの場合EAの欠陥ではなく、検証環境のずれです。バーのタイムスタンプ、サーバー時刻とDST、ブローカー間のデータ差。この3つを知っているかどうかで、「この数字は信じられるか」という判断の精度が変わります。

    あなたのEAの最後のバックテストは、どのブローカーの、どの時間軸のデータで走ったものだったか、今一度思い返してみてください。答えに迷ったら、それが監査のスタート地点です。

    📦 EAの監査を承っています

    このブログの運営者は、EAの統計監査をココナラで承っています。ソースコードがなくても(ex4のみで)統計検証・データ品質チェック・ストレステストが可能で、納期は3営業日以内です。本記事のような時刻ずれ・データ突合のチェックも監査工程に含まれます。

    EA監査サービスを見る → | まずは1,000円のEAクイック診断

    関連記事: EAのバックテストはこう読む — 見抜く3つの数字 / EA開発は検証設計で決まる — t値・スプレッド会計・Bid歪み


    EAを動かす土台はVPSです

    MT4を24時間止めずに動かすにはVPSが必要です。まずは無料のお試しで動作を確認できます。

    ABLENET VPSを公式サイトで見る(最大10日間無料) →

    ※本記事にはアフィリエイト広告も含みます。

    EAの検証・監査・制作を承っています

    このブログで使っているのと同じ検証の目線で、買う前の数字の検品から、実データでの監査、死因の解剖、月次の健康診断、インジケーター制作まで承っています。

    EA監査・検証の出品一覧を見る

  • 勝率96%のEAを本物のデータで再検証したら52%になった — データ破損を見抜いた監査実録

    勝率96.4%。10年間の利益プラス5,000万円。

    こんな数字を載せたバックテスト報告書を前にすると、頭の中で2つの声が同居しませんか。「さすがに嘘でしょ」という声と、「でも本当だったら凄い」という声です。

    私が監査したEAの1つに、まさにこの成績を掲げるものがありました。結論からお伝えすると、テストに使われた価格データそのものが壊れていました。販売ページの数字は、本人にとっては真実でも、本物の市場では再現できない成績だったのです。

    この記事では、どこに違和感があって、どうやって破損を突き止めたのかを監査実録として記録します。

    最初の違和感: 勝ちは「数字の綺麗さ」に隠れる

    報告書を最初に見たとき、注目したのは勝率ではありません。数字同士のバランスです。

    • 勝率96.4%なのに、利益ファクターと損切りの平均を比べると損失が不自然に小さい
    • 10年の運用で最大ドローダウンがほぼゼロに近い
    • 取引回数は多くないのに、利益額だけが際立って大きい

    どれか1つなら「優秀なEA」の説明がつきます。しかし3つが同時に揃うと、話が違ってきます。数字の綺麗さは、しばしば「壊れた前提」の産物だからです。

    検証の切り口: まずデータそのものを疑う

    監査ではEAの中身より先に、テストに使われた価格データを取り直すところから始めます。理由はシンプルです。どんなに優れたロジックでも、入力される価格が壊れていれば出力は全て信用できません。

    そこで同じ期間のM1データを別ソースから取得し、販売者のテスト条件をそのまま再現しました。

    ここで勝率96.4%のはずのEAが、52〜53%に落ちたのです。

    犯人は「終値のフリをした始値」だった

    データを比較して分かったのは、驚くべきことに「Close」として記録された数列が、同じ足の「Open」とほぼ一致していたことでした。

    つまり、EAが「前の足の終値でエントリーしたつもり」で計算していた価格は、実際にはその足の始値だったわけです。

    このズレ、1回あたりでは数pips程度です。しかし仕組みは厄介です。

    • EAはバー確定時にClose価格でエントリー判定する設計だった
    • データのClose列が実は始値なので、判定と記録された約定価格が毎回系統的にズレる
    • そのズレが数百回の取引で積み重なり、勝率を96%まで押し上げていた

    未来の情報を見ているわけではありません。それだけに、一見「もっともらしく」見えるのが質の悪いところです。

    再検証の結果を比べる

    項目 販売者の報告 本物のデータで再現
    勝率 96.4% 52〜53%
    データのClose列 (壊れたまま) Open列とほぼ一致していた
    スプレッド込みの期待値 大きくプラス ほぼゼロ〜マイナス圏

    勝率が半分になるだけでなく、取引コストを正直に計上すると期待値が消える。これが「数字は真実でも、前提が嘘」のパターンです。

    なぜ壊れたデータでテストしてしまうのか

    ここで販売者を一概に詐欺師と決めつけるのは早すぎます。実務的には、次のような経路で壊れたデータが流入します。

    • 海外の格安・無料のヒストリカルデータ配布元の品質問題(足の欠落、列のズレ)
    • CSVを自分で加工する際の列入力ミスやタイムゾーンのずれ
    • bidとaskが混在したデータでの約定シミュレーション

    悪意がなくても、データが壊れていれば結果は同じです。購入する側に「数字の真偽を確認する手段」がないことが、本当の問題です。

    自分でできる3つのチェック

    監査を依頼するまでもなく、次の3つは誰でも確認できます。

    1. CloseとOpenの一致検査 — 保守的なデータでは各足のCloseとOpenが長期間にわたり高頻度で一致することはありません。不自然に一致が多いデータは要警戒です。
    2. スプレッドの実測比較 — テスト条件のスプレッド設定が、自分の口座の実測値(特に東京時間帯)と同じかを確認します。設定が甘いと成績は実際より良く見えます。
    3. t値による統計検証 — 利益が「偶然」でないことを数字で示すのがt値です。詳しくは「EAのバックテストはこう読む — 信頼できるか見抜く3つの数字」で解説しています。

    この3つを通過して初めて、報告書の数字を「検討材料」として扱う価値が生まれます。別の監査実録「勝率7割でも資産は減る」の記録も、あわせて読むと判断の精度が上がります。

    EAのテスト成績、信じていいか迷っていませんか?

    EAの報告書と実データを突き合わせて、「この数字を信じていいか」を判定します。データ破損・スプレッド会計・統計的有意性まで、根拠の数字つきのPDF報告書でお返しします。

    ▸ EAバックテスト検証|実データで監査します(納期3営業日以内)

    まずは無料のEAセルフチェックシート(20問・無料PDF)からでも構いません。

    おわりに: その数字、どこのデータで作りましたか?

    EA選びで最も怖いのは、正直な人が壊れたデータを信じ込んでいるケースです。販売者も購入者も悪意がないのに、数字だけが嘘をつく。

    あなたが今運用中、あるいは購入を検討中のEAの成績は、どんなデータソースで作られていますか?その問いにすぐ答えられないなら、まずデータの確認から始める価値があります。


    EAを動かす土台はVPSです

    MT4を24時間止めずに動かすにはVPSが必要です。まずは無料のお試しで動作を確認できます。

    ABLENET VPSを公式サイトで見る(最大10日間無料) →

    ※本記事にはアフィリエイト広告も含みます。

    EAの検証・監査・制作を承っています

    このブログで使っているのと同じ検証の目線で、買う前の数字の検品から、実データでの監査、死因の解剖、月次の健康診断、インジケーター制作まで承っています。

    EA監査・検証の出品一覧を見る

  • EAが稼がない理由を数字で特定する5つのチェックポイント

    EAが稼がない理由を数字で特定する5つのチェックポイント

    「バックテストでは稼いでいたのに…」を、推測ではなく数字で切り分ける

    「バックテストは絶好調だったのに、リアル口座に投入した途端に右肩下がりで大切な資金が減っていく…」
    「いくら設定を変更しても一向に利益が出ず、どこを修正すればいいのか皆目見当がつかない…」
    期待を込めて稼働させたEAが期待通りに稼がないとき、焦って勘や思いつきでパラメータを弄ってしまうのは最も危険な悪手です。

    相場での損失拡大を防ぐためにまず行うべきなのは、感情や推測を一切排して『数字』で原因を冷静に切り分けることです。
    当サイトの監査実録でも、稼がない原因を正しく数値化することで、無駄な資金消失を防げた事例が多数あります。
    この記事では、不調なEAを診断する際に必ずチェックすべき5つのポイントを、実際の監査業務で使っているプロの視点から詳しく解説します。

    チェック1: 1トレードあたりの「期待値(R)」は本当にプラスか?

    EAの真の性能は、単なる表面上の勝率だけでは決して測れません。
    最も重要なのは、1トレードあたりの平均期待値(平均損益 ÷ 損切り幅 = 期待値R)が明確にプラスであるかという一点に集約されます。
    例えば勝率70%のEAであっても、リスクリワード比(損益比)が悪ければ、一度の負けで利益を吹き飛ばし期待値は簡単にマイナスへと転落します。

    期待値の異常を素早く察知するには、MT4/MT5のストラテジーテスターレポートを活用するのが近道です。
    レポート内の「Total Trades(総取引数)」「Profit Factor(プロフィットファクター)」「Expected Payoff(期待利回り)」という3つの数字を確認するだけで、最初の見当を付けることができます。
    この3つの数字を用いた正確な分析手法については、バックテストの報告書を3つの数字で読むで詳しく解説しています。

    チェック2: トランザクションコストを「正直会計」で計上できているか?

    バックテスト上のスプレッド設定がリアル運用環境より楽観的すぎる場合、テスト結果は綺麗な黒字でも実運用は無惨な赤字になります。
    特に注意すべきは、エントリー時刻における実測スプレッドの拡大であり、早朝のロールオーバー時間帯では平常時の数倍に膨れ上がります。
    薄利多売を狙うスキャルピング系や深夜・早朝エントリー系のEAでは、わずか1〜2pipsのコスト見積もり誤差によって期待値のすべてが消失してしまいます。

    当方の監査現場でも、取引コストの過小評価によってリアル口座の資金を削られているケースが後を絶ちません。
    実測スプレッドの計測方法と、取引コストが期待値に与える影響の計算手順については、トランザクションコストの正直会計を参考にしてください。

    チェック3: 過去データに過剰適合(カーブフィッティング)していないか?

    パラメータを過去のヒストリカルデータに過剰に最適化させると、バックテストのグラフは完璧な右肩上がりになりますが、未来のリアル相場に投入した瞬間に脆く崩れ去ります。
    過剰適合を見抜く検証方法は非常にシンプルで、検証期間を前半と後半に2分割し、前半のみで最適化を行って後半期間で再テスト(フォワードテスト)を実行することです。

    もし前後半で期待値のプラス・マイナスが逆転してしまうなら、その設定は単に過去の相場ノイズを拾い上げただけの危険な「カーブフィッティング」です。
    パラメータ設計時に陥りやすい典型的な失敗例と対策については、EAのパラメータ設計で最も失敗しやすい3つのパターンでまとめています。

    チェック4: 運用環境(口座タイプ・VPS)は検証時の前提条件と一致しているか?

    EAが叩き出す期待値は、実際に取引を行う口座の約定スピードやサーバー環境に大きく依存します。
    どれほど優れたロジックであっても、スプレッドが広い口座・注文処理が重いサーバー・通信遅延の大きいVPS環境では、本来あったはずのエッジが完全に相殺されてしまいます。
    検証時に前提としていた口座タイプ(スワップフリー設定やボーナス口座の可否など)と、現在のリアル運用環境が正しく合致しているかを必ず再確認してください。

    通信遅延によるパフォーマンス悪化を防ぐための適切なVPS選びに関しては、EA用VPS徹底比較にて遅延・コスト・操作性の観点から厳選4社を比較検証しています。

    チェック5: その成績は統計的に「本物」と言えるか?(サンプル数とt値)

    5つのチェックの中で最も重要かつ本質的なのが、取引結果の統計的信頼性です。
    総トレード数が極端に少ない場合、どんなに素晴らしい利益が出ていたとしても、それは単なる偶然の偏りに過ぎないリスクが残ります。

    信頼性の客観的指標となるのがt値2.0以上という基準であり、これは偶然によってその成績が発生した可能性が極めて低い(統計的に有意である)ことを意味します。
    最低でも10年以上のバックテストデータと数百回以上のトレードサンプルが揃って初めて、期待値が本物であるかの議論が可能になります。
    当ブログのリスクオンドリフトの実測検証でも、このt値を用いた厳格な基準で売買シグナルの真偽を判定しています。

    原因が分かったらどうする?「改善」か「停止」かの判断基準

    5つのチェックポイントを通じてEAが稼がない原因を特定できたら、次にとるべきアクションは以下の3つに整理されます。

    • コスト・環境問題が原因の場合:利用する口座の変更やVPS環境の見直しを行うことで、運用成績を劇的に改善できる可能性が高いです。
    • 設計・パラメータ問題が原因の場合:エントリー時間帯の絞り込み、手仕舞いロジックの変更、各種フィルタの再構築によって期待値を復活させられる可能性があります。
    • そもそもロジックにエッジがない場合:これ以上の資金消失を避けるため、未練を捨てて即座に稼働を停止し、次の有望な戦略にリソースを集中するのが正解です。

    「自分で数字を切り分ける時間がない」「第三者の客観的なデータで正確な診断をしてほしい」と感じたなら、プロによるEA監査サービスをご活用ください。
    当方では10年分以上の実データを用いた正直会計の再検証を行い、あなたのEAが「運用可能・条件付き運用・運用不可」のいずれに該当するかを明確なt値とともに判定いたします。
    実際の監査報告書の精度については、以下の匿名化サンプルレポート(PDF)でご確認いただけます。

    🔎 EAの稼がない原因を、10年データで数字で判定

    このブログの運営者は、統計検証の思想を踏まえたEA監査(ライト監査/フル監査/フル監査+救済案)をココナラで承っています。ソースコード不要で始められるライト監査から、改善構成の設計まで含むフル監査+救済案まで。納期は3営業日以内です。

    ライト監査は初回限定3,000円(通常5,000円)です。

    EA監査サービスを見る(ココナラ) →

    まず気軽に試すなら: レポートの数字だけで1営業日で判定するEAクイック診断(1,000円)もあります → EAクイック診断を見る(ココナラ) (無料のセルフチェックシート(20問)も公開中です)

    あなたが現在お使いのEAは、これらの5つのチェックポイントを無事にクリアできていますか?
    大切な自己資金を守り着実に増やしていくために、まずは1つの数字から診断を始めてみませんか?


    実際のMQL4ソースコードを見たい方は、無料EA公開記事(ドンチャンブレイクアウト)で全文を確認できます。

    EAを動かす土台はVPSです

    MT4を24時間止めずに動かすにはVPSが必要です。まずは無料のお試しで動作を確認できます。

    ABLENET VPSを公式サイトで見る(最大10日間無料) →

    ※本記事にはアフィリエイト広告も含みます。

    EAの検証・監査・制作を承っています

    このブログで使っているのと同じ検証の目線で、買う前の数字の検品から、実データでの監査、死因の解剖、月次の健康診断、インジケーター制作まで承っています。

    EA監査・検証の出品一覧を見る

  • EAのパラメータ設計で最も失敗しやすい3つのパターン — 過剰最適化を防ぐ実践ガイド

    EAのパラメータ設計で最も失敗しやすい3つのパターン — 過剰最適化を防ぐ実践ガイド

    「バックテストで年利200%を出したはずのEAが、リアル口座に投入した途端に右肩下がりで大切な資金を溶かしていく…」そんな悪夢のような運用失敗に頭を抱えたことはありませんか?実は、トレードロジック自体の不備よりも「パラメータの決め方」で致命的なミスを犯しているケースが後を絶ちません。素晴らしいエントリーロジックであっても、数値設定ひとつでバックテストの成績は天国にも地獄にも化けてしまうのです。

    当サイトの監査現場でも、パラメータ過剰調整による口座破綻のご相談が絶えません。損失回避のためにまず重要なのは、過去データへの過剰適合(カーブフィッティング)の恐怖と仕組みを正しく理解することです。本記事では、EA監査実録で繰り返し見つかった3つの典型的な失敗パターンと、過剰最適化を防ぐ実践的な設計ルールを詳しく解説します。

    前回の「要件定義チェックリスト」では外注前の準備工作を扱いましたが、今回はその先について解説します。具体的には、パラメータをどう設計し、どう検証するかという実装レベルの話題です。

    なぜパラメータ設計だけでEAの命運が分かれてしまうのか?

    EA開発において最も危険な瞬間は、「バックテストの成績があまりにも良すぎた時」です。プロフィットファクター(PF)が2.5を超え、最大ドローダウンが5%未満という美しい右肩上がりのグラフを見たとき、多くの開発者は「ついに聖杯を完成させた」と錯覚してしまいます。しかし当方の監査現場の経験が教えるのは、バックテストが完璧で美しすぎるEAほど、リアル運用で瞬時に崩壊するという恐ろしい現実です。

    その根本的な原因は、「過剰最適化(オーバーフィッティング)」の罠にあります。過去の相場データにパラメータを極限までフィットさせるほど過去成績は跳ね上がりますが、未知の未来相場には一切通用しなくなります。リアル口座の資金を一瞬で失うリスクを避けるには、設計段階から「頑健性(robustness)」を組み込むことが不可欠です。

    失敗パターン1 — なぜ「全通り最適化」はリアル運用で崩壊するのか?

    最も頻出する第1の失敗は、EAに含まれる全パラメータを広範囲で総当り最適化し、最も利益が出た組み合わせをそのまま採用する手法です。例えば、移動平均線の期間を10〜200、ストップロスを20〜100pips、テイクプロフィットを10〜200pipsでそれぞれ1刻みでテストしたと仮定します。この場合、パラメータの組み合わせは数十万通り以上に達し、その中から最高成績の数値を抽出するため、見かけ上は完璧なバックテスト結果が完成します。

    しかし、これは過去相場に存在するランダムなノイズに合わせて無理やり曲線を引いているに過ぎません。市場構造やボラティリティがわずかでも変化した瞬間に期待値はマイナスへ転落し、一気に口座資金を食い潰す結果となります。

    過剰最適化の危険な兆候を「t値」でどう見抜くのか?

    当サイトの監査実録において、ロジックの優位性を判定するコア指標として活用しているのが「t値(t-value)」です。t値とは、トレード群の平均利益が偶然ではなく統計的に有意(実質的な優位性がある)かどうかを示す数値です。一般的にt値が2.0以上であれば、その成績が偶然の産物ではない可能性が高くなります。

    しかし、数十万通りの最適化結果から選ばれた最高点のt値が高くても、それは単に「最も運が良かった数値」を拾い上げただけに過ぎません。当方の監査では、最適点単体だけでなく、その前後左右に位置する「周辺パラメータ」のt値分布を詳細に追跡します。

    最適点の周辺でt値が急激に悪化・低下する場合、その数値はパラメータの僅かなズレで成績が急落する「破局的な崖」の上に立っています。逆に、パラメータを前後にずらしてもt値が2.0前後で安定して推移するならば、その設計はリアル相場でも耐えうる堅牢な構造であると判断できます。

    失敗パターン2 — なぜスプレッドの変動を無視すると期待値が消え去るのか?

    第2の失敗パターンは、バックテスト時にスプレッド(bid-ask spread)を固定値などの楽観的な条件で計算し、パラメータを決定してしまうことです。ここで必須となるのが、リアル運用時の取引コストを正確に織り込む「スプレッド会計」の思想です。

    多くのEA開発者は、バックテストの設定画面で「固定1.0pip」などの理想的なスプレッドを入力して検証を行います。しかし、実際のライブ口座ではスプレッドは常に変動しており、早朝のロールオーバー時や指標発表時には平常時の3〜5倍以上に拡大します。ストップロス(SL)が20pipsのEAにおいてスプレッドが5pips広がれば、実質的なリスクは25pipsに跳ね上がり、想定リスクが25%も増大していることになります。

    バックテストの盲点となる「bid歪み」とは何か?

    さらに見落とされがちな落とし穴として「bid歪み」の問題が挙げられます。MT4/MT5のバックテストではBid価格ベースで計算が進みますが、買いポジションの決済や売りポジションの約定はAsk価格で行われます。このBidとAskの構造的ズレを無視してパラメータを組むと、特に取引回数の多いスキャルピングEAではバックテストとリアル運用で深刻な乖離が発生します。

    当方の監査実録データによると、変動スプレッドとbid歪みを正確に反映して再検証した結果、バックテスト上でプロフィットファクター1.8を誇っていたEAが1.2まで急落した事例が多数存在します。PF1.2であれば耐えられますが、最悪のケースではPF1.0を割り込み、運用した瞬間に損失を生み出す「期待値マイナスのEA」であったことが露呈します。

    失敗パターン3 — なぜ隠れコストを排除した「正直会計」が必要なのか?

    第3の失敗パターンは、トレードにかかる全コストを誤魔化さずに計上する「正直会計」の欠如です。バックテストでいくら利益が出ていても、リアル運用で発生する実コストを排除していては資金を守ることはできません。正直会計で必須となるコスト要素は以下の通りです。

    • スプレッド(早朝や指標発表時の広がりを含む変動スプレッド)
    • 外付け取引手数料(往復7〜10ドル/ロット相当のコスト)
    • スワップポイント(日をまたいでポジションを保有する際の金利差調整額)
    • スリッページ(発注価格と約定価格の間に生じる不可避な価格ズレ)

    これらの隠れコストを差し引いた純利益(net pips / net R)でパラメータを評価しない限り、リアル運用の成績はバックテストを確実に下回ります。当サイトの監査現場で最も多い指摘事項も、「スワップコストの無視」や「スリッページ0設定」であり、これらはパラメータ設計の段階で修正すべき重大な欠陥です。

    特にスワップポイントは、数日〜数週間保有するスイング系EAにおいて無視できない固定費用となります。週末をまたぐトリプルスワップなどで数pips分の利益が吹き飛ぶことも珍しくありません。スワップを無視したパラメータ設計は、「金利ゼロで無限に資金を借りられる」という現実離れした妄想の上で運用しているのと同じ状態なのです。

    過剰適合を防ぐ!正しいパラメータ設計の4ステップとは?

    上記の失敗パターンを回避し、リアル相場でも安定した利益を生み出すための正しいパラメータ設計手順をまとめました。当方の監査業務でも推奨している標準手順は以下の4ステップです。

    • 1. 最適化範囲を論理的に絞り込む:全パラメータの同時最適化を避け、インジケーターの計算根拠に基づき「意味のある範囲(例:短期MAなら3〜50、長期MAなら50〜200)」に限定してテストします。
    • 2. Walk-Forward分析(フォワード検証)を行う:ヒストリカルデータを「学習期間」と「検証期間」に分割し、学習期間で導いたパラメータが未知の検証期間でも機能するかを期間をずらしながら検証します。
    • 3. 周辺パラメータの分布で堅牢性(robustness)を判定する:決定した数値の前後(±10%〜20%)にズラした際、t値やプロフィットファクターが急落せず平坦な高水準を維持できるか確認します。
    • 4. 正直会計で純期待値(net)を再計算する:変動スプレッド・手数料・スワップ・スリッページを全計上した上で、1トレードあたりの純期待値が明確にプラスであることを実証します。

    これら4つのステップを愚直に実行することこそが、大切な資産を相場の波から守り抜く唯一の道筋となります。

    まとめ:あなたのEAは本当にリアル相場に耐えられますか?

    EA運用の成否を決めるのは、華やかなエントリーロジックの凄さではなく、パラメータ設計と検証における「誠実さ」です。全通り最適化の甘い誘惑を捨て、正直会計でリアルな取引コストを計上し、周辺パラメータで頑健性を証明する。この基本原則を徹底するだけで、リアル口座で資金を溶かすリスクを劇的に低減させることができます。

    あなたが現在運用しているEAや開発中のパラメータは、本当に過剰適合の罠をクリアできていますか?少しでも数値の信頼性に不安を感じたなら、一度立ち止まって設定を見直してみることを強くおすすめします。

    当方のEA監査サービスでは、これらの高度な統計検証手法を用いてパラメータの健全性を徹底的に診断しています。大切な自己資金を投入する前に、第三者の客観的な数字でリスクを洗い出してみませんか?


    関連記事

    🔧 EA開発・パラメータ設計でお困りではありませんか?

    当方では、FX EAの開発代行およびパラメータ設計の検証を承っております。過剰最適化を防ぐ設計ルールの適用、Walk-Forward分析、正直会計に基づく期待値検証まで、実運用で機能するEAを3営業日以内でお納めします。

    ▶ EA作成代行サービス(coconala)

    ▶ EA監査サービス(coconala) — 既存EAの過剰最適化チェック・期待値検証初回限定3,000円(通常5,000円) / まずは1,000円のEAクイック診断

    なお、稼がない原因を上から順に数字で切り分ける手順は、EAが稼がない理由を数字で特定する5つのチェックポイントでまとめています。パラメータ以外に原因がある場合の診断にも使えます。


    EAを動かす土台はVPSです

    MT4を24時間止めずに動かすにはVPSが必要です。まずは無料のお試しで動作を確認できます。

    ABLENET VPSを公式サイトで見る(最大10日間無料) →

    ※本記事にはアフィリエイト広告も含みます。

    EAの検証・監査・制作を承っています

    このブログで使っているのと同じ検証の目線で、買う前の数字の検品から、実データでの監査、死因の解剖、月次の健康診断、インジケーター制作まで承っています。

    EA監査・検証の出品一覧を見る

  • 東京時間のドリフトは実在するか — 10年分のM1データで検証した記録

    東京時間のドリフトは実在するか — 10年分のM1データで検証した記録

    「東京時間の市場アノマリーを狙えば勝てる」という噂を聞いてEAを作成したものの、実際の運用では期待通りに利益が出ず、損切りばかり重なっていませんか?

    アノマリー(相場の規則的な癖)を利用した戦略は非常に魅力的です。しかし、理論上は優位性があるはずの手法であっても、実際のトレードではなぜか損失を出してしまうケースが後を絶ちません。

    当サイトの検証データでも、「理論的には勝てるはずなのに、なぜかリアルトレードで資金が減っていく」というご相談を多数受けています。

    「東京時間に買って、日が変わる前に閉じる戦略は本当に実在するのか」。これは、膨大な相場データを用いて統計的に検証できる問いです。

    今回は、3通貨ペア×10年分のM1データ(1分足)という精密なデータを用い、東京時間帯に生じるリスクオンドリフトの実態を徹底検証した記録を公開します。

    1. 東京時間の「癖」は本物か? — 10年分のデータで判明した事実

    まず、サーバー時間0時の価格から朝8時まで無条件で買い持ちする「素ドリフト」の期待値を計算しました。

    検証の結果、対象とした3通貨ペアすべてでt値+5.7〜+14.7という非常に高い統計的有意性が確認されました。

    エントリー条件 損益・期待値 t値 勝敗・特徴
    0:00 (素ドリフト) 期待値ほぼ消滅 – bid歪み(-2〜-5pips)により実コスト3倍悪化
    0:30 (時刻変更) +5.7pips/日 +4.5 10年中9年プラスまで回復
    23:55 (事前注文) 不採用(マイナス) – 歪み先行・月曜不可・スワップ発生の3重苦

    年別データに分解すると、3ペア×10年=合計30年分のサンプルすべてで年間収支がプラスを記録しました。東京時間帯において価格がリスクオン方向へじわっと動く傾向は、統計的に見て間違いなく本物です。

    2. なぜ期待値が消えてしまったのか? — 犯人は「エントリー時刻」だった

    アノマリーという現象が本物であるにもかかわらず、実際の取引で期待値を殺していた原因は注文を出す「約定タイミング」にありました。

    サーバー時間0:00ちょうどに注文を出すプログラムの仕様は、ロールオーバー直後に発生するbidの広がりと歪み(-2〜-5pips)を建値で丸ごと支払ってしまうことになります。

    実データを用いた正直会計で計算すると、表示スプレッド自体は平常値に見えても、実質的な摩擦コストは3倍相当まで悪化していました。その結果、市場に存在するはずの優位性が完全に相殺されていたのです。

    そこで、エントリー時刻を0:30まで30分遅らせる改善を実施しました。スプレッドの歪みが収まった後の「確実なドリフト」だけを狙い撃ちする設計に変更したのです。

    その結果、3ペア合計で+5.7pips/日(t値+4.5)を叩き出し、10年中9年でプラス成績を収めるまでに回復しました。「0時約定」という実装の詳細が、統計的に実在する市場のエッジを潰していたことになります。

    3. なぜ23:55エントリーの対策は失敗したのか?

    「日を跨ぐ直前の平常スプレッドで買えば解決するのではないか」と考え、23:55にエントリーする改善案も検証しました。しかしデータ検証の結果、この案は不採用となりました。

    不採用となった主な理由は以下の3点です。

    • 23:55の時点で既にbidの歪みが始まりつつあり、価格経路が不利であった点
    • 週明けの月曜(最も優位性が高い曜日)にエントリーできなくなる点
    • ロールオーバーを跨ぐことで余分なスワップポイントが発生してしまう点

    直感や思いつきによる安易な改善策であっても、バックテストのデータで精密に検証しなければ逆効果になることを示す典型例と言えます。

    4. 今回の検証から得られた教訓 — 本物のエッジも実装次第で崩壊する

    統計的に実在する市場の癖やアノマリーを発見できたとしても、エントリー時刻や口座ごとのスプレッド特性、約定ルートといった「会計の詳細」を誤ると期待値は激変します。

    優秀なトレーディング戦略の設計と、それを正しく成立させる精密な実装の双方を数字で検証して初めて、期待値は現実の利益へと変わるのです。

    📦 EAの作成・監査を承っています

    このブログの運営者は、EAの統計監査(ソースコード不要・ex4のみで可能)とEA作成代行(MQL4/MQL5)をココナラで承っています。いずれも納期は3営業日以内です。

    ライト監査は初回限定3,000円(通常5,000円)です。

    EA監査サービス → | まずは1,000円のEAクイック診断 | EA作成代行 →

    関連記事: EAのバックテストはこう読む — 見抜く3つの数字 / EA運用は口座で決まる — スプレッドとスワップの正直会計

    🖥️ EAを24時間安定稼働させる環境(VPS)

    EAは自宅PCのスリープ・停電で止まり、急変動時にSLが執行されないリスクを抱えます。稼働率・リソース方式・料金の5基準で国内4社を比較した記事はこちら → EA用VPS徹底比較 — 4社を実運用視点で選び分ける

    【広告】PR

    ※本記事にはアフィリエイト広告も含みます。

    安定性重視なら XServer VPS for FX プレミアム →
    まず試すなら ABLENET VPS(最大10日間無料お試し) →

    スワップポイントは受け取った時に課税対象の所得になる点にも注意が必要です。税務の扱いはFXの税金と確定申告のまとめを参照してください。

    あなたが運用しているEAの優位性は、エントリータイミングの微細な歪みによって消えてしまっていませんか?

    「理論上は勝てるはずのロジック」を現実の利益に変えるために、今一度エントリー条件と注文環境の整合性をデータで検証してみませんか?


    EAの検証・監査・制作を承っています

    このブログで使っているのと同じ検証の目線で、買う前の数字の検品から、実データでの監査、死因の解剖、月次の健康診断、インジケーター制作まで承っています。

    EA監査・検証の出品一覧を見る

  • EAのバックテストはこう読む — 信頼できるか見抜く3つの数字

    EAのバックテストはこう読む — 信頼できるか見抜く3つの数字

    「販売ページのバックテストでは綺麗な右肩上がりだったのに、実際に稼働させたら資金が減り続けている…」

    このような苦い経験はありませんか?高額なFXの自動売買プログラム(EA)を購入し、期待に胸を膨らませて運用を始めたものの、思わぬ損失を抱えて悩むトレーダーは後を絶ちません。

    「勝率89%」や「過去10年で年利40%」といった魅力的な宣伝文句は、FX業界に溢れています。しかし結論から言えば、これらの表面的な数字だけではそのEAが将来も機能するかどうかは何も保証されません。

    なぜなら、市販されている多くのバックテストは、見かけの成績を良く見せる「都合の良い会計」で作られているからです。当サイトの監査実録でも、都合の良いバックテストに騙されて資産を減らしてしまったご相談を多数受けています。

    では、プロの検証者はEAの信頼性を見抜くためにどこをチェックしているのでしょうか?

    プロがEAのバックテストを判定する際は、販売ページの華やかな宣伝数字ではなく、次の3つの本質的な数字を確認します。

    • 統計的有意性を示す「t値」
    • 隠れた取引コストを暴く「スプレッド会計」
    • 環境変化への耐性を見る「期間分解・感応度」

    これらの指標を正しく読み解くことで、過剰最適化された危険なEAを運用前に見破ることが可能になります。

    1. なぜt値を見るのか? — 「期待値は偶然ではない」と証明する数字

    どれほどバックテストの期待値がプラスであっても、それがたまたま得られた偶然の揺らぎなのか、それとも将来も再現可能な傾向なのかを区別しなければなりません。その再現性を統計的に判定するための指標が「t値」です。

    t値は「平均値 ÷ (標準偏差 ÷ √トレード数)」という数式で計算されます。信頼できる基準となる目安は|t| ≥ 2です。この数値を超えて初めて、その成績が「統計的に偶然ではない」と判断できます。

    トレード数 日当たり期待値 t値の目安 判定結果
    100回 +0.1R/日 +1.0程度 偶然の誤差範囲(不十分)
    2,500回 +0.1R/日 +3.0まで上昇 統計的に優位性が実在する

    例えば、日当たりの期待値が+0.1Rであったとしても、トレード数がわずか100回であればt値は+1.0程度にとどまり、偶然の範囲を出ません。しかし、2,500回のトレード数で同じ期待値+0.1R/日を維持しているなら、t値は+3.0まで跳ね上がり、統計的に実在すると言えます。

    つまり、トレード数が明記されていない、あるいはt値が計算されていないバックテストは、判定材料として極めて不完全なのです。損失を避けるためにも、まずは総トレード数とt値の存在を確認しましょう。

    2. なぜスプレッド会計で騙されるのか? — bidとaskの隠された罠

    一般的なバックテストの多くは、bidデータ(または終値)のみを用いて検証が行われます。しかし、実際の買い注文(ロング)で約定するのはAsk(売値+スプレッド)です。

    特に注意しなければならないのが、ロールオーバー直後のサーバー時間0時です。実際の口座データを確認すると、この時間帯はbidが一時的に-2〜-5pips下方に大きく歪むことが確認されています。

    サーバー時間0時にエントリーする仕様のEAは、建値でこの価格歪みを丸ごと支払うことになります。その結果、見かけ上の取引コストの3倍相当もの負荷が実稼働で発生してしまうのです。

    本当の意味で信頼できる検証とは、エントリー時刻における実スプレッドと建値の歪みを期待値から差し引いた「正直会計」で計算されたものです。隠れた取引コストを軽視すると、リアル口座で思わぬ資産減少を招きます。

    3. なぜ全期間プラスでも危険なのか? — 過去データに潜む過剰最適化の罠

    「過去10年間の総損益がプラスだから安心」と考え、そのまま実稼働させていませんか?たとえ全期間でプラス成績であっても、年別成績に分解した際に10年中2年しかプラスがないようなEAには注意が必要です。

    このようなEAは、特定の市況(例えば低ボラティリティ時代など)に極端に依存しており、相場環境が変わった途端に破綻するリスクを孕んでいます。

    さらに、パラメーターの値を±20%動かしただけで期待値が半減してしまう場合、過剰最適化(カーブフィッティング)の疑いが濃厚です。過去データに数値を合わせすぎた結果、未来の相場では全く通用しなくなってしまいます。

    EAの頑健(ロバスト)性を正しく確認するには、以下の3つの分解検証をクリアしているかが重要になります。

    • 前半5年と後半5年に分けた期間分割テスト
    • パラメーター感度テスト(±20%変更時の成績変化)
    • 年別成績の安定度(特定年への依存の有無)

    これら3つの分解検証をすべて通過して初めて、そのEAは未来の相場でも「頑健である」と判定できます。

    この3つの数字を自力で検証するのは大変 — だから「監査」がある

    10年分のM1データを用意し、実スプレッドを加味した「正直会計」で再計算し、パラメーターのストレステストを回す。素朴な疑問から始まった検証であっても、これを個人で正確に行うには膨大な手間と専門知識が必要です。

    当サイトが提供する「EA監査」は、この地道で複雑な検証作業をあなたに代わって実施するサービスです。収集した実データを基に、「運用可・条件付き・運用不可」の3段階を明確な数字つきで判定いたします。

    プログラムのソースコードが手元になく、実行ファイル(ex4のみ)しか持っていない場合でも検証可能なプランを用意しております。

    📦 EAの作成・監査を承っています

    このブログの運営者は、EAの統計監査をココナラで承っています。ソースコードがなくても(ex4のみで)統計検証・ストレステストが可能で、納期は3営業日以内です。サンプルレポートもサービスページでご確認いただけます。

    ライト監査は初回限定3,000円(通常5,000円)です。

    EA監査サービスを見る(ココナラ) →

    まず気軽に試すなら: レポートの数字だけで1営業日で判定するEAクイック診断(1,000円)もあります → EAクイック診断を見る(ココナラ)

    関連記事: 勝率7割でも資産は減る — トランザクションコストの正体【監査実録】 / 東京ドリフトを10年分のM1データで検証した記録

    あなたが大切なお金を預けようとしているEAは、本当に「偶然ではない本物の期待値」を持っていますか?

    貴重な運用資金を危険に晒してしまう前に、まずは手元のバックテストにある総トレード数とt値、そしてスプレッドの計算基準だけでも見直してみることから始めてみませんか?


    EAを動かす土台はVPSです

    MT4を24時間止めずに動かすにはVPSが必要です。まずは無料のお試しで動作を確認できます。

    ABLENET VPSを公式サイトで見る(最大10日間無料) →

    ※本記事にはアフィリエイト広告も含みます。

    EAの検証・監査・制作を承っています

    このブログで使っているのと同じ検証の目線で、買う前の数字の検品から、実データでの監査、死因の解剖、月次の健康診断、インジケーター制作まで承っています。

    EA監査・検証の出品一覧を見る