記事「因果推論とアルゴリズム取引における回帰モデルの活用」についてのディスカッション

 

新しい記事「因果推論とアルゴリズム取引における回帰モデルの活用」はパブリッシュされました:

アルゴリズム取引における回帰モデルの活用可能性について考察します。回帰モデルは、二値分類とは異なり、予測される価格変動を定量的に表現できるため、より柔軟な取引戦略を構築できます。

二値分類は、入力データを2つの異なるカテゴリまたはクラスのいずれかに分類することを目的とした、機械学習の基本的なタスクです。FXの自動売買システムでは、一般的に「買い」(0)または「売り」(1)のシグナルを予測することを意味します。このアプローチでは、複雑な市場の動きを単純な売買方向の判断へと単純化します。

しかし、二値分類を定量的なトレードへ適用する際の最も本質的な制約は、予測される価格変動の大きさや強さを定量化できないことです。二値分類モデルは、価格が上昇するか下降するかだけを示し、その変動幅がどの程度になるかについての情報は提供しません。この粒度の不足が、トレードにおける意思決定を根本的に制限します。

分類器の予測精度だけでは価格変動の大きさは考慮されないため、取引判断の指標としては十分とはいえません。この点は非常に重要です。なぜなら、方向予測の精度が高い(たとえば70%の確率で方向を正しく予測できる)からといって、必ずしも利益につながるわけではないからです。 

重要なのは、高い方向予測精度が収益性を保証するわけではないという事実です。たとえば、方向予測の正解率が30%しかなくても利益を上げられる場合がある一方で、70%の正解率を達成していても損失となる場合があります。これは、取引戦略の最終的な収益が、勝ちトレードによる利益額と負けトレードによる損失額とのバランスによって決まり、単純な勝率だけでは決まらないことを示しています。


作者: dmitrievsky

 
あなたの方法では、テストデータがモデルの選定プロセスに組み込まれているため、過学習が生じる可能性が高いと思います。できれば、十分な量のデータを2セット用意し、1セットでモデルを選定し、もう1セットで選定された最適モデルを検証するのが望ましいでしょう。後者のデータはモデルの選定には使用しないでください。
 

トレーディング、自動取引システム、および取引戦略のテストに関するフォーラム

記事「マルチ通貨EAの開発(第25回):新しい戦略の組み込み(II)」に関するディスカッション

Rashid Umarov、2025年7月5日 12:58

ロシア語セクションではロシア語で投稿してください。記事へのコメントは、各言語スレッドで自動的に翻訳されます。

また、ここには「自動翻訳」ボタンもあります。もし英語で読みたい場合は、ぜひこちらをご利用ください。


削除済み  
zhainan #:
あなたの方法では、テストデータがモデルの選定プロセスに組み込まれているため、過学習が生じる可能性が高いと思います。理想的には、十分な量のデータを2セット用意し、1セットでモデルを選定し、もう1セットで選定された最適モデルを検証するのが良いでしょう。後者のデータはモデルの選定には使用しません。

そのように行うことも可能です。実質的に、ここでは学習段階でのモデル選定は行われていません。単に閾値を設定し、その後、新しいデータでモデルを検証するだけです。

 
马克西姆·德米特里耶夫斯基 #:

そのようにしても構いません。実際、学習段階ではここでのモデル選択は行われません。しきい値を設定し、新しいデータでモデルをテストするだけです。

マクシム・ドミトリエフスキー #:

そのようにしても構いません。実際、学習段階ではここでのモデル選択はありません。しきい値を設定し、新しいデータでモデルをテストするだけです。

ほぼその通りです。ループ内で閾値に基づいてテストサンプルで優れたパフォーマンスを示したモデルを保持するため、私の方法もそれほど違いはありません。現在私が採用している方法は、複数の取引銘柄の2015~2020年のデータをトレーニングデータとして使用し、より多くの市場パターンを取り入れ、統一された尺度を設定し、さらに、2020~2022年の対象取引銘柄のデータを用いて選別モデルを作成し、最後に2022~2025年の対象取引銘柄のデータで最終検証を行っています。
削除済み  
zhainan #:
ほぼ同じです。ループ内で閾値に基づいてテストサンプルで優れたパフォーマンスを示したモデルを保持しているため、私の方法もそれほど違いはありません。現在私が採用している方法は、複数の取引銘柄の2015年から2020年のデータをトレーニングデータとして使用し、より多くの市場パターンを取り入れ、統一された尺度を設定することです。さらに、2020~2022年の対象取引銘柄データを用いて選別モデルを作成し、最後に2022~2025年の対象取引銘柄データで最終検証を行います。
本記事では、フォワードテストはモデル選定には関与していません。この記事は、分類器に比べて回帰モデルが持つ可能性のある利点について論じたものです。驚くべきことに、これについてこれまで誰も同様のことを書いたことがありませんでした。休暇から戻ったら、もし関心が寄せられれば、このテーマについてさらに記事を執筆するつもりです。
 
添付のPythonコードには、「bots」という名前のモジュールが含まれていません。
削除済み  
Omega J Msigwa #:
添付のPythonコードには、「bots」という名前のモジュールが含まれていません。

これはフォルダ名ですので、ご自身で作成してください。あるいは、モジュールが配置されている場所に合わせてインポートパスを変更してください。

あるいは、モジュールのインポートに関する入門コースなどを参照してください。そこではすべてが非常に簡単に説明されています。

 

マキシムさん、こんにちは。ファイルをダウンロードし、既存のCSVファイルを使ってトレーニングを行い、生成されたEAを実行したところ、zipフォルダに添付されていたEAとは結果が異なっていました。

パラメータを確認しましたが、原因となる手がかりは見つかりませんでした。

この原因について、教えていただけないでしょうか。

よろしくお願いします。

削除済み  
zhuifeng123 #:

マキシムさん、こんにちは。ファイルをダウンロードし、既存のCSVファイルを使ってトレーニングを行い、生成されたEAを実行したところ、zipフォルダに添付されていたEAとは結果が異なることがわかりました。

パラメータを確認しましたが、原因となる手がかりは見つかりませんでした。

この原因について、教えていただけないでしょうか。

ありがとうございます

こんにちは。どこが違うのか具体的に示していただけますか? そうしないと、何が話題なのか見当がつきにくいのですが。

 
Maxim Dmitrievsky #:

こんにちは。どこが違うのか教えてください。何の話なのか、全然見当がつきません。

私は `causal_regression_orig.py` を使って ea ヘッダーファイルを生成し、その後 ea をコンパイルしています。

その結果が、以下の「test_result」という画像です。

投稿されたものよりも取引数がかなり少ないですね。

では、これらにはどのような違いがあるのでしょうか。

ファイル:
src.zip  2372 kb