Principi di lavoro con un ottimizzatore e modi di base per evitare di inserirsi.

 

È da molto tempo che non creo nuovi argomenti, ma essendo su questo forum da un anno, vedo che un numero spaventoso di persone nella nostra comunità di commercianti mts'niki non capisce o non conosce gli strumenti di cui ha bisogno per lavorare. D'altra parte, circa mezzo anno fa l'amministrazione del forum mi ha chiesto di scrivere un articolo sulla tecnologia di creazione di un EA robusto. Sfortunatamente, non sono riuscito a scrivere un articolo approfondito su questo argomento a causa dei miei impegni. Quindi spero che questo articolo sia una versione leggera delle ricette di base dei professionisti - per i principianti, o per chiunque voglia capire i punti più fini del lavoro con le statistiche, l'ottimizzazione, la ricerca delle decisioni giuste, e infine trovare un buon robot che sarebbe redditizio non solo nella storia, ma anche nel futuro.

Questo articolo è scritto da professionisti, non da me, almeno solo da me. Spero ardentemente che questo argomento venga discusso da persone che hanno capito i principi di base del lavoro con i dati storici usando la loro piccola esperienza.

Allo stesso tempo, semplicemente per continuare uno dei vecchi rami non voglio, - infatti il messaggio iniziale, un vettore di sviluppo di un tema è importante. Inoltre, conoscendo l'incredibile capacità di questo forum di autocompiacersi, vorrei definire immediatamente i criteri di comunicazione. Molto per favore - non esprimete la vostra opinione su tutto, solo perché l'avete. Lo scopo di questo thread è uno scambio di esperienze tra trader altamente qualificati. Voglio soprattutto sottolineare la parola "commercianti". Non programmatori, non econometrici, non matematici (ovviamente questo non vale per Alexei:), ma commercianti. Se ascoltate anche solo in silenzio delle idee valide - arricchirà già il vostro salvadanaio della conoscenza, e la quintessenza della conoscenza non sarà diluita da una successione di opinioni consecutive di persone che hanno ancora molto da capire. Lo dico senza eccessivo pathos, narcisismo e provocazione. Ci sono molte cose che io stesso non conosco e lo ammetto apertamente. Il mio obiettivo è lo stesso di un principiante che sa per la prima volta cos'è l'ottimizzazione. Voglio imparare qualcosa di nuovo e interessante da persone che conoscono l'argomento meglio di me.

Perché abbiamo bisogno di test sui dati storici e se è necessario a tutti è una domanda che molti commercianti, alcuni dei quali sono anche mts-niks, chiedono. Ti rispondo subito:

Тестирование на исторических данных обязательное, но не достаточное условие, обеспечивающее вероятность положительного исхода вашей торговли в будущем.

Assolutamente, come per ogni affermazione ci sono 1.000 avvertimenti da trovare qui. Basta non scriverli qui, so già cosa vuoi dire. Aggiungerei che c'è una classe di investitori il cui orizzonte di investimento è enorme (come Warren Buffett). Non sono interessati a ciò che accadrà al mercato nei primi 10-15 anni. Non lavorano con il mercato, lavorano con le aziende. Le loro azioni non diventeranno mai statisticamente significative. È solo un modo diverso di lavorare, tutto qui.

Qualcuno dirà che qualsiasi TS è un adattamento per un mercato specifico. È vero. Lavorando con TS lavoriamo con certe regole di entrate e uscite. Lo scopo di queste regole è quello di sincronizzare la posizione nel conto con la tendenza attuale del mercato. Ma d'altra parte, una profonda comprensione dei processi che si verificano nel mercato e il loro corretto utilizzo è la via per il profitto. Se capiamo e impariamo a lavorare con essa, non avremo paura della volatilità del mercato. Questa è una proprietà "spaventosa" del mercato, e in termini semplici significa che il risultato nel passato non determina il risultato nel futuro. Se una qualsiasi proprietà del mercato cambia, qualsiasi TS che sfrutta questa proprietà smetterà immediatamente di funzionare.

Spero che questo thread ci dica come riconoscere in tempo che il mercato ha cambiato le sue proprietà, come distinguere un modello dalla coincidenza, e come trovarlo e usarlo correttamente.

Come nota introduttiva, sposterò alcuni post precedenti che mi hanno spinto a iniziare questo argomento. Quindi cominciamo.

C-4 : Lei chiaramente sopravvaluta le persone con una buona formazione scientifica. Tendono a mettere il metodo scientifico davanti all'idea. Spesso non c'è nulla nei loro metodi se non il metodo stesso. Il mercato non è importante per loro, è solo l'oggetto dell'applicazione; è il metodo stesso che è importante. Passano anni a combattere contro mulini a vento che in realtà non esistono nemmeno. Basta generare idee semplici e sensate e poi il mercato ricambierà. Posso tranquillamente dire che la profondità di un'idea è inversamente proporzionale alla sua complessità - il mercato lo sa e me lo dimostra ogni giorno.

Chiedi : stai dicendo (sto parafrasando): il mercato è semplice e si può guadagnare su di esso con metodi piuttosto semplici e primitivi?

C-4:Beh sì, è esattamente così.

LeoV:

Sono pienamente e incondizionatamente d'accordo con C-4.

A questo proposito, posso spiegare quanto segue.

Le CU possono essere complesse o semplici. Qual è la differenza tra loro? La differenza è questa.

Il trader che applica sia il TS complesso che quello semplice, alla fine arriva alla stessa fine - deve determinare con alcuni metodi o la sua intuizione come il suo TS funzionerà in futuro su dati sconosciuti, poiché il trader non fa trading su dati passati, ma su dati futuri, penso che tutti siano d'accordo con questo. E nessuno sa cosa succederà in futuro, specialmente né il TS più complesso né il TS più semplice.

Cos'è un TS complesso o semplice? Quali sono i pro e i contro?

Un TS complesso ha:

1. Un gran numero di variabili che possono e senza ambiguità portare ad un adattamento ai dati del passato, che di conseguenza porta ad una prugna nel futuro.

2. Per evitare l'adattamento, alcune variabili devono essere fissate - quali variabili devono essere fissate, come fissate?

3. A causa del gran numero di variabili - un gran numero di combinazioni di parametri da cui è difficile scegliere i parametri che funzioneranno meglio in futuro. 2.

Difficile per un trader afferrare i principi dell'operazione TS, quindi è difficile prevedere l'operazione in futuro.

Un semplice TS ha:

1. Piccola quantità di variabili che permette di evitare il montaggio.

2. Fissazione di alcune variabili che possono essere comprese e fissate nel giusto valore.

3. Un piccolo numero di combinazioni di parametri che possono essere concettualizzati come il mercato cambia in futuro.

4. Il lavoro del TS, che può essere compreso e capire come può funzionare in futuro e se non funzionerà in futuro, perché. )))

Il punto del mio post è che il problema sia per il TS complesso che per quello semplice è lo stesso - come funzionerà in futuro.

Ogni parametro successivo è un grado di libertà in più. Che lo si voglia o no, TS approssima il grafico degli strumenti in un modo o nell'altro. I nostri acquisti produrranno profitti solo quando il prezzo sale, e viceversa, quando il prezzo scende. Ora rappresentiamo l'approssimazione del grafico con una tendenza lineare. Può essere disegnato con solo due punti (parametri). Indicherà la direzione generale, ma in ogni momento, il prezzo sarà molto diverso dal suo valore. È molto problematico adattare una tendenza lineare strettamente al prezzo (gli econometrici piangeranno). Ora costruisci un'approssimazione di potenza del secondo o terzo ordine. Le loro formule hanno più punti di riferimento (parametri). Ora la nostra approssimazione è non lineare, curva e segue il cambiamento del prezzo. Ogni suo punto è molto più vicino a un punto simile del prezzo stesso (gli econometrici si rallegrano). Nel primo caso, un sistema che fa trading su una tendenza lineare può solo prendere la sua aspettativa matematica sulla storia. Nel secondo caso, il sistema richiederà molto di più. Date un'occhiata al grafico qui sotto. Se facciamo un sistema che gira a seconda della pendenza della funzione approssimativa, il suo risultato sarà tanto migliore quanto più parametri definisce questa funzione e quanto più lunga e complessa è la formula stessa.

Come potete vedere, il sistema in cui si usano più parametri funzionerà sulla storia. Ma la nostra capacità di fissare punti di flesso non significa nulla, poiché tutte queste funzioni non descrivono una regolarità, ma la condizione del mercato, e domani la condizione del mercato cambierà e la funzione di adattamento non si adatterà più. Il problema principale dei commercianti che si lamentano della non stazionarietà o dell'umore del mercato che cambia in modo permanente è che si prefiggono di approssimare la condizione del mercato, non di cercare delle regolarità in esso.

Ora immaginate di aver incaricato l'ottimizzatore di sistemare i punti di flesso. Per la strategia che opera su un trend lineare hai dato due punti (entrata e uscita), per la strategia sul trend di grado 2 hai dato tre punti (entrata, uscita e un punto di flesso), per la strategia sul trend di sesto grado hai dato 5 punti. Cosa volete che l'ottimizzatore trovi? Troverà i punti di flessione in modo così accurato che il criterio finale è il migliore. Molte persone non lo capiscono e le costringono a enumerare a piccoli passi uno spazio di sei dimensioni di parametri possibili. Il povero ottimizzatore combinerà questi punti per diversi giorni, ma alla fine troverà quello che ho definito a occhio su questo grafico al ritmo di tre interpretazioni al minuto. Non c'è davvero nessun problema con la velocità di enumerazione - questo è solo un caso speciale di non comprensione di ciò che viene effettivamente cercato, e sarà suggerito come risposta.

 
C-4:

Mi piacerebbe sostenere questo thread compilando le mie dichiarazioni sparse sul forum.

 

C-4:

I test sui dati storici sono necessari, ma non sufficienti, per garantire la probabilità di un esito positivo del tuo trade in futuro

Sono completamente in disaccordo con questa affermazione.

Come tale, il test non ha nulla a che fare con la previsione della probabilità di risultati commerciali futuri. È semplicemente una cifra che valuta il rendimento della ST in questa particolare area e questo è tutto.

Il tester è un eccellente mezzo di debugging del TS come programma, ma non ci dà nulla per stimare l 'essenza dell'algoritmo di trading.

Un esempio comune.

Un commerciante cammina naturalmente e copre 1 km in 10 minuti. È una garanzia che il commerciante percorrerà il prossimo km in 10 minuti? Ci viene detto di fare un test in avanti e di camminare 1 km in più. L'abbiamo fatto in 9 minuti. E allora? Qual è l'implicazione? Secondo me, niente, poiché i test mostrano solo che il commerciante correrà un chilometro in più che ha percorso. Se i km futuri sono simili o hanno caratteristiche simili a quello passato, tutto andrà bene. Ma cosa succede se il prossimo km è un fiume o una palude? Ovviamente il movimento del commerciante su questo nuovo terreno sarà diverso e i risultati dei suoi test non hanno nulla a che vedere con la previsione del suo movimento sull'acqua.

Questa analogia più semplice, che mostra la posizione del test in quanto tale, non è altro che un dispositivo di cronometraggio quando si cammina.


 

Ora l'ottimizzazione e il riattrezzamento.

Questo è l'addestratore che addestra il nostro trader walker. Allo stadio (è una zona così) questo allenatore ha insegnato al nostro girello a camminare in 9 min, poi in 8 min ecc. Dove ha dovuto interrompere la sua ottimizzazione per non sovraccaricare il nostro girello. Sembra ridicolo. Probabilmente alludendo all'uso del doping.

Ma il nostro allenatore non sa che il camminatore dovrà camminare su un terreno diverso. Il nostro allenatore, e con lui il camminatore, non sono nemmeno consapevoli che ci sono altre opzioni di terreno. Stanno entrambi tramando e sciamando, considerando l'AT come scienza e il tester e l'ottimizzatore come prova dei risultati della loro kamlana sul futuro.

 

Dai due post, segue la conclusione:

da un lato dobbiamo descrivere le opzioni del terreno

d'altra parte per descrivere accuratamente il nostro camminatore

avendo queste due descrizioni essere in grado di confrontare questi due componenti. Abbiamo bisogno di un tester qui? Sì, è così. È quello principale? No, non lo è, perché è solo un aritmometro e il problema della stabilità del TC si trova su un piano completamente diverso.

 
faa1947:

C-4:

Sono completamente in disaccordo con questa affermazione.


Tutto quello che scrivi è corretto, a patto che si lavori con una sola delle funzioni di market-fitting. Stiamo essenzialmente scrivendo della stessa cosa. Cosa deve mostrare l'ottimizzatore? Che la funzione viene regolata? Lo mostrerà sotto forma di un aumento sistematico del profitto.

È abbastanza concepibile che il risultato della strategia possa essere calcolato analiticamente. Per esempio, possiamo passare attraverso i punti di flesso nell'ottimizzatore e trovare i migliori, o possiamo risolvere questo problema attraverso un sistema di equazioni lineari e mettere questi punti negli stessi posti. L'ottimizzatore così come la soluzione analitica è solo un metodo di ricerca. Ma il risultato della ricerca sarà lo stesso.

Ma non sono d'accordo che l'ottimizzatore non dia nulla di nuovo. Ogni strumento ha i suoi vantaggi e l'ottimizzatore non fa eccezione. Il suo vantaggio principale (a parte la semplicità e l'usabilità) è il metodo di spostamento. Puoi descrivere il tuo modello e applicarlo analiticamente a un certo pezzo di storia del mercato. Ma l'ottimizzatore può spostare i parametri di questo modello dal punto del vostro estremo specificato di una certa distanza. Se il rendimento del sistema in questo caso scende drasticamente e la distanza di spostamento non è troppo grande, è un segno evidente di adattamento o di trovare una dipendenza casuale inesistente (spike statistico). Inoltre, uno spostamento può essere fatto sui dati di test stessi, ad esempio in avanti nel tempo, al di fuori del campione di allenamento (OOS), o su uno strumento completamente diverso (perché un modello stabile dovrebbe funzionare solo su uno strumento?) La misura in cui le prestazioni del sistema cambieranno quando si usano questi metodi sarà il criterio di quanto promettente possa essere il sistema. Cioè, il tester permette di calcolare il grado di stazionarietà del sistema rispetto ai suoi parametri e alla sua finestra temporale di funzionamento!

Allora perché il metodo del taglio è così efficace? Ed è efficace, perché appena si cambia un parametro un po' in alcune strategie, o si usano altri parametri, e tutti i profitti spariscono in una volta (probabilmente tutti hanno affrontato questo). La risposta è semplice: questo metodo è il più vicino alla realtà. Che ci piaccia o no, il mercato di domani sarà un po' diverso da quello di oggi. Anche il processo che stiamo sfruttando cambierà leggermente. Cioè, lo spostamento avverrà in relazione al nostro sistema fisso, non importa quanto siano buoni i parametri, e non importa se lo vogliamo o no. Quindi, visto che non possiamo evitarlo, perché non prepararci in anticipo? I cambiamenti futuri ci sono sconosciuti, ma possiamo "fissare" la condizione del mercato nel passato, e al contrario, possiamo spostare i valori dei parametri del sistema con il metodo della ricerca. Se i parametri sono stabili, il risultato non dovrebbe cambiare molto dai cambiamenti di questi parametri, se instabili, il futuro spostamento inevitabile romperà il nostro sistema.

 
C-4:

Fino a 10 anni fa, i trader controllavano il loro TS manualmente: sviluppavano regole, le applicavano alle quotazioni e calcolavano diversi risultati, a patto di avere abbastanza pazienza e perseveranza. La conclusione sull'idoneità della ST è stata fatta sulla base di questo "test". Se ci sono troppi trade perdenti (3-5), allora viene scartato. Oggi, rideremo di questo approccio, in quanto giudichiamo a livello di numero di affari identici in una fila e deduciamo la cifra finale sulla base di diverse centinaia di scambi.

Lei suggerisce di spostare la finestra in avanti e di ottenere molti totali. Per quanto ne so, non può essere fatto automaticamente nel tester MQ4 e si ripete l'esperienza di 10 anni fa al livello successivo. Ma non è questo il punto, perché nulla è cambiato qualitativamente. Quanti di questi totali dobbiamo ottenere dal tester? Di nuovo, quanta pazienza e assiduità è sufficiente? E queste qualità umane sono una garanzia per ottenere risultati simili in futuro? La risposta è inequivocabilmente no. Ci deve essere qualche altro giudizio sui risultati, e questo giudizio è ovvio: se i risultati del window shift (di almeno 30, e preferibilmente diverse centinaia) sono stazionari, allora possiamo fidarci di ottenere risultati simili in futuro. Se questi risultati del tester dopo un cambio di finestranon sono stazionari - allora qualsiasi conclusione su TC non è affatto appropriata! Su una serie non stazionaria, possiamo solo affermare il passato - questo è come è stato, e come sarà - non lo sappiamo.

 

Per citare il topicstarter (non sono un matematico e potrei sbagliarmi nel segnalare l'imprecisione, perdonatemi in anticipo per la mancanza di parole intelligenti e altra acqua)

Основная проблема трейдеров жалующихся на нестационарность или постоянную смену рыночного настроения в том, что они ставят своей целью аппроксимировать состояние рынка, а не поиск закономерностей, которые на нем присутствуют.

Cercare modelli nella non stazionarietà è impossibile, contraddice la logica banale.

 
faa1947:

Sulle serie non stazionarie possiamo solo affermare il passato - questo è come è stato, e come sarà - non lo sappiamo.

Totalmente d'accordo.

Ho riletto di nuovo l'autore:

Lo scopo di questo thread è quello di condividere esperienze tra trader altamente qualificati.

Mi scuso per essermi intromesso perché stavo leggendo in diagonale. Quando i guru del forex dicono ai mortali di ascoltare meglio - beh, ascoltiamo...
 
ask:

Per citare il topicstarter (non sono un matematico e potrei sbagliarmi nel segnalare l'imprecisione, perdonatemi in anticipo per la mancanza di parole intelligenti e altra acqua)

Trovare modelli nella non stazionarietà è impossibile, sfida la logica banale.

Non permette l'applicazione della statistica e non contraddice in alcun modo la logica. Non è necessario cercare modelli solo con metodi statistici.

Le contraddizioni alla logica si verificano solo quando alcuni botanici cercano di misurare dati non stazionari utilizzando metodi statistici.

 
Reshetov:

Questo non permette l'applicazione della statistica, ma non contraddice in alcun modo la logica. Non è necessario cercare modelli solo con metodi statistici.

Le contraddizioni alla logica si verificano solo quando alcuni botanici cercano di misurare dati non stazionari utilizzando metodi statistici.


Potete misurare i dati non stazionari con qualsiasi cosa vogliate, questo non invaliderà la loro non stazionarietà. Con tutto il rispetto Reshetov (non scherzo, mi ricordo che mi sono chiesto delle tue medie spostate nel futuro, apprezzo molto i tuoi pensieri) - ma hai usato un sofisma. Ecco, non sto sbagliando, sei troppo giovane per essere intelligente.