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

 
Andrey Dik#:
、確かに。
しかし,より複雑なメトリクスや複雑なメトリクスの使用を禁じ ているわけではない.基本的な考え方は,フィットネス関数に重みと NS 出力のメトリクスを追加することである.

よくわかりませんが、私の意見では、入力データが質的に正規化(均一化)されていれば、通常の多層膜Perspectronに限ってはうまくいくと思います。

また、市販のNSパッケージを使用すると、新しいメトリクスがドロップアウトしてしまいます。


アニーリング最適化に近いものを求めているのかもしれませんが、やはり、テクニックは説明されても、自転車を作る目的が明確でなく、さらに、その信頼性や評価方法も不明で、イマイチです

 
線形回帰の ような単純な小規模モデルについては、車輪の再発明から始めた方がよいでしょう。まず、損失関数に係数を追加するために既に用意されているオプション(リッジやラッソ回帰、赤池の基準など)をよく見てみましょう。
 
アンドレイ・ディク#:

テスト中...?このテストは、関数の微分と同じで、同じ曲線、同じ点での接線であっても、2つの異なる関数になることがあります。


自分の言ったことが理解できたか?意味のない言葉の羅列である。

 
ウラジミール・ペレヴェンコ#:

О !!こんにちはウラジミール、あなたは長い時間のために聞いていないことは何ですか、非常に多くのあなたの記事を逃した、あなたは何か新しいことを書いていない? 多分他のリソースに?

また、質問があります。「ガウス最適化」(ご存知だと思いますが)があります。これは「重い」フィットネス関数に対して最も効果的な探索方法のようですが、私はこれで良い結果を得ることができません。以下は私の例 ですが、私の質問に対して、なぜそれがうまくいくかコメントをいただけませんか?

mco vs GPareto (Multi-objective optimization)
mco vs GPareto (Multi-objective optimization)
  • 2021.08.23
  • mr.T
  • stackoverflow.com
I am not an expert in this field, I just wanted to compare two search algorithms. ness function is simple, find two minima in vector I almost always get a bad solution from the GPareto algorithm. I understand that these are different algorithms, but Question is Is this normal? it should be?, or am I doing something wrong? I am...
 
Vladimir Perervenko#:

自分の言っていることが理解できているのだろうか?言葉の集合が意味をなさない。

デリバティブってなんですか?

 
Andrey Dik#:デリバティブの意味がわからない? 共感...。

己を憐れむ、その推理力で...。

 
mytarmailS#:

О !!こんにちはウラジミール、それはあなたが長い時間のために聞いていないことは何ですか、私は本当にあなたの記事を逃した、あなたは何か新しいことを書いていない? 多分他のリソースに?

また、あなたに質問があります、そこに "ガウス最適化"(私はあなたが知っていると確信している) 、これは "重い "フィットネス関数のための最もefektivny検索方法のようですが、私はそれで良い結果を得ることができないここでは私の例です、あなたは私の 質問にコメントを与えることができます、なぜそう取得します。

ごあいさつこのサイトでは、Rを使った記事はタブーです。だから、ないんです。

ご質問の件ですが、ここでお答えになりますか、それともストークでお答えになりますか?いろいろな間違いがありますが、そのひとつが根本的なことです。

 
Vladimir Perervenko#:

1)ご挨拶ウェブサイト上でRを使った記事はタブーです。したがって、ないでしょう。

2) 質問について、ここで回答が欲しいのか、ストークで回答が欲しいのか?そこには多くの間違いがあり、そのひとつは根本的なものです。

1)残念です。

2)どこが便利かというと、私の失敗談をすべて知ることができるのが面白いからです。

P.S. 離散最適化問題に連続近似を適用したことは知っています。


=====

mt5と連動して比較的新しいパケットがあるんだけど、試したことない?

https://github.com/Kinzel/mt5R

GitHub - Kinzel/mt5R: Easy integration between R and MT5 using socket connection, tailored to fit Machine Learning users and traders needs
GitHub - Kinzel/mt5R: Easy integration between R and MT5 using socket connection, tailored to fit Machine Learning users and traders needs
  • github.com
Easy integration between R and MT5 using socket connection, tailored to fit Machine Learning users and traders needs - GitHub - Kinzel/mt5R: Easy integration between R and MT5 using socket connecti...
 
mytarmailS#:

1)残念です。

2) どこが都合がいいかというと、私の失敗を、基本的なものもそうでないものも含めて、すべて知ることができるのが面白いからです...。

追伸:離散最適化の問題に連続近似を適用したことは、私も知っています。


=====

mt5と連動して比較的新しいパケットがあるんだけど、試したことない?

https://github.com/Kinzel/mt5R

1.5には関係ありません。MetaTrader5(Py)で全て動作します。しかし、MT4ではそうかもしれません。

2.根本的な間違いです。両パッケージ(mcoとGpareto)は、関数の多目的・多基準最適化のために設計されています。 つまり、複数の関数の 最適なパラメータを求め、最小の結果を得ることができます。その方法はさまざまです。

しかし、あなたは1つの関数を使ってパレートフロントを得ようとしているのです。以下は、あなたが書き直した例です(ちなみに、確率を使った関数の最適な選択ではありません)。

set.seed(4023)
mins <- function(x, n = 1 L) cumsum(rnorm(n, 0, x))
mins1 <- function(x, n = 1 L)cumsum(rnorm(n,0, x*0.5))

up <-  rep(5,2)
dw <- rep(1,2)

sdパラメータと上下限が異なる2つの関数。目的関数は以下の通りです。

#--------------------------------------------
 fit <- function(x){
    y1 <- mins(x[1])#  cumsum(rnorm(1, 0, x[1]))
    y2 <- mins1(x[2])  #    cumsum(rnorm(1,0, x[2]*0.5))
    #y <- cbind(y1, y2)
    return( c(y1, y2) )}

Fn <- fit(c(4,4))
> Fn
[1] 0.4244075 3.5528975

そして、最適化の適正化。

library(mco)

OPT1 <- nsga2(fn = fit,idim = 2,odim = 2,
                   lower.bounds = dw,
                   upper.bounds = up,
                   popsize = 100)
res_OPT1 <- c(floor(tail(OPT1$par,1)))
> res_OPT1
[1] 4 4

これらの関数の最適なパラメータc(4, 4)。ParetoFront + ParetoSetのビジュアル化

plot(OPT1)

パレート_フロント_セット_ムコ

青い点はパレートフロント、すなわち目的関数値の集合である。赤い点はパレートセット、すなわち関数値が最小となるパラメータ値である。これらの値は、以下のようになります。

> paretoFront(OPT1)
            [,1]      [,2]
 [1,] -18.768766 -0.919960
 [2,] -16.563714 -4.075318
 [3,] -11.689811 -4.511709
 [4,]  -2.924055 -6.256807
 [5,]  -1.801073 -9.175708
 [6,]  -5.438790 -5.876476
 [7,]  -9.924184 -5.006235
 [8,]  -9.150563 -5.749592
 [9,]  -2.565944 -8.321299
[10,]  -5.653256 -5.808398

> paretoSet(OPT1)
          [,1]     [,2]
 [1,] 4.651688 4.830462
 [2,] 4.812924 4.374282
 [3,] 4.692132 4.589676
 [4,] 4.998786 4.715230
 [5,] 4.960933 4.696511
 [6,] 4.973955 4.245543
 [7,] 4.708673 4.946008
 [8,] 4.630083 4.242298
 [9,] 3.913589 4.553322
[10,] 4.655140 4.648080

丸めの後、c(4,4)の最適値が得られます。次の記事でGparetoとの変種を紹介します。

 
Vladimir Perervenko#:

1.5には関係ありません。全てはMetaTrader5(Py)標準のライブラリで動作します。でも、MT4の場合は......そうかもしれませんね。

Pyのためだけの新しいパッケージで、その名も「mt5R」です。

ウラジミール・ペレヴェンコ# :

2.根本的な間違いです。両パッケージ(mcoとGpareto)は、多目的の

はい、多目的最適化が必要なことは理解しています。

ウラジミール・ペレヴェンコ #:

1つの関数を使ってパレートフロントを出そうとしているのですね。以下は、あなたが書き直した例です(ちなみに、確率を使う関数の選択としては最適ではありません)。

私の単純なフィットネス関数は、アルゴリズムの観点から最小となる点のベクトルインデックスを探すだけです。

理想的には、このアルゴリズムは2つのインデックスを出力し、これらの2つのインデックスは、ベクトル

1つのベクトルで2つの極小値を探すのも、2つのベクトルで1つの極小値を探すのも、違いはないのでは?

私のシンプルなフィットネスは、私の問題のモデルではなく、自分自身のためにアルゴリズムをシンプルかつ視覚的に比較したかっただけです。

ウラジミール・ペレヴェンコ#:

これらの関数の最適なパラメータは(4, 4)である。ParetoFront + ParetoSetのビジュアル化

フィットネス関数が何をするのか理解できません。すべてのコードを知っていますが、その要点を理解できません)

理由: