「ウォールストリートランダムウォーク」(1973年)で、バートンマルキエルは、「目隠しされた猿が新聞の金融ページにダーツを投げると、専門家が慎重に選んだポートフォリオと同じようなポートフォリオを選択できる」と提案しました。 進化によって人は株を選ぶ際にもはや知性がなくなったかもしれないが、チャールズ・ダーウィンの理論はより直接的に適用された場合に非常に効果的であることが証明された。
チュートリアル:在庫ピッキング戦略
遺伝的アルゴリズムとは?
遺伝的アルゴリズム(GA)は、自然進化のプロセスを模倣する問題解決手法(またはヒューリスティック)です。 脳内のニューロンのように機能するように設計された人工ニューラルネットワーク(ANN)とは異なり、これらのアルゴリズムは自然選択の概念を利用して問題の最適なソリューションを決定します。 その結果、一般的にGAは、パラメーターを調整してフィードバック測定値を最小化または最大化するオプティマイザーとして使用されます。フィードバック測定値は、独立して、またはANNの構築で使用できます。 (ANNの詳細については、「 ニューラルネットワーク:利益の予測 」を参照してください。)
金融市場では、遺伝的アルゴリズムが取引ルールのパラメーターの最適な組み合わせ値を見つけるために最も一般的に使用され、在庫を選択して取引を識別するために設計されたANNモデルに組み込むことができます。 「遺伝的アルゴリズム:株式評価の生成」(2004)や「株式市場データマイニング最適化における遺伝的アルゴリズムの応用」(2004)など、いくつかの研究でこれらの方法の有効性が実証されています。 (詳細については、 取引アルゴリズムの作成方法を ご覧ください。)
遺伝的アルゴリズムとは何ですか?
遺伝的アルゴリズムの仕組み
遺伝的アルゴリズムは、方向と大きさを持つ量であるベクトルを使用して数学的に作成されます。 各取引ルールのパラメーターは、遺伝用語で染色体と考えることができる1次元ベクトルで表されます。 一方、各パラメーターで使用される値は遺伝子と考えることができ、自然選択を使用して修正されます。
たとえば、取引ルールには、移動平均収束発散(MACD)、指数移動平均(EMA)、確率論などのパラメーターの使用が含まれる場合があります。 遺伝的アルゴリズムは、純利益を最大化する目的で、これらのパラメーターに値を入力します。 時間が経つにつれて、小さな変更が導入され、望ましい影響を与える変更は次世代のために保持されます。
次に実行できる3つのタイプの遺伝子操作があります。
- 交叉は、生物学で見られる生殖と交叉を表し、それにより子供は親の特定の特性を引き継ぎます。個体群から個々のゲノムが選択され、後の交配(組換えまたは交配)の段階。
これらの3つの操作は、5段階のプロセスで使用されます。
- ランダムな母集団を初期化します。各染色体は長さが n で、 n はパラメーターの数です。 つまり、ランダムな数のパラメーターがそれぞれ n個の 要素で確立され、望ましい結果(おそらく純利益)を高める染色体またはパラメーターを選択します。選択した親に突然変異または交差演算子を適用し、子孫を生成します。選択演算子を使用して現在の母集団を作成し、新しい母集団を作成します。手順2〜4を繰り返します。
時間が経つにつれて、このプロセスにより、取引ルールで使用する染色体(またはパラメーター)がますます有利になります。 停止条件が満たされると、プロセスは終了します。停止条件には、実行時間、フィットネス、世代数、またはその他の条件が含まれます。
取引での遺伝的アルゴリズムの使用
遺伝的アルゴリズムは主に機関の定量的トレーダーによって使用されますが、個々のトレーダーは、市場にあるいくつかのソフトウェアパッケージを使用して、高度な数学の学位がなくても遺伝的アルゴリズムの力を活用できます。 これらのソリューションは、金融市場向けのスタンドアロンソフトウェアパッケージから、より実践的な分析を容易にするMicrosoft Excelアドオンにまで及びます。
これらのアプリケーションを使用する場合、トレーダーは一連のパラメーターを定義し、遺伝的アルゴリズムと一連の履歴データを使用して最適化することができます。 使用するパラメーターとその値を最適化できるアプリケーションもあれば、特定のパラメーターセットの値を単純に最適化することに主に焦点を当てているアプリケーションもあります。 (これらのプログラム派生戦略の詳細については、「 プログラム取引の力」を 参照してください。)
カーブフィッティング(オーバーフィッティング)、または反復可能な動作を特定するのではなく、履歴データに基づいてトレーディングシステムを設計することは、遺伝的アルゴリズムを使用するトレーダーの潜在的なリスクを表します。 GAを使用する取引システムは、実際に使用する前に紙上でフォワードテストする必要があります。
パラメーターの選択はプロセスの重要な部分であり、トレーダーは特定の証券の価格の変化に相関するパラメーターを探す必要があります。 たとえば、さまざまな指標を試して、いずれかが主要な市場の転換と相関しているように見えるかどうかを確認します。 (詳細について は、正しいアルゴリズム取引ソフトウェアの選択を 参照してください。)
ボトムライン
遺伝的アルゴリズムは、自然の力を利用して複雑な問題を解決するユニークな方法です。 これらの方法を証券価格の予測に適用することにより、トレーダーは特定の証券の各パラメーターに使用する最適な値を特定することにより、取引ルールを最適化できます。 ただし、これらのアルゴリズムは聖杯ではないため、トレーダーはカーブフィットではなく適切なパラメーターを選択するよう注意する必要があります。 (詳細については、 「独自のAlgo Trading Robotのコーディング方法」を参照して ください。)
