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

 
Evgeni Gavrilovi Catboostの カスタムメトリクスの作り方を教えてください。

私のバージョンでモデルをトレーニングした結果は、RMSEとほとんど同じです。

predsとtargetは(a[i]-a[i+1])を返す。

pythonのこともkatbustaのこともよく知らないのですが、くだらない質問を します)

1)データとは何ですか?なぜ平均はpredsからではないのですか?

2) gradient boustingではgradientとhessianの式をもっと指定する必要があるようですが?

 
Aleksey Nikolayev #:

パイソンもキャットバスタもよく知らないんだけど、くだらない質問をして みるよ)

1) データとは何ですか、なぜ平均がプレッズからではないのですか?

2) gradient boustingではgradientとhessianの式を指定する必要があるようですが?

どうやらそのようです。公式サイトhttps://catboost.ai/en/docs/concepts/python-usages-examples のテンプレートを使いました。

data - 生成されたモデル予測値のリスト、シャープ平均の算術平均を計算するために負の値を正の値に変換した。

 
Evgeni Gavrilovi #:

データ - モデル予測値のリストを生成し、負の値は シャープ平均の算術平均を計算するために正の値に変換 した。

なぜか?Sharpeでは、元の符号での平均が計算されます。

 
Aleksey Nikolayev #:

なぜか?シャープについては、元の符号との平均を考慮する。

売り注文も考慮するため、-0.002(20ピプス)と+0.003(マイナス-ショート、プラス-ロング)の2つの正確な予測があるとします。

利益は+0.005、平均は0.0025、符号を変えなければ0.0005となります。


カスタムメトリックには独自の損失関数が必要であることがわかりました
 
Evgeni Gavrilovi #:

どうやらそうみたいだ。公式サイトhttps://catboost.ai/en/docs/concepts/python-usages-examples。

メトリックスにはloss_functionとeval_metricの2種類があります。おそらく最初のものが必要でしょう。https://catboost.ai/en/docs/concepts/python-usages-examples#user-defined-loss-function。

しかし、私は間違っているかもしれません。しかし、私は間違っているかもしれません。ここには私より優れたpython専門家やpython賛美者がいます。

 
Evgeni Gavrilovi #:

売り注文も考慮するため、-0.002(20pips)と+0.003(マイナス-ショート、プラス-ロング)の2つの正確な予測があるとします。

利益+0.005の場合、平均は0.0025となり、符号を変えなければ0.0005となります。

まあ、それはシャープではないでしょう。また、おそらく、モジュールを取るだけでなく、予測の符号(売りの場合はマイナス1、買いの場合は1)を掛ける必要があります。

 
Evgeni Gavrilovi Catboostの カスタムメトリクスの作り方を教えてください。

私のバージョンでモデルをトレーニングした結果は、RMSEとほとんど同じです。

predsとtargetは(a[i]-a[i+1])を返す。

得られた値を表示し、他のメトリックと比較する。各反復について、両方を一度にプリントする。catbustのearly stopでは、カスタム基準の最大値と "use best model=True "を含めることを忘れないでください。 Verboseをオンにすれば、それだけで各反復でメトリクス値を表示します。
 
Maxim Dmitrievsky #:
得られた値を印刷し、もう一方の指標と比較する。各反復について、両方を一度に印刷する。catbustaのearly stopでは、"max user criteria "と "use best model=True "を有効にすることを忘れないでください。

カスタム損失関数を使うのは(かなり複雑ですが)研究目的には面白いでしょう。その可能性はあります(ページの最初に戻って、一番下にあるUser-defined loss functionのセクションを見つける必要があります)。

Usage examples
Usage examples
  • catboost.ai
Regression CatBoostRegressor class with array-like data.
 
Aleksey Nikolayev #:

研究目的で(かなり複雑だが)カスタム損失関数を作るのは面白いだろう。その可能性はある(このページの最初のほうに飛ぶと、一番下にユーザー定義の損失関数の項目があるはずだ)。

後で試してみよう。
 
Aleksey Nikolayev #:

研究目的で(かなり複雑だが)カスタム損失関数を作るのは面白いだろう。その可能性はあります(ページの最初のほうに飛ぶと、一番下にUser-defined loss functionのセクションがあります)。

xgboostではうまくいかなかった。
というか、うまくいったのですが、トレーニングがうまくいきませんでした。そこで勾配と仲良しになる必要があります。フィットネス関数を勾配にする必要があるのです。
理由: