
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
Ve lo spiego con un esempio.
Diciamo che volete prevedere una variabile che può avere valori da 100 a 250 /come GBPJPY/. Volete predire passi temporali molto piccoli rispetto ai dati di allenamento /come H1 o H4/. Per qualche passo il valore desiderato è, diciamo, 174,850 e l'output della NN è 176,350. L'errore è molto piccolo /circa 0,8%/ ma in termini di Forex l'errore è grande - 150 pips.
È molto più facile prevedere un tasso di rendimento normale o logaritmico. Anche se fai un errore l'output probabilmente sarà ancora utile /se prevedi un aumento del prezzo del 20%, e in realtà è del 10%, anche se l'errore è del 50% il risultato è ancora molto buono/.
È impossibile.
Anche se la NN dà una pessima previsione, è comunque una soluzione.
Puoi usare un computer desktop. Oggi i computer sono molto meglio di quelli da cui sono partito
mrwobbles,
Saresti così gentile da informarci dei tuoi input e output per i tuoi risultati NN? Mi piacerebbe eseguirlo attraverso NeuroShell e vedere se posso generare il livello di correlazione R intorno alla stessa tenuta. Grazie in anticipo.
Te lo spiego con un esempio.
Diciamo che si vuole prevedere una variabile che può avere valori da 100 a 250 /come GBPJPY/. Volete prevedere passi temporali molto piccoli rispetto ai dati di allenamento /come H1 o H4/. Per qualche passo il valore desiderato è, diciamo, 174.850 e l'output della NN è 176.350. L'errore è molto piccolo /circa 0,8%/ ma in termini di Forex l'errore è grande - 150 pips.
È molto più facile prevedere un tasso di rendimento normale o logaritmico. Anche se fai un errore l'output probabilmente sarà ancora utile /se prevedi un aumento del prezzo del 20%, e in realtà è del 10%, anche se l'errore è del 50% il risultato è ancora molto buono/.
Sì, ma io sto parlando di errori di un ordine di grandezza inferiore. L'errore medio in pip della rete che ho addestrato è di circa 10-20 che si avvicina a un livello accettabile. Ci sono ancora alcuni risultati anomali, alcuni di oltre 100 pips che è ovviamente inaccettabile.
È impossibile.
Anche se la NN dà una pessima previsione è comunque una soluzione.
Sì, immagino che tu possa chiamarle soluzioni, ma iniziare con una popolazione casuale non porterebbe a un tempo di convergenza più lungo? In questo caso iniziare con una popolazione di reti pre-addestrate sicuramente accelererebbe la convergenza della rete e, si spera, porterebbe a risultati più accurati.
Ma stai ancora guardando i dati di allenamento. Ho fatto un rapido esempio - guarda l'immagine qui sotto. Le misure di errore sono piccole, il coefficiente di correlazione è molto alto, ma guarda cosa succede quando provi a predire i prossimi 10 passi.
La casualità è la chiave
Con molte reti casuali si ha una maggiore possibilità di trovare la migliore soluzione possibile alla fine. Guardate la seconda immagine. Se fai una pre-selezione di NN potresti rimanere bloccato all'optimum locale, ma se usi NN casuali hai una maggiore possibilità di trovare l'optimum globale.
Naturalmente ci sono modi per superare il problema di rimanere bloccati nell'optimum locale.
Questo pensiero mi ha attraversato la mente. Voglio dire che se la popolazione di NN pre-addestrate è troppo piccola o con una varianza genetica insufficiente, allora alcune soluzioni potrebbero non essere considerate. Come hai detto tu c'è sempre la possibilità di scegliere 12 NN che sono tutte bloccate a minimi locali diversi e questo non sarebbe un bene. O peggio ancora 12 NN che sono tutte bloccate allo stesso minimo locale. Anche se si potrebbe sempre codificare alcune mutazioni genetiche casuali per cercare di aumentare il patrimonio genetico, diciamo ogni 10 generazioni. Ma iniziare con una struttura completamente casuale assicurerebbe che la maggior parte delle possibilità siano considerate.
Ah capisco, ok ho appena scoperto come usare la rete dopo che è stata addestrata, la funzione sim a quanto pare... oh le gioie dei file di aiuto
Dovrai perdonare la mia ignoranza, sono abbastanza nuovo nel lavorare con le NN. Sarei stato deluso se avessi risolto così facilmente. Questo dovrebbe essere quello che sto facendo durante le vacanze estive
bene che e lavorare 
Edit: ho addestrato la rete sui dati dei primi 7 anni e poi ho simulato le sue prestazioni sugli ultimi anni di input. L'errore medio in pip è stato di 40, ma se guardate la trama del grafico, ottiene i primi 1500 abbastanza bene, poi li perde e comincia a sbagliare il prezzo, ma la direzione è per la maggior parte giusta. Poi arriva a circa 10000 e lo riprende di nuovo (giusto in tempo per il grande crollo). Dai un'occhiata a questo e dimmi cosa ne pensi. Il blu scuro è l'uscita del target blu chiaro. Btw non ho fornito alla rete i target che sono stati sovrapposti per l'analisi.
Non posso dire nulla guardando le foto perché potrebbe esserci un "effetto ombra" e le foto sono troppo piccole per dirlo.
Ma posso dirvi come controllare se il NN è ok. Esporta /c'è una procedura guidata di esportazione e importazione in Matlab/ l'output del test in un file XLS o CSV /file Excel/. Poi metti i valori reali accanto all'output della NN e nella colonna successiva metti una formula che controlla se la NN ha previsto la direzione corretta del movimento del prezzo.
Contando quanti "1" ottieni saprai la precisione della rete.
Poi puoi scrivere una formula che calcola il profitto e la perdita per ogni passo. Guarda l'immagine qui sotto /Io sto usando la versione polacca di Excel quindi non so se le formule sono giuste
/. Salta lo spread per ora.
Ciao Kazam,
È possibile implementare questo pacchetto NN a Metatrader?
Sembra che possa andare bene, ho eseguito la formula attraverso il foglio di calcolo di Open Office e ha restituito il 73% di precisione sulla direzione degli scambi. Ho ancora qualche input da dare alla rete che penso migliorerà la precisione. Ecco il foglio di calcolo, l'ho salvato in formato xls, dovresti essere in grado di leggerlo.
Nel campione, fuori dal campione
Sembra che possa andare bene, ho eseguito la formula attraverso il foglio di calcolo Open Office e ha restituito il 73% di precisione sulla direzione degli scambi. Ho ancora qualche input da dare alla rete che penso migliorerà la precisione. Ecco il foglio di calcolo, l'ho salvato in formato xls, dovresti essere in grado di leggerlo.
Bene... In campione o fuori campione?
C'è una grande differenza nel tuo conto, il 73% nel campione è un killer del conto, il 73% fuori dal campione è un forse...
Cerca di credere solo ai risultati out of sample, e meno input hai, meno overfitting avrai...quindi, se aggiungi nuovi input, pensa a cancellare alcuni di quelli vecchi...o espandi il dataset out of sample su cui formi le tue credenze
Come regola generale: Meno input, meno connessioni, più punti fuori campione...migliore generalizzazione.
Saluti
Simba
biddick
È una DLL quindi date un'occhiata qui:
There's an example of how to use DLL functions in Metatrader.
mrwobbles
It's either the training data or you got something wrong - the results are to good
.
If one could get an accuracy of 73% with a simple back propagation network no one would give a shit about more complicated stuff
SIMBA
You're right. Choosing the proper input is a the most important thing in the process of creating a NN /there's a rule "trash goes in, trash comes out"
/.
But you can always use data mining tools to analyze many different variables and choose those that affect the one you want to predict.
There's a nice book about data minig /and about genetic algorithms, Bayesian classification etc./ - "Data Mining Methods and Models." by Daniel T. Larose. It also shows how to use WEKA /a free, open source software for machine learning/.
My preferred way is to use GA - for the propose of time series prediction I usually allow them to choose from 15-40 previous steps.
PS
I've mentioned using Bayesian probability for the classification tasks but it can also be used for time series prediction
[CODE]http://www.cis.hut.fi/juha/papers/ESTSPfinal.pdf