Indicatore stocastico. Un'osservazione curiosa. - pagina 7

 
Yurixx:

Ho offerto a Leonid una soluzione elementare al problema. Richiede qualche piccola modifica del codice, che chiunque non sia troppo esperto di MQL può fare. Leonid è uno di loro. E l'ha fatto gratis. E non ho nemmeno visto il codice dell'Expert Advisor e posso ancora dire che la tua domanda è stata risolta.

La mia libreria di trading virtuale può essere inserita anche da "non troppo intelligente in MQL". Compreso Leonid.
Ma ho speso un bel po' di tempo per scriverlo, quindi non è "gratis" ma "economico".
Inoltre, la tua "soluzioneelementare al problema" risolve il problema solo in un caso particolare (quando non c'è SL/TP/TS), mentre la mia è universale.

Yurixx:

Puoi fare più fresco? A buon mercato? :-) Non ne dubito, nemmeno io. Gratis. Vogliamo competere?

Vai avanti, non ho paura della concorrenza ;)
Se risolvi il problema di Leonid gratuitamente, ne sarò felice.
E se non puoi, lo risolverò per soldi.

Nessuno vieta di aiutare gratuitamente. Io stesso a volte faccio proprio questo.
Il più delle volte non ho semplicemente il tempo o la voglia di risolvere i problemi deglialtri.
 

Andrei, hai deciso di chiedere a Leonid di comprare la tua libreria? È fantastico. Questo è il tuo lavoro.

Ma avete deciso di cacciare la mia offerta per mancanza di versatilità. Prima di tutto, questo è ridicolo. Non suggerisce affatto un'universalità, solo una soluzione semplice a una situazione specifica. Anche se il problema che avete delineato può anche essere perfettamente risolto nel suo quadro. Lei lo sa molto bene. In secondo luogo, non è molto corretto. Non bisogna strofinare i gomiti anche quando si lotta per i clienti. Non ti ho provocato e non ho incrociato il tuo cammino.

 
Yurixx:

Andrei, hai deciso di offrire a Leonid di comprare la tua libreria? È fantastico. Questo è il tuo lavoro.
Ma hai deciso di prendere a calci la mia offerta per la sua mancanza di versatilità.

Aspetta. Cos'era il "calcio"?
Nella frase "E l'attivazione delle posizioni SL/TP? Se SL bye viene attivato, F dovrebbe diventare = 0, ma rimane == 1"?
Nemmeno un pensiero di prendere a calci qualcuno, tanto meno di prenderlo a calci. Se ho offeso,mi scuso.

Yurixx:

Prima di tutto, questo è ridicolo. Non suggerisce alcuna universalità, solo una semplice soluzione a una situazione specifica.

Leonid stesso ha scritto: "Senza trailing stop-loss si può rintracciare il LONG-trade proibito dal suo stop-loss e take-profit. Ma con trailing..... Non ho idea di come affrontare la soluzione....".
Lui sa come risolvere il problema senza trailing, era la soluzione con trailing che interessava.
Quindi il tuo suggerimento non era del tutto appropriato (non conteneva una soluzione al problema).

Ho offerto uno strumento per risolvere proprio questo problema. In particolare per Leonid.

Yurixx:

Anche se il problema che avete individuato può anche essere risolto perfettamente all'interno del suo quadro. Lei lo sa molto bene.

Come?
  • Ricorda il livello dello SL virtuale quando viene aperto virtualmente,
  • aggiungere una modifica virtuale con un cambiamento nel livello ricordato,
  • aggiungere il tracciamento del trigger SL/TP virtuale?
Non è una libreria completa, naturalmente, ma non sono nemmeno 5 righe di codice, sarete d'accordo.
O c'è una soluzione più semplice, di cui non sono a conoscenza?

Inoltre, poi ci sarà la questione dei risultati errati a causa di:
- permutazione errata di SL (o bisogna aggiungere anche il blocco di controllo della distanza? qualche riga in più...),
- blocco di salvataggio dei dati mancante in caso di ricarica (posizione virtuale "aperta", ricaricato il terminale ma è già andato),
- innesco errato dello SL dopo una pausa di lavoro (il prezzo potrebbe "muoversi" oltre lo SL e tornare durante la pausa. Quando riavviamo l'Expert Advisor, non si è attivato lo SL),
- qualcos'altro...

Yurixx:

In secondo luogo, questo non è molto corretto. Non vale la pena fare a gomitate nemmeno in una lotta per i clienti. Non ti ho provocato e non ho incrociato il tuo cammino da nessuna parte.

Di nuovo, mi scuso se ho "spinto", "preso a calci" o "offeso".
Sì, e lotta per il cliente, non vedo - non stiamo discutendo su chi fa meglio il lavoro, siamo generalmente in categorie diverse (in questa situazione): io offro servizi a pagamento, e tu aiuti gratis. Che tipo di concorrenza può esserci? ;)
 
Shinigami:
È davvero così difficile scrivere
sumlow+=HighesBuffer[k]-Close[k];
sumhigh+=HighesBuffer[k]-LowesBuffer[k];
invece dell'originale
sumlow+=Close[k]-LowesBuffer[k];
sumhigh+=HighesBuffer[k]-LowesBuffer[k];
e compilare?
Otterremo una copia speculare. Non otteniamo nulla di nuovo perché sarà lo stesso ma in un'immagine speculare.
Per ottenere una nuova stocastica abbiamo bisogno di una nuova formula, e finché non è assente, non ha senso girarla avanti e indietro, non ci sarà nessun risultato.


Shinigami, l'ho fatto e l'ho ottenuto:

Ma non è quello che intendevo quando parlavo di mirroring. In questo momento, lo stocastico è calcolato dal prezzo basso al prezzo alto, cioè la scala stocastica ha una dimensione da 0 a 100.

Voglio che lo stocastico sia calcolato inversamente. Dal prezzo massimo al minimo. Cioè voglio che la scala vada da 0 a "-100".

Forse qualcuno ha implementato una tale variante?

 
Si applica il WPR).
 

Ciao a tutti. Ecco un'altra osservazione interessante. L'Expert Advisor basato sulla tattica mostrata nell'immagine del messaggio precedente sembra essere in grado di lavorare con profitto. Tuttavia, ho modificato il suo funzionamento rendendo le posizioni lunghe e corte indipendenti l'una dall'altra, cioè ho ottenuto due versioni unite in un solo Expert Advisor. In accordo con l'idea descritta in https://www.mql5.com/ru/articles/1485

Una versione è solo BUY, l'altra è solo SELL.

GBPJPY, M30, C 1 gennaio. 2007 a Seg.

Notate il drawdown in modalità unita.

 
leonid553:

Ciao a tutti. Ecco un'altra osservazione interessante. L'Expert Advisor basato sulla tattica mostrata nell'immagine del messaggio precedente sembra essere in grado di lavorare con profitto. Tuttavia, ho modificato il suo funzionamento rendendo le posizioni lunghe e corte indipendenti l'una dall'altra, cioè ho ottenuto due versioni unite in un solo Expert Advisor. In accordo con l'idea descritta in https://www.mql5.com/ru/articles/mt4/_my/403

Una versione è solo BUY, l'altra è solo SELL.

GBPJPY, M30, C 1 gennaio. 2007 a Seg.

Notate il drawdown in modalità unita.


Che ne dite di guardare tutte le zecche?
 

Perché? L'Expert Advisor lavora ai PREZZI DI APERTURA - è scritto nell'algoritmo del codice. Ma quando si esegue per ALL TICKETS il risultato differisce di dieci o due pip, non di più! Solo ora l'ho fatto.

Il profitto era vicino a un centesimo, e il drawdown era leggermente superiore - di 30 pip!

 
leonid553:

Perché? L'Expert Advisor lavora ai PREZZI DI APERTURA - è scritto nell'algoritmo del codice. Ma quando si esegue per ALL TICKETS il risultato differisce di dieci o due pip, non di più! Solo ora l'ho fatto.

Il profitto era vicino a un centesimo, e il drawdown era leggermente superiore - di 30 pip!


Se l'Expert Advisor lavora davvero sui prezzi di apertura, allora non ci dovrebbe essere alcuna differenza tra "tutti i tick" e "apertura". C'è qualcosa di sbagliato qui.
 

Forse il punto è che SU TUTTI I TICKS sono presenti:

"Schedule mismatch errors" = 2 errori. Non vedo altre spiegazioni. Inoltre, quando si ricalcola in modalità Unified, è stato aggiunto un accordo.

Sfortunatamente, tali Expert Advisors stocastici non garantiscono un profitto abbastanza buono fuori dal campione, cioè fuori dal periodo di ottimizzazione. Dopo l'ottimizzazione sulla storia=1 anno (circa), i parametri redditizi "tengono" nella maggior parte dei casi non più di 1 settimana. Sono 3-10 scambi. Poi è chiaramente scaricato. Con poche eccezioni. È vero, uno dei miei conoscenti ha ottenuto risultati abbastanza buoni con stoploss grandi (per volte più grandi del takeprofit). Ma non sono andato da quella parte.

Dopo vari esperimenti e osservazioni online, la tendenza ha cominciato ad essere determinata. A causa della loro struttura gli Expert Advisors stocastici "amano" andare contro la tendenza. Anche se riusciamo a ottenere un buon profitto durante l'ottimizzazione, online è molto più modesto. Tuttavia siamo riusciti a fissare in modo affidabile il CRITERIO principale per ottenere un profitto al di fuori del periodo di ottimizzazione. Questo criterio si è rivelato essere la REDDITIVITÀ!

Se la redditività all'ottimizzazione supera il 2,0, possiamo concludere con alta probabilità che avremo un profitto fuori dal campione! E se riusciamo a minimizzare il drawdown, sarà abbastanza buono! Ma come aumentare la redditività?

In questo caso sembra ragionevole proibire all'Expert Advisor di lavorare contro la tendenza. E vedere cosa succede. Questa idea si è rivelata corretta! Un paio di giorni fa sono riuscito a trovare una soluzione software semplice e sorprendente per rilevare la presenza/assenza di una tendenza. Dopo di che ho inserito questa soluzione nel mio Expert Advisor e la sua redditività non scende mai sotto due! E come risultato generale ci sono buone prospettive di profitto al di fuori del periodo di ottimizzazione. Curiosamente, il profitto totale della storia non è praticamente aumentato. Anche l'estrazione non è diminuita. Ma l'affidabilità è aumentata! Solo in tester finora, ma ....., non mi affretterò....

Ecco i grafici del filtro: Per i trade lunghi -

E per gli scambi brevi -

Motivazione: