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

 
Maxim Dmitrievsky:

agli incrementi può essere data una stima probabilistica dell'appartenenza alla classe by\sell


andare avanti senza "pensarci".

 
Oleg avtomat:

Bene, vai avanti senza il "pensiero".


OK, lo verificheremo con un esperimento... :) naturalmente proverò 2 e più 2 classi, ma non vedo una differenza fondamentale per il mio caso

 
Maxim Dmitrievsky:

Maxim, il modo in cui vedo la tua situazione è questo:

L'obiettivo è:

a) per ottenere una probabilità di direzione del movimento;

b) per ottenere una stima della forza del movimento.

Opzioni di soluzione:
1) Usare un'uscita [0,1] o [-1,1]. O due uscite [[0,1],[0,1]].

I dati di allenamento devono riflettere la forza del movimento, cioè la storia del movimento deve essere normalizzata in un range valido.

Plus: Il modello di rete è facile e semplice da impostare.

Meno: la normalizzazione sarà eterogenea su tutta la serie temporale, a causa delle diverse ampiezze delle variazioni di prezzo.

2) Utilizzare l'uscita di classificazione bidimensionale [0,1]+[0,1] o [-1,1]+[-1,1]. O tre/quattro uscite [[0,1],[0,1]+[0,1]] o [[0,1],[0,1]+[0,1],[0,1]]. Una dimensione è la probabilità della direzione del movimento, la seconda dimensione è la probabilità della forza del movimento.

Plus: Migliore visibilità del risultato.

Meno: Difficoltà di adattamento del modello di rete neurale su strutture "di legno".

3) Opzione due con la divisione del modello di rete in due. Un modello impara a prevedere la direzione, il secondo modello impara a prevedere la forza del movimento.

Pro: Mantenere la visualizzazione; Facilità di applicazione delle reti neurali.

Meno: leggero aumento della velocità di calcolo possibile; più codice.

 
Aleksey Terentev:

Maxim, il modo in cui vedo la tua situazione è questo:

L'obiettivo è:

(a) Per ottenere la probabilità della direzione del movimento;

b) Per ottenere una stima della forza del movimento.

Opzioni di soluzione:
1) Utilizzare un'uscita [0,1], o [-1,1]. O due uscite [[0,1], [0,1]].

Nuance! i dati di allenamento devono riflettere la forza del movimento, cioè la storia del movimento deve essere normalizzata al range desiderato.

Plus: Convenienza e facilità di montaggio del modello di rete.

Meno: La normalizzazione sarà eterogenea su tutta la serie temporale, a causa delle diverse ampiezze delle variazioni di prezzo.

Quindi il valore della probabilità di assegnazione a una delle 2 classi corrisponderà ancora all'intensità del segnale, se inizialmente riempio le uscite con l'intensità del segnale (diciamo, basta alimentare gli incrementi normalizzati nell'intervallo 0-1, l'uscita otterrà più alta la probabilità di assegnazione a una particolare classe maggiore l'incremento previsto?

Oppure non funziona così e otteniamo solo la probabilità di assegnazione a una classe, ma la dimensione dell'incremento nell'output è persa :)

 
Vizard_:

Se costruiamo una semplice linea di regressione.... i.e..... è più forte di...
E se prendiamo una rete neurale con classificazione non lineare...


Misurateli con un righello e lo saprete. Per esempio, l'ormai di moda Logloss(R - library(MLmetrics))

Non sarebbe meglio creare più classi

Comodo quanto vuoi...



Cioè, l'informazione sulla grandezza degli incrementi non sarà persa dopo l'addestramento, e la probabilità di assegnazione alla prima delle due classi può essere usata per determinare la forza prevista degli incrementi, non solo in quale classe gli incrementi finiranno. Allora perché preoccuparsi di molte uscite, 2 sono sufficienti :)

 
Maxim Dmitrievsky:

Cioè, l'informazione sulla grandezza degli incrementi non sarà persa dopo l'addestramento, e la probabilità di assegnazione alla prima delle due classi può essere usata per determinare la forza prevista degli incrementi, non solo in quale classe gli incrementi appariranno. Allora perché preoccuparsi di molte uscite, 2 sono sufficienti :)

Se ti interessa un buon risultato - per esempio la probabilità di ogni classificazione in acquisto può essere diversa dalla probabilità della stessa classificazione in vendita.

Con rispetto.
 
Maxim Dmitrievsky:

Quindi il valore della probabilità di assegnazione a una delle 2 classi corrisponderà all'intensità del segnale, se inizialmente riempio le uscite con l'intensità del segnale (diciamo, mi limito ad alimentare gli incrementi normalizzati nell'intervallo 0-1, all'uscita si ottiene la maggiore probabilità di assegnazione a questa o quella classe, maggiore è l'incremento atteso?

Oppure non funziona così e otteniamo solo la probabilità di assegnazione a una classe, ma la dimensione dell'incremento dell'output sarà persa :)

La rete neurale stessa non sa di cosa ha bisogno. Impara da quello che gli date da mangiare. Se c'è davvero un modello tra input e output nei dati, con un addestramento adeguato il modello lo rileverà. Cioè sì, il valore di probabilità può segnalare la forza di un movimento.


Io farei così: dividere i segnali in due classi buy/sell per [0,1] o uscita sinusoide/tanh [-1,1].

 
Andrey Kisselyov:
la probabilità di ogni gradazione in acquisto può differire dalla probabilità della stessa gradazione in vendita, dovrete fare un po' di lavoro se vi interessa un buon risultato.

Saluti.

No, ho già citato lo schermo, gli incrementi sono stazionari e simmetrici su entrambi i lati dello zero, quindi le probabilità saranno +- le stesse


 
E sì, è qui che entra in gioco la normalizzazione. Rimbalzerà, e normalizzerà i dati in modo diverso a diversi intervalli.

Beh, se si normalizzano i dati tutti insieme, i segnali saranno molto più deboli.
 
Aleksey Terentev:

La rete neurale stessa non sa di cosa ha bisogno da voi. Impara da quello che gli date da mangiare. Se c'è davvero uno schema nei dati tra input e output, il modello lo rileverà con il giusto addestramento. Cioè, sì, il valore di probabilità può segnalare la forza del movimento.


Dividerei i segnali in due classi per [0,1] o uscita sinusoide/tanh [-1,1].


Sì, grazie, è quello che volevo sentire ... perché un amico che si occupa di reti neurali mi ha detto che la probabilità di assegnazione a una classe è solo la probabilità di assegnazione a una classe, i dati sugli incrementi assoluti sarebbero persi ... ho iniziato a discutere con lui e ho finito per confondere entrambi :)

Motivazione: