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

 
Maxim Dmitrievsky:

Cosa c'era di umoristico in questo? Che l'altra parola è fuori posto, nemmeno un omonimo?

Tu non capisci... Non ha senso spiegarlo.

 
Maxim Dmitrievsky:

Nel secondo articolo, la genetica e l'enumerazione di un mucchio di parametri sono sostituiti da un unico vettore di valori (input della foresta, predittori), e le uscite sono selezionate in base al numero massimo di operazioni redditizie. È possibile introdurre altri criteri, correggendo la funzione di ricompensa (incluso DD, Sharp Ratio, tutto quello che vuoi).

L'algoritmo ottimizza qualsiasi strategia con una qualità molto alta in pochi passaggi nell'ottimizzatore (di solito 5) (al contrario dei GA e, a maggior ragione, della forza bruta). Nell'esempio dato nell'articolo sono secondi. Inoltre, l'aumento del numero di predittori non aumenta significativamente il numero di passaggi di ottimizzazione. Vi consiglio di fare dei test per la vostra Lega delle Strategie in un altro thread. Inoltre, si può arrivare ad algoritmi di ottimizzazione ancora più efficienti per la Lega, basati sull'approccio proposto. L'ottimizzatore regolare può essere scartato come obsoleto, soprattutto senza cross-validazione (wolf-forward), e perde (almeno) in velocità più volte, e in qualità non è migliore. Se sostituiamo la foresta con NS con kfold otteniamo l'analogo di wolf-forward, e molto veloce. Ma finora le mani non ci sono arrivate.

L'informazione reciproca è una misura dell'entropia tra la variabile obiettivo e i predittori, la stessa che hai mostrato nell'immagine come tabella dell'importanza dei predittori. Ma si può semplicemente usare l'eliminazione ricorsiva delle caratteristiche in lasas, e osservare gli errori. Se è così necessario ordinare e rimuovere i predittori non informativi. (decifrazione di google)

upd

Dopo aver letto l'articolo ho più domande che risposte, non tutto il codice è chiaro, ma ho capito che ho bisogno di riscrivere completamente TC per implementare questo approccio descritto nell'articolo. Ovviamente non ho ancora raggiunto il livello a cui è stato scritto l'articolo.

Si è scoperto che è possibile costruire il proprio albero nel Deductor Studio in modalità manuale e semi-automatica, il che mi ha davvero affascinato! Tuttavia, il processo è laborioso e manca il drag-and-drop nell'interfaccia, ma lavorare con i dati in questa modalità permette di vedere meglio i modelli. vera mancanza di opportunità di cambiare la regola, cioè se il campione dice che è 1 poi a zero non può cambiare, e avrei spostato parte delle regole verso lo zero sia sulla rarità di cadere fuori, e la credibilità e guardare una volta le statistiche, e poi tutti hanno a che fare attraverso script di elaborazione. Forse ci sono altri programmi simili con tali caratteristiche, ma dove si possono costruire i nodi di un albero a mano più velocemente?

 
Mihail Marchukajtes:

Arrivano i primi errori... Ok, definiamo allora il momento in cui il marchio attraversa dal basso verso l'alto il segnale di comprare, dall'alto verso il basso il segnale di vendere. Ma solo su una barra. Cioè lasciamo solo il momento di attraversare il marchio 50. Spero che questo avvenga entro una barra?

In realtà, secondo la tua regola, una volta che il prezzo raggiunge il 50% dal basso verso l'alto, raggiunge contemporaneamente il livello sottostante. Quindi sarà sufficiente attraversare il 50% dal basso verso l'alto per comprare. Al contrario sul contrario.... Ti piace questo piano?

Lavora all'apertura di un nuovo bar. La voce non è così importante, nel mio sistema, l'eliminazione della spazzatura è fatta dalla statistica, non lo considero un errore. Questo incrocio non darà nulla di grande, tranne che diminuirà la frequenza di generazione dei segnali, ma anche la qualità del segnale diminuirà.

Mihail Marchukajtes:
Da aggiungere. Perché avete bisogno di un segnale costante? Penso che il momento più adatto per l'analisi sia quando il segnale cambia da comprare a vendere, se è costante. Credo che il tempo di cambiamento del segnale sia limitato a 1 bar. Pensateci. Perché dovrei analizzare tutto nel segnale di acquisto, se la cosa principale è aprire la posizione. Cioè la cosa principale è il momento del cambio di segnale. Può essere segnato.

È sbagliato essere sul mercato tutto il tempo - i rischi sono troppo alti.

 
Aleksey Vyazmikin:

Lavora all'apertura di un nuovo bar. L'input non è così importante, nel mio sistema, la spazzatura viene eliminata dalla statistica, non credo sia un errore. L'incrocio non farà nulla, se non ridurre la frequenza di generazione del segnale di entrata, ma anche la sua qualità diminuirà.

È un errore - è sbagliato essere sul mercato tutto il tempo - rischi eccessivi.

Beh, hai detto che hai un segnale costante. Mi dispiace, ma vedo un malinteso, quindi difficilmente posso aiutarti... Troppo equivoco....

 
Mihail Marchukajtes:

Beh, hai detto di avere un segnale costante. Mi dispiace, ma vedo il malinteso, quindi non credo di poterti aiutare... È troppo equivoco....

Ho spiegato che la decisione è effettivamente presa dalla cascata di filtri. Tutto quello che voglio da MO è identificare le sezioni dei mercati in cui vale la pena impegnare alcuni dei filtri e dove non lo sono. Ho bisogno di ottimizzare ciò che già funziona e non aspettare un miracolo da una scatola nera.

 
Aleksey Vyazmikin:

Ho spiegato che la decisione è effettivamente presa dalla cascata di filtri. Tutto quello che voglio da MoD è identificare le parti dei mercati dove vale la pena usare alcuni dei filtri e dove non lo sono. Ho bisogno di ottimizzare ciò che già funziona, non di aspettare un miracolo della scatola nera.

Il processo decisionale dovrebbe essere trasferito interamente a NS, invece dei filtri, allora ha senso. Qui una semplice domanda sì o no costa un sacco di risorse, e voi volete che la NS identifichi quali parti del mercato usare quali filtri. Penso che sia troppo complicato. Si può fare, ma è più facile costruire stupidamente il modello giusto invece dei vostri filtri. IMHO !!!!

 
Aleksey Vyazmikin:

Dopo aver letto l'articolo ho più domande che risposte, non tutto il codice è chiaro, ma ho capito che devo riscrivere l'intero TS per implementare l'approccio descritto nell'articolo. Ovviamente non ho ancora raggiunto il livello a cui è stato scritto l'articolo.

Si è scoperto che è possibile costruire il proprio albero nel Deductor Studio in modalità manuale e semi-automatica, il che mi ha davvero affascinato! Tuttavia, il processo è laborioso e manca il drag-and-drop nell'interfaccia, ma lavorare con i dati in questa modalità permette di vedere meglio i modelli. vera mancanza di opportunità di cambiare la regola, cioè se il campione dice che è 1 poi a zero non può cambiare, e avrei spostato parte delle regole verso lo zero sia sulla rarità di cadere fuori, e la credibilità e guardare una volta le statistiche, e poi tutti hanno a che fare attraverso script di elaborazione. Forse ci sono altri programmi simili con tali capacità, ma dove è possibile costruire più rapidamente i nodi a mano nell'albero?

No, non l'ho mai fatto.

Non capisco davvero perché sia necessario, perché, per esempio, una foresta è un classificatore o approssimatore universale, e non c'è niente da sistemare a mano

mentre gli alberi singoli sono algoritmi piuttosto deboli e primitivi.

 
Alexander_K2:
Se non siete in grado di risolvere questi problemi da soli, trovatemi il modulo VisSim NeuralNet e vi mostrerò come fare.
File:
 
Artem:

Artem, i più umili saluti e rispetto. Dietro di me - un modello di lavoro del mio TS con esempi. Lo manderò questo fine settimana. Basta guardarlo, se non ti piace, buttalo via.

 
Vizard_:

Come possiamo farlo se non ci dici niente? Ci parli degli ultimi sviluppi. In dettaglio, con esempi.

Per quale motivo? Vi dirò una cosa. Doc mi ha aiutato a trasferire i modelli da R a MT e lasciatemi dire che quei modelli funzionano esattamente come quelli di Reshetov su OOS. Esattamente lo stesso. Quindi ci si può fidare dei modelli R. È tutta una questione di alimentazione di dati... Tutti uguali....

Motivazione: