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

 
Maxim Dmitrievsky #:
No

I pacchetti sono buoni, ma prima è necessario capire in linea di principio cosa si deve fare.


risposta alla chat sui metodi kozuli


Esistono diversi metodi utilizzati per l'inferenza causale. Alcuni dei metodi più comuni sono:

  1. Esperimenti controllati randomizzati: Si tratta di un metodo utilizzato per identificare relazioni causali in ambienti complessi. Comporta un controllo completo sul meccanismo di assegnazione e l'assegnazione ècasuale1.
  2. Dati osservazionali: questo metodo viene utilizzato quando gli esperimenti non sono possibili o pratici. Comporta l'analisi di dati raccolti da fonti naturali, come sondaggi oregistri amministrativi1.
  3. Variabili strumentali: questo metodo viene utilizzato per identificare le relazioni causali quando ci sono problemi di endogeneità o di mancanza didati1.
  4. Corrispondenza di propensione: questo metodo viene utilizzato per confrontare gruppi con caratteristiche simili, al fine di eliminare l'impatto deifattori di confondimento1.
  5. Stimatore di differenza: questo metodo viene utilizzato per analizzare i cambiamenti nel tempo e tragruppi1.

Questi sono solo alcuni dei molti metodi utilizzati per l'inferenza causale. Ogni metodo ha i suoi vantaggi e svantaggi e la scelta del metodo dipende dalla situazione specifica e dai dati disponibili.


parlaci del punto 1

Gli esperimenti controllati randomizzati, noti anche come studi controllati randomizzati (RCT), sono un metodo potente per scoprire relazioni causali. In un RCT, i partecipanti vengono suddivisi in modo casuale in due o più gruppi. Un gruppo riceve un intervento (come un farmaco) e l'altro gruppo riceve un placebo o un trattamento standard. I ricercatori confrontano poi i risultati tra i gruppi per determinare se esiste una differenza nei risultati.

Il vantaggio principale dell'RCT è che l'assegnazione casuale dei partecipanti ai gruppi aiuta a eliminare i pregiudizi e le confusioni. Ciò significa che eventuali differenze nei risultati tra i gruppi possono essere attribuite all'esposizione piuttosto che ad altri fattori.

Tuttavia, gli RCT non sono sempre possibili o praticabili. Ad esempio, possono essere costosi, richiedere una grande quantità di tempo e risorse o essere eticamente inaccettabili. In questi casi, i ricercatori possono utilizzare altri metodi di inferenza causale.


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

Stai facendo questo? A quanto pare, si tratta di una phyche selecta boruta .


 
Maxim Dmitrievsky #:

Potete controllare voi stessi, ho sviluppato un tema un po' kozul per non annoiarvi.

È chiaro che il concetto di tritolo è reinterpretato e sovraccaricato (nel senso della programmazione). In origine, è una cosa molto più semplice e non ambigua. Una nozione così estesa non potrebbe portare a un apprendimento eccessivo? Nel senso che una maggiore flessibilità può sempre portare a questo.

 
Aleksey Nikolayev #:

È evidente che la nozione di tritolo è stata reinterpretata e sovraccaricata (nel senso della programmazione). Inizialmente, è una cosa molto più semplice e non ambigua. Una nozione così estesa non potrebbe portare a un apprendimento eccessivo? Nel senso che una maggiore flessibilità può sempre portare a questo.

Non lo so, io mangio McDonald's :) Probabilmente. Stavo solo scremando il materiale offerto, da tutti i punti di vista.
 
mytarmailS #:

I pacchetti sono buoni, ma prima bisogna sapere cosa si sta facendo.


risposta alla chat sui metodi kozuli


Esistono diversi metodi utilizzati per l'inferenza causale. Alcuni dei metodi più comuni sono:

  1. Esperimenti controllati randomizzati: È un metodo utilizzato per identificare relazioni causali in ambienti complessi. Comporta un controllo completo sul meccanismo di assegnazione e l'assegnazione ècasuale1.
  2. Dati osservazionali: questo metodo viene utilizzato quando gli esperimenti non sono possibili o pratici. Comporta l'analisi di dati raccolti da fonti naturali, come indagini oregistri amministrativi1.
  3. Variabili strumentali: questo metodo viene utilizzato per identificare le relazioni causali quando ci sono problemi di endogeneità o di mancanza didati1.
  4. Corrispondenza di propensione: questo metodo viene utilizzato per confrontare gruppi con caratteristiche simili, al fine di eliminare l'impatto deifattori di confondimento1.
  5. Stimatore di differenza: questo metodo viene utilizzato per analizzare i cambiamenti nel tempo e tragruppi1.

Questi sono solo alcuni dei molti metodi utilizzati per l'inferenza causale. Ogni metodo ha i suoi vantaggi e svantaggi e la scelta del metodo dipende dalla situazione specifica e dai dati disponibili.


parlami del punto 1

Gli esperimenti controllati randomizzati, noti anche come studi controllati randomizzati (RCT), sono un metodo efficace per identificare le relazioni di causa ed effetto. In un RCT, i partecipanti vengono suddivisi in modo casuale in due o più gruppi. Un gruppo riceve un intervento (come un farmaco) e l'altro gruppo riceve un placebo o un trattamento standard. I ricercatori confrontano poi i risultati tra i gruppi per determinare se esiste una differenza nei risultati.

Il vantaggio principale dell'RCT è che l'assegnazione casuale dei partecipanti ai gruppi aiuta a eliminare i pregiudizi e le confusioni. Ciò significa che eventuali differenze nei risultati tra i gruppi possono essere attribuite all'esposizione piuttosto che ad altri fattori.

Tuttavia, gli RCT non sono sempre possibili o praticabili. Ad esempio, possono essere costosi, richiedere una grande quantità di tempo e risorse o essere eticamente inaccettabili. In questi casi, i ricercatori possono utilizzare altri metodi di inferenza causale.


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

Stai facendo questo? A quanto pare, si tratta di una phyche selecta boruta .


Beh, per quanto riguarda i meta-lettori e l'apprendimento ortogonale, è tutto nel libro. E il cross fitting.
 
Maxim Dmitrievsky #:
A proposito di meta-apprendimento, chiedete dell'apprendimento ortogonale, è nel libro dopo tutto

Il meta-apprendimento è un approccio all'apprendimento automatico che consente agli algoritmi di adattarsi rapidamente a nuovi compiti sulla base dell'esperienza precedente.Nel contesto dell'inferenza causale, ilmeta-apprendimento può essere utilizzato per riutilizzare i modelli predittivi per l'inferenza causale1.

Tutti i modelli predittivi, come la regressione lineare, gli alberi decisionali potenziati, le reti neurali o i processi gaussiani, possono essere adattati all'inferenza causale utilizzando gli approcci descritti in questo capitolo. Pertanto ,il successo del meta-apprendimento dipende dalla qualità dei modelli predittivi utilizzati e dalla loro capacità di adattarsi alcompito diinferenzacausale1.

Si tratta di un'area di ricerca abbastanza nuova e in pieno sviluppo, e ci sono molti approcci diversi al meta-apprendimento nel contesto dell'inferenza causale.

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

L'apprendimento ortogonale è un approccio all'apprendimento automatico utilizzato per migliorare l'inferenza causale. Un esempio di apprendimento ortogonale è il Double Machine Learning proposto da Chernozhukov et al. 1. Questo metodo utilizza uno stimatore a due stadi che prima ortogonalizza l'effetto dei fattori confondenti ad alta dimensionalità utilizzando sofisticati algoritmi di apprendimento automatico, tra cuiLasso2.

L'apprendimento ortogonaleè utilizzato anche in altri metodi di inferenza causale, come Orthogonal RandomForest1. Questo algoritmo combina l'apprendimento automatico duale con le foreste casuali generalizzate per stimare statisticamente i modelli di momento condizionale utilizzando le foreste casuali.

In generale, l'apprendimento ortogonale migliora l'accuratezza e la robustezza dell'inferenza causale eliminando l'influenza dei fattori confondenti e riducendo la sensibilità agli errori nella stima dei parametri.

 
Aleksey Nikolayev #:

È evidente che la nozione di tritolo è stata reinterpretata e sovraccaricata (nel senso della programmazione). Inizialmente, è una cosa molto più semplice e non ambigua. Una nozione così estesa non potrebbe portare a un apprendimento eccessivo? Nel senso che una maggiore flessibilità può sempre portare a questo.

Maxim ha scritto sopra - non funziona su OOS, che è un segno importante di sovrallenamento del modello.

Nel suo significato, per come lo intendo io, si prende un modello, i cui risultati si cerca di affinare per ridurre l'errore.

Ma la fonte di errore nell'OOS sono i dati stessi, quando gli stessi valori dei predittori predicono classi diverse in situazioni diverse. Questo difetto dei predittori non può essere risolto con alcun esercizio matematico, non si può correggere la spazzatura, ma sulla spazzatura si può ottenere un errore di addestramento molto piccolo perché l'algoritmo troverà dati "convenienti" e mostrerà un buon risultato. Ma su dati nuovi il risultato è deplorevole, perché ha i suoi rifiuti.

Allo stesso tempo, il problema dell'utilizzo di cajual è visto nel modo seguente.

Supponiamo di avere dei predittori, il cui 50% dei valori predice una delle classi e l'altro 50% predice casualmente una classe qualsiasi.

Adattiamo il modello e otteniamo l'errore di classificazione.

Ora la domanda è: questo errore di classificazione è coerente con la suddivisione dei valori dei predittori o no? Se può essere migliorato, allora è corretto, mentre se non può esserlo, allora non è affatto corretto, in quanto si ottiene un adattamento eccessivo del modello.

 
Maxim Dmitrievsky #:
Sì, puoi eliminare la variabile tritment dall'elenco e creare un potenziatore senza di essa. Non posso farlo con essa. E per ottenere una stima imparziale, si fa il cross fitting.
.

Mi sono comportato allo stesso modo con queste definizioni, quindi non preoccuparti :)

Non è una questione di terminologia, è una questione di cosa sia e di come applicarlo...

L'apprendimento automatico doppio è una tecnica che viene utilizzata per valutare le relazioni causali nei dati.

1) Cosa stimare?

2) Bene, l'ho stimato e poi?

 
mytarmailS #:

Non è una questione di terminologia, ma di cosa è e come viene applicata.

L'apprendimento automatico doppio è una tecnica utilizzata per valutare le relazioni di causa ed effetto nei dati.

1) Valutare cosa?

2) Bene, l'avete stimata e poi?

Poi, si possono trasformare gli obiettivi e ottenere i pesi, che ho già scritto. Saranno imparziali. La maggior parte dei kozuli riguarda le stime imparziali.


 
Risulta essere come quella dell'elefante e dei saggi. Nel libro c'è di tutto, ma per rendersi conto che si tratta di un elefante è necessario che le dita facciano un retelling sul forum.
 
Aleksey Nikolayev #:

Nell'articolo, a pagina 10, è presente un'implementazione sotto forma di pseudocodice. Nella penultima pagina, in appendice, si trovano i riferimenti all'implementazione in R e ai dati utilizzati nell'articolo.

Lo pseudocodice si riferisce alle formule :)

Per quanto riguarda il codice R - grazie - mi era sfuggito. Suppongo che ci sia del codice funzione, ma il codice stesso, come la lettura da un file, è commentato?

# --- Read in data --- 

# > arson = read.csv("arson.csv")
# > i = with(arson, day <= 731)
# > arson1 = arson[i,]
# > arson2 = arson[!i,]
# > arson2[,"day"] = arson2[,"day"] - 731

Non ho ancora capito come farlo funzionare. Sei riuscito a farlo funzionare?

Aleksey Nikolayev #:

In generale, come si implementano gli alberi decisionali in mql5? Attraverso array o modelli?

Non ho mai implementato la costruzione di alberi in MQL5 - Forester ha più esperienza in merito.

Tuttavia, penso che utilizzerei vettori e matrici oltre agli array - il codice è più veloce con questi ultimi. Inoltre, da quanto ho capito, poiché richiede un'enumerazione completa, sarà possibile utilizzare OpenCL.

Ma non so cosa siano i "template" in questo contesto :(

Dato che c'è del codice in R, è ragionevole capire all'inizio se tutto ha senso o meno.

L'esempio dell'articolo utilizza un numero ridotto di predittori, io ne ho un ordine di grandezza superiore e ovviamente sono meno informativi singolarmente.

In generale, mi interessa utilizzarlo non solo per confrontare due campioni, ma per rilevare anomalie nei dati - credo che questa sia la strada da seguire.

L'idea è quella di avere gruppi di foglie, anche se simili, e se notiamo un comportamento anomalo di un predittore, semplicemente disabilitiamo tutte le foglie che lo utilizzano, verificando al contempo la correlazione con le foglie del gruppo. Idealmente, se individuato in tempo, ciò consentirà al modello di continuare a funzionare, anche se con minore sicurezza.

Motivazione: