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

 
elibrarius #:

Gli alberi cercano le suddivisioni ordinando ogni colonna.
Apparentemente si dovrebbe prendere il maggior numero possibile di colonne e riempire NAN in quelle righe dove non sono usate. Se il modello può gestire NAN.

O con qualcos'altro: -INF, 0, +INF... in modo che tutte le righe inutilizzate siano dallo stesso lato quando si ordina.

Questo è più o meno comprensibile. Vorrei un approccio più creativo o qualcosa del genere. Ci sono molti nuovi compiti come lavorare con scene video di diversa lunghezza, ecc.

 
mytarmailS #:
Cosa vuoi dire? Descrivere il problema

Per esempio, voglio alimentare il classificatore con pezzi di prezzo in ingresso non di una lunghezza fissa in barre (o in collegamenti di un modello a zigzag), ma a partire da qualche momento significativo.

 
Aleksey Nikolayev #:

Per esempio, voglio alimentare pezzi di prezzo non di una lunghezza fissa in barre (o in collegamenti di un modello a zigzag) all'input del classificatore, ma a partire da qualche momento significativo.

Le reti di ricorsi sono adatte, come molti-a-molti

 
Aleksey Nikolayev #:

Per esempio, voglio alimentare il classificatore con pezzi di prezzo in ingresso non di una lunghezza fissa in barre (o in collegamenti di un modello a zigzag), ma a partire da qualche momento significativo.

Le regole associative dovrebbero essere ok, mostrerò un esempio

set.seed(123)
li <- list()
for(i in 1:100){
 li <- append(li,  
               list(c(letters[sample(1:10,sample(5:10,1))] ,   sample(c("buy","sell"),1)))
              )}

head(li)

I dati sono sotto forma di una lista, ogni riga è un vettore con osservazioni di qualsiasi lunghezza.

head(li)
[[1]]
[1] "c"    "b"    "f"    "j"    "e"    "d"    "i"    "sell"

[[2]]
[1] "j"    "e"    "c"    "h"    "a"    "sell"

[[3]]
[1] "i"   "c"   "h"   "b"   "g"   "buy"

[[4]]
 [1] "c"   "d"   "f"   "a"   "j"   "e"   "i"   "h"   "b"   "g"   "buy"

[[5]]
[1] "i"   "g"   "c"   "d"   "e"   "buy"

[[6]]
 [1] "f"   "i"   "b"   "e"   "g"   "d"   "c"   "a"   "h"   "buy"

il codice per cercare modelli sotto forma di regole di associazione

library(arules)
model  <- apriori(li, parameter=list(support=0.2, 
                                     confidence=0.6,
                                     minlen=4,
                                     maxlen=5), 
                 appearance = list(rhs=c("buy","sell"), default="lhs"))
inspect(model)                 

le regole

inspect(model)
      lhs          rhs   support confidence coverage lift     count
[1]   {e,f,j}   => {buy} 0.23    0.6764706  0.34     1.166329 23   
[2]   {e,i,j}   => {buy} 0.21    0.6176471  0.34     1.064909 21   
[3]   {b,e,j}   => {buy} 0.23    0.6216216  0.37     1.071761 23   
[4]   {a,e,j}   => {buy} 0.24    0.6857143  0.35     1.182266 24   
[5]   {e,h,j}   => {buy} 0.22    0.6111111  0.36     1.053640 22   
[6]   {c,e,j}   => {buy} 0.26    0.6666667  0.39     1.149425 26   
[7]   {e,g,j}   => {buy} 0.23    0.6571429  0.35     1.133005 23   
[8]   {e,f,i}   => {buy} 0.24    0.6153846  0.39     1.061008 24   
[9]   {b,e,f}   => {buy} 0.22    0.6666667  0.33     1.149425 22   
[10]  {a,e,f}   => {buy} 0.25    0.6756757  0.37     1.164958 25   
[11]  {c,e,f}   => {buy} 0.24    0.6486486  0.37     1.118360 24  
...
...
..
..
.

L'algoritmo cerca associazioni tra elementi indipendentemente dal loro ordine...

Ci sono algoritmi order-aware, ma sono avidi.


O se vuoi di più, c'è un sistema di raccomandazione chiamato recommenderlab, ma non ci sono entrato.

 
Maxim Dmitrievsky #:

Le reti ricorrenti sono adatte, il tipo molti-a-molti

Grazie, darò un'occhiata.

Naturalmente, mi piacerebbe avere una specie di testo di revisione sull'argomento, con una descrizione e un confronto degli approcci (non c'è niente di male nel desiderare). In teoria, dovrebbe esserci un testo del genere da qualche parte, ma finora non l'ho trovato.

 
Aleksey Nikolayev #:

Grazie, darò un'occhiata.

Naturalmente, mi piacerebbe avere un testo di revisione sull'argomento, con una descrizione e un confronto degli approcci (non c'è niente di male nel desiderare). In teoria, dovrebbe esserci un testo del genere da qualche parte, ma finora non l'ho trovato.

Io ho visto solo degli input-output di lunghezza variabile in tali reti, e questo è puramente una recensione, senza entrare nel merito.

per l'elaborazione di testi, traduzioni
 
mytarmailS #:

Leregole associative dovrebbero funzionare, vi darò un esempio

dati come una lista, ogni riga è un vettore con osservazioni di qualsiasi lunghezza.

Il codice per cercare modelli sotto forma di regole di associazione

le regole

L'algoritmo cerca associazioni tra elementi indipendentemente dal loro ordine...

Ci sono algoritmi order-aware, ma sono avidi.


O se vuoi di più, c'è un sistema di raccomandazione chiamato recommenderlab, ma non l'ho esaminato.

Grazie, darò un'occhiata.

Eppure, con noi, l'ordine è importante. Si può sempre per esempio ottenere SB mescolando gli incrementi in modo casuale.

Mi sono anche ricordato che credo che tu abbia scritto qui qualche tempo fa sull'estrazione di modelli sequenziali e sul problema dell'allineamento delle sequenze che ne deriva. Sembra anche essere uno dei metodi per risolvere il problema. Anche se l'appartenenza delle sequenze a una classe non significa necessariamente la loro somiglianza.

 
Aleksey Nikolayev #:

Grazie, darò un'occhiata.

Eppure, con noi, l'ordine è importante. È sempre possibile, per esempio, ottenere SB mescolando gli incrementi in modo casuale.

Mi sono anche ricordato che una volta hai scritto qui sull'estrazione di modelli sequenziali e sul problema dell'allineamento delle sequenze. Sembra anche essere uno dei metodi per risolvere il problema. Anche se l'appartenenza delle sequenze a una classe non significa necessariamente la loro somiglianza.

Allora il pacchetto arulesSequence

 

Scaturita una strategia d'oro dal mercato ))

Curva maiuscola nel mio tester.

l'ha gettato in tslab per avere un aspetto migliore

Sembra che sia un buon abbinamento.


Ho guardato gli scambi.


L'ho guardato come se fosse un trader manuale con una seduta estremamente lunga e un vago algoritmo di trading...

Forrest certamente non ha potuto identificare nulla, ma è stato interessante e informativo )))

 
Maxim Dmitrievsky #:

Le reti ricorrenti sono adatte, di tipo molti-a-molti

Potrebbe essere utile... Ho un molti-a-molti senza ricorrenza. E nessun livello di convoluzione. E ho scelto questo modello dopo aver analizzato il meccanismo della rete neurale. Stiamo cercando un denominatore comune, vero? Argomentare.