Analisi dei prezzi con reti neurali

 

Publi

Analisi dei prezzi con reti neurali

 

Publi

Pagina 1 di 2 12 UltimaUltima
Risultati da 1 a 10 di 20

Discussione: Analisi dei prezzi con reti neurali

  1. #1
    Informazioni su questo giornale

    Questo sarà il mio diario personale che descrive in dettaglio il mio sviluppo di una rete neurale artificiale per tentare di ottenere un vantaggio statistico sul mero su più intervalli temporali. Pubblicherò i miei progressi mentre raggiungo le pietre miliari, e vedremo insieme se è in effetti possibile ottenere un vantaggio statisticamente signifiivo con un metodo di apprendimento automatico.

    Discuterò anche di come mi avvicino alla gestione del denaro rispetto a qualsiasi vantaggio statistico che potrei ottenere con il mio studente. Pubblicherò simulazioni probabilistiche delle prestazioni del mio discente utilizzando varie tecniche di gestione del denaro.

    Tieni presente che attualmente negoziato con discreto successo (su un piccolo account live da ~ 4K) utilizzando schemi grafici semplici e analisi SR. Sono anche uno studente di ingegneria a tempo pieno, tuttavia, sarebbe altamente preferibile avere un agente automatizzato o negoziare in mia assenza o avvisarmi di configurazioni ad alta probabilità. Se il mio sviluppo di questo indioreEA ha successo nell'ottenere un vantaggio, forse lo rilascerò alla comunità in qualche modo.

    Apprezzerei il tuo input ponderato per il thread. Lo sviluppo funziona al meglio quando ci sono osservatori, partner costruttivamente critici - o almeno così ci ha insegnato il movimento del software open source. Quindi se hai qualcosa di prezioso da aggiungere, per favore scrivilo con tutti i mezzi.

  2. #2
    Quali sono gli input? Puramente prezzo? CULLA? Tassi di interesse? CPI? Secondo, quali sono i criteri per entrareuscire? La maggioranza vince in base a più NN in più fasci di tempo? Sono abbastanza istruito sugli NN, e se introduci input non corretti (dati senza una forte dipendenza lineare dal prezzo) introduci errori nel tuo apprendimento. Scommetto che lo sapevi già. Quindi la domanda è: quali input sono fortemente correlati? Scommetto che il forex è estremamente efficiente, quindi i nuovi dati esterni come COT e CPI sono probabilmente realizzati interamente dal prezzo entro pochi minuti dall'introduzione dei dati, quindi MOLTO piccolo ritardo e inefficienza. Bene, gli NN non parlano a tavola. O ottieni ciò che sto dicendo o non lo fai. Spero che sia d'aiuto.

  3. #3
    Concetti di progettazione iniziali Prima di tutto, una spiegazione della teoria delle reti neurali. La struttura della rete neurale che userò è simile a quella moa nella figura qui sotto. http://www.gamedev.net/reference/pro...nn/figure1.png Ogni cerchio che vedi nell'immagine è chiamato nodo. Ognuno di questi nodi agisce come una sorta di operatore matematico. Le informazioni si spostano da sinistra a destra nell'immagine, dagli ingressi alle uscite. In ogni nodo, gli input vengono sommati per creare l'output. Ogni input ha un peso o fattore di scala regolabile, con il quale viene moltiplio prima che vengano sommati a quel nodo. Ok ... quindi abbiamo nodi che aggiungono valori in scala. Come diamine stiamo andando a prevedere l'azione dei prezzi futuri con questa cosa ?? Bene, si scopre che se si regolano questi pesi in modo intelligente, si può essenzialmente addestrare questa rete per riconoscere i pattern sul livello di input e produrre gli output che si desidera in base a tali pattern. Quindi ecco il design per la rete: Input Movimenti di pip ritardati. Essenzialmente si tratta di valori le cui grandezze corrispondono alle dimensioni di ciascuna barra su un grafico di un determinato intervallo di tempo. Ad esempio, supponiamo di avere il seguente grafico:
    Se la tua rete neurale fosse stata progettata per analizzare schemi a quattro barre, avrebbe 12 ingressi totali. Cioè, per ogni barra, avrebbe un input per lo stoppino inferiore, il corpo della barra e lo stoppino superiore. Entrambi i valori dello stoppino potrebbero essere positivi o pari a zero e il valore del corpo della barra potrebbe essere positivo o negativo. Quindi per il grafico delle candele sopra, vedresti i seguenti input (circa) nel formato upper | body | lower: 0.02 | -0.26 | 0.18 | 0.06 | -0.12 | 0.00 | 0.20 | -0.03 | 0.23 | 0.00 | 0.30 | 0.10 Come avrai notato, tutti questi valori sono inferiori a 1.0; questo perché gli input per la rete neurale devono essere decimali tra 1 e -1. Uscite Quindi ora abbiamo input. Cosa vogliamo per le uscite? Scegliamo indiori di rischio al rialzo e al ribasso per tempi diversi. Dì ... due per parte. In breve: un'uscita per il massimo futuro dopo 1 ora. Un'uscita per il futuro alta dopo 4 ore. Un'uscita per il futuro bassa dopo 1 ora. Un'uscita per il futuro bassa dopo 4 ore. Per addestrare la rete, osserviamo gli alti e bassi dopo il pattern di input, calcoliamo le uscite e quindi usiamo quello che viene chiamato un algoritmo di back-propogation per regolare in modo intelligente i pesi di rete in modo che le uscite desiderate appaiano quando presentiamo quel pattern di input. Facciamo questo su un gran numero di combinazioni inputoutput e speriamo di arrivare con una rete che, quando viene presentata con una nuova serie di input, può predire i futuri alti e bassi con un certo grado di accuratezza. Una volta che disponiamo di una rete in grado di prevedere futuri alti e bassi, possiamo collocare le negoziazioni con livelli TP e SL che massimizzano le nostre probabilità di successo. Possiamo anche scegliere di accettare solo le operazioni che hanno un buon rapporto rischio-rendimento. Ad esempio, possiamo scegliere di acquistare solo quando la rete prevede un rapporto 2: 1 da alto a basso e vendiamo solo per l'inverso. Questo può aiutare a limitare l'esposizione del mero al rischio, massimizzando al contempo le probabilità statistiche di successo. Se vuoi maggiori informazioni sulle reti neurali, controlla la voce di Wikipedia su
    http://en.wikipedia.org/wiki/Artificial_neural_network. Aspettiamo presto un altro post sul software (personalizzato) e sui dati che utilizzerò per l'impostazione e l'addestramento della rete.

  4. #4
    Citazione Originariamente Scritto da ;
    Bene, gli NN non parlano a tavola. O ottieni ciò che sto dicendo o non lo fai. Spero che sia d'aiuto.
    Sono a casa mia
    . O almeno quando ho lavorato al dipartimento di Neuroingegneria di UPenn. La speranza è che la rete sarà in grado di apprendere modelli complessi dopo un gran numero di esempi. Separerò i dati in sezioni e realizzerò addestramentotestconvalida del round robin con numerose reincarnazioni delle reti neurali in questione. Avrò reti per tempi signifiivi. Forse uno per i 15 minuti, uno per l'1 ora, uno per la 4 ore e uno per il giorno. Una volta appropriatamente addei, dovrò sperimentare diversi schemi decisionali di trading. Il più ovvio sarebbe un processo decisionale a maggioranza o forse unanime. Queste reti potrebbero anche servire semplicemente come avviso per una configurazione ad alta probabilità, e quindi l'analisi tecnica e psicologica discrezionale potrebbe informare la decisione finale sul trading.

  5. #5
    Software scriverò i miei programmi personalizzati CC che gestiscono i dati di input e costruiscono set di dati di addestramentotest. I miei programmi gestiranno anche la formazione e il test delle reti neurali create. Le reti neurali verranno implementate utilizzando un pacchetto software ad alte prestazioni chiamato Fast Artificial Neural Network (
    http://leenissen.dk/fann/). Ha legami per molte lingue, ma collegherò la libreria direttamente con un programma CC per la massima efficienza. Alla fine probabilmente controllerò visivamente i risultati programmando un indiore MT4 che visualizza le uscite della rete sul grafico.

  6. #6
    tutto sembra a posto, sembra che molte persone si siano interessate alle reti neurali applie nel forex dopo il grande successo di EA basato sulle reti neurali nella competizione EA.

  7. #7
    Citazione Originariamente Scritto da ;
    tutto sembra a posto, sembra che molte persone si siano interessate alle reti neurali applie nel forex dopo il grande successo di EA basato sulle reti neurali nella competizione EA.
    Credo. Il mio interesse è stato sicuramente rinnovato dopo aver visto questo nel campionato di trading automatico MetaTrader, ma in origine ho iniziato a ricercare NN e altre tecniche di apprendimento automatico in relazione all'analisi di mero verso la fine del 2006. Inoltre, questa rete neurale leggerà direttamente l'azione dei prezzi piuttosto che calcolata indiori, come ha fatto l'EA del recente vincitore. Ho alcune nuove revisioni al mio piano che posterò quando sarò più sveglio e non dovrò finire un design VHDL prima delle 11 di domani
    .

  8. #8
    Invece di convertire il valore numerico delle uscite in valori pip, sarebbe preferibile invece emettere una sorta di istogramma di probabilità. Vale a dire, per ogni periodo di tempo preso in considerazione, avere una serie di output come segue (per esempio): Probabilità di un futuro alto 100 pips Probabilità di un futuro alto 50 pips Probabilità di un futuro alto 30 pips Probabilità di un futuro alto 20 pips Probabilità di un futuro alto 10 pips Probabilità di un futuro basso -10 pips Probabilità di un futuro basso -20 pips Probabilità di un futuro basso -30 semi Probabilità di un futuro basso-50 semi Probabilità di un futuro basso -100 semi Quindi, ogni uscita dovrebbe predire la probabilità , dato lo schema corrente sugli input, che il futuro alto o basso sarebbe a una certa distanza dal prezzo corrente. Queste uscite sarebbero probabilmente preferibili per ragioni che diventano chiare una volta che hai usato NN per un po '. Tutti gli strumenti di apprendimento automatico finiscono per essere una sorta di analisi statistica, ma gli NN sono particolarmente importanti, in quanto la funzione in condizioni di minimizzazione è l'errore quadratico medio rispetto al set di dati delle uscite rispetto ai target. Tradotto: le uscite generalmente tendono alla media degli obiettivi. Quindi, se hai 100 esempi di pattern e i suoi highs futuri variano intorno ad una media, la rete imparerà a produrre semplicemente quella media. Sfortunatamente, la media non ci dice a sulla forma della distribuzione. E se 50 di quei 100 casi muovessero solo dieci pip, e gli altri 50 spostassero di 100 pip? La rete ci dirà che la mossa prevista è media (10.100) = 55 pips, quando questa mossa non avviene mai! Utilizzando un set di output basato sull'istogramma, tuttavia, vedremmo che le intensità di output dei nodi che corrispondono a 10 e 100 sono entrambe 0,5, e le intensità di output degli altri nodi sono pari a 0. Quindi, quando si costruiscono algoritmi che effettivamente usano questa uscita per il commercio, possiamo analizzare non solo la media della variazione dei prezzi prevista, ma la distribuzione. Si noti che dividendo la gamma futura in un numero sufficiente di intervalli di prezzo e tempi, si otterrebbe un insieme di output che assomiglia a un'immagine come la seguente:
    Allenarsi, testare e soprattutto scambiare automaticamente in base a quell'immagine sarebbe estremamente dispendioso in termini di tempo, tuttavia, per il momento ci limiteremo a un insieme più ristretto di contenitori e tempi. Tutti i parametri della rete e del sistema di addestramentotest saranno configurabili, quindi, se la rete si rivela preziosa e si allenaprova rapidamente così com'è, forse possiamo provare ad aumentare la risoluzione aggiungendo più intervalli e tempi.

  9. #9
    Ciao batterista!
    Prevedo che questo thread sarà molto divertente e una grande esperienza di apprendimento! Ho già un paio di domande, una su input e una su output. 1. Sarai in grado di variare il numero di barre utilizzate per generare facilmente i parametri di input? Se è così, questo produce un altro grado di libertà ma può fornire una panoramica di come la lunghezza di un modello predittivo influenza le prestazioni. Gli NN a 4 barre hanno più o meno successo degli NN a 10 bar, quel genere di cose. 2. Capisco il motivo per cui sei passato a una distribuzione, dato che di solito osservo i guasti al quartile nella mia ricerca. Tuttavia, è ancora difficile commerciare da una distribuzione. Che dire dell'utilizzo di decisioni di trading reali come output? Ci potrebbero essere tre variabili; una variabile di azione per acquistare, mantenere o vendere con valori (-1,0,1), un valore SL in pips e un valore TP in pips (poiché i tuoi input sono misurati in pips credo). Quando si back-propogate, si confronterebbero le uscite effettive con le uscite ideali. Ad esempio, se nel corso del periodo di prova il prezzo ha raggiunto un minimo di 37 pips sotto la chiusura dell'ultima barra di output e 19 pips sopra quella vicina, allora il trade perfetto sarebbe stato una vendita con un stop di 19 pips e un TP di 37 pips, ovvero un output di (-1,19,37). Non ho mai lavorato con il software NN e conosco solo le basi della teoria e della struttura delle reti, quindi potrebbe non avere alcun senso.
    Cosa ne pensi?

  10. #10
    Citazione Originariamente Scritto da ;
    1. Sarai in grado di variare il numero di barre utilizzate per generare facilmente i parametri di input? Se è così, questo produce un altro grado di libertà ma può fornire una panoramica di come la lunghezza di un modello predittivo influenza le prestazioni. Gli NN a 4 barre hanno più o meno successo degli NN a 10 bar, quel genere di cose.


    Citazione Originariamente Scritto da ;
    2. Capisco il motivo per cui sei passato a una distribuzione, dato che di solito osservo i guasti al quartile nella mia ricerca. Tuttavia, è ancora difficile commerciare da una distribuzione. Che dire dell'utilizzo di decisioni di trading reali come output? Ci potrebbero essere tre variabili; una variabile di azione per acquistare, mantenere o vendere con valori (-1,0,1), un valore SL in pips e un valore TP in pips (poiché i tuoi input sono misurati in pips credo). Quando si back-propogate, si confronterebbero le uscite effettive con le uscite ideali. Ad esempio, se nel corso del periodo di prova il prezzo ha raggiunto un minimo di 37 pips sotto la chiusura dell'ultima barra di output e 19 pips sopra quella vicina, allora il trade perfetto sarebbe stato una vendita con un stop di 19 pips e un TP di 37 pips, ovvero un output di (-1,19,37). Non ho mai lavorato con il software NN e conosco solo le basi della teoria e della struttura delle reti, quindi potrebbe non avere alcun senso.
    Cosa ne pensi?
    I dati commerciali perfetti che hai menzionato sono in realtà ciò di cui ho parlato nel mio secondo post in questo diario. Ciò di cui stai parlando è il targeting per il futuro alto e basso per ogni modello di input. Il segnale di acquistovendita è in realtà ridondante, dato che è possibile calcolarlo tramite l'espressione (alta), bassa * 2-1. Dopo l'allenamento su una vasta serie di questi modelli, tuttavia, la rete neurale imparerà a produrre la media di questi valori rispetto all'insieme di modelli simili. Invece, preferisco che la rete impari la distribuzione. Conoscere la distribuzione statistica passata consente di creare egie basate sulla probabilità calcolata di colpire diversi prezzi. Ad esempio, siamo abituati all'idea di fare scambi con un rapporto TPSL 2: 1 o 3: 1, ma non possiamo essere sicuri che aumenteranno effettivamente le nostre vincite, poiché senza un margine di previsione, una fermata più vicina di solito è più probabile che venga colpito rispetto al più alto guadagno. Se conoscessimo la distribuzione statistica dei punti di prezzo nell'ora successiva (o giorno, o settimana ... qualunque cosa), potremmo stabilire degli arresti che, storicamente, sono in realtà due volte meno probabilità di essere colpiti rispetto al nostro livello di profitto. Idealmente, saremmo in grado di scegliere mestieri che hanno una probabilità molto alta e una ricompensa elevata, in cui è improbabile che la fermata sia colpita, che il profitto sul take sia molto probabile e che il take profit sia signifiivamente più lontano dello stop. Warren Buffet attribuisce sempre il suo successo alla realizzazione di investimenti a basso rischio e alta remunerazione. Il nostro obiettivo dovrebbe essere lo stesso, vale a dire massimizzare la probabilità di vincere riducendo al minimo la probabilità di perdere - o in termini di trader: avere un vantaggio sul mero.

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •  
Il sito di forexmad utilizza cookie
Il sito di forexmad utilizza cookie, alcuni dei quali già installati. Per avere maggiori informazioni sui nostri cookie ti preghiamo di cliccare qui. Ti preghiamo di cliccare sul bottone a destra per accettare i nostri cookie. Se continui a navigare sul sito di forexmad assumeremo che sei d'accordo ad utilizzarli.