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

 
mytarmailS #:

))))

Sono fuori)

Ti do un indizio: in termini di generalizzazione, non cambia nulla
 
Maxim Dmitrievsky #:
Logloss mostra la quantità di informazione reciproca tra i tratti e l'obiettivo, per quanto ho capito. Questa è la f-i più oggettiva, senza descrivere la forma di dipendenza. Il modello è addestrato per minimizzare la perdita di tali informazioni, specialmente il boosting funziona in questo modo. Ciò che si aggiunge sopra l'abitudine uno si fermerà alla formazione.

Sembra che il logloss sia derivato sulla base del principio di massima verosimiglianza per una distribuzione binomiale. In matstat, il principio di massima verosimiglianza è esteso e generalizzato come stime M, che possono essere una giustificazione teorica per gli esperimenti (ma non una garanzia del loro successo, ovviamente).

 
Aleksey Nikolayev #:

Come il logloss è derivato dal principio di massima verosimiglianza per una distribuzione binomiale. Nel matstat il principio della massima verosimiglianza è esteso e generalizzato come stime M, che possono essere una giustificazione teorica per gli esperimenti (ma non una garanzia del loro successo, ovviamente).

Confuso con la cross-entropia probabilmente, ma è più spesso usato per il multiclasse. In ogni caso, non vedo il problema di fare ulteriori stime attraverso qualsiasi funzione f, ma puramente dal grafico dell'equilibrio
 
Maxim Dmitrievsky #:
Confuso con cross-entropia probabilmente, ma è più spesso usato per multiclasse.

Sembra che ci sia qualcosa che il valore teorico di logloss minimo coincida con l'entropia.

Maxim Dmitrievsky #:
Comunque, non vedo il problema di fare una stima aggiuntiva attraverso qualsiasi funzione f, ma puramente dal grafico dell'equilibrio

Credo di sì. Solo confuso dalla mancanza di un gran numero di articoli sull'argomento) Probabilmente ha paura di rivelare i posti di pesce)

 
Aleksey Nikolayev #:

Sembra che ci sia qualcosa che il valore teorico del minimo di logloss coincida con l'entropia.

Credo di sì. Solo la mancanza di un gran numero di articoli sull'argomento disturba) Probabilmente, hanno paura di rivelare i luoghi di pesce)

Prado ha molti articoli interessanti sull'argomento. L'ho messo in un lungo cassetto, ma sarei felice di leggerlo più tardi. Uno degli autori più sensati)
 
Maxim Dmitrievsky #:
Prado ha un sacco di cose interessanti su questo argomento, i suoi articoli sono sul sito web. L'ho messo in un lungo cassetto, ma mi piacerebbe leggerlo più tardi. Uno degli autori più sensati).

Sì, dovrei dare un'occhiata ai suoi articoli. Ne ha un bel po', però)

Per quanto riguarda la tua idea di combinare metriche standard e personalizzate mi sono ricordato di un'idea con un albero, dove è costruito da cross-entropia e potato per frequenza di errori. Immagino che potresti provare a usare la tua metrica invece della frequenza.

 
Renat Fatkhullin #:
Puoi condividere le informazioni?
1) Usate la libreria python di MT5?
2) Lo usate fuori o dentro MT5?
3) Quali caratteristiche mancano alla biblioteca? Accesso agli indicatori?

Stiamo preparando un aggiornamento di MQL5 che aggiunge operazioni di matrice veloci. Questo permetterà di eseguire calcoli massicci.

Inoltre svilupperemo connettori a pacchetti analitici e implementeremo l'integrazione standard WinML.

1. a volte.

2. Dentro, fuori.

3.

3.1 Sottoscrizioni di eventi. Gli stessi eventi di MQL5 attivati da alcuni metodi di gestione.

La possibilità di scrivere strategie in Python (come tipo di applicazione) che possono essere testate nel backtester.

Alcuni meccanismi di interazione MQL5-Python già pronti. Python può interagire con mt5 in entrambe le direzioni, MQL5 può interagire con esso in entrambe le direzioni, MQL5 è una unità con il terminale ed è molto buono in

con funzioni di trading e simili, ma non sa lavorare comodamente con le migliori soluzioni di rilevamento dati del settore. Python è lo standard industriale in senso dati - pandas, numpy, TensorFlow, Keras, PyTorch ecc, ma molto meno integrazione "commerciante" nella piattaforma. Sarebbe bello avere dei mezzi standard di integrazione di questi due poteri - qualcosa come appendere uno script Python in mt5, e lo script ha un modello in attesa, sotto vapore, o un pool di modelli, funzioni che si occupano di pre-elaborazione dei dati, ecc. Lo script ha un'applicazione e una strategia MQL5, che fa il suo lavoro, e chiama la funzionalità ML da questo script quando necessario - rapidamente e senza stampelle.

 

Qualcuno usa il pacchetto P per il backtest della strategia Quantstrat?

Com'è in termini di velocità?

 
Aleksey Nikolayev #:

Onestamente, non capisco molto. La domanda è: la probabilità cambia nel tempo? Per studiare questo, si può semplicemente costruire una regressione logistica sul tempo (e controllare la significatività della differenza tra il coefficiente e lo zero).

Se si stanno studiando altri fattori che influenzano la probabilità oltre al tempo, allora anche questi possono essere provati per aggiungere alla regressione logistica.

elibrario #:

O forse è più facile fare un altro predittore - la distanza della linea dei dati da quella attuale. La foresta stessa può calcolare che i dati più vecchi di 8 mesi sono cattivi per la previsione attuale. E ci sarebbe una semplice divisione: prima degli 8 mesi (con foglie migliori) e dopo gli 8 mesi con foglie peggiori.
Beh, su un vassoio imparano tutti bene, naturalmente. Su test/convalida incrociata dovremmo controllare. Ma come? Non è chiaro. Non è nemmeno la significatività del predittore, ma la significatività della divisione.

Oggi ho aggiunto un tale predittore di distanza dalla barra corrente. Potrebbe essere un numero o solo un tempo. Ho preso tempo.

Sperimentalmente raccolto che la lunghezza della storia per il set di dati di formazione di 1 mese, dà il migliore avanti.

L'assunzione che l'aggiunta di un predittore di distanza dalla prima linea di dati aiuterà era sbagliata. In pratica, l'inoltro è peggiorato solo con 1 mese di dati, e con 2, e con 10.

Supponiamo di avere 2 mesi di dati, l'albero ha trovato la divisione di 1 mese e uno dei suoi rami si è allenato sugli stessi dati della lunghezza scelta sperimentalmente di 1 mese. Anche l'altro mese si è allenato sui propri dati. E ha imparato bene, non male (come ho suggerito all'inizio). Sarà un male per l'attaccante, e imparerà solo sul vassoio. Di conseguenza, il modello fa una media dei risultati per entrambi i mesi e l'avanzamento è peggiore che se fosse stato addestrato solo per 1 mese.

Conclusione: non è possibile applicare il tempo globale o il numero di linea. Le varianti cicliche del tempo: giorno della settimana, ora, minuto sono utili, ma dovremmo controllarle.
Per ogni obiettivo (e/o set di predittori) la lunghezza della storia per l'allenamento dovrà essere regolata/ottimizzata.

 

Spuntato "Le opzioni di tempo ciclico: giorno della settimana, ora, numero di minuti possono essere utili - bisogna controllare".

I minuti non hanno quasi nessun effetto, i cambiamenti non più dello 0,5%
Le ore e i giorni della settimana hanno un effetto. Cambiamenti di circa il 3-5%.

Costruisco 2 modelli allo stesso tempo: 1 per comprare, 2 per vendere.
I modelli di acquisto lavorano meglio senza tempo del 4-5% e i modelli di vendita lavorano meglio con il tempo dello stesso 4-5%. Come il 5% vende secondo il programma e compra secondo altri principi.