記事「PythonとMQL5でロボットを開発する(第1回):データ前処理」についてのディスカッション

 

新しい記事「PythonとMQL5でロボットを開発する(第1回):データ前処理」はパブリッシュされました:

機械学習に基づく自動売買ロボットの開発の詳細なガイドです。連載第1回は、データと特徴量の収集と準備についてです。プロジェクトは、Pythonプログラミング言語とライブラリ、およびMetaTrader 5プラットフォームを使用して実装されます。

市場はますます複雑になっています。今日、それはアルゴリズムの戦いに変わりつつあります。取引高の95%以上はロボットによって生み出されています。 

次のステップは機械学習です。これらは強力なAIではありませんが、単純な線形アルゴリズムでもありません。機械学習モデルは困難な状況でも利益を上げることができます。機械学習を取引システムに応用するのは興味深いものです。ニューラルネットワークのおかげで、取引ロボットはビッグデータを分析し、パターンを見つけ、値動きを予測します。

データの収集、処理、サンプルの拡大、特徴量エンジニアリング、モデルの選択と訓練、Pythonを使った取引システムの作成、取引のモニタリングといった、取引ロボットの開発サイクルについて見ていきます。

Pythonでの作業には、機械学習の分野でのスピード、特徴量の選択と生成能力といった利点があります。ONNXにモデルをエクスポートするには、Pythonとまったく同じ特徴量生成ロジックが必要ですが、これは容易ではありません。Pythonを使用したオンライン取引を選択したのはこのためです。

作者: Yevgeniy Koshtenko

 
理にかなったアプローチ👍興味深い形質の選び方だ。
 
興味深い記事をどうもありがとう。私は今までパイソンを使ったことがありませんでしたが、この強力なツールを学ぶことに興味を持ちました。新しい出版物を楽しみにしています!
 

В задаче прогнозирования EURUSD мы добавили бинарный столбец "labels", указывающий, превысило ли следующее изменение цены спред и комиссию.

ちなみに、70万件以上のデータのうち、スプレッド以上に価格が変動したのはわずか7万件。

EURUSDの スプレッドは90%の確率で~0です。H1データを使用していますね。どうしてこのような結果になったのですか?

 
Кстати, искушенный в машинном обучении читатель уже давно понял, что мы в итоге разработаем модель классификации, а не регрессии. Мне больше нравятся регрессионные модели, я в них вижу немного больше логики для прогнозирования, нежели в моделях классификации. 
2番目の文章は最初の文章と矛盾しているように思える。
 

Фича инжиниринг — преобразование исходных данных в набор признаков для обучения моделей машинного обучения. Цель — найти наиболее информативные признаки. Есть ручной подход (человек выбирает признаки) и автоматический (с помощью алгоритмов).

我々は自動的なアプローチを用いる。新しい特徴作成法を適用して、データから最適な特徴を自動的に抽出します。そして、得られた特徴量から最も情報量の多いものを選択する。

価格予測に最適な特徴は、始値そのものであることが判明しました。移動平均、価格増分、標準偏差、日次および月次の価格変動に基づくサインが上位に含まれた。自動生成されたサインは有益でないことが判明した。

特徴生成のアルゴリズムの質について疑問がある。


ある人がOHLCTのデータからすべての属性を生成しました。あなたは、特徴生成アルゴリズムを、より多くの元の特徴に押し付けているのです。チップ生成アルゴリズムが最も単純なMAチップを再現できなかったとは考えにくい。

 
この記事の言葉遣い、文体、情報の表現が気に入った。著者に感謝する!
 

特徴クラスタリングは、類似した特徴をグループにまとめ、特徴の数を減らす。これにより、冗長なデータを取り除き、相関を減らし、オーバーフィッティングをせずにモデルを単純化することができる。 価格予測に最適な特徴は、始値そのものであることが判明した。

クラスタリングでHLC価格が捨てられたのは、O価格と同じクラスタに入ったからでしょうか?

価格が予測に最適なサインであることが判明した場合(他のサインはその派生物)、他のサインのことは忘れて、より低いタイムフレームに移動し、他のシンボルの価格をサインとすることで、より多くの入力データを追加することが合理的であることを意味するのでしょうか?

 

MOは新しいデータに対して十分な性能を発揮しないため、特に価格がトレーニング範囲から外れている場合は、もちろんトレーニングサンプルから取り除く必要があります。

価格の情報性が高いのは、その値が一意であるためであり、つまり、アルゴリズムが価格を記憶したり、ラベルと照合したりするのが容易だからである。

MOの実践では、非情報的な特徴だけでなく、疑わしい過情報的な特徴(生の価格)も除去される。

理想的なシナリオでは、+-等しく有益な属性がいくつかあるはずである。つまり、明確なリーダーやアウトサイダーは存在しない。これは、どの属性もトレーニングに影響を与えず、それ自体に影響を与えないことを意味する。
 
Maxim Dmitrievsky #:

MOは新しいデータに対して十分な性能を発揮しないため、特に価格がトレーニング範囲から外れている場合は、もちろんトレーニングサンプルから取り除く必要があります。

もしリターンにすると、特徴生成アルゴリズムは累積和を生成せざるを得なくなり、それは同じ価格になる。同時に、これが価格であることはわからない。

 
fxsaber #:

リターンまで行くと、特徴生成のアルゴリズムは累積和を生成せざるを得ず、それは同じ価格になる。これが価格であることはわからない。

理解できない

すべての符号は、増分値のように擬似的な定常値でなければならない。生価格はトレーニングから取り除くべきである。