una strategia di trading basata sulla teoria dell'onda di Elliott - pagina 291
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
E in questo caso le condizioni dell'esperimento non ci permettono di considerare questi risultati come una conferma del vantaggio statistico.
Ok.
"SL<MO" cos'è MO?
E un'altra domanda, come ottimizzare SL, almeno in poche parole? Designarlo come un parametro esterno, cioè un SL per tutti gli scambi?
L'unico pensiero è che è difficile giudicare da questi risultati, le condizioni dell'esperimento non sono giuste.
I nuovi risultati sono ancora meno rivelatori. Non ci sono statistiche dopo tutto!
Su 21 mesi di test, 10 sono oltre la seduta.
Non state affermando che il vostro sistema non è sbagliato. Quindi metti uno stop 20 e vedi cosa succede. Almeno le statistiche appariranno.
E non pensate che quello che stiamo scrivendo qui sia una critica al trading Expert Advisor. In generale, come critica.
A proposito, il passaggio a tutte le zecche ha portato alla diminuzione di MO da 38 a 23. Questo non è un cattivo risultato.
Sarebbe anche interessante confrontare le stesse cifre, ma con fermate in entrambi i casi.
MO è l'aspettativa matematica di guadagno.
SL può essere ottimizzato molto semplicemente. Emettilo come parametro esterno ed esegui l'ottimizzazione nel tester, impostando i limiti e il passo. Naturalmente, nel codice dell'Expert Advisor devi aggiungere la condizione di chiudere una posizione quando il prezzo scende sotto SL per comprare e viceversa per vendere.
L'unico pensiero è che è difficile giudicare da questi risultati, non dalle condizioni dell'esperimento.
I nuovi risultati sono ancora meno rivelatori. Non ci sono statistiche dopo tutto!
Dei 21 mesi di test, 10 sono di troppo.
Yuri, non sono affatto agitato, non mi sono offeso e va perfettamente bene. :о)))) MathCAD non ha un superamento di 10 mesi perché ha un codice che non permette tali accordi, ma per altre considerazioni. Per quanto riguarda il modello, 10 mesi di sovraseduta non sono un errore. Non è successo niente di "terribile" per il modello - il prezzo era seduto nel canale (penzolante dal bordo). Per inciso, a causa di casi come questo, ho iniziato a cercare di prevedere la traiettoria stessa.
Non state affermando che il vostro sistema non è sbagliato. Quindi metti uno stop 20 e vedi cosa succede. Almeno le statistiche appariranno.
Non pretendo, anche se non ho ancora trovato errori evidenti - durante la vita del canale il prezzo passa il livello calcolato. Ma sicuramente appariranno prima o poi, non mi faccio illusioni, il modello ha alcuni punti deboli.
Probabilmente, mi discosterò dal mio piano e userò degli stop. Faccio ancora affidamento sui tuoi consigli, visto che ora guardo MT come un Neanderthal su una calcolatrice. Matcad è semplice - le formule sono quello che sono. :о)
Sentitevi liberi di chiedere, al vostro servizio.
Ma per me è il contrario. :-))
Tuttavia, ora non sto guardando matcad, ma matlab. E non più come un Neanderthal, ma come un Cro-Magnon.
Altri due punti:
- In linea di principio è normale aspettarsi una correlazione tra il tempo di mantenimento della posizione e il valore del profitto. Sui tempi piccoli sembra esserci (a occhio, posso sbagliarmi). Ma su tempi più lunghi (di nuovo "a occhio") la situazione sembra più casuale. Ma per caso ci dovrebbero essere dei piccoli vantaggi così come dei piccoli svantaggi. E non ci sono minus. Non ci sono uscite occasionali di "regolazione" nel codice?
- Quasi ogni strategia ha periodi di "applicabilità" e "non applicabilità". Se l'overshooting maschera il periodo "non applicabile", introdurre degli stop potrebbe essere un disastro per il rapporto. E la non adozione può essere disastrosa per il conto corrente.
Deve contarli. Se non la prima volta, allora la seconda. Potete vedere come succede nel video - https://www.mql5.com/zh/forum/103424
Quindi c'è un ricalcolo automatico? Ma per quanto ho capito, non c'è sincronizzazione delle quotazioni con l'orario del broker. Ok, se stiamo parlando di combinare due pezzi lunghi, allora il salto temporale all'incrocio, diciamo un'ora, non sarà di principio importante. Ma cosa succede se la storia originale è un insieme di pezzi e le citazioni di carico riempiono i buchi? Sarebbe un bel mix.
Dopo aver caricato io stesso la storia, l'ho immediatamente trasferita al terminale stand-alone e non l'ho mischiata con niente.
Ho deciso di ampliare un po' la mia risposta. Qui sotto potete vedere la statistica della durata dei canali (eurusd, ore) eseguita come segue: fisso la lunghezza del canale, mi muovo insieme al tempo, costruisco un canale di lunghezza fissa per ogni barra "attuale" e stimo la sua durata (guardando nel futuro, ovviamente). Allo stesso tempo ho raccolto tutti i tipi di parametri aggiuntivi dei canali. In questo caso particolare il canale ha una lunghezza di 300 conteggi.
Certo, è inferiore alle immagini della trasformazione wavelet, ma fate attenzione alla forma della curva stessa (rimane la stessa per altri periodi e quotazioni), il canale prende quasi subito una posizione stabile, cioè prima c'è un picco e poi la durata diminuisce, ma non viceversa, anche se sarebbe più logico aspettarsi esattamente questo schema. Puoi vedere che alcuni canali vivono abbastanza a lungo, circa 3,5 della loro lunghezza (ti ricordo che quando si guarda al futuro, i parametri dei canali non cambiano). Quindi, non so quale sia la traiettoria del prezzo durante questo periodo, ma è quasi sicuro che durante l'esistenza del canale, il prezzo passerà attraverso il livello calcolato, naturalmente, se funzionano i criteri aggiuntivi, compreso l'indice Hurst. Può succedere in 20 minuti, può succedere in qualche giorno, può succedere in qualche mese. Naturalmente, questa è una delle caratteristiche sgradevoli - credere o rifiutare il commercio o consentire una perdita. Caratteristiche simili in termini di grado di "sgradevolezza", possono essere trovate in numero sufficiente in qualsiasi altra strategia e modello.
In questo modello non sto cercando un'area di inversione (altri modelli sono per questo scopo). Il codice del modello di base in MathCAD richiede poche righe, e il codice che blocca gli scambi di 10 mesi richiede alcune centinaia di righe. Quindi, i primi test di questo modello hanno mostrato il 20% di trade perdenti (dopo il blocco), ora è il 2% in MathCAD, resta da vedere cosa succederà in MT.
A proposito, la forma stessa della curva è utile. Se raccogliete statistiche (forse le avete già raccolte) sarete in grado di classificare gli estremi (basandovi sul buon senso o ricorrendo a sistemi professionali), e guardando la sua forma vicino al punto di riferimento attuale (facendo il backtracking di un canale) sarete in grado di stimare il tempo di esistenza del canale con un alto grado di affidabilità.
In generale, i canali hanno molto senso... ma questa è solo una filosofia.
a Candid
Altri due punti:
- In linea di principio, è normale aspettarsi una correlazione tra il tempo di mantenimento della posizione e il valore del profitto. Sembra essere presente in piccoli momenti (a occhio, posso sbagliarmi). Ma su tempi più lunghi (di nuovo "a occhio") la situazione sembra più casuale. Ma per caso ci dovrebbero essere dei piccoli vantaggi così come dei piccoli svantaggi. E non ci sono minus. Non ci sono uscite occasionali di "regolazione" nel codice?
- Quasi ogni strategia ha periodi di "applicabilità" e "non applicabilità". Se l'overshooting maschera il periodo "non applicabile", introdurre degli stop potrebbe essere un disastro per il rapporto. E la non adozione può essere disastrosa per il conto reale.
Esattamente per la ragione che è ancora presto (test filosofico) mi stavo dimenando come una barca marchesiana quando Yuri mi ha inchiodato con un SL al muro. E mi ha praticamente convinto a SL con una parola gentile e una pistola. :о)
A proposito, prima non usavo lo Stop Loss come parametro dell'ordine e lo implementavo tramite il controllo di una posizione aperta, dato che le condizioni cambiano sempre.
a Yurixx
Yuri, per favore aiutami con lo SL. :о)
Come ho scritto prima, non ho mai usato SL, ma ho usato il controllo dinamico degli ordini. Probabilmente non è molto conveniente perché il sistema deve essere collegato al server tutto il tempo, ma secondo me ha più senso.
Ricordo vagamente che ho avuto dei problemi con SL (è stato circa un anno fa), o la mia società di intermediazione non permetteva di collocarli troppo lontano o qualcos'altro. Comunque, ho guardato la documentazione e mi sono "ricordato" che questo è il livello di prezzo al quale l'ordine viene chiuso. Ok, mi sono detto e ho inserito i seguenti parametri per lo SL a seconda del tipo di ordine:
Bid-20*Point
Ask+20*Point
Non un solo trade, ora cerco di capire perché, o meglio di richiedere il codice di errore. Ho inserito qualche altra opzione, ma nessun accordo. Alla fine mi sono stufato e ho specificato il livello di prezzo SL 20.0, ha funzionato:
Come in quel cartone animato "non capisco niente". Yuri, spiega al dinosauro come impostarli correttamente, e perché il valore di, diciamo, 1,2 è peggio di 20,0
1. Non puoi mettere SL a tutti, ma controllare dinamicamente il livello di prezzo da solo e "chiudere" il trade nel caso giusto. È tutto un simbolismo, non un commercio. È solo una raccolta di statistiche. Ma in questo caso tutto deve essere fatto manualmente, non usando un tester. In altre parole, abbiamo solo bisogno di scrivere uno script che attraversa la storia implementando la strategia e raccogliendo i risultati in un file. Non c'è niente di difficile, perché il 95% dello script è il testo del tuo Expert Advisor.
2. Se usi il tester, allora SL dovrebbe essere impostato negli ordini che fai, come si fa nel mondo reale. Quello che avete scritto ancora non capisco quale sia il problema. Il modo più semplice per risolverlo è tagliare i frammenti di codice dove dichiarate, definite e usate SL e metterli qui. Forse il problema è nella normalizzazione (tutti i prezzi negli ordini dovrebbero essere normalizzati, cioè arrotondati alla precisione del punto). A proposito, se hai specificato esplicitamente 20.0, allora quello è esattamente il valore normalizzato. E 20*Point non lo è. Se l'avessi impostato esplicitamente su 1.2, funzionerebbe anche quello (per comprare). Prova questo:
Bid-20.0*Point
Ask+20.0*Point
Tuttavia, ancora una volta: Bid,Ask possono anche essere non normalizzati.
È quello che farò, come si dice, come sempre.
2. Se usi il tester, allora SL dovrebbe essere impostato negli ordini che fai, come si fa nel mondo reale. Da quello che avete scritto non capisco quale sia il problema. Il modo più semplice per risolverlo è tagliare i frammenti di codice dove dichiarate, definite e usate SL e metterli qui. Forse il problema è nella normalizzazione (tutti i prezzi negli ordini dovrebbero essere normalizzati, cioè arrotondati alla precisione del punto). A proposito, se hai specificato esplicitamente 20.0, allora quello è esattamente il valore normalizzato. E 20*Point non lo è. Se lo imposti esplicitamente a 1.2, funzionerebbe anche quello (per comprare)
Il problema è che dà il codice di errore 130 - arresti sbagliati. :о)
Com'è complicato. C'è qualche funzione che arrotonda il numero a 4 cifre decimali?
Ora, non so quale sarà la traiettoria del prezzo durante questo periodo, ma è quasi certo che durante l'esistenza del canale, il prezzo passerà il livello calcolato, a condizione ovviamente che i criteri aggiuntivi funzionino, incluso l'indice Hearst. Potrebbe accadere in 20 minuti, potrebbe accadere in qualche giorno, potrebbe accadere in qualche mese.
Quindi, il canale non si è rotto durante quel trade di 10 mesi (a questo drawdown)? Era un canale potente, però :)
Ok, mi sono detto e ho inserito i seguenti parametri per lo SL a seconda del tipo di ordine:
Bid-20*Point
Ask+20*Point
Non un solo trade, ora sto cercando di capire perché, o meglio di richiedere il codice di errore.
Guardate il log, se OrderSend non funziona, c'è una registrazione del motivo.