遺伝的アルゴリズムとは、MetaTrader5(MT5)でエキスパートアドバイザ(EA)をバックテストする際の最適化機能において、パラメータの一部の組み合わせのみを選別してテストする方法のことです。
バックテストの最適化では、さまざまなパラメータの組み合わせを試してパフォーマンスを比較します。そこで最も確実なのは全てのパラメータの組み合わせを総当たりで試して比較することですが、これだと膨大な時間を要します。そこで最適化のプロセスを効率化するために用いられているのが、遺伝的アルゴリズムです。反対に、総当たりによる最適化のことを完全アルゴリズムといいます。
遺伝的アルゴリズムはMetaTrader4(MT4)にはなく、MT5で新たに追加された機能です。MT5で遺伝的アルゴリズムによるバックテストを行うには、バックテストの設定においてオプティマイズ欄で「遺伝的アルゴリズム(速い)」を選択します。
遺伝的アルゴリズムでは、全てのパラメータの組み合わせからランダムに二つの集団を抽出し、その両方をテストします。そこで良い結果になった方を残し、集団内で組み替え等の操作を行った後、再度成績を比較します。これを繰り返すことにより、最終的に「もう改善がない」と判断されたところで最適化プロセスを終了します。このように遺伝的アルゴリズムを用いることで、総当たりよりもテストの組み合わせ数が大幅に少なくなるため、最適化の処理時間を大幅に短縮することができます。
遺伝的アルゴリズムは生物の進化の仕組みから生まれたロジックです。生物は長い時間をかけて進化する過程において、より環境に適応できる個体が生き残ります。ランダムに生成された個体のうち適応度の高いものが残り、さらに交叉や突然変異を繰り返しながら世代交代をして、次第に最も適応度の高い個体が残ります。EAの最適化における遺伝的アルゴリズムもこれと同じで、最良に近いパフォーマンスが期待できる最適化の近似解が生き残る仕組みになっています。
読み方
いでんてきあるごりずむ
対義語
完全アルゴリズム