L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 2453

 
Andrey Dik #:
di sicuro.
Tuttavia, nessuno vieta l'uso di metriche più complesse e/o articolate. l'idea di base è quella di aggiungere alla funzione di fitness una metrica per i pesi e le uscite NS.

Non lo so, ma secondo me funziona se i dati di input sono qualitativamente normalizzati (uniformemente) e solo per un Perspectron multistrato regolare

e se usate i pacchetti NS off-the-shelf, le vostre nuove metriche saranno rovinate dal dropout


anche se forse stai cercando qualcosa di simile all'ottimizzazione annealing, ma di nuovo, le tecniche sono descritte, lo scopo di creare una bicicletta non è chiaro, e ancora di più quanto sia affidabile e come valutarla, imho

 
È meglio iniziare a reinventare la ruota per modelli più semplici su piccola scala, per esempio la regressione lineare. In primo luogo, guardate attentamente le opzioni già disponibili per aggiungere coefficienti alla funzione di perdita (regressione ridge e lasso, criterio di Akaike, ecc.)
 
Andrey Dik #:

su un test...? il test è lo stesso della derivata di una funzione, può essere la stessa curva, tangente allo stesso punto ma a due funzioni diverse.


Hai capito quello che hai detto? È un insieme di parole senza senso.

 
Vladimir Perervenko #:

О !! Ciao Vladimir, che cosa è che non si sente per un lungo periodo è stato, molto perso i tuoi articoli, non scrivere nulla di nuovo? Forse su altre risorse?

C'è anche una domanda per te, c'è una "ottimizzazione gauss" (sono sicuro che la conosci), sembra essere il metodo di ricerca più efficace per funzioni di fitness "pesanti", ma non riesco a ottenere buoni risultati con essa, ecco il mio esempio, puoi dare un commento sulla mia domanda, perché funziona.

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 #:

Capisci quello che stai dicendo? L'insieme delle parole non ha senso.

non sai cos'è il "derivato"? scusa....

 
Andrey Dik #:non sai cos'è il 'derivato'? sympathy....

si dispiaccia per se stesso, con i suoi poteri deduttivi...

 
mytarmailS #:

О !! Ciao Vladimir, cos'è che non si sente da molto tempo, mi sono davvero mancati i tuoi articoli, non scrivi niente di nuovo? Forse su altre risorse?

C'è anche una domanda a voi, c'è una "ottimizzazione gauss" (sono sicuro che sapete), questo è come il metodo di ricerca più efektivny per funzioni di fitness "pesanti", ma non posso ottenere buoni risultati con esso qui è il mio esempio, si può dare un commento sulla mia domanda, perché così ottenere.

Saluti. Gli articoli che usano R sul sito sono tabù. Ecco perché non ce ne saranno.

Per quanto riguarda la sua domanda, vuole ottenere una risposta qui o a Stoke? Ci sono molti errori e uno di questi è fondamentale.

 
Vladimir Perervenko #:

1) Saluti. Gli articoli che usano R sul sito web sono tabù. Pertanto, non ce ne saranno.

2) Sulla tua domanda vuoi una risposta qui o su Stoke? Ci sono molti errori e uno di questi è fondamentale.

1) Peccato.

2) Dove è più conveniente per voi, è interessante sapere tutti i miei errori, sia principali che non così...

P.S. So che ho applicato l'approssimazione continua al problema di ottimizzazione discreta.


=====

Ho un pacchetto relativamente nuovo in combinazione con mt5, non l'hai provato?

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) Peccato.

2) Dove è più conveniente per voi, è interessante conoscere tutti i miei errori, sia fondamentali che non tanto...

P.S. Che ho applicato l'approssimazione continua al problema per l'ottimizzazione discreta lo so.


=====

Ho un pacchetto relativamente nuovo in combinazione con mt5, non l'hai provato?

https://github.com/Kinzel/mt5R

1. Non è rilevante per il 5. Tutto funziona con MetaTrader5(Py). Ma può essere vero per MT4.

2. Un errore fondamentale. Entrambi i pacchetti (mco e Gpareto) sono progettati per l'ottimizzazione multiobiettivo e multicriterio di funzioni, cioè per trovare i parametri ottimali di diverse funzioni che danno il risultato minimo. Lo fanno con metodi diversi.

Ma state cercando di usare una funzione per ottenere un fronte di Pareto. Ecco il tuo esempio riscritto (non la migliore scelta di funzioni che usano le probabilità, a proposito)

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)

Due funzioni con diversi parametri sd e limiti superiori e inferiori. La funzione obiettivo è qui sotto.

#--------------------------------------------
 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

E l'ottimizzazione vera e propria.

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

Parametri ottimali per queste funzioni c(4, 4). Visualizzazione di ParetoFront + ParetoSet

plot(OPT1)

Pareto_front_Set_mco

I punti blu sono il ParetoFront, cioè l'insieme dei valori della funzione obiettivo. I punti rossi sono ParetoSet, cioè i valori dei parametri che danno il valore minimo della funzione. Questi valori possono essere trovati

> 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

Dopo l'arrotondamento si ottiene il valore ottimale di c(4,4). La variante con Gpareto nel prossimo post

 
Vladimir Perervenko #:

1. Questo non è rilevante per il 5. Tutto funziona con la libreria standard MetaTrader5(Py). Ma per MT4 - forse.

È solo per Py, è un nuovo pacchetto, il nome stesso è mt5R.

Vladimir Perervenko # :

2. Un errore fondamentale. Entrambi i pacchetti (mco e Gpareto) sono progettati per il multi-obiettivo

Sì, ho capito che ho bisogno di un'ottimizzazione multiobiettivo.

Vladimir Perervenko #:

State cercando di ottenere un fronte di Pareto usando una funzione. Ecco il tuo esempio riscritto (a proposito, non la migliore scelta di funzioni che usano le probabilità)

La mia semplice funzione di fitness cerca solo l'indice del vettore di un punto che è un minimo in termini di algoritmo.

Idealmente l'algoritmo produrrà due indici, questi due indici saranno indici di minimi nel vettore

Ho pensato che non c'è differenza nel cercare due minimi in un vettore o un minimo in due vettori

Il mio semplice fitness non è un modello del mio problema, volevo solo fare un confronto semplice e visivo degli algoritmi per me stesso

Vladimir Perervenko #:

Parametri ottimali per queste funzioni con(4, 4). Visualizzazione di ParetoFront + ParetoSet

Non capisco cosa fa la tua funzione di fitness, conosco tutto il codice, ma non riesco a capirne il succo)