SOM: metodi di cottura - pagina 8

 
Sych:

Posso vedere il rapporto completo (intestazione)? La parte inferiore è stata tagliata.

L'ho aggiornato.

alexeymosc:

È forte. Qual è la strategia? L'affare è chiuso dal numero di barre (per tempo) o in altro modo?

Ora ogni segnale viene elaborato separatamente. Cioè aperto quando un neurone obliquo cade, chiuso dopo un certo tempo.
 

Capito. Skewed probabilmente significa con una deviazione di probabilità del 50%? E la condizione di chiusura è legata ad ogni neurone? Cosa è distorto? 55%? 60%?

 
alexeymosc:

Capito. Skewed deve significare con una deviazione di probabilità del 50%? E la condizione di chiusura è legata ad ogni neurone? Cosa è distorto? 55%? 60%?

Sì. Circa un fattore di 1,5, che è circa 60-40 -- ecco un pezzo di codice:

{
   if (positive/(negative + 1.0) > 1.5 && count > 3)
   {
      OpenBuy(Magic, TP, SL, TradeLot);
   }
   
   if (negative/(positive + 1.0) > 1.5 && count > 3)
   {
      OpenSell(Magic, TP, SL, TradeLot);
   }
}

Ho trovato un piccolo bug... Tornerà presto alla normalità.

 
Grande!
 
TheXpert:

Aggiornato.

C'è ottimismo, ma non molto.

È possibile migliorare queste cifre:

Mediatransazione redditizia121.33commercio perdente-130.51
Numero massimovittorie continue (profitto)17 (1227.10)Perdite continue (perdita)11 (-2390.10)

?

Cioè - o ridurre la media degli scambi perdenti rispetto a quelli redditizi, o ridurre il numero di perdite continue.

Capisco che si tratta di OOS, ma ciò che si insegna è come si comporterà.

Forse la correzione dell'errore scoperto migliorerà il risultato, sarà interessante vedere.

 

Gente, c'è bisogno di un consiglio esperto sulla SOM.

Specificamente interessato a come controllare la distribuzione del numero di pattern tra i cluster.

 

Buon pomeriggio!

È da una settimana che non ho un accesso adeguato a internet. Sto scrivendo in ritardo.

L'ho letto qui: http://www.eicstes.org/EICSTES_PDF/PAPERS/The%20Self-Organizing%20Map%20(Kohonen).pdf

Il problema della distribuzione ottimale dei vettori di input sulle celle di un CCS, prima di tutto, dipende da un adeguato addestramento del CCS. Kohonen scrive che il numero di iterazioni di allenamento deve essere almeno 500 volte il numero di neuroni nella rete! Cioè, se addestriamo una rete di 100 neuroni (10 per 10), il numero di iterazioni deve essere almeno 50 000. Francamente, l'addestramento di una tale rete su un normale PC, a condizione che il vettore di input sia molto grande (diciamo 40), richiederà diversi giorni. L'euristica suggerita da Kohonen è che ci dovrebbero essere almeno 10.000 iterazioni di allenamento. Sono troppi, IMHO, ma come opzione possiamo ridurre la dimensione del vettore di input e vedere cosa succede.

Il secondo punto, relativo all'apprendimento SCS, dallo stesso articolo, è che la dimensione del vettore di input non influenza il numero di iterazioni di apprendimento, cioè tutto dipende dalla potenza del PC.

In terzo luogo, il raggio di addestramento dei neuroni, come suggerito nell'articolo, dovrebbe essere inizialmente molto grande (si può fare più della metà del diametro di ACS) per impostare l'"ordine topologico" di base su ACS; poi il raggio si riduce in modo inversamente proporzionale al numero di iterazioni fino a 0, cioè quando avviene la correzione dei pesi di un solo neurone. Allo stesso tempo, l'ordine topologico originale stabilito all'inizio della formazione non è rotto, ma in aree locali della mappa è raffinato. Vedi lì.

Un'altra cosa legata all'apprendimento è un passo di apprendimento che dovrebbe anche essere grande all'inizio (circa 1) e poi diminuire in modo inversamente proporzionale al numero di iterazioni, e la funzione della dipendenza del passo dal numero di iterazioni passate può essere sia lineare che non lineare. Alla fine dell'addestramento il passo rimane molto piccolo per molto tempo, meno di 0,01, per mettere a punto il LCS.

L'articolo parla anche di pre-elaborazione dei dati per l'addestramento, ma nell'applicazione al riconoscimento del parlato e delle immagini. Nel nostro caso si tratta di una serie temporale, quindi dobbiamo scavare altrove. So che ci sono state molte discussioni sull'applicazione della SOM alle serie temporali.

 

Su quali basi credete che la SOM sia possibile nell'autotrading?

Per focalizzare la tua visione su qualcosa, devi sapere cos'è.

Sui dati storici (che è quello da cui vuoi che la rete impari) ci sono un numero quasi infinito di possibili movimenti di prezzo. Come dovrebbe la rete capire da sola cosa fare e a cosa prestare attenzione?

Immaginate un bambino con innumerevoli giocattoli intorno. Nonostante gli innumerevoli giocattoli, (o meglio, per questo) il bambino non saprà mai che questo giocattolo è una macchina e quello è un orsacchiotto. Tu, come genitore, dovresti prima dire al tuo bambino che questo giocattolo si chiama auto e più volte lasciare che il tuo bambino cerchi di trovare questo particolare giocattolo tra gli altri. Il bambino sarà quindi in grado di identificare la macchina e non la confonderà mai con l'orsacchiotto.

La SOM può essere attivata solo se la rete sa a cosa sta mirando, solo allora può focalizzare la sua visione. Questo potrebbe essere tramite l'identificazione di un numero di targa del veicolo o tramite il traduttore automatico che cerca la parola/frase giusta. Tuttavia, dovrete prima insegnare alla rete a riconoscere i numeri o le parole, e solo dopo lasciarla libera di nuotare.

Cosa volete/potete offrire alla rete sul flusso di dati storici? E su cosa conta?