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

 
mytarmailS #:
Non ho avuto successo con xgboost...
O meglio, ci sono riuscito, ma l'addestramento non ha funzionato, devi fare buona amicizia con i gradienti lì, devi rendere la funzione di fitness gradiente, con la genetica è molto più facile

Sì, questa è la parte difficile. Bisogna calcolare il gradiente e la matrice delle derivate seconde, l'Hessiano. Anche l'Hessiano deve essere positivamente definito.

Per il profitto, ad esempio, l'Hessiano è degenere (uguale a zero). È necessario perfezionare in qualche modo la funzione di perdita per ottenere un compromesso ragionevole tra necessità e bisogno.

 
Andrey Dik #:

1. Il mio cognome non è declinato
2. la questione non è se il globale cambierà o meno (cambierà per forza), ma se è possibile trovare l'estremo globale. se non vi interessa, potete semplicemente inizializzare i pesi della rete con numeri casuali e il gioco è fatto, perché che differenza fa se è globale o meno? locale))

1. Per quanto riguarda il cognome, ne terrò conto. Lei è l'unica persona che conosco con un cognome simile.

2. Vorrei obiettare che non dovremmo portare l'idea all'assurdo, ma in realtà il caso è lo stesso: non abbiamo bisogno di nessun optimum - abbiamo bisogno di plateau, più estesi, meglio, più redditizi, meglio. E l'estremo è sempre uno stato instabile, ma noi abbiamo bisogno di uno stato stabile, e in futuro. Pertanto, si scopre che la ricerca dell'optimum è un'attività dannosa.

Qui sto spingendo l'idea che la stabilità del profitto nel futuro dipenda dalle proprietà dei predittori e dipenda molto poco dal modello, e ancora meno dagli algoritmi di ottimizzazione. Si tratta di un approccio completamente diverso.

 
СанСаныч Фоменко #:

L'idea che propongo è che la sostenibilità dei profitti in futuro dipenda dalle proprietà dei predittori e dipenda molto poco dal modello e ancor meno dagli algoritmi di ottimizzazione. Si tratta di un approccio completamente diverso.

Può inviarmi il suo esempio? Abbiamo la stessa visione del problema dello scarso apprendimento dei modelli, vorrei confrontare quanto il tuo metodo di selezione sia migliore del mio e se si adatta al tuo campione.

 
Cosa si propone di sostituire con logloss?
 
Aleksey Nikolayev #:

Sì, questa è la parte difficile. È necessario calcolare il gradiente e la matrice delle derivate seconde - l'Hessiano. Anche l'Hessiano deve essere definito positivamente.

Per il profitto, ad esempio, l'Hessiano è degenere (uguale a zero). È necessario perfezionare in qualche modo la funzione di perdita per ottenere un compromesso ragionevole tra necessità e bisogno.

In questo caso, a quanto mi risulta, l'Hessiano non viene affatto preso in considerazione.

#  Custom objective function (squared error)
myobjective <- function(preds, dtrain) {
  labels <- getinfo(dtrain, "label")
  grad <- (preds-labels)    
  hess <- rep(1, length(labels))                
  return(list(grad = grad, hess = hess))
}

#  Custom Metric
evalerror <- function(preds, dtrain) {
  labels <- getinfo(dtrain, "label")
  err <- (preds-labels)^2        
  return(list(metric = "MyError", value = mean(err)))   
}

Lavora solo per ridurre il gradiente.

grad <- (preds-labels)   


Questo è diverso.

logregobj <- function(preds, dtrain) {
  labels <- getinfo(dtrain, "label")
  preds <- 1 / (1 + exp(-preds))
  grad <- preds - labels
  hess <- preds * (1 - preds)
  return(list(grad = grad, hess = hess))
}


Ricordo che ho avuto molti problemi, quindi ho rinunciato.

Ma sarebbe bello allenare il mio fisico).
 
СанСаныч Фоменко #:

Ma in realtà le cose stanno così: non abbiamo bisogno di nessun optimum - abbiamo bisogno di plateau, piùestesi sono, meglio è, più redditizi sono, meglio è. E un estremo è sempre uno stato instabile, e l'estremo è sempre un'instabilità.

E la funzione che valuta "quanto plateau/non plateau" non è la ricerca del massimo?

E la funzione che valuta "più è redditizio meglio è" non è una ricerca di massimo ?

E la funzione che valuta "più esteso è meglio è" non è una ricerca di massimo?

E la funzione che valuta "stato stazionario/instabile" non è una ricerca di massimo?

O anche lì serve un plateau? )))) Bene, allora vedi punto uno ))))

Oh questi profani ...



SanSanych Fomenko #:

Sto spingendo l' idea che la sostenibilità dei profitti in futuro dipenda dalle proprietà dei predittori e molto poco dal modello, tanto meno dagli algoritmi di ottimizzazione. Si tratta di un approccio completamente diverso.

Non bisogna spingere l'idea, ma dimostrarla o almeno giustificarla....

Ce n'era uno qui, che spingeva l'idea che Mashka è la cosa migliore che ci possa essere, e a cosa serve questa spinta??????

 
Ancora più bello sarebbe includere il corpo mancante e pensare a quale tipo di relazione potrebbe descrivere il fattore di profitto tra chip e tag. Più o meno nessuno 🤤
 
СанСаныч Фоменко #:

1. Terrò presente il cognome. Lei è l'unica persona che conosco con quel cognome.

2. Vorrei obiettare che non dovremmo portare l'idea all'assurdo, ma in realtà il caso è lo stesso: non abbiamo bisogno di nessun optimum - abbiamo bisogno di plateau, più estesi, meglio, più redditizi, meglio. E l'estremo è sempre uno stato instabile, ma noi abbiamo bisogno di uno stato stabile, e in futuro. Pertanto, si scopre che la ricerca degli ottimali è un'occupazione dannosa.

Qui sto spingendo l'idea che la stabilità del profitto nel futuro dipenda dalle proprietà dei predittori e dipenda molto poco dal modello, e ancora meno dagli algoritmi di ottimizzazione. Si tratta di un approccio completamente diverso.

1. v

2. Ecco una figura, come una curva di un'ipotetica funzione di apprendimento.

Siete soddisfatti che la griglia si fermi all'estremo locale 1? O forse 2? O cosa, 3, come nel mezzo? Non si sa in anticipo quanti siano gli estremi locali, potrebbero essere 100500 o anche di più. Per questo motivo è importante cercare di trovare l'estremo locale più alto tra tutti quelli che l'algoritmo è in grado di raggiungere.

 
Maxim Dmitrievsky #:
Cosa si propone di sostituire il logloss?

Se è una domanda per me, il profitto o un suo analogo ragionevole. Profitto - per ora è solo la somma di tutti i (close[i] - open[i])*prognos[i], dove prognos[i] è la previsione del colore della candela ed è 1 o -1. Potrebbe essere necessario modificarlo in qualche modo per ottenere un buon comportamento del gradiente e dell'hessian.

 
Aleksey Nikolayev #:

Se si tratta di una domanda per me, il profitto o un suo analogo ragionevole. Profitto - per ora è solo la somma di tutti i (close[i] - open[i])*prognos[i], dove prognos[i] è la previsione del colore della candela ed è 1 o -1. Potrebbe essere necessario modificarlo in qualche modo per ottenere un buon comportamento del gradiente e dell'hessian.

In genetica, prendiamo le variabili e le massimizziamo in base a un criterio. Non è possibile farlo in questo caso, perché la classificazione. Non c'è alcuna relazione tra il profitto e le etichette di classe. Nel migliore dei casi, non si ottiene nulla. Ecco perché tali criteri sono collocati in eval_metrics.