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

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

上に書きました。片方の駒に基本モデル、もう片方の駒に第二補正モデル

なら5~10ファウルで十分だし、それ以上でもいい。

上に書かれたことは明確です。

ただ、「5~10ファウル」の意味がわからない。

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

上に書かれたことは明確です。

ただ、「5~10ファウル」の意味がわからない。

データセットを5つに分割する。

1,3,4を統合し、その上でメインモデルを教える。

は2,5を組み合わせています。その上で1stモデルを学習させ、結果を得る。

この2.5に対して、1番目のモデルの結果を用いて2番目のモデルを学習させ、不採算の取引を修正します。

データセット全体と新しいデータで両方のモデルを実行し、その結果を見ることができます。

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

具体的に何を再計算するのですか?

ポートフォリオでは通常通り、ウェイト(資産、システム)を設定します。この場合、例えば、0-仮想シートシグナル取引、1-本物、そして-1-シグナル反転を追加することが可能です。各ポートフォリオは、0、1、-1の長さのベクトルに対応する。最適化は、例えば、ドローダウンとポートフォリオのボリュームに対するペナルティを伴う利益によって、最後の各月に行われます。

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

データセットを等分に分割する(たとえば5個).

1,3,4を組み合わせて、主モデルを学習させる。

は2,5を組み合わせています。1stモデルを走らせ、結果を出す。

この2.5に対して、1番目のモデルの結果を用いて2番目のモデルを学習させ、不採算の取引を修正します。

データセット全体と新しいデータで両方のモデルを実行し、結果を見ることができる

ああ、なるほど、サンプルを混ぜて、1つ目のモデルが訓練されていないところに2つ目のモデルを訓練する、ということだったんですね。どのように実装できるかを考える必要がありますが、おそらく今回のプロジェクトでは、2019年に2号機を教える以外は、トレーニング以外で結果を確認する場はないでしょう。

 
アレクセイ・ニコラエフ

ポートフォリオでは通常通り、ウェイト(資産、システム)を設定します。この場合、例えば、0-仮想シートシグナル取引、1-本物、そして-1-シグナル反転を追加することが可能です。各ポートフォリオは、0、1、-1の長さのベクトルに対応する。 最適化は、例えば、ドローダウンとポートフォリオのボリュームに対するペナルティを伴う利益によって、最後の各月に行われます。

ここで問題となるのは、係数が変更される頻度です。係数が変更されることが稀であれば、トレンドに遅れをとり、頻繁に変更されれば、恐ろしい調整をすることになります。戦略自体がドローダウンを許容する一方で、シートは四半期中に決してシグナルを与えないかもしれないので、このアプローチは複雑になります。

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

テスターを直したようで、どこも覗いていない、結果。

EURUSD train+valid, 10kバー


EURUSDは50kバーをテスト

同じモデルをEURUSDで学習させ、GBPUSDでテスト、50kバー

同じモデルをUSDCHFでも学習させた

理にかなっているように思います。いわば成長トレンドがあるのです(笑)。

何か見落としているのかもしれませんが、その場では、明らかにalglibの森よりも優れています(他にもいろいろと追加して改良していますが)

高速で動作し、シグナルも多く、ポートフォリオを作成することも可能です。サンプルの時間枠はどのくらいですか?

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

元気に走って、たくさんの信号を、ポートフォリオにしてみてください。また、サンプルの時間帯は?

15分くらいで1年半。

ドローダウンも何もかも、それこそ掃除しないといけませんね。

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

15分くらいで1年半。

まあ試運転だから、ドローダウンとか色々綺麗にしないといけないし、それはそれでいいんだけど。

スプレッドがすべてを食いつぶしていないかのように、トレードが多いような...。とにかく、可能性はある。

 

分割中のモデルの指標を少し見てみようと思い、1、20、48ステップ(最後に処理したもの)を取ってみたところ、以下のようなサマリー表が得られました。

トレーニングに使用したサンプルの指標。

まず注目すべきは、52%~53%の精度しかない木を扱っていることです。これは、モデル全体としては非常に低い精度です。しかし、我々はモデル全体に興味があるわけではありません。なぜなら、トレーディングではエントリーを逃すよりも正しい方向にエントリーすることの方が重要であり、したがって、まず分類の精度に興味があるはずです。ある時点でクラス「-1」と「1」の精度が初期バージョンより4%と3%高くなり、クラス「0」の精度は1-2%低下しただけでしたが、同時にクラス「-1」「1」の完全性が低下しクラス「0」の完全性が増加したことがわかりました。

この段階では、ルート予測変数の約10%がサンプルから削除されています(各ステップで1つずつ)。しかし、モデルは崩壊しておらず、私たちにとって重要な個々の指標さえも改善されています。

もちろん、48分割すべてを処理することで、ダイナミクスに関するより多くの情報を得ることができます。おそらく、指標にギャップがあったり、逆にすべての指標が選択したベクトル内で動いていたりするのでしょう。しかし私が思うに、トレーディングには独自のモデル作成方法が必要です。その原則は、構造全体を記述しようとするのではなく、他の部分よりも構造の一部をより良く理解することです。そして今、良いモデルは、私が知っている全ての方法で、エントロピーやloglossによって推定されます。つまり、モデル全体を学ぶためのものです。ゼロと1の知識、と言っても、我々は1についてもっと知る必要があるだけですが。

さて、先ほど示したように、葉による木、そして葉による選択という私の方法では、学習サンプルに対する分類精度が従来のモデルに比べて20%〜25%向上します。

問題は、どうすればスピードアップできるかです。現在、ツリーを生成しているRスクリプトの操作を再考し、方法論の改善とスピードアップを一緒に考えてくれる、興味のある方を探しています。

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

分割中のモデルの指標を少し見てみようと思い、1、20、48ステップ(最後に処理したもの)を取ってみたところ、以下のようなサマリー表が得られました。

トレーニングに使用したサンプルの指標。

まず注目すべきは、52%~53%の精度しかない木を扱っていることです。これは、モデル全体としては非常に低い精度です。しかし、我々はモデル全体に興味があるわけではありません。なぜなら、トレーディングではエントリーを逃すよりも正しい方向にエントリーすることの方が重要であり、したがって、まず分類の精度に興味があるはずです。ある時点でクラス「-1」と「1」の精度が初期バージョンより4%と3%高くなり、クラス「0」の精度は1-2%しか下がりませんが、同時にクラス「-1」「1」の完全性は低下しクラス「0」の完全性はそれとともに上昇したことが見て取れます。

この段階では、ルート予測変数の約10%がサンプルから削除されています(各ステップで1つずつ)。しかし、モデルは崩壊しておらず、私たちにとって重要な個々の指標さえも改善されています。

もちろん、48分割すべてを処理することで、ダイナミクスに関するより多くの情報を得ることができます。おそらく、指標にギャップがあったり、逆にすべての指標が選択したベクトル内で動いていたりするのでしょう。しかし私が思うに、トレーディングには独自のモデル作成方法が必要です。その原則は、構造全体を記述しようとするのではなく、他の部分よりも構造の一部をより良く理解することです。そして今、良いモデルは、私が知っている全ての方法で、エントロピーやloglossによって推定されます。つまり、モデル全体を学ぶためのものです。ゼロと1の知識、と言っても、我々は1についてもっと知る必要があるだけですが。

さて、先ほど示したように、葉による木、そして私の葉による選択の方法は、従来のモデルに比べて、学習サンプルの分類精度が20%~25%向上します。

問題は、どうすれば高速化できるかです。現在ツリーを生成しているRスクリプトの動作を再考し、方法論の改善と高速化を一緒に考えてくれる興味のある方を募集しています。

ということは、loglossは〜1ということで、モデルは流動的な状態なんですね。

1つの入力に対して、別のloglossを求めたいのですか?つまり、シート値と目標値との間の情報量?

何もしない」クラスは、上で「3クラスモデルだからこその問題かもしれない」と書いたように、他のクラスとの関係で明らかにアンバランスなのです。 その他の指標も憂慮すべきものです。

理由: