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

 
アレクセイ・ニコラエフ

例えば、すべての戦略がBUYしかしないのであれば、おそらく時間的に交差を最小化する(相関を最小化する、これは常に正である)ことに帰着するのだろう。BUYとSELLが許される場合、タイムクロスは戦略の悪い部分を相互に補うのに有効である(負の相関は通常ポートフォリオにとって良いものである)。

単純に戦略のタイミングや重なり具合で相関が判断できるのでしょう。

一般的には、異なる方向性のシグナルを相互に補正することに賛成ですが、私の場合、このために異なる戦略を適用し、それぞれにマークアップを行う必要があります - それは別の曲ですが、私も適用する予定です。

しかし、グループから選択したり、リスク(ロット)を分けたりするために類似の戦略を見つけるには、エントリーとエグジットの時間だけでなく、エントリーの方向も考慮する必要があります。どうしたらもっとうまくできるかを考えなければならない。

 
アレクセイ・ヴャジミキン

完璧にできるってどういうこと?手動でやるのではなく、今見ているような方法でやるスクリプトを書くんです。

私の場合、理想は予測値のバリエーションをそれぞれ個別に評価することです。また、1つのターゲットを増幅する予測変数の活性化範囲を1つの予測変数にマージしたいのですが、私の知っているメッシュでは、範囲を順次分割していくことではできません。同様に、スパーへのランキングの予測変数も(ノードを構築して)別の予測変数とマージします。ここまでは理論上の話。


下図の値1と値4のように、中間値を排除して1つの分割に集約する分割グリッドはどのようなものでしょうか。


完璧 - 分割推定関数にしたがって完全に正確であるという意味で。何千もの選択肢を評価し、最適なものを記憶し、ノードとなるのです。

24の標準的なフォレスト/ブーストを訓練するのが最も簡単で、それぞれが適切な時間の予測子を供給する。

 
elibrarius:

パーフェクト - 分割評価機能によって完全に正確であるという意味において。何千もの選択肢を評価し、最も良いものを記憶し、それがノードとなる。

これは明らかにアルゴリズムに則っているのですが、どのアルゴリズムが正しいのでしょうか?CatBoostのみ、グリッドを構築するための3つのアルゴリズムが用意されています。

elibrarius:

最も簡単な方法は、24の標準フォレスト/バストを訓練し、それぞれが適切な時間の予測子を供給することである。

そして、ツリー構築の貪欲な原理(ツリーを分割する実験から判明したように、常に正しいわけではありません)に従って、特定の時間に統計的に最高の確率を持つ予測変数のみを分岐ツリーに選択するのです。しかし、私の意見では、予測因子を見つけて、他の条件とは無関係にサンプル全体に優位性を与えたものをツリーに入れるべきです。そうすれば、1日の特定の時間に対する適合(活性化に対するあるイベントの条件付きのより正確な記述)ではなく、1つの葉における独立した確率の累積が得られることになります。

 
アレクセイ・ヴャジミキン

これは、予測値の範囲を調べて予測能力を確認し、予測能力をより強調するように範囲の部分を分割していこうとするアルゴリズムである。例えば,ターゲットが3つあるサンプルがあり,サンプルが1 - 24%,2 - 50%,3 - 26%に分布し,値の範囲を持つ予測変数があるとします.グリッドの目的は,例えばターゲット1が24%以上「予測」される予測変数の値の領域を見つけることで,分割はこの領域を強調することにあります.このようなグリッドを構築するアルゴリズムには、さまざまなバリエーションがある。

面白いアイデアですが、この方が簡単なのでは......?

p.1) 何らかの機械学習アルゴリズムがある。分子軌道

p.2) 電車とテストに分かれているサンプルがあります。

p.3) ある原理(時間、グラフパターン、一斉、何か他のもの......)に従ってクラスター化した価格がある(市場の状況として認識される場合もあるし、単なるクラスターとして認識される場合もある)。

pp. クラスタが多数または非常に多く存在する必要があります。


アクションのアルゴリズム:

1)トレイに載せたMOを教える

2) 意味モデルを用いてテストを予測する。

3) テストでは、モデルが誤りなく予測した点を特定し、それらをXT(良い点)と呼ぶ。

4) 各htは上記ステップ3からのクラスタに対応する....

これで、そのモデルが得意とする市場のクラスタ(状態)がわかりましたね...。クラスタ(状態)は、グリッドのアナログのようなものです。つまり、クラスタ(状態)を通じて、何が予測できて、何ができないかを決めようとしているのです...。


しかし、どちらのアプローチにも、まず解決すべき概念的な問題があります。問題はアプローチの仕方でもなく、情報の見せ方にある。

 
mytarmailS:


p.3) 何らかの原理(時間、グラフパターン、一斉、何か他のもの......)に従ってクラスター化した価格がある(それは市場の条件として認識されることも、単なるクラスターとして認識されることもある)。

pp. クラスタが多数または非常に多く存在する必要があります。

ここで、よくわからないのですが、ターゲットマークアップポイントの素の価格を取って、クラスタリングしろということなのか、それとも何なのでしょうか?


mytarmailS:


3) テスト中に、モデルが誤りなく予測した点を特定し、それらをHT(good point)と呼ぶことにする。

4) 各htは上記ステップ3からのクラスタに対応する....

これで、そのモデルが得意とする市場のクラスタ(状態)がわかりましたね...。クラスター(状態)は、グリッドのアナログのようなもので、つまり、予測できるものとできないものをクラスターで分けようとするのです......。

このアイデアは面白いのですが、その原理が私の提案と結びつかないというか、完全に理解できていないんです。モデルが一定の割合でクラスタを活性化させることがわかり、ではそれをどうするか?どの葉が(1本の木についてなら)いくつのクラスタを活性化したかを見て、その葉があるクラスタをずっと頻繁に活性化していれば、それを識別することを学習したというだけのことだと理解しています。ここでは、葉の大部分が異なるクラスタ上で均等に 正しく活性化することが考えられ、これは明らかにランダム性を示しています。繰り返しになりますが、クラスタリングアルゴリズムを確認する必要があります。結果がユニークなクラスタであり、多くの類似したクラスタではないことを確認する必要があります...。

 
アレクセイ・ヴャジミキン

これは明らかにアルゴリズムに則っているのですが、どのアルゴリズムが正しいのでしょうか?CatBoostのみ、3つのアルゴリズムでグリッドを構築しています。

これは、約24倍(と私のサンプルはすでに小さい)でサンプルを削減し、その後、貪欲な木の建物の原則を観察する(それは木を分割して私の実験から判明したように、常に真ではありません)我々は統計的に最高の確率を持って、特定の時間である木を分岐するための唯一のそれらの予測子を選択します、そして私の意見では、兆候を見つけて木でそれらを置くために必要性は、他の条件にかかわらず、サンプル全体に優位性を与えたもの、その後あなたは日の特定の時間(条件)に適合しない得ることができます。

サンプルを減らす場所にどんな違いがあるのでしょうか?外では、24の森を作ることで、内では、例えば、最初の24のノードを時間で区切って追加することで?この24個のノードから、残りの各ブランチがサンプルの1/24を取ることになる。

 
ちなみに、ブーストで嫌なのは、推奨ツリー深度が7~10であること。
つまり、100個の予測変数があり、各予測変数の途中から分割が始まるとします。7種類の予測変数が真ん中で分かれる可能性が非常に高いのです。1、2個は1/4に分割されるかもしれませんが、それ以下はあり得ません。
あるいは、ブースティング・アルゴリズムでは、アルゴリズムが半割りで動くのではなく、より小さな塊で動くのですか?どなたかご存知ですか?
また、誰がどのような樹木の深さを利用するのか?
 
elibrarius:

サンプリングを減らす場所にはどんな違いがあるのでしょうか?外では24の森を作ることで、内では例えば最初の24のノードをスプリットクロックで追加することで、ですか?この24個のノードから、残りの各ブランチがサンプルの1/24を取ることになる。

削減ではなく、分割外のサンプルに対する予測値の振る舞いの統計についてです。これにより、予測値を選択する際のランダム性を減らすことができるはずです。

ところで、AlgLibはグリッドを分割ごとに行うのでしょうか、それとも一度だけ行ってそのグリッドを使うのでしょうか?私の理解では、CatBoostの 開発者は、グリッドは自分たちで一度行っていると主張しています。

 
アレクセイ・ヴャジミキン

よくわからないのですが、ターゲットマークアップポイントの素の価格を取ってクラスタリングしろとかそういうことでしょうか?

ターゲットはあなたです、どんなターゲットでも・・・ちょっと悩むところです・・・。

クラスターは1つのターゲットに対してのみ必要です。


ここで、テスト用の新品にHTを見つけ、良品と認めたのですが...。

さて、新しいデータで、このTXを見つけてモデルを適用する必要があります。モデルはTXに対してのみうまく機能するので、新しいデータでどのようにそれを認識するか? クラスタ番号でオプションとして指定します。

 
Aleksey Vyazmikin:

一般的には、異なる方向性のシグナルを相互に補正することに賛成ですが、私の場合、これを行うには、異なる戦略を使用し、それぞれにマークアップを行う必要があります。

しかし、グループから選択したり、リスク(ロット)を分けたりするために類似の戦略を見つけるには、エントリーやエグジットの時間だけでなく、エントリーの方向も考慮する必要があるのです。どうしたらもっとうまくできるかを考えなければならない。

その考えを論理的な結論に導く。1つのアセットに複数のシステムが搭載されているとする。各システムは、マーケットにいるときは一定のボリュームのポジションを維持しますが、方向は変わることがあります。戦略のリターンとボラティリティは既知である。ここで、T1 と T2 は市場に存在する時間、t1 と t2 はこれらの戦略が同時に市場に存在し、それぞれ同じ方向と反対方向を向いている時間であり、(t1-t2)/sqrt(T1*T2)式を使って戦略間の相関を定義してみましょう。SBへの価格接近を想定して導き出された簡便な計算式です。これで、マーコウィッツ理論を 適用して最適なポートフォリオを見つけるためのデータはすべて揃った。

明らかに、この方法では意味のあるポートフォリオは得られません(少なくとも、1つの資産しか使用されていないため)。少し修正する必要があります。

1) 最適化アルゴリズムの変更(パラメータ制限、ペナルティ)。戦略間の相関の定義を明確にする。

2)戦略作成の時点ですでにポートフォリオを最適化する。つまり、それに対するポートフォリオの最適化条件に基づいて戦略を探します。これをどのように形式化し、実用化するのかがよくわからないが、一般的にはこのアプローチの方が論理的であるように思われる。すでに書かれているように、アルゴリズムを書き換える必要があるなど、いろいろありますが。手間をかける価値があるかどうか

理由: