L'apprendimento automatico nel trading: teoria, modelli, pratica e algo-trading - pagina 214
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
PS. E parallelizzare il calcolo di lm(). Questo è proprio il momento giusto per farlo.
Grazie.
Ho visto come parallelizzare un'operazione in un ciclo attraverso foreach %dopar%. Non so come agganciarlo a un anello nascosto in DT. Non so se può essere più veloce o meno.
Grazie.
Ho visto come parallelizzare un'operazione in un ciclo attraverso foreach %dopar%. Non so come attaccarlo a un anello nascosto in DT. E non so se sarebbe più veloce.
Intendevo questa parte del codice.
{
lapply(c(1:20), function(x) summary(lm(data = .SD[, c(1:x, 21), with = F], formula = V21 ~ . -1))$'fstatistic'[[1]])
}
, by = sampling
]
Foreach() invece di lapply
C'è qualcosa di sbagliato nei grafici che impiegano diverse decine di secondi per essere costruiti.
Controllate questo pacchetto ("nhstplot"). È veloce da disegnare e penso che sia abbastanza buono.
C'è qualcosa di sbagliato nei grafici che richiedono diverse decine di secondi per essere costruiti.
Controllate questo pacchetto ("nhstplot"). È veloce da disegnare e penso che sia abbastanza buono.
Ahh. Lo proverò, grazie. Risulta che il ciclo lapply sarà sostituito da un ciclo parallelo. E tutto gira in un ciclo DT con 1000 iterazioni.
Oppure c'è un altro modo per saltare queste 1000 iterazioni attraverso foreach.
Darò un'occhiata, naturalmente. Ma dov'è la semitrasparenza qui, dove sono le centinaia di oggetti sovrapposti? Prova in condizioni pesanti e poi capiremo se è più veloce o no.
Il disegno semi-trasparente veloce può essere ottenuto con una scheda grafica OpenGL. In R c'è una libreria rgl per questo, è più per il 3d, ma se puoi fare la proiezione ortogonale e disegnare linee, sarà proprio quello che ti serve. Non l'ho capito subito, bisogna leggere la documentazione.
Capito:
È abbastanza facile disegnare linee semitrasparenti, avete solo bisogno di una tabella con le coordinate X e Y. Si potrebbe anche aggiungere una terza colonna Z per la tridimensionalità.
for(i in 1:1000){
lines3d(cbind(1:1000, cumsum(rnorm(1000))), col="blue", alpha=0.1)
}
Ma si è rivelato lento lo stesso. A giudicare da procesexplorer - il video è usato solo dal 5%, mentre un processore logico è al 100%. Penso che R sia troppo lento nel fornire dati a OpenGL, molto più lento di quanto possa ricevere. In qualche modo è venuto fuori così.
Solo per il gusto di ingombrare :) fallo, massimizza la finestra a schermo intero, e gira "figura" con il tasto sinistro del mouse.
for(i in 1:100){
lines3d(cbind(cumsum(rnorm(100)), cumsum(rnorm(100)), cumsum(rnorm(100))), alpha=0.2)
}
Ho finalmente fatto la prima prova dell'idea del cluster che ho annunciato prima, è una prova, solo per vedere come va, i predittori sono semplici
serie mobile di 5 valori OHLC + volume + volatil 6 predittori di 5 valori ciascuno
imparare la storia 100 000 bar
ogni predittore è stato normalizzato, naturalmente) e poi raggruppato in 100 cluster, scusate il nonsense
L'obiettivo è stato creato di punto in bianco (al momento mi sono appena seduto), ho semplicemente preso l'inversione in questa forma: Il target è un estremo superiore alle 4 candele precedenti e superiore alle 10 candele successive.
Ho iniziato a cercare dei modelli che si ripetono...
Il meglio che ho trovato con tali predittori è il seguente schema
91 6 30 41 91 100 0.4 9
in(open high low close volum vol um) sono i numeri di cluster che caratterizzano questo modello
target_avg - questa è la probabilità che la mia inversione sia innescata in questo modello. Non sono riuscito a trovare nessun modello con l'80-90% di probabilità di innescare secondo questi predittori
target_count - ilnumero di volte che il modello è stato catturato nella storia, non ho trovato alcun modello significativo, che è stato catturato 30-50 volte utilizzando questi predittori
La cosa migliore che ho trovato con questi predittori è un pattern, in cui l'inversione (target) si innesca il 40% delle volte e ci sono solo 9 osservazioni (numero di pattern)
Quindi è forse l'unico pezzo di informazione utile, il "NO BLOW" richiesto, che può essere estratto dall'insieme dei predittori e spiega solo una ragione per l'inversione e anche quella è il 40% di essa e diverse ragioni per diverse inversioni e non ce ne sono sicuramente 10 o 30 imho.
E ora pensate a come l'algoritmo MO possa spiegare tutti i movimenti del mercato con tali predittori, è impossibile, perché i predittori possono spiegare solo il 2% e il resto è rumore...
in più non c'è controllo della ricorrenza statistica, cioè IR può prendere una decisione sulla base di una o due osservazioni, e questo è vero infatti nella stragrande maggioranza dei casi sotto il 95% dei casi
Comunque, sto divagando... continuiamo su un modello, avendo stimato la qualità degli ingressi su un nuovo campione dirò così, lontano non la Mercedes ma se è un ucciso Zaporozhets poi questo approccio un nove appena da una fabbrica
La qualità degli input è molto migliore, più chiara, meno errori...
e l'altra cosa è che lo schema completo è...
91 6 30 41 91 100
Quando ho eseguito il riconoscimento sui nuovi dati di 50 000 candele, l'algoritmo non è riuscito a trovare alcun modello di questo tipo, semplicemente non è apparso ))
Ho dovuto tagliare il modello e ho lasciato solo i prezzi
91 6 30 41 91 100
Ho già trovato circa 20 di questi modelli
qui sono le voci nel modello, non ho scelto nulla "ala migliori voci" appena preso le foto come è nella sequenza in cui le offerte sono state fatte, non tutte le offerte naturalmente solo i primi pochi, in modo che si può valutare
le azioni sono belle, anche se il rischio è maggiore del previsto.
ricorda, è solo un modello e solo pantaloncini
Se qualcuno ha bisogno del codice, lo posterò, anche se ne dubito, è già molto chiaro214 pagine sono molte per studiare/imparare. E ognuno parla di qualcosa di diverso e non sempre facile da capire).
È possibile riassumere tutte queste pagine in un post, anche se non molto breve? Tipo: obiettivo fissato, metodi di soluzione, risultati, conclusioni.
Lasciatemi dire subito che il mio modello di mercato è un processo casuale (moto browniano), o piuttosto la somma di diversi (possono essere molti) di questi movimenti con feedback. E prevedere qualcosa o cercare modelli diversi da quelli statistici è un esercizio assolutamente inutile. Cioè, qualsiasi predittore significativo semplicemente non esiste, almeno per scopi speculativi.