「このEA、最近負けが続いている気がする」
フォワードテストを続けていると、ある時期からパフォーマンスが落ちてくる局面が必ずあります。そのとき頭をよぎるのが「このEAはもう寿命なのか」という疑問です。
EA-LabでGENESIS・凜・AXISの3つのEAを開発してきた中で、この問いに何度も向き合ってきました。
正直に言うと、初期の開発段階では「寿命」という概念をあまり真剣に考えていませんでした。バックテストで良い結果が出て、フォワードに移行してからも数ヶ月は安定していた。しかしある時期から成績が安定しなくなり、「EAには確かに寿命がある」という現実を開発者として体感することになりました。
この記事では、EAの寿命とは何か、なぜ相場に合わなくなるのか、そしてどう向き合えばいいかを開発側の視点で整理します。
EAの「寿命」とは何か
EAの寿命という言葉は、よく使われますが定義が曖昧なまま使われることが多いです。
EA-Lab的な定義を先に言っておくと、「EAの寿命」とはロジックが前提としていた相場の構造が変化し、優位性が再現できなくなった状態のことです。
プログラムとしてのEAは壊れません。設定した条件通りに動き続けます。しかし問題はその条件が「機能しなくなる」ことです。
例えばGENESISはBOXブレイクアウトを使っています。「一定期間のレンジを形成した後にブレイクが発生し、トレンドが継続する」という相場の構造を前提としています。この構造が頻繁に発生する相場環境であれば機能します。しかしブレイク後に即反転するようなノイズが増える局面、あるいはトレンドがほとんど発生しない膠着相場が続くと、PFは下がり、DDが膨らみます。
これがEAの「寿命」の正体です。EAが壊れたのではなく、EAが前提としていた相場環境が変わったということです。
なぜ相場は変化するのか
相場は常に変化しています。これは当然のことですが、EA開発をしていると改めて実感します。
変化の要因は大きく3つあります。
①マクロ環境の変化
金融政策・地政学リスク・金利動向といったマクロ要因によって、相場のボラティリティや方向性が変わります。低金利時代に機能していたロジックが、利上げ局面では機能しにくくなることがあります。
②市場参加者の変化
アルゴリズム取引の普及・機関投資家の戦略変更・個人投資家の増加といった参加者構造の変化も、相場の癖に影響します。特にアノマリー系EAはこの影響を受けやすいです。凜の開発では、特定の時間帯・曜日に発生するアノマリーを利用していますが、そのアノマリー自体が市場の広い認知によって薄まるリスクは常にあります。
③ボラティリティレジームの変化
低ボラティリティから高ボラティリティへの移行、またはその逆が起きると、EAのエントリー条件やTP/SLのバランスが現実の相場と合わなくなります。
このような変化は予測できません。だからこそEA開発では「相場が変わっても生き残れるか」という観点が最初から必要になります。
3つのEAを開発して気づいたこと
EA-Labで3つのEAを開発する過程で、寿命という問題への向き合い方が変わりました。
GENESISを作ったとき、最初に直面したのは「ダマシ」の問題でした。BOXをブレイクしたはずが即反転するケースが想定より多く、PFが伸びませんでした。対策としてフィルターを追加すると、今度は取引数が減りすぎる。SLを縮めると、ノイズで刈られる。この調整の繰り返しの中で気づいたのは、「相場の変化に対応しようとして条件を増やすほど、過剰最適化に近づいていく」という矛盾です。
凜では別の問題がありました。祝日前の市場挙動への対策として「祝日前倒しトレード」というロジックを試したのですが、バックテストで明確な改善が見られず、むしろロジックが複雑化するリスクが高まったため不採用にしました。アノマリーEAにおいてシンプルさを保つことが、長期的な再現性に直結するという教訓を得た開発でした。
AXISではロット制御が問題になりました。可変ロット方式を採用していた段階では、DDが不安定になり実運用での管理が難しかった。固定ロット・偶数ロット運用に変更して安定したのですが、このときも「柔軟性より再現性を取る」という判断が結果的には正しかったと感じています。
3つのEAに共通していたのは、複雑にするほど寿命が短くなる可能性があるという点です。条件を増やすということは、それだけ「特定の相場環境に最適化される」ことを意味します。そのような特定の状態がいつまでも続くとは限りません。
EAが「寿命を迎えた」のかどうかを判断する基準
成績が落ちてきたとき、まず考えるべきは「寿命なのか、それとも一時的なドローダウン局面なのか」です。この判断を間違えると、まだ機能するEAを捨てることになります。
EA-Lab的な判断基準を整理すると、以下のようになります。
一時的なドローダウンと考えられる場合
- フォワード期間が短い(3ヶ月未満)
- バックテスト上でも同様のDD局面が過去に存在する
- 取引回数が統計的に有意な水準に達していない
- 相場環境が一時的に特殊な状態にある(重要指標・政策決定が集中している等)
バックテスト上で類似DD局面があるかどうかを確認する方法はこちらをご参照ください。
寿命・ロジック劣化を疑うべき場合
- フォワードが1年以上続いているのにPFが1.0を下回り続けている
- バックテスト上で類似DD局面がなく、前例のない負け方をしている
- 取引回数が十分あるにもかかわらず、損失が偏っている時間帯・曜日・条件がある
- 相場環境が戻っているにもかかわらず回復しない
重要なのは「取引回数が十分にあるかどうか」です。取引回数が少ない段階で成績が悪いのは、単純にサンプル不足の可能性があります。統計的な信頼性を得るには、最低でも数百回以上のトレードが必要です。
寿命を延ばすために開発段階でできること
EAに寿命があるとすれば、その寿命をできるだけ延ばすことが開発側の課題になります。EA-Labが重視しているのは以下の点です。
過剰最適化を避ける
特定の期間に過度にフィットしたEAは、相場が変わった瞬間に崩れます。EA-Labでは10年バックテストを基準にしています。10年という期間には、トレンド相場・レンジ相場・リーマンショック後・コロナ禍など、さまざまな相場環境が含まれています。この長期間を通じて安定したPFが出るロジックは、ある程度の相場変化に耐えられます。
ロジックを説明できる状態に保つ
「なぜこの条件でエントリーするのか」が説明できないEAは危険です。説明できないということは、その条件がたまたまバックテストで機能しただけの可能性があります。GENESISのBOXブレイクアウトは「レンジ → ブレイク → トレンド」という相場の基本構造に基づいているため、なぜ機能するかを言語化できます。この「説明可能性」がロジックの普遍性と直結していると考えています。
条件をシンプルに保つ
条件が多いほど、すべての条件が同時に満たされる頻度は下がり、取引数が減り、かつ特定の相場環境に過度に依存することになります。凜の開発でも、条件を増やすことよりも「最低限の条件で優位性を取ること」を優先した結果、シンプルなロジックに落ち着きました。
DDを現実的な水準に設定する
EA-Labでは最大DDの目安を10%未満としています。これは「長期運用を前提にしたとき、資金を守ることが最優先」という思想からきています。高いリターンを狙うほど、相場変化の影響を大きく受けます。現実的なDDに収めることで、ロジックが一時的に機能しない局面でも退場せずに済む余地が生まれます。
寿命が来たEAをどう扱うか
すべての対策を講じても、いつか機能しなくなるEAはあります。その場合の選択肢は3つです。
①ロジックを見直して改良する
相場変化に合わせてパラメータやフィルターを調整します。ただしこの判断は慎重に行う必要があります。改良のつもりが「成績が悪い期間にだけ合わせた過剰最適化」になりやすいからです。GENESISでも改良を続けていますが、そのたびに「改良なのか、チェリーピッキングなのか」という問いに向き合います。
②運用を停止して保留にする
すぐに判断できない場合は、稼働を止めて観察する選択肢があります。凜・AXISのフォワード公開を一時停止して設定調整を行っているのも、同じ考え方に基づいています。性急に結論を出さないことも、長期運用の上では重要な判断です。
③使用を終了して新しいEAに移行する
明らかに優位性が失われたと判断した場合は、そのEAの使用をやめることも必要です。EA-Labでは現時点でこの段階に至ったEAはありませんが、開発者として「引き時」を持つことは最初から視野に入れています。
焦って乗り換えを繰り返すことのリスクもぜひご確認ください。
EAの寿命という概念が教えてくれること
EAの寿命を考えると、自然と「なぜそのEAが機能するのか」という問いに戻ります。
機能する理由が明確であれば、相場のどの変化が脅威になるかも見えてきます。逆に、機能する理由が説明できないEAは、相場が変わったときに何を直せばいいかもわかりません。
EA選びにおいても、この視点は有効です。バックテストのPFが高い・月利が高いEAより、「なぜこのロジックが機能するのか」を開発者が明確に説明できるEAの方が、長期運用に耐えられる可能性が高いと考えています。
フォワードテスト期間・取引回数・最大DD・PFの推移。これらを継続的に確認しながら、EAのコンディションを判断し続けること。それがEA運用の本質だと、3つのEA開発を通じて実感しています。
フォワードテストの見方についてはこちらも参考にしてください。
まとめ
EAの寿命とは、プログラムが壊れることではなく、ロジックが前提としていた相場の構造が変化した状態のことです。
相場は必ず変化します。だからこそ開発段階から「長く機能するロジックか」という問いを持ち続けることが重要です。
EA-Labで開発したGENESIS・凜・AXISは、いずれも過剰最適化を避け・説明可能なロジックを持ち・現実的なDDに収めることを設計の軸にしています。それがすぐに高いリターンにつながるわけではありませんが、長期運用を前提にしたとき最も重要な要素だと考えています。
成績が落ちたとき、焦って結論を出す前に「これは一時的なものか、それとも構造的な変化か」を問う習慣を持つこと。その判断眼を養うことが、EA運用で長く生き残る最も確実な方法です。