投稿者: rehav

  • VPSの通信遅延がEAのスリッページを引き起こす — ping値と約定品質の関係を実測で読む

    VPSの通信遅延がEAのスリッページを引き起こす — ping値と約定品質の関係を実測で読む

    VPS選びで「価格」ばかり気にしていませんか?

    月額数百円の差を見比べて、一番安いプランを選ぶ。それは悪くない判断です。ただ、EA運用で見落としがちなのが「通信遅延(ping)」です。

    VPSからブローカーサーバーまでの往復時間が長いと、EAの発注から約定までにタイムラグが生じます。数十ミリ秒の差が、スリッページとしてコストを積み上げていきます。

    当サイトの監査実録では、この遅延がEAの期待値を静かに削る例を複数確認しています。

    なぜVPSのpingがEAに効くのか

    EAは「価格が条件を満たしたら発注する」というロジックで動きます。ここで重要なのは、条件判定と実際の発注の間に必ず通信が挟まることです。

    • EAが価格条件を判定(MT4内で完結)
    • 発注リクエストをVPSからブローカーサーバーへ送信
    • ブローカー側で約定処理
    • 約定結果をVPSへ返す

    この2〜4の往復にかかる時間がping値です。自宅PCから運用する場合、日本のブローカーへ50〜100ms、海外ブローカーへ200ms以上がざらです。

    VPSをブローカーサーバーと同じデータセンターに置けば、この値は1〜5msに縮みます。

    ping値がスリッページに与える影響

    具体的な数字で考えましょう。

    EAが「1.10500で買」と判定した瞬間、価格は生きて動いています。発注リクエストがサーバーに届くまでに10msかかると、その間に価格が1.10502に動いているかもしれません。

    結果として1.10502で約定する。0.2pipsのスリッページです。

    これが1回なら微々たるものです。しかしEAは月に数百、数千回エントリーします。

    • 1日10回のエントリー × 0.2pipsのスリッページ = 1日2pips
    • 月20営業日で40pips
    • 年間で480pips

    480pipsは、多くのEAにとって利益と損失の境界線になり得ます。

    「正直会計」で見る隠れコスト

    当サイトで重視している「正直会計」の観点で言えば、スリッページはスプレッドと同じくトランザクションコストの一部です。

    バックテストでスプレッド2pipsのEAがあったとします。実際の運用でスリッページが平均0.3pips乗るなら、実質コストは2.3pips。これを無視してバックテスト通りに稼ぐと計算するのが一番の罠です。

    監査では、この「見えないコスト」を含めた実質期待値を計算します。テスト上はPF1.2のEAが、スリッページを計上するとPF1.05に落ちる例を確認しています。詳細は「勝率7割でも資産は減る」の監査実録で解説しています。

    VPS選びでpingを確認する3つのポイント

    VPS比較記事(4社を横並びで選び分け)でも触れていますが、ここではpingに焦点を絞ります。

    1. ブローカーのサーバー位置を先に確認する

    これが一番大切です。XMならサーバーはオランダ・英国・キプロス。日本のVPSを選ぶと、物理距離が遠くpingは150ms以上になります。

    ブローカーと同じ地域のVPSを選ぶのが基本です。

    2. VPS事業者のデータセンター所在地を確認する

    「FX向けVPS」をうたっていても、実際のサーバーは日本国内というケースがあります。海外ブローカーを使うなら、欧州(ロンドン・アムステルダム)にデータセンターがあるVPSを選んでください。

    3. 実際にpingを計測する

    VPSを借りたら、まずMT4のブローカーサーバーに対してpingを打ってください。MT4の「接続状態」の右下に表示されるms値が目安です。

    10ms未満なら優秀。10〜30msなら実用範囲。50msを超えるなら、VPSの地域を見直すべきです。

    【広告】PR

    EA運用に適したVPSをお探しの方へ。ブローカーサーバーに近い欧州データセンターを提供するVPSの代表的な選択肢:

    XServer VPS for FX(東京・ニューヨーク拠点あり)

    シンクラウド for FX(国内クラウド・低遅延設定)

    VPSの信頼性: 停止時間がEA運用に与える影響

    pingと並んで重要なのが「止まらないこと」です。

    EA運用中にVPSが停止すると、以下のリスクが生じます。

    • 建玉を抱えたままEAが停止 → 損切りが発動しない
    • 再起動後にEAが再接続 → 古い価格データで誤発注する可能性
    • 停止中のスワップ変更を検知できない

    月額数百円のVPSと月額2,000円のVPSの差は、停止頻度に表れます。稼働率99.9%と99.99%の差は、年間で約8時間の停止差です。8時間の間に重要な経済指標が発表されていたら、と想像してみてください。

    VPS費用をEAの利益で回収できるか

    VPS代は固定費です。月額1,000〜3,000円のVPSを借りたとき、EAの月利がこれを上回る必要があります。

    0.1ロット(1万通貨)で運用する場合、1pips=100円です。月額2,000円のVPSを回収するには月20pipsの利益が必要。スプレッド+スリッページ込みで月20pipsを安定して超えるEAであれば、VPS代は十分に回収可能です。

    逆に、月利10pips未満のEAではVPS代が利益を食いつぶします。EA運用は口座で決まる — スプレッドとスワップの「正直会計」で解説した通り、EAの期待値を正会計で把握した上でVPSを導入するのが正しい順序です。

    【広告】PR

    EA運用環境の安定性を高めるもう一つの選択肢:

    ABLENET VPS(FX向け最適化・高稼働率)

    お名前.comデスクトップクラウド(手軽に始めるVPS)

    pingと約定品質を監査で確認する

    VPSを導入しても、それが本当にEAの約定品質を改善しているかは実運用データでしか分かりません。

    当サイトのEA監査では、以下を確認します。

    • バックテストの約定価格と実運用の約定価格の差(スリッページの実測)
    • エントリー時のbid/askの歪み(bid歪み)
    • スプレッド会計を含めた実質期待値の再計算
    • t値による統計的優位性の検証(利益が偶然でないことの証明)

    EAのバックテストはこう読む — 信頼できるか見抜く3つの数字でも触れた通り、バックテストの数字だけでは見えないコストがあります。VPS環境で運用中のEAが本当にバックテスト通りの性能を出しているか、数字で確認したい場合は監査をご利用ください。

    EAの実運用成績を数字で監査しませんか?

    バックテストと実運用の乖離をスリッページ・スプレッド会計・t値で特定します。VPS環境の約定品質も含めて、EAが本当に機能しているかを数字で確認できます。

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

    VPSは安くて速いのが理想です。しかし「安い」だけではEAの期待値を削る可能性があります。まずはご自身のブローカーのサーバー位置を確認し、そこから最適なVPSを選んでみてください。


  • 【無料EA公開】ドンチャンブレイクアウトのMQL4ソースコードと検証結果

    「無料で使えるEAのソースコードを全文公開します」。ただし、正直に言っておきたいことがあります。このEAをそのまま実運用に投入すれば、おそらく損をします。それでも公開する理由は、EAの中身がどう動いているかを透明に見せたほうが、ブラックボックスの有料EAよりも役に立つと考えているからです。

    本記事では、ドンチャンブレイクアウトという古典的なトレンドフォロー手法をMQL4で実装したミニEAのソースコードを全文掲載します。さらに、Pythonで模擬データを使ったバックテストを行い、期待値・プロフィットファクター・t値などの統計指標を正直に示します。「勝つEA」を売り込む記事ではありません。「どう検証するか」を示す記事です。

    ドンチャンブレイクアウトとは

    ドンチャンブレイクアウトは、過去N日間の最高値を上に抜けたら買い、最安値を下に抜けたら売り、というシンプルなルールです。1960年代にリチャード・ドンチャンが体系化した、世界最古クラスのシステムトレード手法です。

    トレンドが続いているときは利益を乗せやすく、レンジ相場ではダマシに何度も刺されるという特徴があります。ロジックが単純な分、何が起きているかを自分の目で確認しやすく、EAの学習教材として最適です。

    EAの仕様

    • エントリー: 1本前の足の終値が、その前20本の最高値(最安値)を突破したとき
    • 損切り: ATR(14)の2倍の距離にストップを設置
    • 決済: ストップアウトのみ(利確はトレーリングストップで追跡)
    • トレーリング: 30pips以上の利益で10pips幅のストップに追跡開始
    • ポジション: 1ポジション方式(保有中は新規エントリーしない)
    • タイムフレーム: 日足推奨(任意の時間足で動作)

    MQL4ソースコード(全文)

    以下がコンパイル可能な完全なソースコードです。MT4のMetaEditorに貼り付けてコンパイルすれば、すぐにテストできます。

    //+——————————————————————+
    //| DonchianBreakout.mq4 |
    //| rehav trading system |
    //| 無料公開用サンプルEA – ドンチャンブレイクアウト |
    //+——————————————————————+
    #property copyright "rehav trading system"
    #property link "https://www.rehavtrading.com"
    #property version "1.01"
    #property strict

    //— 入力パラメータ
    input int ChannelPeriod = 20; // チャネル期間(高値・安値の参照本数)
    input int ATRPeriod = 14; // ATR期間
    input double ATRMultiplier = 2.0; // SLのATR倍率
    input double Lots = 0.01; // ロットサイズ
    input int MagicNumber = 20260918; // マジックナンバー
    input int Slippage = 3; // 許容スリッページ(ポイント)
    input bool UseTrailingStop = true; // トレーリングストップ有無
    input int TrailStartPips = 30; // トレーリング開始利益(pips)
    input int TrailStepPips = 10; // トレーリング幅(pips)

    //— グローバル変数
    double gPipPoint;

    //+——————————————————————+
    //| 初期化関数 |
    //+——————————————————————+
    int OnInit()
    {
    if(Digits == 3 || Digits == 5)
    gPipPoint = Point * 10.0;
    else
    gPipPoint = Point;

    Print("DonchianBreakout EA 初期化完了。チャネル期間=", ChannelPeriod,
    " ATR倍率=", ATRMultiplier, " ロット=", Lots);
    return(INIT_SUCCEEDED);
    }

    //+——————————————————————+
    //| 終了関数 |
    //+——————————————————————+
    void OnDeinit(const int reason)
    {
    Print("DonchianBreakout EA 終了。理由=", reason);
    }

    //+——————————————————————+
    //| OnTick – 毎ティック実行 |
    //+——————————————————————+
    void OnTick()
    {
    // — 既存ポジションの管理 —
    ManagePositions();

    // — 新規エントリー判定(新しい足の始値のみ) —
    if(!IsNewBar())
    return;

    // シグナル判定
    int signal = CheckSignal();
    if(signal == 0)
    return;

    // 既存ポジションがあればエントリーしない(1ポジション方式)
    if(HasOpenPosition())
    return;

    // — エントリー実行 —
    double atr = GetATR();
    double slDistance = atr * ATRMultiplier;

    if(signal == 1) // 買いシグナル
    {
    double price = Ask;
    double sl = price – slDistance;
    int ticket = OrderSend(Symbol(), OP_BUY, Lots, price, Slippage,
    sl, 0, "DonchianBuy", MagicNumber, 0, clrBlue);
    if(ticket < 0)
    Print("買い注文失敗: ", GetLastError());
    else
    Print("買いエントリー: ticket=", ticket, " price=", price, " SL=", sl);
    }
    else if(signal == -1) // 売りシグナル
    {
    double price = Bid;
    double sl = price + slDistance;
    int ticket = OrderSend(Symbol(), OP_SELL, Lots, price, Slippage,
    sl, 0, "DonchianSell", MagicNumber, 0, clrRed);
    if(ticket < 0)
    Print("売り注文失敗: ", GetLastError());
    else
    Print("売りエントリー: ticket=", ticket, " price=", price, " SL=", sl);
    }
    }

    //+——————————————————————+
    //| 新しい足かどうかの判定 |
    //+——————————————————————+
    bool IsNewBar()
    {
    static datetime lastBarTime = 0;
    datetime currentBarTime = iTime(Symbol(), Period(), 0);
    if(currentBarTime != lastBarTime)
    {
    lastBarTime = currentBarTime;
    return true;
    }
    return false;
    }

    //+——————————————————————+
    //| ドンチャンブレイクアウトのシグナル判定 |
    //| 1本前の足の終値が、その前N本の高値(安値)を突破したかを判定 |
    //| 戻り値: 1=買い, -1=売り, 0=シグナルなし |
    //+——————————————————————+
    int CheckSignal()
    {
    // bar1の終値
    double prevClose = iClose(Symbol(), Period(), 1);

    // bar2〜bar(N+1)の最高値・最安値(直前のN本、bar1は除外)
    int highIdx = iHighest(Symbol(), Period(), MODE_HIGH, ChannelPeriod, 2);
    int lowIdx = iLowest(Symbol(), Period(), MODE_LOW, ChannelPeriod, 2);
    double highest = iHigh(Symbol(), Period(), highIdx);
    double lowest = iLow(Symbol(), Period(), lowIdx);

    if(prevClose > highest)
    return 1;
    else if(prevClose < lowest)
    return -1;

    return 0;
    }

    //+——————————————————————+
    //| ATRの取得 |
    //+——————————————————————+
    double GetATR()
    {
    return iATR(Symbol(), Period(), ATRPeriod, 1);
    }

    //+——————————————————————+
    //| オープンポジションの有無 |
    //+——————————————————————+
    bool HasOpenPosition()
    {
    for(int i = OrdersTotal() – 1; i >= 0; i–)
    {
    if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
    {
    if(OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber)
    return true;
    }
    }
    return false;
    }

    //+——————————————————————+
    //| ポジション管理(トレーリングストップ) |
    //+——————————————————————+
    void ManagePositions()
    {
    if(!UseTrailingStop)
    return;

    for(int i = OrdersTotal() – 1; i >= 0; i–)
    {
    if(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
    continue;
    if(OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber)
    continue;

    double trailStart = TrailStartPips * gPipPoint;
    double trailStep = TrailStepPips * gPipPoint;

    if(OrderType() == OP_BUY)
    {
    if(Bid – OrderOpenPrice() >= trailStart)
    {
    double newSL = Bid – trailStep;
    if(newSL > OrderStopLoss() || OrderStopLoss() == 0)
    {
    if(!OrderModify(OrderTicket(), OrderOpenPrice(), newSL, 0, 0, clrBlue))
    Print("トレーリング変更失敗(Buy): ", GetLastError());
    }
    }
    }
    else if(OrderType() == OP_SELL)
    {
    if(OrderOpenPrice() – Ask >= trailStart)
    {
    double newSL = Ask + trailStep;
    if(newSL < OrderStopLoss() || OrderStopLoss() == 0)
    {
    if(!OrderModify(OrderTicket(), OrderOpenPrice(), newSL, 0, 0, clrRed))
    Print("トレーリング変更失敗(Sell): ", GetLastError());
    }
    }
    }
    }
    }
    //+——————————————————————+

    バックテスト結果(2つの市場環境で比較)

    実ティックデータが入手できないため、Pythonで幾何ブラウン運動(GBM)による模擬的な日足データを2,520本(約10年分)生成し、EAと同じロジックでトレードを再現しました。これは実口座での利益を保証するものではありません。ロジックの妥当性を統計的に確認するのが目的です。

    2つのシナリオを比較しました:

    • パターンA(ランダムウォーク): トレンドのない市場。価格は純粋なランダムウォーク。
    • パターンB(レジーム混合): 250日ごとに「上昇トレンド」「レンジ」「下降トレンド」が交代する市場。現実のFX相場に近い構造。

    検証結果サマリー

    指標 パターンA(トレンドなし) パターンB(レジーム混合)
    総トレード数 329 355
    勝率 54.4% 65.9%
    プロフィットファクター 0.84 1.46
    期待値(1トレード) -75円 (-7.5pips) 154円 (15.4pips)
    t値 -1.5 3.22
    最大ドローダウン 36934円 12118円
    平均保有日数 2.2日 2.2日
    総損益 -24517円 54536円

    結果から読み取れること

    パターンA(トレンドなし): 損失

    プロフィットファクター0.84、期待値は1トレードあたり-75円の損失。t値は-1.5で、統計的に有意な損失システムであることを示しています。トレンドのない市場でトレンドフォロー手法を使うと、構造的に損をします。これはバグではなく、手法と市場環境のミスマッチです。

    パターンB(レジーム混合): 利益

    プロフィットファクター1.46、期待値は1トレードあたり154円の利益。t値は3.22で、2.0を超えているため統計的に有意な利益システムと言えます。トレンド期にブレイクアウトで乗せた利益が、レンジ期の損失を上回った結果です。

    つまり、ドンチャンブレイクアウトは「トレンドがあるときにこそ機能する」ことが数字で裏付けられました。トレンドの有無を判定するフィルタを追加すれば、パターンAのような環境での損失を減らせるはずです。

    この検証の限界(正直な注意点)

    • 模擬データを使用: 実際のFX価格データではありません。スプレッド・スワップ・スリッページを含んでいません。これらを含めると結果は悪化します。
    • スプレッド未考慮: 実運用ではエントリー時点ですでにスプレッド分のマイナスからスタートします。特にレンジ期の頻繁なエントリーでは無視できないコストです。
    • 最適化未実施: チャネル期間20・ATR倍率2.0は一般的な値ですが、最適化は行っていません。パラメータの過剰最適化はカーブフィッティングの罠に繋がります。
    • 1通貨ペアのみ: ポートフォリオ効果(複数通貨での分散)は考慮していません。

    これらの限界を理解した上で「それでもこのEAをベースに改良したい」と考えるなら、それがまさにEA開発と監査の価値がある部分です。

    ここからどう改良するか

    このEAをベースに、次のような改良が考えられます:

    • トレンドフィルタの追加: 200日移動平均線の向きでトレンドの有無を判定し、トレンド時のみエントリー
    • スプレッドガード: スプレッドが一定以上のときはエントリーをスキップ(実運用必須)
    • 時間フィルタ: 流動性が低い時間帯のエントリーを回避
    • 複数通貨のポートフォリオ化: 1通貨のレンジ期間を他通貨のトレンドで補う

    これらの改良を設計して実装し、統計的に有意かどうかを検証する。それがEA監査サービスEA作成代行でやっていることです。

    カスタムEAの開発を依頼しませんか?

    この記事のEAは学習用サンプルですが、あなたのトレードロジックをMQL4/MQL5で実装できます。検証しやすいログ仕様を標準装備し、納品後の期待値照合もそのまま行えます。

    ✅ あなたの裁量ルールのEA化

    ✅ 監査済み戦略の実装

    ✅ スプレッドガード・ログ出力など実運用仕様を標準装備

    MT4インジケーターやEAの作成を依頼する(ココナラ) →(納期3営業日以内)

    まずは1,000円のEAクイック診断で、お手持ちのEAの数値診断も可能です。

    まとめ: 透明性が信頼に繋がる

    無料EAを公開して「そのままでは損をする」と正直に書くのは、販売側としては珍しいかもしれません。しかし、EAの価値はロジックの魔法ではなく、検証と改良のプロセスにあります。

    ソースコードを公開し、限界も明記する。その上で「ここをどう直せば良くなるか」を示す。これが、私がEA開発と監査で大切にしている考え方です。

    もしあなたが「動くけど中身が分からないEA」を持っているなら、ぜひ10年データで統計監査にチャレンジしてみてください。数字で見える化すれば、次に何をすべきかが必ず見えます。

    ※ 本記事のバックテストは模擬データによるシミュレーションであり、実取引の結果ではありません。過去の実績が将来の成果を保証するものではありません。

  • EA開発は検証設計で決まる — t値・スプレッド会計・Bid歪みを開発前に組み込む

    EA開発は検証設計で決まる — t値・スプレッド会計・Bid歪みを開発前に組み込む

    「バックテストは完璧だったのに、フォワードで急に負け始めた」
    そんな相談を、これまで何度も受けてきました。

    原因はコードのバグでも、スピード不足でもありません。検証方法を「作った後」に決めていたことです。

    これは仕方のないことです。EAが完成してからバックテストをかけると、人はどうしても「良く見える条件」を後から選んでしまいます。スプレッドを少し狭く。好調な年だけを期間に。取引回数が増えるパラメータだけを採用。どれも不正ではなく、ただの「選択」です。でも、その選択の積み重ねが、実運用で崩れるEAを生みます。

    この記事では、開発のスタートラインで決めておくべき数値を3つだけに絞って解説します。t値・スプレッド会計・Bid歪み。この3つを仕様書に書いてから開発に入るだけで、完成後の後悔をかなり減らせます。

    なぜ「後から検証」では間に合わないのか

    バックテストは、条件を選べる分だけ自由に良く見せられます。

    • スプレッドを現在より狭く設定する
    • 好調な年だけを期間に選ぶ
    • 取引回数が増えるパラメータだけを採用する

    ここに悪意はありません。ただ、先に検証方法を決めていないと、あとから都合の良い条件を選んでしまうのが人間です。開発前に「何をどう検証するか」を文書化しておけば、この後付けの条件選択を構造的に防げます。

    外注する場合はもっとシンプルです。検証設計を発注書に一文書き加えるだけで、納品物の質が変わります。外注前に整理すべき項目は要件定義チェックリストにまとめています。

    検証設計に入れるべき3つの数値

    1. t値 — 「偶然ではない」ことを数字で保証する

    t値は「期待値÷ばらつき」で算出される統計量で、その利益が偶然のブレではないかを判定します。

    目安はシンプルです。取引件数300件以上・t値2.0以上を、設計段階の合格ラインに設定してください。

    期間5年で取引が100件未満のEA — どれだけプロフィットファクターが優秀でも、統計的には「まだ何とも言えない」状態です。年ごとの期待値のばらつき(標準偏差)も合わせて見ることで、「特定の1年だけ稼いだEA」を早い段階でふるい落とせます。

    2. スプレッド会計 — 実測よりやや広めで計算する

    スプレッドは時間帯で変動します。特にロールオーバー(日本時間の朝6〜7時前後)は一時的に拡大します。その時間帯にエントリーするEAを「平均スプレッド」だけで検証すると、実態より有利な数字が出ます。

    設計段階での合格条件はこうです。実測の1.2〜2倍のスプレッドでも利益が残ること

    当サイトの監査実録でも、スプレッドを2倍にしただけで利益が消えるロジックを複数確認しています。これは口座選び以上に、EAの命運を分ける項目です。詳しくはスプレッドとスワップの正直会計で解説しています。

    3. Bid歪み — エントリー時刻の実際の約定価格を疑う

    ヒストリカルデータの多くはBid終値ベースで記録されています。ところがロールオーバー直後の0時台は、Bid価格が一時的に不自然に沈む(または跳ねる)ことがあるのです。その瞬間にエントリーするロジックは、データ上だけ有利に見えてしまいます。

    実際の監査では、特定時刻のエントリーが実コスト比で数pips不利になっていたケースを確認しています。対策はシンプルです。エントリー時刻を、歪みが重なりやすい時間帯からずらして、同じ期待値が出るか再検証すること。時間帯別の分析例は東京時間のドリフト検証で公開しています。

    開発前に決める検証チェックリスト

    この6項目を、そのまま仕様書や発注書に貼ってください。

    項目 合格ラインの例
    テスト期間 5年以上(理想は10年)・複数年で傾向一致
    データ精度 ティック精度99%以上(または実ティック)
    統計性 300取引以上・t値2.0以上
    コスト スプレッド2倍で利益が残る・スワップを含む
    エントリー時刻 ロールオーバー帯のBid歪みを再検証済み
    頑健性 パラメータ±20%で成績が急落しない

    これを開発者と発注者の間で共有するだけで、「検証済み」の基準がぶれなくなります。頑健性の作り方は過剰最適化を防ぐ設計の実践ガイドで詳しく扱っています。

    すでに動いているEAはどうするか

    「もう開発済みだから遅い」と思うかもしれませんが、そんなことはありません。検証設計は後から当てはめることもできます。

    まずはEAが稼がない理由を数字で特定する5つのチェックポイント、または無料のEAセルフチェックシート(20問)で、今の信頼度を自分で点検してみてください。5分で終わります。

    🔧 EAの開発・検証はプロに任せたい方へ

    この記事で紹介した検証設計(t値・スプレッド会計・Bid歪みの確認)を組み込んだ形で、EA・インジケーターの開発を承っています。仕様の段階から検証設計を一緒に決めるので、「動くけど根拠が不明」なEAにはなりません。

    MT4インジケーターやEAの作成を依頼する(ココナラ) →(納期3営業日以内)

    今あるEAが本当に稼げるか先に知りたい方には、EAクイック診断(1,000円・1営業日)。テスト条件そのものを検証するEA監査もご利用いただけます。

    コミュニティの啓発活動の一環として、ドンチャンブレイクアウトの無料EA(ソースコード全文公開)も公開しています。MQL4の学習教材としてご活用ください。

    検証設計は、いわば「EAの信用性を作る工程」です。開発前にかける1時間が、完成後の数千時間の運用と、失う可能性のある資金を守ります。

    まずは上の表を、今あなたが動かしているEA、あるいは今検討しているEAに当てはめてみてください。何個埋まりますか?


  • FXの税金と確定申告のまとめ: 20.315%分離課税・損失の3年繰越・スワップも対象

    FXの税金と確定申告のまとめ: 20.315%分離課税・損失の3年繰越・スワップも対象

    EAで得た利益には税金がかかる。仕組みだけ先に押さえる

    「FXやEA(自動売買)で利益が出たけれど、税金の計算や確定申告の手続きをどうすればいいか分からず不安…」
    「もし申告漏れがあってペナルティ(追徴課税)を受けたらどうしよう…」
    利益が出た喜びの裏で、税金対策や確定申告の不慣れさから強い不安や恐怖を感じるトレーダーは少なくありません。

    無駄な追徴課税による手残り資金の減失(損失回避)を防ぐために、まずは税金の基本ルールを客観的に把握しましょう。
    給与所得者の場合、年間のFX利益が20万円を超えると確定申告の義務が発生します。
    本記事では、トレーダーが絶対に押さえるべき税制の仕組みと、面倒な申告作業の手間を劇的に削減する実践的アイデアを解説します。

    ※本記事は一般的な情報の提供を目的としており、個別の具体的な税務相談については税理士等の専門家に確認してください。

    国内FXは「申告分離課税」!税率と計算の仕組みとは?

    国内FX口座(および国内EA運用)で得た利益は、総合課税(雑所得)ではなく「申告分離課税」の対象となります。
    他の所得(給与や事業所得など)と合算されず一律の税率が適用されるため、「FXで大儲けしたら所得税率が跳ね上がるのではないか」と怯える必要はありません。
    税率は一律20.315%(所得税15% + 住民税5% + 復興特別所得税0.315%)で計算されます。

    税金の計算対象には、為替の差損益だけでなく受け取ったスワップポイントも全額含まれる点に重大な注意が必要です。
    当サイトのリスクオンドリフトの検証などで解説しているスワップ狙いの長期保有EAを回している場合、未決済スワップの課税タイミングや受取記録の集計を忘れると申告漏れにつながります。
    国内FXの課税ルールに関する重要ポイントは以下の通りです。

    • 年間利益が100万円の場合:発生する税額は一律で約20万3,150円となります。
    • スワップポイントの扱い:決済時または付与された年の所得として計上する必要があります。
    • 年間取引報告書の集計:各FX業者が発行する報告書データを元に正確に集計を行います。

    損失が出た年も確定申告は必須?「3年間の繰越控除」という節税策

    「今年はFXで負けて損失が出たから、確定申告なんて関係ない」と放置してしまうのは非常にもったいない失敗です。
    FXで年間の通算損益が赤字になった場合でも、確定申告を行うことで損失を翌年以降最長3年間にわたって繰り越せる(繰越控除)という強力な救済制度が存在します。

    翌年以降に利益が出た際、繰り越した損失と相殺(損益通算)できるため、将来支払うべき税金を大幅に減らすことができます。
    申告不要基準(利益20万円以下)に該当する年であっても、繰越控除の適用を受けるためには確定申告書の提出が必須となります。
    繰越控除を活用する際の注意点は以下の通りです。

    • 適用対象の範囲:繰越控除は国内FXなどの「先物取引に係る雑所得等」同士でのみ相殺が可能です。
    • 申告の連続性:損失が発生した年だけでなく、取引がない年であっても毎年連続して確定申告書を提出する必要があります。
    • EA運用における重要性:EAは年によって収益の振れ幅が大きいため、繰越控除の管理は資産防衛の要となります。

    海外FX口座と国内FX口座で税金はどう変わるのか?

    海外FX業者を利用して得た利益については、国税庁は申告分離課税ではなく総合課税(雑所得)として扱う見解を示しています。
    総合課税では給与所得などと合算されて累進課税が適用されるため、利益が大きくなるほど税率(最高約55%)が高くなるリスクがあります。

    さらに、海外FXの損失は国内FXの利益と損益通算できず、損失の3年間繰越控除も適用されません。
    実務上の取り扱いについては個別の事情によって分かれる可能性があるため、口座開設の段階から税制上の違いを明確に意識しておく必要があります。

    国内・海外それぞれの口座の特徴やメリット・デメリットについては、FXの国内・海外口座比較で詳しく整理しています。個別の具体事例に関する税務判断につきましては、詳しくは税理士等の専門家に確認してください。

    確定申告の手間を大幅に減らす!口座データのスマート取り込み

    確定申告と聞くと「手計算で膨大な取引履歴を集計しなければならないのか…」と身構えてしまうかもしれません。
    しかし、現在のFX口座はどこも年間の損益をまとめた「年間取引報告書」をPDF等で一括発行してくれるため、複雑な計算は不要です。

    さらに近年では、FX口座の年間損益データを直接取り込んで申告書類を自動作成できる確定申告クラウドソフトが普及しています。
    データ連携を活用することで入力ミスを防ぎ、作業時間を大幅に短縮できるため、初めて申告を行う方でもストレスなく完了させることができます。

    【広告】PR

    マネーフォワード クラウド確定申告でFXの年間損益をかんたん申告 →
    FX口座の取引データ連携に対応した確定申告オンラインサービス。銀行口座やカードとのデータ連携で日々の記帳が不要になり、初めての申告もスムーズに進みます。

    税引き後の純利益はどう運用する?資産分散のスマートな選択肢

    税金を正しく納め、手元に残った貴重な純利益は、単に口座に放置するのではなく適切に再投資へ回すのが資産形成の鉄則です。
    利益の全額を再びリスクの高いFXだけに投じるのではなく、株式や投資信託などの異なった資産クラスに分散投資することで、ポートフォリオ全体のリスクを平準化できます。

    特にNISA(成長投資枠・つみたて投資枠)を活用すれば、運用益が非課税となるため節税効果を極大化できます。
    株式の「特定口座(源泉徴収あり)」を選択すれば確定申告の手間もかからず管理が容易になるため、「FXで攻めて利益を出し、株式で守りの資産を築く」という堅実な資産形成スタイルを構築できます。

    【広告】PR

    株式取引を始めるなら【DMM株】(PR)
    国内株の取引口座。NISAにも対応し、特定口座なら株の売買益の申告手続きもシンプルに。FXで作った利益を別の資産クラスに分散する入口として利用できます。

    まとめ: 税金の仕組みを知っているだけで将来の手残り額が変わる

    FXやEA運用で資産を着実に増やしていくためには、相場での勝ち方だけでなく「税金の守り方」を知ることが不可欠です。
    税制の正しい知識を持ち、便利な自動化ツールを活用することで、無駄な追徴課税のリスクをゼロにし、手元に残る純資金を確実に最大化させることができます。
    今回解説した重要ポイントは以下の通りです。

    • 申告分離課税20.315%:国内FXの利益は一律課税。給与所得者は年間利益20万円超で申告義務。
    • スワップポイントも課税対象:EA運用の受取記録は忘れずに日頃から集計しておく。
    • 3年間の損失繰越控除:赤字の年こそ必ず確定申告を行い、将来の節税枠を確保する。
    • 利益の分散投資:税引き後の純利益はNISAや株式(特定口座)へ振り分けて資産を防衛する。

    FX・EAの基本知識から運用環境の構築手順まで、当ブログのFXとは何かの基本ガイド自動売買を始める前の確認事項もあわせてご覧ください。

    年間の損益集計も自動で整えたい方へ

    スプレッドシートに1行書くだけで翌朝には日報が届くAI×GAS日報自動生成ツールを、このブログの運営者がココナラで納品しています。日々の記録づけがそのまま年間集計の下地になります。納期は3営業日以内です。

    AI×GAS日報自動生成ツールを見る(ココナラ) →

    あなたは今年の取引損益やスワップの集計準備をすでに進めていますか?
    申告期限間際に慌ててパニックにならないよう、今すぐ取引報告書のダウンロードから始めてみませんか?


  • 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のパラメータ設計で最も失敗しやすい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徹底比較 — 4社を実運用視点で選び分ける

    EA用VPS徹底比較 — 4社を実運用視点で選び分ける

    「就寝中に自宅PCでEAを稼働させていたら、Windowsの自動更新で勝手に再起動してポジションが放置されていた…」「突然の停電や回線瞬断で、本来執行されるはずだった損切り(SL)が機能せず大損失を出した…」そんな背筋が凍るようなアクシデントを経験したことはありませんか?

    24時間休まず稼働し続けるEA(自動売買)にとって、自宅PCでの運用は常に予期せぬ停電・回線トラブル・OS再起動という重大なリスクと隣り合わせです。

    特に急変動時にストップロスが正しく実行されない事態になれば、一瞬で口座資金が吹き飛ぶ危険性すら生じます。こうした破滅的なトラブルを回避し、24時間365日安全な運用環境を確保するために、VPS(仮想専用サーバー)の導入は実質的に必須となります。

    しかし、「どのVPSを選んでも性能は同じ」というわけではありません。本記事では、EA運用の実測視点から選び方の基準を明確にし、国内FX運用でおすすめの主要4社を徹底比較します。

    失敗しないVPSの選定基準 — EA運用者がチェックすべき5つのポイント

    VPSを契約する際は、単なる月額料金の安さだけでなく、EAの安定稼働に直結する以下の5項目をしっかり比較することが重要です。

    • 1. 稼働率の高さ: 目安は99.9%以上です。稼働率99.9%は「年間約8.7時間の停止時間」を生みますが、99.99%になれば「年間約52分」まで凝縮されます。就寝中や外出中に動くEAにとって、このわずかな差が大きな損益差につながります。
    • 2. リソースの割り当て方式(共有型 vs 専有型): 一般的なVPSはCPUやメモリを他ユーザーと共有するため、指標発表時など取引が集中する時間帯に処理遅延やtick取りこぼしが発生する危険があります。一方、リソース専有型であれば他者の負荷の影響を受けず常に安定した処理能力を確保できます。
    • 3. FXサーバーとのレイテンシ(応答速度): 利用するFX会社のサーバーとVPSデータセンター間の物理的・回路的な距離です。国内FX口座で運用する場合は、日本国内にデータセンターを置くサービスを選ぶのが鉄則です。
    • 4. 運用規模に合ったスペックと料金: EA1本のみの単体稼働であれば最小プランで十分ですが、複数EAや複数通貨ペアを同時稼働させる場合はメモリ容量に余裕を持つ必要があります。
    • 5. 無料お試し期間の有無: 実際にMT4/MT5を導入してEAを動かしてみないと分からない部分も多いため、事前にお試し体験できるかは重要な比較ポイントです。

    国内主要VPS4社の性能比較表

    項目 XServer VPS for FX プレミアム シンクラウド デスクトップ for FX お名前.com デスクトップクラウド ABLENET VPS
    方式 リソース専有型(国内唯一) クラウドデスクトップ クラウドデスクトップ VPS
    訴求 取引集中時も安定稼働 1日61円から 超高速・24時間安定稼働 稼働率99.99%以上
    OS Windows Windows / Ubuntu Windows Windows / Linux
    お試し 最大10日間無料
    向いている人 安定性を最優先したい コストを抑えたい とにかく安く まず試してみたい

    ※最新の料金・プラン構成は各公式サイトでご確認ください。

    各サービスの環境別レビュー

    1. XServer VPS for FX プレミアム — 安定性を最優先するなら

    国内のFX自動売買専用VPSとしては唯一となるリソース専有型を採用しています。CPUやメモリが個別のユーザー専用に確保されるため、他ユーザーのアクセス集中による影響を受けにくく、約定遅延やEAの処理揺らぎを極限まで抑えられる設計です。

    「経済指標の発表時に他のVPSが重くなり肝心な注文が滑った」という痛い経験をお持ちの方や、高額口座で安定性を第一に追求したいトレーダーに最適です。

    【広告】PR
    XServer VPS for FX プレミアムを公式サイトで見る →

    2. シンクラウド デスクトップ for FX — 運用コストを最小化したいなら

    「1日61円から」という圧倒的な低価格でスタートできるFX自動売買専用のクラウドデスクトップです。スタートアップ(2GB)からエグゼクティブ(20GB)まで幅広いプランが用意されており、WindowsとUbuntuから選択可能です。

    初めてVPS環境を構築する初心者の方や、EA1本のみで月々のランニングコストを最小限に抑えたい場合の賢い選択肢となります。

    【広告】PR
    シンクラウド デスクトップ for FXを公式サイトで見る →

    3. お名前.com デスクトップクラウド — 低価格で実績豊富な定番

    ドメイン事業で有名なGMOグループが運営するFX専用VPSです。「超高速かつ24時間安定稼働」をコンセプトに掲げ、初心者でも操作しやすいWindowsデスクトップ環境が手軽に構築できます。

    低価格帯VPSの定番として知名度が高く、実績重視で手軽に導入したい方に向いています。

    【広告】PR
    お名前.com デスクトップクラウドを公式サイトで見る →

    4. ABLENET VPS — まずは無料で体験してみたいなら

    28年以上の運用実績と稼働率99.99%以上の高品質サーバーが強みの老舗サービスです。最大の魅力は最大10日間無料で本番環境をお試しできる点にあります。

    WindowsおよびLinuxに対応しており、最低利用期間の縛りもありません。VPSの使い勝手は実際にMT4/MT5をインストールしてEAを稼働させないと分からない部分が多いため、「まずはリスクなく試してから判断したい」方に強くおすすめできます。

    【広告】PR
    ABLENET VPSを公式サイトで見る(最大10日間無料お試し) →

    トレードスタイルに応じたおすすめの選び方

    • 安定性を最優先したい方(高額運用・複数EA運用・長期安定稼働): XServer VPS for FX プレミアム
    • コストパフォーマンスを最優先したい方(EA1本運用・お試し稼働): シンクラウド デスクトップ for FX / お名前.com デスクトップクラウド
    • まずは無料で実際の挙動を確認したい方: ABLENET VPS(最大10日間無料体験)

    VPS選びと同じくらい重要な「口座のコスト構造」とは?

    VPSの導入は「システムが途切れず稼働し続ける環境」を作るための必要不可欠な防衛策です。

    しかし、どれほど完璧なサーバーを用意しても、EAの運用成果そのものは取引戦略の優位性と口座のコスト構造(スプレッド・スワップ・約定力)で決まります。当ブログの監査実録でも、スプレッド2倍で期待値が消える戦略を検証しています。

    VPSを契約してシステム基盤を整えたら、次はエントリー時刻の実スプレッドを2週間ログして、検証値との照合をおすすめします。

    あなたの運用環境は、本当にEA本来の力を引き出せていますか?まずは現在の実効スプレッドとサーバー環境のチェックから一歩を踏み出してみましょう。

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

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

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

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

    関連記事: 東京ドリフトを10年分のM1データで検証した記録 / EA運用は口座で決まる — スプレッドとスワップの正直会計


  • EA作成を外注する前の要件定義チェックリスト — 失敗しない7項目

    EA作成を外注する前の要件定義チェックリスト — 失敗しない7項目

    「月利◯%で放置して稼げる勝てるEAを作ってください」— ココナラなどでEA作成を外注する際、実はこれが最も失敗しやすい危険な依頼文です。「プロに頼めば良い感じに作ってくれるだろう」と丸投げした結果、納品されたのはバックテストすらまともに動かない欠陥プログラムだった…というトラブルが後を絶ちません。

    なぜこのような失敗が起きるのでしょうか?開発者は相場の予言者ではなくプログラマーだからです。検証されていない曖昧なロジックを丸投げされると、開発側は「それっぽく動作するシステム」を作るしかなく、期待値の裏付けがないEAが完成してしまうのです。

    貴重なお金と開発期間を無駄にするリスクを回避するために、外注前の要件定義で必ず決めておくべき7つのチェックリストをまとめました。

    外注トラブルを防ぐ!発注前に確定すべき7つの要件定義リスト

    開発者との認識ギャップを防ぎ、意図通りの動作を実現するために、発注前に以下の7項目を文章化しておきましょう。

    • 1. 対象通貨ペアと時間足: 稼働させるシンボルと時間足を明確に指定します。複数ペア運用の場合はマジックナンバーの分離方針も併せて定義します。
    • 2. エントリー条件と発生頻度: 時刻ベースの固定エントリーか、インジケーター等のシグナル判定か。エントリーのタイミングと想定頻度を正確に取り決めます。
    • 3. SL/TP(損切り・利益確定)の計算基準: 固定pipsで指定するのか、ボラティリティ(ATR等)基準か。最小値の設定やTP未設定(SLのみ)の可否も明記します。
    • 4. マジックナンバーによる個別管理: 1つの口座内で複数のEAや複数通貨ペアを同時運用する場合、注文の混同を防止するために必須となる仕様です。
    • 5. スプレッドガードの設置: エントリー時刻のスプレッドが設定値を超えた場合、当日のトレードを自動送信スキップする機能です。スプレッド感度の高いEAには欠かせません。
    • 6. 詳細なログ出力機能: 注文が通った瞬間の実効スプレッド・約定価格・損益を毎日ログに残す仕様です。運用開始後の期待値照合を行うために最も重要な項目と言えます。
    • 7. ソースコード(.mq4/.mq5)納品の有無: 納品物が実行ファイル(.ex4/.ex5)のみか、ソースコードも含まれるか。将来のロジック改修や第三者による統計監査の可否を左右します。

    なぜ「監査→設計→実装」の順番が安全なのか?

    開発者にロジックを完全丸投げするのではなく、統計的に優位性が実在する現象(例: 特定時間帯の価格アノマリー)を出発点に設計することで、期待値の見通しは劇的に向上します。

    もしすでに手元にアイデアや既存EAがあるなら、いきなり新規開発を発注するのではなく、まずは統計監査で期待値を確定させることが資産を守る鉄則です。

    その上で判明した課題を設計に落とし込み、実装へ進む流れこそが、無駄な開発費用と資金消失を防ぐ最も安全な手順となります。

    納品後に必ず実行すべき「期待値の答え合わせ」

    無事にプログラムが納品されたら、いきなりリアル口座で稼働させるのではなく、以下の検証プロセスを必ず実行してください。

    • バックテストでの再現性確認: 指定した条件通りにトレードが再現されるか、ストラテジーテスターでチェックする
    • デモ口座での期待値照合: 実運用ログ(項目6の仕様)を出力させ、1ヶ月のデモ稼働で検証値と整合しているか数字で確認する

    この照合を行うことで、今回の外注開発が成功だったのかを客観的な数字で判定できます。

    なお、当ブログの運営体制では、事前の要件定義サポートから開発・監査まで3営業日以内で柔軟に対応可能です。

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

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

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

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

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


  • EA運用は口座で決まる — スプレッドとスワップの「正直会計」の考え方

    EA運用は口座で決まる — スプレッドとスワップの「正直会計」の考え方

    バックテストでは綺麗な右肩上がりを描いていたEAが、いざリアル口座で動かすと資産を削り始める…そんな原因不明の敗北に頭を悩ませていませんか?「信頼できるロジックを選んだはずなのに勝てない」という悩みは、EAそのものではなく『運用する口座のコスト構造』に潜んでいるケースが非常に多いのです。

    結論から言うと、EAの運用成績はロジックの優劣だけで決まるわけではありません。EAの本当の期待値は「粗利 − コスト」というシンプルな計算式で成り立っており、そのコストの大部分(スプレッド・スワップ・約定力)は口座依存だからです。本記事では、当サイトの監査実録で判明した事実をもとに、EA運用者が知っておくべき「正直会計」の思考法を徹底解説します。

    なぜ粗利からコストを引くと期待値が消えるのか?

    当サイトが東京ドリフト戦略を10年分のM1データで検証した際、1日あたりの平均粗利は11.1pipsでした。しかし、ここからスプレッドやスリッページなどの実運用コストが1日あたり5.4pips差し引かれ、最終的な期待値は+5.7pips/日まで縮小したのです。

    注目すべきは、実効コストが粗利の約半分(約48.6%)を占めているという事実です。

    もしスプレッドが平常時の2倍に広がる口座や時間帯で運用すれば、期待値+5.7pipsは一瞬で相殺されてゼロになります。これは抽象的な推論ではなく、当サイトの監査案件でも繰り返し見られる現実の恐怖構造です。

    1. スプレッド — 平常値と「急拡大する時間帯」の隠れたリスク

    多くのトレーダーは公式サイトに表示されている「平均スプレッド」だけを見て口座を選んでしまいがちです。しかし、スプレッドは常に一定ではなく、ロールオーバー前後(サーバー時間0時付近)や早朝、指標発表時に急拡大する特性を持っています。

    注文や決済がこの時間帯に重なると、本来獲れるはずだった利益がコストとして没収されてしまいます。

    このような無駄な損失を未然に回避するためには、以下の2つの対策が有効です。

    • 数日間のログ取得: 実際の運用口座でエントリー時刻の生データを記録し、時間帯別の実効スプレッドを正確に測定する
    • スプレッドガードの導入: 「スプレッドが閾値を超えたら当日のエントリーを自動スキップする」安全機能をEAに実装する

    特に朝窓やロールオーバーを狙う繊細な戦略では、このガード機能の有無が資金を守る防波堤となります。

    2. スワップ — 夜を跨ぐ戦略で資金を守るポイント

    日中にポジションを決済するデイトレード戦略であれば、スワップの影響を心配する必要はほとんどありません。しかし、ロールオーバー(0時)を跨いで保持するスイングトレードやナンピン型EAでは、マイナススワップが日々蓄積して大きな重荷になります。

    そのため、夜越えや週末越えが発生する戦略では、必ずスワップコストを含めた期待値で再計算する必要があります。

    マイナススワップによる圧迫を防ぐ選択肢として、スワップフリー口座を活用するアプローチも考えられます。

    ただし、※スワップフリーが常に有利とは限らず、対象通貨ペアやブローカーごとの適用条件・利用規約を事前に必ず確認してください。

    3. 約定品質 — バックテストと実運用の差をどう埋めるか?

    ストラテジーテスターによる検証値は、スリッページや約定拒否が起きない理想的な環境を前提としているため、現実よりも甘い結果になりがちです。実際のライブ環境では、通信遅延や板の薄さによって注文価格が滑る現象が日常的に発生します。

    検証結果とリアル運用の乖離に悩まされないためには、以下の照合プロセスが欠かせません。

    • 実効スプレッドの記録: エントリー時刻における実際の取引スプレッドと約定価格を毎日ログに出力させる
    • デモ口座でのテスト稼働: 実装したEAをデモ口座で1ヶ月動かし、検証値(例: +5.7pips/日)の範囲に収まるか照合する
    • 期待値照合の実施: 取得したログデータとバックテスト結果を比較し、コスト剥離の影響度を客観的に評価する

    この「期待値照合」を最後までやり切って初めて、本当に信頼できる口座選びが完了するのです。

    まとめ — あなたの口座は戦略の潜在力を活かせていますか?

    口座選びで最も重要なのは「どの業者が有名か」ではなく「この戦略のコスト構造に適合しているか」という視点です。

    スプレッドの平常値・急拡大する時間帯・スワップ・約定品質の4項目を、ご自身のEAの取引スタイルと今一度照らし合わせてみてください。

    無駄なコストによる損失を回避し、EA本来の期待値をしっかり手元に残す準備を始めてみませんか?

    【広告】PR

    XMTradingで口座を開設する

    当ブログで検証しているEA・戦略の多くは、スワップフリー口座(KIWAMI極など)を前提に会計しています。数百万人に利用されている国際ブローカーで、デモ口座からリスクなく試せます。

    XMTradingの口座開設はこちら →

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

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

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

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

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

    関連記事: 東京ドリフトを10年分のM1データで検証した記録 / EA作成を外注する前の要件定義チェックリスト / EA用VPS徹底比較 — 4社を実運用視点で選び分ける


  • 東京時間のドリフトは実在するか — 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の優位性は、エントリータイミングの微細な歪みによって消えてしまっていませんか?

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