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

 
mytarmailS:

Hai avuto una lunga curva di apprendimento?

Non lo so, ho lasciato il computer acceso durante la notte perché il modello imparasse. La mattina era pronto, non ci sono volute più di 7 ore per imparare, anzi probabilmente molto meno.
 

nella funzione newConfigNEAT, le impostazioni predefinite sono le seguenti

newConfigNEAT(numInputs = 14 ,numOutputs = 1,maxNumOfNodes =500 ,speciesPopulation = 50)

Attualmente sono alla 32esima generazione

generation minFitness maxFitness meanFitness medianFitness
32         32   82.23862   150.0092    140.4628      145.5368
[1] "Starting simulations..."
[1] "1.59 % Finished simulation of species 1 / 44 genome 1 / 6 with fitness 146.091452597612"
[1] "3.17 % Finished simulation of species 1 / 44 genome 2 / 6 with fitness 146.091452597612"
[1] "4.76 % Finished simulation of species 1 / 44 genome 3 / 6 with fitness 146.091452597612"
[1] "6.35 % Finished simulation of species 1 / 44 genome 4 / 6 with fitness 146.091452597612"
[1] "7.94 % Finished simulation of species 1 / 44 genome 5 / 6 with fitness 146.091452597612"
[1] "9.52 % Finished simulation of species 1 / 44 genome 6 / 6 with fitness 146.091452597612"
[1] "11.11 % Finished simulation of species 2 / 44 genome 1 / 2 with fitness 145.536759116526"
[1] "12.7 % Finished simulation of species 2 / 44 genome 2 / 2 with fitness 145.536759116526"

Quante generazioni dovrebbero esserci in totale 50 o 500?

=====================================

è finito alla 35esima generazione, perché proprio alla 35esima? non so...Grazie,dottor Trader.

e qualcosa è andato storto, sull'OOS per qualche motivo, non ha calcolato il valore alla fine

а

 
Ci saranno solo 36 generazioni, il numero di volte che NEATSimulation.RunSingleGeneration(tradingSimulation) è chiamato nel codice (una volta da solo, e poi 35 volte nel ciclo)
 
mytarmailS:

e qualcosa è andato storto, l'OOS non ha calcolato completamente le azioni per qualche motivo.

Tutto secondo i piani, da qualche parte nelle regole del trading c'è scritto di fermarsi se il drawdown è troppo grande.

Non appena lo S&P è sceso - l'intera strategia è crollata, ho avuto lo stesso risultato. L'autore dell'articolo o è stato molto fortunato (improbabile), o è passato attraverso diversi modelli di trading per il bene di belle immagini OOS.

 
Dr.Trader:

Tutto secondo i piani, c'è scritto da qualche parte nelle regole di trading di fermarsi se il drawdown è troppo grande.

Non appena lo S&P è sceso - l'intera strategia è crollata, ho avuto lo stesso risultato. O l'autore è stato molto fortunato (improbabile), o è passato attraverso diversi modelli di commercio solo per il gusto di belle immagini OOS.

Bias di selezione per OOS. sic
 
Dr.Trader:

Tutto secondo i piani, c'è scritto da qualche parte nelle regole di trading di fermarsi se il drawdown è troppo grande.

Non appena lo S&P è sceso - l'intera strategia è crollata, ho avuto lo stesso risultato. O l'autore è stato molto fortunato (improbabile), o è passato attraverso diversi modelli di commercio solo per il gusto di belle immagini OOS.

Non so,Vladimir Perervenko dice che tutto è abbastanza ottimista e la rete non precipita subito, come tutto quello che ho visto prima, e la rete si stava formando su una tendenza al ribasso e la tendenza sta salendo su OOS.
 

Riprovato in quello che Vizard_ ha descritto

2 indicatori è molto poco, non riesco nemmeno a trovare qualcosa di adatto. Quindi, è solo un'illustrazione di "spazzatura dentro -> spazzatura fuori".

Le coordinate sono i valori di due indicatori. Il colore blu è "comprare" punti, il rosso - "vendere" punti.

6 modelli sono addestrati su punti "Train Data" e poi usati per predire un insieme di punti in coordinate (-2;-2)->(2;2), si può vedere esattamente come i modelli hanno ricordato i dati e quale è risultata la predizione sulle nuove coordinate per il modello.


 
Dr.Trader:

Riprovato in quello che Vizard_ ha descritto

2 indicatori è molto poco, non riesco nemmeno a trovare qualcosa di adatto. Quindi, è solo un'illustrazione di "spazzatura dentro -> spazzatura fuori".

Le coordinate sono i valori di due indicatori. Il colore blu è "comprare" punti, il rosso - "vendere" punti.

6 modelli sono addestrati su punti "Train Data" e poi usati per predire un insieme di punti in coordinate (-2;-2)->(2;2), si può vedere come esattamente i modelli ricordavano i dati e quale era il risultato della predizione su nuove coordinate per il modello.


Bello, e informativo... grazie per questo

Probabilmente dovrò riunirmi e scrivere sulla mia idea di ricerca di modelli puri tutti uguali (ma ci vorrà del tempo), visto che vedo che è rilevante... Forse ne uscirà qualcosa di buono...

Dr.Trader secondo me l'intero problema è che stiamo cercando di costringere il MO a dividere l' intero campione in classi, cosa succede se oggettivamente possiamo dividere solo il ~3% del campione e diciamo no MO sei potente vai avanti e dividi tutto, non mi interessa :) quindi separa l'inseparabile con un risultato noto...

Vedete, noi cerchiamo di dividere tutti i campioni in acquisto e vendita, ed è così che vogliamo prevedere ogni singola mossa del mercato, ma i nostri predittori sono così merdosi che possono oggettivamente prevedere solo il~3% di tutte le mosse, quindi di cosa abbiamo bisogno? Dobbiamo cercare di ottenere almeno quel3% e buttare via il resto della roba indivisibile perché è la stessa spazzatura/rumore che deve essere rimossa/ragione di riqualificazione ecc... chiamatelo come volete, va bene così...

Anche se non ho ancora scritto come la vedo io, qualcuno ha qualche suggerimento su come fare questa selezione?

p.s. Sanych per favore, non parlarmi più di PCA, non è la stessa cosa ;)

 
mytarmailS:

Bello, e informativo... grazie per questo

Credo che dovrò mettermi d'accordo e scrivere sulla mia idea di trovare modelli puri (ma ci vorrà del tempo), visto che vedo che è rilevante... Forse ne uscirà qualcosa di buono...

Dr.Trader secondo me l'intero problema è che stiamo cercando di costringere il MO a dividere l' intero campione in classi, cosa succede se oggettivamente possiamo dividere solo il ~3% del campione e diciamo no MO sei potente vai avanti e dividi tutto, non mi interessa :) quindi separa l'inseparabile con un risultato noto...

Vedete, noi cerchiamo di dividere tutti i campioni in acquisto e vendita, ed è così che vogliamo prevedere ogni singola mossa del mercato, ma i nostri predittori sono così merdosi che possono oggettivamente prevedere solo il~3% di tutte le mosse, quindi di cosa abbiamo bisogno? Dobbiamo cercare di prendere almeno quel3% e buttare via il resto della roba indivisibile perché è la stessa spazzatura/rumore che deve essere rimossa/ragione di riqualificazione ecc... chiamatelo come volete, va bene così...

Anche se non ho ancora scritto come la vedo io, qualcuno ha qualche suggerimento su come fare questa selezione?

p.s. Sanych per favore, non parlarmi più di PCA, non è quel cappotto ;)

Ho precedentemente descritto il mio approccio alla divisione in 3 classi (vendere, ricettare, comprare). La classe "recinto" comprende tutti i casi che si contraddicono o che non possono essere divisi in classi di acquisto e di vendita. Si scopre che solo il 3-10% rientra nelle classi di acquisto e vendita. Il bello di questo approccio è che lavorando con dati sconosciuti (reali) con il tempo la rete smette di riconoscere le situazioni di mercato e comincia ad attribuirle al "recinto" sempre di più, cioè smette gradualmente di fare trading. Questo è cento volte meglio che iniziare a sbagliare sempre di più nel tempo.

Ma tutto per niente, nessuno vuole, nessuno ascolta.