私たちのブログでは、 取引ロボットとアルゴリズム取引技術の作成について多くのことを書いています。 今日は、過去の取引データと機械学習アルゴリズムのみを使用して成功した取引戦略を作成できるかどうかについてお話します。
スタンフォード大学を卒業し、Parantir Technologiesの従業員であるDavid Montaqueは、履歴データに基づいて先物取引のアルゴリズム戦略の作成について説明した記事を執筆しました 。 Montagは機械学習技術を使用して、将来の価格とボラティリティを予測しました。 実験の説明と研究者が到達した結論をご紹介します。
はじめに
この実験の目的は、 Quantiacs先物コンテストでのプレゼンテーションのために、非常に効率的なアルゴリズム取引戦略を開発することでした。 この競争の間、トレーディングシステムは履歴データとQuantiacsプラットフォームでの実際のトレーディング(取引所での発生にできるだけ近い)で動作し、これらの各テストの結果に従って、最良のシステムの評価がコンパイルされます。 競争の目的は、シャープ比(平均利益と平均ボラティリティの比)で測定される最適なパフォーマンスの戦略を獲得することです。 勝者は100万ドル、2位を獲得した参加者-50万ドル、3位-25万ドルを受け取ります。
シャープレシオ-年間利益の年間ボラティリティに対する比率
競争の履歴データには、2001年1月1日から現在までの約3800取引日(価格と取引量に関するデータ)が含まれます。 通貨、貴金属、農産物などを含む27の異なる先物契約に関する情報が提供されます。 データには、その日の最高値、最低価格、期間の始値、終値、取引量が含まれます。
各取引日に、競争ルールにより、戦略は入力として過去の504取引期間(2520要素のベクトルを与える)に関する情報を使用できます。
Montagは、過去の行動に関するデータのみを使用して、各先物契約の将来の価格とボラティリティを独立して予測する方が効率的であることを示唆しました。
アルゴリズム
Montagは、4つの回帰アルゴリズムを使用して、ボラティリティと取引パフォーマンスを予測しました。
- 線形回帰および正則化回帰(自己開発);
- ニューラルネットワーク(MATLABニューラルネットワークツールを使用);
- ランダムフォレスト (MATLAB Tree-Bagger関数を使用);
- 勾配決定木ブースティング(RのGBMパッケージ)。
ボラティリティを予測する問題は、利益を予測するよりもはるかに簡単であることが判明しました。
タスクごとに、2つのデータセットが使用されました-9424の例から成るトレーニングセット(利用可能なデータの80%)と2356の例のテストセット(データの20%)。 トレーニングおよびテストセットの分布は時系列でした。トレーニングの例には初期データの80%が含まれ、テストケースには最新データの20%が含まれていました。
結果
さまざまな機械学習アルゴリズムのパフォーマンスの比較を開始する前に、研究者は線形回帰を使用してサンプリングしました。
アルゴリズム | トレーニングr 2 | CV r 2 | テストr 2 |
---|---|---|---|
PCA(82) | 0.631 | 0.490 | 0.473 |
TI(18) | 0.710 | 0.645 | 0.637 |
TI(7) | 0.713 | 0.647 | 0.639 |
ここで、PCAは主成分法であり、TIは技術指標です。 括弧内の数字は、特徴ベクトルの次元を表します。
削減された250の要素の主成分と正規化されたベクトルを分析した後、最適な主成分の数が得られました-82指標を使用すると、結果をさらに改善できます。
以下の表は、7つのインジケーターを使用してボラティリティを予測する分野の4つのアルゴリズムのパフォーマンスに関する情報を提供します。
アルゴリズム | トレーニングr 2 | CV r 2 | テストr 2 |
---|---|---|---|
Lr | 0.713 | 0.647 | 0.639 |
Nn | 0.734 | 0.660 | 0.632 |
RF | 0.731 | 0.664 | 0.649 |
GBM | 0.701 | 0.666 | 0.638 |
ここで、LRは線形回帰、NNはニューラルネットワーク、RFはランダムフォレスト、GBMは決定木の勾配ブースティングです。 最良の結果は、ランダムフォレストアルゴリズムを使用して達成されました。
以下は、利益予測効率の結果です。
アルゴリズム | トレーニングr 2 | CV r 2 | テストr 2 |
---|---|---|---|
Rr | 0.169 | 0.142 | 0.138 |
Nn | 0.088 | 0.013 | -0.088 |
RF | 0.236 | 0.069 | -0.102 |
GBM | 0.328 | 0.154 | 0.028 |
ここで、RRは正規化された回帰(最も効果的であることが判明した)であり、他の略語は上記で使用されたものと同じです。 負の値は「空売り」に対応します。
ボラティリティと利益の予測を使用するために、Montagは、予測される利益と予測されるボラティリティを比較し、結果の値を目的のポートフォリオ分布として使用する3パラメータ取引アルゴリズムを作成しました。
以下のチャートは、この戦略のパフォーマンスを示しています-それは、5.58%の年間ボラティリティと1.18のシャープレシオで、6.63%の年間利益を達成することができました。
ただし、利用可能な履歴データの前半のみを使用した場合、戦略はシャープ比1.33を示し、データの2番目の部分のみを含むサンプルでは、この数値ははるかに低く-0.73でした。 この事実は、過去と将来の両方で、戦略の同じ良好なパフォーマンスを期待すべきではないことを示していますが、特定の生産性を期待することができます。
Investopediaによると、1以上のシャープレシオは、非常に良い-2以上、優れた-3以上の良い指標であると考えられています。 上記の方法を使用して得られた戦略は、履歴データで最大シャープレシオを1.2に示しましたが、将来のデータではそれよりもはるかに低くなりました。
これらの戦略が利益を示したという事実にもかかわらず、実際の取引でシャープレシオがユニティを上回る可能性はそれほど大きくありません。