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

 
Forester #:

La sostituzione con la media veniva utilizzata in statistica quando semplicemente non c'erano dati, quindi si sostituiva la media. Hanno usato il NAN come una mancanza o un'omissione di dati - avevano bisogno di segnare questo momento in qualche modo - hanno deciso di usare il NAN a questo scopo con la successiva sostituzione con la media.

Ho il NAN - c'è un errore nella preparazione dei dati e ottengo per esempio dopo /0 (ma a volte ottengo + - INF). Non devo considerare i dati errati come normali o addirittura medi.
Gli errori devono essere corretti (stampo che la colonna contiene NAN ed è mancante). Ma chi legge queste stampe...? )))

Beh, allora non c'è nulla da chiedere, cosa si può fare se non buttarlo via?


Per sicurezza, un esempio di sostituzione dei NAN, visto che ho già scritto un esempio.

m <- round(matrix(rnorm(100),ncol = 5,nrow = 10),2)
m[ sample(1:nrow(m),5,replace = T) , sample(1:ncol(m),5,replace = T) ] <- NaN
m

[,1]  [,2]  [,3]  [,4]  [,5]
 [1,] -1.17 -0.10 -0.22 -1.49 -1.23
 [2,]   NaN   NaN  0.85   NaN -2.13
 [3,]  0.60  0.06  1.50 -0.31  0.05
 [4,]   NaN   NaN -0.41   NaN -0.43
 [5,]  1.17  0.86 -0.51  1.43 -0.07
 [6,] -0.44  0.79 -0.61  0.68  0.11
 [7,]  0.85  0.74  0.31 -1.16 -0.38
 [8,]   NaN   NaN  1.09   NaN -0.36
 [9,]   NaN   NaN -0.58   NaN -1.27
[10,] -0.19 -0.42  0.07  0.31  1.92

e la soluzione

library(imputeTS)
m2 <- round(apply(m,2,na_ma),2)
m2

 [,1]  [,2]  [,3]  [,4]  [,5]
 [1,] -1.17 -0.10 -0.22 -1.49 -1.23
 [2,] -0.14  0.12  0.85 -0.57 -2.13
 [3,]  0.60  0.06  1.50 -0.31  0.05
 [4,]  0.49  0.49 -0.41  0.27 -0.43
 [5,]  1.17  0.86 -0.51  1.43 -0.07
 [6,] -0.44  0.79 -0.61  0.68  0.11
 [7,]  0.85  0.74  0.31 -1.16 -0.38
 [8,]  0.37  0.51  1.09 -0.14 -0.36
 [9,]  0.14  0.14 -0.58  0.04 -1.27
[10,] -0.19 -0.42  0.07  0.31  1.92
 
mytarmailS #:

Allora non c'è nulla da chiedere, nulla da fare se non buttarlo via.


Per sicurezza, un esempio di come sostituire i NAV, visto che ho già scritto un esempio.

e la soluzione

Grazie, forse il codice sarà utile a qualcuno.

 
La guida di onnx sul sito web è stata aggiornata - https://www.mql5.com/ru/docs/onnx
Документация по MQL5: ONNX модели
Документация по MQL5: ONNX модели
  • www.mql5.com
ONNX модели - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
mytarmailS #:


Ho pensato al tuo esempio.

Ho dei grossi dubbi.

In primo luogo, ho capito bene.

Su alcune sezioni della quotazione, sono stati trovati punti di ingresso che daranno una sorta di linea di equilibrio perfetta.

Se è così, si tratta di un adattamento eccessivo alla storia. I punti di entrata/uscita trovati non soddisfano affatto l'idea di base del MO "la storia si ripete". Con il MO, si cercano alcuni modelli astratti, con la speranza/giustificazione che si ripetano in futuro. Ed ecco un markup di alcune aree di prezzo....


Esiste un altro modo? O mi sfugge qualcosa?

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

Ho pensato al tuo esempio.

Grandi dubbi.

In primo luogo, se ho capito bene.

Su alcune sezioni del quotir, sono stati trovati dei punti di ingresso che daranno una certa linea di equilibrio ideale.

Se è così, si tratta di un adattamento eccessivo alla storia. I punti di entrata/uscita trovati non soddisfano affatto l'idea di base del MO "la storia si ripete". Con il MO, si cercano alcuni modelli astratti, con la speranza/giustificazione che si ripetano in futuro. Ed ecco un markup di una certa area di prezzo....


Esiste un altro modo? O mi manca qualcosa?

Lo scopo dell'esempio è mostrare che è possibile addestrare il modello non solo con obiettivi già pronti, ma anche con funzioni di perdita di qualsiasi complessità che minimizzano o massimizzano il FF.

In questo esempio (su richiesta di coloro che sono desiderosi) viene mostrato come addestrare AMO per il massimo profitto stabile, ma può essere assolutamente qualsiasi FF a vostro piacimento....

Inoltre, nessuno impedisce di aggiungere un campionamento di prova e di convalida per l'addestramento, in modo da evitare l'overtraining, ma ciò complicherebbe il codice e va oltre lo scopo dell'esempio.
 
mytarmailS #:
Lo scopo dell'esempio è dimostrare che è possibile addestrare il modello non solo su obiettivi già pronti, ma anche su funzioni di perdita di qualsiasi complessità, minimizzando o massimizzando la FF.

In questo esempio (su richiesta di chi è interessato) viene mostrato come addestrare AMO per ottenere il massimo profitto stabile, ma può essere assolutamente qualsiasi FF a vostro piacimento....

Inoltre, nessuno impedisce di aggiungere un campionamento di prova e di convalida per l'addestramento, in modo da evitare un sovrallenamento, ma ciò complicherebbe il codice e va oltre lo scopo dell'esempio.

Capisco, molto curioso

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

Capisco, molto curioso

Cosa c'è di curioso? È stato detto un paio di mesi fa in questo thread nei dialoghi con la mia partecipazione))) qui molti sostenevano che i ff max/min non dovrebbero essere in alcun modo)))))

come si imposta il ff così la nave navigherà....

 
Andrey Dik #:

Cosa c'è di curioso? Così è stato detto un paio di mesi fa in questo thread in dialoghi con la mia partecipazione)) qui molti sostenevano che il max/min ff non dovrebbe essere in alcun modo))))

come si imposta la ff, così la nave navigherà....

L'algoritmo ha il suo proprio ff, che non può essere cambiato (non funzionerà), è solo un add-on per il fitting delle curve per essere bello. Non influisce su nulla a livello globale. C'era già qui una variante con perdita personalizzata sul fattore di profitto, sul trayne è bello come al solito.

Ci giriamo intorno e ci sorprendiamo ogni volta. L'amnesia è una piacevole afflizione, ogni giorno novità 😀
 
Maxim Dmitrievsky #:
L'algoritmo ha una propria ff, che non può essere modificata (non funzionerà), è solo un'aggiunta per l'adattamento delle curve, per renderlo più bello). Non influisce su nulla a livello globale.

Max, è possibile impostare qualsiasi FF, ed è bene impostarlo in base all'obiettivo dell'allenamento.

Se l'obiettivo di apprendimento è il curve fitting, allora sarà il curve fitting)).

Ma questo non cancella il fatto che ogni allenamento è l'essenza dell'ottimizzazione (massima/minima) di qualche FF.

 
Andrey Dik #:

Max, il FF può essere impostato in qualsiasi modo, ed è una buona idea impostare un obiettivo di apprendimento appropriato.

Se l'obiettivo di apprendimento è kurwafing, allora sarà kurwafing)).

Ma questo non cancella il fatto che ogni allenamento è l'essenza dell'ottimizzazione (massima/minima) di qualche FF.

Ma non riesco a immaginare come TC possa essere tirato fuori attraverso questo :) forse qualcuno ha una FF super-duper, ma tace