Utilizzo della rete neurale per la negoziazione in borsa


17

Mi sono tuffato nel campo delle reti neurali e ne sono rimasto affascinato.

Ho finalmente sviluppato un framework applicativo per testare i sistemi commerciali nelle borse e ora implementerò la mia prima rete neurale. Uno molto semplice e primitivo, non destinato al trading reale, ma solo per i principianti.

Voglio solo sapere se il mio approccio è un buon approccio.

E se vedi che mi manca qualcosa (o mi sbaglio su qualcosa) o hai un'idea di cosa potrebbe aiutare un mendicante in un campo di reti neurali nel trading di mercato, questo mi renderebbe super felice :)


Ho 40 input, valori di mercato da borsa (S&P e-mini ma non è importante).

Per questi 40 ingressi, conosco 2 numeri.

  • Quanti soldi avrei guadagnato o perso con un ordine di acquisto
  • Quanti soldi avrei guadagnato o perso con un ordine di vendita

A causa del modo in cui funzionano le borse, entrambi i numeri possono effettivamente essere negativi / positivi, il che indica che posso perdere / guadagnare denaro sia per l'acquisto che per la vendita (questo perché un trade può avere in allegato ordini di "limitatore di perdite" o "targeting" come STOP, LIMIT ecc. che si comportano diversamente).

Ma se ciò accade, è un'indicazione che non dovrei effettuare un ordine, anche se entrambi gli ordini di acquisto e vendita danno numeri positivi.

Immagino che la migliore funzione di attivazione da utilizzare sia ... la cosa sigmoidea ma con un intervallo da -1 a 1 (ho scoperto che si chiama molti nomi su internet ... sigmoide bipolare, tanh, tangente qualcosa ... Non sono un matematico profondo).

Con un apprendimento di propagazione posteriore insegno alla rete che per i 40 ingressi, c'è 1 uscita e questa uscita è uno di questi numeri.

  • -1 che significa che l'ordine di vendita guadagnerà denaro, l'acquisto perderà denaro
  • +1 che significa che l'ordine di acquisto guadagnerà denaro, la vendita perderà denaro
  • 0 che significa che compra e vendi venderanno / perderanno soldi, meglio evitare di fare trading

Immagino che dopo aver appreso, l'output di rete sarà sempre un numero vicino a -1, 1 o 0 ed è solo a me che ho impostato la soglia per l'acquisto o la vendita.

È questo un modo giusto di usare una rete neurale?

Ovunque su Internet, l'output per l'apprendimento delle persone sta dando alla macchina per l'apprendimento della propagazione posteriore i valori futuri del grafico di mercato e non il rendimento atteso in denaro di voci commerciali diverse (comprare o vendere). Ritengo che sia un cattivo approccio perché non sono interessato ai valori futuri del grafico ma ai soldi che voglio guadagnare.

Modifica: intendo costruire una rete neurale per il trading automatico, non per aiutare le decisioni.


1
Considerando che Geoff Hinton non è un miliardario, direi che non funzionerà bene come pensi che funzionerà. Scherzi a parte, potresti usare un'architettura esistente che si mappa in valori futuri e inserirla in un livello aggiuntivo che fa una classificazione come tu proponi. Penso che l'idea alla base di quelle reti esistenti sia che, in base ai prezzi, un trader esperto possa decidere autonomamente se, ad esempio, una vendita allo scoperto potrebbe essere a suo vantaggio in un particolare stato del mercato.
jonsca,

Posso capire che le persone vogliono usare le reti neurali come aiutanti delle decisioni. Modificherò il post perché è davvero un importante chiarimento che voglio andare oltre e utilizzare le reti neurali anche per il trading automatizzato.
Mirek,

Risposte:


27

Vi sono gravi difetti con questo approccio.

90%10% delle volte. Questo ha un valore atteso negativo, ma il modo in cui stai allenando la rete neurale le insegnerebbe a raccomandare tali biglietti della lotteria inversa.

6%5%60% . Un investimento con un tasso di rendimento negativo può ancora essere utile se è fortemente negativamente correlato a un investimento rischioso con un tasso di rendimento elevato. Pertanto, il tasso di rendimento non è sufficiente per la valutazione degli investimenti.

Terzo, dovresti capire che stai competendo con altre persone che hanno anche accesso alle reti neurali. Esistono molti programmi commerciali rivolti ai day trader basati su reti neurali. (Sono realizzati da persone che trovano più redditizio vendere software a day trader confusi piuttosto che utilizzare i propri sistemi.) Esistono molti sistemi proprietari, alcuni dei quali possono coinvolgere reti neurali. Per trovare valore che trascurano, devi avere qualche vantaggio e non ne hai menzionato nessuno.

Sono un grande fan delle reti neurali, ma penso che gli utenti tipici delle reti neurali in borsa non capiscano le basi e brucino denaro.


Sono ben consapevole della gestione del rischio, ho pensato che non ero ben consapevole di come avrebbe funzionato la gestione del rischio per questo compito primitivo, ma non mi aspettavo miracoli. E sì, in realtà voglio conoscere bene le reti neurali, ecco il motivo per cui lo sto costruendo da solo. Questo è il vantaggio che sto cercando.
Mirek,

14
These are made by people who find it more profitable to sell software to confused day traders than to use their own systemsDa solo sarebbe valsa la pena votare.
jonsca,

0

mi rendo conto che si tratta di un vecchio thread, ma nel caso in cui qualcuno vi inciampi, ciò che l'OP doveva fare era schiacciare il suo campo desiderato nello spazio 0 a 1. cioè rimappa solo -1 = 0,0, 0 = 0,5 e 1 = 1. Quindi puoi semplicemente utilizzare la funzione di attivazione sigmoid logistica standard.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.