Ricerca in pacchetti di matrici - pagina 8

 
Alexey Volchanskiy:
Una domanda correlata a tutti i partecipanti alla discussione. Lavori con i dati delle zecche? Mi sono allontanato da tempo dall'analisi delle barre, lavorando esclusivamente su metodi DSP
Io uso le offerte M1-bar con gli ascensori e il Level2.
 
zaskok3:
Io uso le offerte M1-bar con le richieste e il livello 2.
L2 è su MT5?
 
Vladimir Perervenko:

L'articolo a cui si riferisce è sulla regressione. Abbiamo a che fare con la classificazione. Queste sono due grandi differenze...

Continuo a non capire la sua domanda.

Buona fortuna

Qui, non importa la regressione o la classificazione. Tutti uguali. È solo un articolo specifico sulla regressione.

Solo per chiarire: hai esempi per la formazione con quale passo sono presi, una barra (cioè ingressi di ogni riga dell'array di dati) o n barre, in modo che ci sia un intervallo di tempo tra le righe?

Non sono solo un nerd, e certamente non voglio screditare il tuo lavoro (i tuoi articoli mi aiutano).

Lasciatemi spiegare il mio punto con un esempio pratico, senza strappare citazioni da studi statistici:

in un albero decisionale si avranno, diciamo, m nodi terminali. Ogni nodo conterrà casi simili nei vettori di input - un sottospazio di valori di input. Quindi, se avete esempi consecutivi spostati di qualche barra usando input che guardano indietro di qualche barra (nel peggiore dei casi, anche di centinaia di barre), ci sarà una brillante autocorrelazione tra i punti vicini, ma allo stesso tempo, poiché prevediamo il futuro qualche barra avanti (nel peggiore dei casi, anche di centinaia di barre), anche gli output vicini saranno gli stessi. Per esempio, la colonna delle uscite sarà formata dalle sequenze 0 0 0 0 0 0 0 00 0 1 1 1 1 1 1 1 1. Così, decine di uscite identiche cadranno nei nostri nodi terminali, riferendosi a ingressi adiacenti - simili -. Si potrebbe dire che ci sarà una ridondanza di esempi identici raggruppati per punti temporali, il che distorcerà la distribuzione delle risposte nel modo più enfatico. Questo è il motivo per cui c'è una raccomandazione popolare di non tenere più di una posizione sul mercato, perché l'effetto di dipendenza di entrate e uscite vicine è presente anche quando si allena un EA nel terminale.

In questo caso ci sarà una dura riqualificazione, ovvero la formazione di statistiche di osservazioni non dipendenti. Cioè, la cosa più sgradevole che si può ottenere quando si analizzano le serie temporali è la dipendenza dei vettori di dati vicini. Se i vettori di dati sono lontani nel tempo, va bene. In questo caso, l'apprendimento automatico si riduce a trovare modelli che sono invarianti rispetto al tempo.

E poi, facendo riferimento alla matrice di errore che date come esempio nell'articolo:

OOB confusion matrix:
          Reference
Prediction   -1    1 class.error
        -1 1066  280      0.2080
        1   254 1043      0.1958
Test set
Error rate: 19.97%

Confusion matrix:
          Reference
Prediction  -1   1 class.error
        -1 541 145      0.2114
        1  119 517      0.1871

Posso solo dire che è fantastico. ) L'esperimento è stato condotto per errore. Non si può mai ottenere una matrice di errore così ripida su un campione con esempi indipendenti, e allo stesso tempo separare rigorosamente il dataset di test dal dataset di addestramento per tempo (look-ahead bias).

E il fatto che la matrice di errore sul set di test sia anche fantastica suggerisce che un campione è stato preso mescolato al campione di allenamento per tempo, in cui esempi simili sono anche "ammucchiati". In altre parole, questo particolare risultato non dice nulla sulla capacità del modello costruito di prevedere il mercato.

Puoi provare a prendere un po' più di dati e testarli usando la logica tail(all_data, 1/3) e vedere come il numero di osservazioni nelle celle della matrice si allinea. Si potrebbe anche applicare il criterio del chi-quadro per vedere se l'indovinare è diventato quasi casuale.

Tutto quello che volevo trasmettervi, ho cercato di farlo. Nota, con buone intenzioni)

Buona fortuna! Alexey

 
Alexey Volchanskiy:
L2 è su MT5?
MT4. Il codice sorgente ha circolato sul forum...
 
zaskok3:
MT4. Il codice sorgente è trapelato sul forum...

Amici e colleghi, ho una domanda.

Come si può formulare un algoritmo basato su dati di trading pubblicati?

 
Alexey Volchanskiy:

Amici e colleghi, ho una domanda.

Come si può formulare un algoritmo basato su dati di trading pubblicati?

So di aver scritto male - formulare, dalla parola formula)
 
Alexey Volchanskiy:

Come si può formulare un algoritmo basato su dati di trading pubblicati?

Se volete reingegnerizzare il TS in base allo stato, allora usate il machine learning:

Prendete un mucchio di valori di indicatori sull'ingresso, l'uscita dello stato. Adattamento tramite modelli matematici.

Non ho avuto a che fare con tali sciocchezze.

 
Alexey Volchanskiy:
Come nota a margine, ho una domanda per tutti nella discussione. Lavori con i dati delle zecche? Mi sono allontanato dall'analisi delle barre molto tempo fa e lavoro esclusivamente con metodi DSP

L'uso del DSP è molto discutibile.

Per i dati di tick, le idee di cointegrazione sono più adatte.

 
Alexey Burnakov:
Qui, non importa la regressione o la classificazione. Tutti uguali. Questo è solo un articolo specifico sulla regressione.

Solo per chiarire: avete esempi per la formazione con cui vengono presi i passi, una barra (cioè gli ingressi di ogni riga della matrice di dati) o n barre, in modo che ci sia un intervallo di tempo tra le righe?

Non sono solo un nerd, e certamente non voglio screditare il tuo lavoro (i tuoi articoli mi aiutano).

Lasciatemi spiegare il mio punto con un esempio pratico, senza strappare citazioni da studi statistici:

in un albero decisionale si avranno, diciamo, m nodi terminali. Ogni nodo conterrà casi simili nei vettori di input - un sottospazio di valori di input. Quindi, se avete esempi consecutivi spostati di qualche barra usando input che guardano indietro di qualche barra (nel peggiore dei casi, anche di centinaia di barre), ci sarà una brillante autocorrelazione tra i punti vicini, ma allo stesso tempo, poiché prevediamo il futuro qualche barra avanti (nel peggiore dei casi, anche di centinaia di barre), anche gli output vicini saranno gli stessi. Per esempio, la colonna delle uscite sarà formata dalle sequenze 0 0 0 0 0 0 0 00 0 1 1 1 1 1 1 1 1. Così, decine di uscite identiche cadranno nei nostri nodi terminali, riferendosi a ingressi adiacenti - simili -. Si potrebbe dire che ci sarà una ridondanza di esempi identici raggruppati per punti temporali, il che distorcerà la distribuzione delle risposte nel modo più enfatico. Questo è il motivo per cui c'è una raccomandazione popolare di non tenere più di una posizione sul mercato, perché l'effetto di dipendenza di entrate e uscite adiacenti ha luogo anche quando si allena un EA nel terminale.

In questo caso ci sarà una dura riqualificazione, ovvero la formazione di statistiche di osservazioni non dipendenti. Cioè, la cosa più sgradevole che si può ottenere quando si analizzano le serie temporali è la dipendenza dei vettori di dati vicini. Se i vettori di dati sono lontani nel tempo, va bene. In questo caso, l'apprendimento automatico si riduce a trovare modelli che sono invarianti rispetto al tempo.

E poi, facendo riferimento alla matrice di errore che date come esempio nell'articolo:

Posso solo dire che è fantastico. ) L'esperimento è stato condotto per errore. Non si può mai ottenere una matrice di errore così ripida su un campione con esempi indipendenti, e allo stesso tempo separare rigorosamente il dataset di test dal dataset di addestramento per tempo (look-ahead bias).

E il fatto che la matrice di errore sul set di test sia anche fantastica suggerisce che un campione è stato preso mescolato al campione di allenamento per tempo, in cui esempi simili sono anche "ammucchiati". In altre parole, questo particolare risultato non dice nulla sulla capacità del modello costruito di prevedere il mercato.

Puoi provare a prendere un po' più di dati e testarli usando la logica tail(all_data, 1/3) e vedere come il numero di osservazioni nelle celle della matrice si allinea. Si potrebbe anche applicare il criterio del chi-quadro per vedere se l'indovinare è diventato quasi casuale.

Tutto quello che volevo trasmettervi, ho cercato di farlo. Nota, con buone intenzioni)

Buona fortuna! Alexey

Scusate l'intromissione ma sembra essere una discussione pubblica.

Il tuo post mi sembra un mix di diversi problemi correlati ma diversi.

1. Cosa insegnate al modello? Tendenze, ripartizione dei livelli? Una deviazione da qualcosa? Sembra essere molto semplice selezionare l'insegnante del modello, ma in pratica causa alcune difficoltà. In ogni caso, dovremmo preparare l'insegnante (il vettore secondo il quale il modello è addestrato) in modo molto specifico per la nostra idea di trading, per esempio, "io commercio tendenze".

2. Su cosa insegna? Nel tuo post menzioni la presenza di dipendenza tra barre adiacenti. Sì, ci sono modelli di legno (CORELearn) che tengono conto delle dipendenze tra barre adiacenti, ma il problema che sollevi è molto più ampio e più brutto e ha poco a che fare con il modello utilizzato. È la riqualificazione del modello. Per come la vedo io, ci sono set di dati che producono SEMPRE modelli sovrallenati. E nessuna quantità di tecniche per eliminare il sovrallenamento aiuta in questo caso.

Ci sono dataset di input (insiemi di predittori) tra i quali ci sono predittori che possono essere usati per costruire modelli che NON sono sovrallenati. Ma i predittori rimanenti generano così tanto rumore che questi predittori di rumore non possono essere eliminati dai pacchetti di selezione dei predittori esistenti.

Pertanto, una selezione manuale dei predittori basata sul criterio "sembra essere rilevante per il nostro insegnante, la variabile obiettivo" è obbligatoria.

PS.

È divertente da dire, ma quando si fa trading di tendenze, qualsiasi predittore ottenuto tramite smoothing, in particolare MA, è estremamente rumoroso e i modelli sono sempre sovrallenati. E quando si addestra su campioni OOV, si può ottenere anche un errore del 5%!

 
Alexey Burnakov:
Qui, non importa la regressione o la classificazione. Tutti uguali. È solo un articolo specifico sulla regressione.

Solo per chiarire: hai esempi per la formazione, con quale passo sono presi, una barra (cioè, gli ingressi di ogni riga dei dati dell'array) o n barre, in modo che ci fosse un intervallo di tempo tra le righe?

Il dataset iniziale è una matrice o dataframe che contiene input e target. Quando si divide (stratificato) in insiemi di allenamento e di test, gli esempi sono mescolati in modo casuale, ma la distribuzione delle classi negli insiemi è mantenuta la stessa del set originale. Perciò non è possibile dire a quale passo siano stati presi gli esempi. Ovviamente state confondendo la trasformazione da vettore a matrice, dove si può parlare di ritardo.

Non sono solo un nerd e non voglio certo screditare il tuo lavoro (i tuoi articoli mi aiutano).

Sì, sono lontano dal pensare in questo modo. Ma davvero non riesco a capire la domanda.

Lasciatemi spiegare il mio pensiero con un esempio pratico, senza tirare fuori citazioni da studi statistici:

in un albero decisionale si avranno, diciamo, m nodi terminali. Ogni nodo conterrà casi simili nei vettori di input - un sottospazio di valori di input. Quindi, se avete esempi consecutivi spostati di qualche barra usando input che guardano indietro di qualche barra (nel peggiore dei casi, anche di centinaia di barre), ci sarà una brillante autocorrelazione tra i punti vicini, ma allo stesso tempo, poiché prevediamo il futuro qualche barra avanti (nel peggiore dei casi, anche di centinaia di barre), anche gli output vicini saranno gli stessi. Per esempio, la colonna delle uscite sarà formata dalle sequenze 0 0 0 0 0 0 0 00 0 1 1 1 1 1 1 1 1. Così, decine di uscite identiche cadranno nei nostri nodi terminali, riferendosi a ingressi adiacenti - simili -. Si potrebbe dire che ci sarà una ridondanza di esempi identici raggruppati per punti temporali, il che distorcerà la distribuzione delle risposte nel modo più enfatico. Questo è il motivo per cui c'è una raccomandazione popolare di non tenere più di una posizione nel mercato, perché l'effetto di dipendenza di entrate e uscite vicine è presente anche quando si allena un EA nel terminale.

In questo caso ci sarà una dura riqualificazione, ovvero la formazione di statistiche di osservazioni non dipendenti. Cioè, la cosa più sgradevole che si può ottenere quando si analizzano le serie temporali è la dipendenza dei vettori di dati vicini. Se i vettori di dati sono lontani nel tempo, va bene. In questo caso, l'apprendimento automatico si riduce a trovare modelli che sono invarianti rispetto al tempo.

E poi, facendo riferimento alla matrice di errore che date come esempio nell'articolo:

Posso solo dire che è fantastico. ) L'esperimento è stato condotto per errore. Non si può mai ottenere una matrice di errore così ripida su un campione con esempi indipendenti, e allo stesso tempo separare rigorosamente il dataset di test dal dataset di addestramento per tempo (look-ahead bias).

E il fatto che la matrice di errore sul set di test sia anche fantastica suggerisce che un campione è stato preso mescolato al campione di allenamento per tempo, in cui esempi simili sono anche "ammucchiati". Cioè, questo particolare risultato non dice nulla sulla capacità del modello costruito di prevedere il mercato.

Puoi provare a prendere un po' più di dati e testarli usando la logica tail(all_data, 1/3) e vedere come il numero di osservazioni nelle celle della matrice si allinea. Si potrebbe anche applicare il criterio del chi-quadro per vedere se l'indovinare è diventato quasi casuale.

Perciò si farà un esempio per spiegarlo sulle dita. O pensate che non abbia fatto questi test?

Tutto quello che volevo trasmettervi, ho cercato di farlo. Avviso, con buone intenzioni )

Voglio davvero capire cosa state cercando di trasmettere. Usando un esempio, penso che sarebbe più chiaro.

Quando dicono che hai fatto unerrore quando hai fatto l'esperimento, devi dirgli qual è l'errore e dirgli la soluzione giusta. Hai il pacchetto, gli esempi, descrivi come pensi che il calcolo debba essere effettuato.

Senza offesa.

Buona fortuna