トレーディングにおける機械学習:理論、モデル、実践、アルゴトレーディング - ページ 184

 
アンドレイ・ディク

以前、3つのクラス(売り、フェンス、買い)に分けるという私の考え方を紹介したことがあります。フェンス」クラスには、互いに矛盾するケースや、買いクラスと売りクラスに分けられないケースもすべて含まれます。その結果、わずか3〜10%が「買い」と「売り」のクラスに分類されることが判明しました。このアプローチの優れた点は、未知のデータ(リアル)を扱うことで、時間とともにネットワークは市場の状況を認識しなくなり、ますます「フェンス」に起因するようになること、つまり、徐々に取引を停止していくことです。時間をかけてどんどんエントリーする側に回るより、この方が何百倍もいい。

しかし、すべて無駄だ。誰も望んでいないし、誰も耳を傾けてくれない。

買いたいネットが買い、売りたいネットが売りの時、フェンスとは何ですか?

同じレシェトフ三元系である。

 
アンドレイ・ディク

以前、3つのクラス(売り、フェンス、買い)に分けるという私のやり方を説明しました。

これはjPredictionにすでに実装されています。そのため、二値分類器ではなく三値分類器と呼ばれている。

非常に些細な方法で実装されています。

  1. トレーニング:サンプルの重複しない2つの部分について、2つのバイナリ分類器をトレーニングします。
  2. クロスバリデーション:バイナリ分類器をサンプルの学習していない部分でテストすること。
  3. 分類:両二値分類器の読みが一致した場合、どちらかの出力値を結果とする。2値分類器の読みが異なる場合、出力は「塀の上に座って竹を吸う」となる。

従来は「自転車」方式を採用することになっていた。

  1. サンプルの半分で2値分類器を学習する
  2. サンプルの後半でテストする
  3. ROC解析を用いて、感度を上げるために一方の閾値を上げ、特異度を上げるために第二の閾値を下げる。
  4. 分類:分類するパターンが感度閾値以上の場合-購入する。パターンが特異性の閾値を下回る場合 - 売り。両方の閾値の間にあるパターンの場合 - 柵の上に座って竹を吸う。

しかし、上記の「車輪」は、クロスバリデーションの欠如により、2つのバイナリによる分類に比べてより多くの偽信号を生成しますが、実装はより簡単です。

最も間抜けで無駄な3項バイナリだが、実装は最も原始的で、3つの出力を持つANNである。このような出力にそれぞれ分類用の閾値がある場合、3つではなく8つの可能性のある状態が生成されるが、そのうち曖昧さのないもの(3つの出力のうち1つだけが閾値を上回る値)は3つだけで、解釈方法が不明なもの(2つ以上の出力が閾値を上回る値、または3つすべての出力が閾値を下回る値)は5つである。

 
mytarmailS:

買うためのネットが買うと言い、座るためのネットが座ると言う、フェンスとは何ですか?

これは、同じレシェトフ三元系

いや、リンクは張らないから調べてくれ。
 
ユーリー・レシェトフ

これはjPredictionにすでに実装されています。そのため、二値分類器ではなく三値分類器と呼ばれている。

非常に些細な方法で実装されています。

  1. 訓練:サンプルの重複しない2つの部分について、2つのバイナリ分類器を訓練する。
  2. クロスバリデーション:バイナリ分類器をサンプルの学習していない部分でテストすること。
  3. 分類:両二値分類器の読みが一致した場合、どちらかの出力値を結果とする。2値分類器の読みが異なる場合、出力は「塀の上に座って竹を吸う」となる。

従来は「自転車」方式を採用することになっていた。

  1. サンプルの半分で2値分類器を学習する
  2. サンプルの後半でテストする
  3. ROC解析を用いて、感度を上げるために一方の閾値を上げ、特異度を上げるために第二の閾値を下げる。
  4. 分類:分類するパターンが感度閾値以上の場合-購入する。特異性の閾値を下回るパターンなら-売り。閾値の間のパターンであれば、柵の上に座って竹を吸う。

しかし、上記の「自転車」は、2値による分類に比べて誤信号が多くなるが、実装は容易である。

最も間抜けで無駄な3項バイナリで、実装は最も原始的:出力が3つのANNである。このような出力にそれぞれ分類用の閾値があるとすると、3つではなく8つの潜在的な状態があり、そのうち曖昧さのないもの(3つの出力のうち1つだけが閾値を上回る値)は3つだけで、どう解釈すべきかが不明なもの(2つ以上の出力が閾値を上回っているか、3つすべての出力が閾値を下回る値)は5つである。

もうひとつ、あなたが考えてもいない方法があります。neuronkeyからの出力は1つだが、値の領域は条件付きで3つに分けられている。私は[-1.5...1.5]としてやりました。中間の値域 [-1.0...1.0] が「フェンス」です。ニューラルネットワークは、慣れ親しんだ状況ほど興奮し、値がより極端な値に向かう傾向があることがわかります。1.0...1.0]の範囲外の値は、買いおよび売りの適切なシグナルとなります。

しかし、人々はまだ二元的な分類に悩んでいます。

 
アンドレイ・ディク

もうひとつ、あなたが考えてもいない方法があります。neuronkeyからの出力は同じだが、値の領域が条件付きで3つに分かれている。私は[-1.5...1.5]としてやりました。 中央の値域 [-1.0...1.0] が「フェンス」である。

無視してない、よく読んでないんだろう。2値nが1つの2閾値「自転車」法を参照。3およびパラ4、引用します。

ユーリー・レシェトフ
...

それ以前は、「自転車」方式が適用されることになっていた。

  1. サンプルの半分で2値分類器を学習する
  2. サンプルの後半でテストしてください。
  3. ROC解析を用いて、感度を上げるために一方の閾値を上げ、特異度を上げるために第二の閾値を下げる。
  4. 分類:分類するパターンが感度閾値以上の場合-購入する。 特異性の閾値を下回るパターンなら-売り。閾値の間にあるパターンの場合 - 柵の上に座って竹を吸う。
...
 
ユーリー・レシェトフ

この方法の問題点は、最初(売買シグナルの三元フィルタリング 前)に、全データの5%以上を説明できるデータでMOを学習させることです、わかりますか?

アンドレイ・ディク

ここも同じような話だと思うのですが...。

==================================

私のやり方は、意思決定にMOを一切使わず、サンプル全体を説明しようとせず、統計的に強い規則性があると思われるものだけを説明し、そのようなデータが全体の0,01%しかなければ、そのデータだけが残る......というやり方です。

 
アンドレイ・ディク

...

しかし、人々はまだ2値分類をいじっています。

なぜなら、多くの人は、3値分類の実験よりも、2値分類がすでに実装された既成のパッケージを利用する方が簡単だと思うからです。誰もが「車輪の再発明」を好むわけではない。すべてのアイデアが良い結果を生むとは限らないからだ。四角い車輪でも、既製品の自転車の方が乗りやすいという人もいますよね。

3値分類を行う場合、機械学習に関する多くの資料では、3つの出力を持つANNを学習させるという最も期待できない方法を提案しており、これは実装は簡単だが、実際には全く適さない。

 
ユーリー・レシェトフ

なぜなら、ほとんどの人は、3進法の実験をするよりも、2進法の分類がすでに実装された既製のパッケージを入手する方が簡単だと思うからです。誰もが「自転車」の再発明を好むわけではない。すべてのアイデアが良い結果を生むわけではないからだ。四角い車輪でも、既存の自転車の方が乗りやすいという人もいます。

3値分類を行う場合、機械学習に関する多くの資料では、3つの出力を持つANNを学習させるという最も期待できない方法を提案しており、これは実装は簡単だが、実際には全く適さない。

そうですね......そうですね、そうです。

しかし、ひとつだけ確かなことは(タフトロジーをお許しください)、バイナリーというのは、マーケットにとって最悪のものだということです。

 
mytarmailS:

この方法の問題点は、最初(売買シグナルの三元フィルタリングの前 )に、MOが全データの5%程度を説明できるデータで訓練されていることです。三元フィルタリングの前にMOはすでにノイズで訓練されており、その出力はそれに応じて

くだらないことを言うな。jPredictionでは、ノイズの多い予測因子や重要でない予測因子で学習されたモデルが出力されないように、入力を小型化するアルゴリズムが実装されています。つまり、予測変数の組み合わせが異なる様々なモデルの中から、一般化可能性が最も高いものだけが残るように選択される。
 
mytarmailS:

サンプル全体を 買いと売りに分けて、市場のすべての動きを 予測しようとするのですが、私たちの予測ツールはあまりにクソで、客観的には すべての動きのうち3%しか 予測できません。お好きなようにどうぞ。

問題の原因を理解されているのがよくわかります。しかし、私はあなたの提案とは異なる方法で解決しようとしているのです。

私はSanSanychの言葉に従ってしまいがちなのですが、ゴミにならないような予測因子とターゲットを採用する必要があります。良い予測器を使えば、前回の投稿のようなものではなく、Vizard_のように学習例のグラフを得ることができます。相反する学習例を排除するよりもずっと難しいですが、予測因子を適切に選択することで、最終的にはより信頼性の高いものになると思います。

あなたの方法については、私は得意ではないので何とも言えませんが、ぜひやってほしいです。

理由: