Problemi riscontrati durante il back testing e non si riesce a trovare la causa principale! - pagina 5

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
. Non riesco ancora a vedere la scomparsa dei picchi. Come "reinizializzare"?
Puoi reinizializzare cambiando i timeframe
o
aprire la finestra di input dell'indicatore e cliccare su OK
You can re-initialise by either changing timeframes
or
aprire la finestra di input dell'indicatore e cliccare su OK
Dopo aver provato, capisco che è lo stesso significato che ho detto che la posizione dei picchi cambia. Corretto?
CaroGumRai,
Per ogni iterazione (tranne la prima) Fish1 è il valore dell'elemento precedente del buffer, ma non lo inizializzate a ExtBuffer1[limit].
Quindi per l'iterazione iniziale (quando limite == barre) imposti ExtBuffer1[0] = 1.1*ExtBuffer1[1] .
Ma per i tick successivi (quando limite == 1) impostate ExtBuffer1[0] = 1.1*0.00001 .
Caro WHRoeder,
Ti ringrazio molto e vedo il problema un po' meglio con la tua direzione.
Tuttavia, potrebbe essere ancora necessario qualche altra domanda per chiarire ulteriormente:
1. Puoi vedere che "double Fish1=0.00001; " è definito all'inizio e fuori da tutte le funzioni.
Quindi dovrebbe essere una variabile globale e capisco che è stata assegnata con l'ultimo ExBuffer1[0] anche se arriva un nuovo tick successivo.
O recupera automaticamente a "0.00001" ogni volta se arriva un nuovo tick?
2. Ora che ogni barra è dipinta in modo diverso con un singolo tick o molti tick successivi, perché posso vedere la ri-verniciatura di .., bar[8], ..., o bar[1], in un grafico M1 live senza alcuna interruzione?
3. Perché le posizioni dei picchi vengono cambiate dopo essere state aggiornate?
4. Perché posso vedere alcuni picchi (circa 959870576) formati molto, molto meno di"EMPTY_VALUE" (2147483647) in grafici M1 live?
5. Se esce una nuova barra, il precedente ExtBuffer1[0] cambierà automaticamente in ExtBuffer1[1]. Corretto?
6. Come evitare qualsiasi potenziale reinizializzazione o riverniciatura?
Forse sono ancora confuso su alcuni punti critici e ho bisogno della vostra grande pazienza per aiutare! È molto apprezzato se puoi aiutare le domande una per una!
CaroWHRoeder,GumRai,
Ho aggiornato il mio indicatore come il codice qui sotto secondo la mia comprensione dopo aver letto di nuovo i vostri post.
Dopo averlo usato per il back testing, il risultato è molto più coerente con l'indicatore. Tuttavia, ci sono ancora 2 problemi. Si prega di fare riferimento agli screenshot qui sotto.
1. Il trading avviene dopo 4 segnali dell'indicatore all'inizio dal primo ordine.
2. C'è ancora un cambio di ordine che avviene 4 barre prima del segnale dell'indicatore.
Di seguito è riportato il codice dell'indicatore aggiornato.
1. Potete vedere che "double Fish1=0.00001; " è definito all'inizio e fuori da tutte le funzioni.
Quindi dovrebbe essere una variabile globale e capisco che è stata assegnata con l'ultimo ExBuffer1[0] anche se arriva un nuovo tick successivo.
Oppure recupera automaticamente a "0.00001" ogni volta se arriva un nuovo tick?
Personalmente, penso che gli argomenti rates_total/prev_calculated/OnCalculate siano un abominio dato che i grafici/buffer sono serie temporali, e lo farei nel vecchio modo: