Backtesting/ottimizzazione - pagina 84

 

Problemi con il mio tester

Salve,

Sto ricevendo i seguenti messaggi dal mio tester di strategia:

"Ci sono stati 134 passaggi fatti durante l'ottimizzazione

...: ottimizzazione interrotta, 954 record della cache utilizzati, 954 record della cache respinti"

Sotto la linea verde del tempo di esecuzione sotto le poche finestre principali è

1 088 / 1 280 (39 204) scritto.

E il tester ha fatto solo 134 esecuzioni.

Come posso regolare il mio tester per fare più esecuzioni?

 

Storia dei prezzi

Ciao ho codificato un EA che utilizza i grafici H4 e D1 sull'eurusd. Voglio fare il backtest dal 2002-2012. Ho aumentato la mia storia delle barre e il grafico delle barre a 1000000 nelle opzioni MT4, e seguendo questo ho scaricato la storia dei prezzi. Ho eseguito di nuovo il backtest specificando le date 2002-2012, tuttavia inizia ancora solo da gennaio 2009. Cosa sto facendo di sbagliato? Voglio fare il backtest oltre i 3 anni. Vedo che ho abbastanza barre sul mio grafico perché posso visualizzare i dati dei prezzi precedenti al 2002. Qualche idea?

 

Backtesting di EA adattati a 5 cifre

Ciao a tutti, ho un paio di EA che sono stati adattati a 5 cifre ma le loro prestazioni di back testing non corrispondono agli EA originali. È che gli EA a 5 cifre non possono essere sottoposti a backtesting? Quando si utilizza un rapporto di pip di 1 invece di 10, ancora non corrispondono alle prestazioni originali. Qualcuno può far luce su questo?

 

...

Di solito la differenza non proviene dai dati a 4 o 5 cifre, ma dall'EA stesso (i risultati del campione sono curvati per esempio e poi quando si prova l'EA con le impostazioni di default si ottengono risultati completamente diversi)

Ma, se i parametri sono gli stessi, allora c'è ancora qualche "avanzo" nell'EA che dovrebbe essere controllato e corretto (assumendo che la differenza nei dati dei diversi broker non possa causare una differenza troppo grande)

elitecamper:
Ciao a tutti, ho un paio di EA che sono stati adattati a 5 cifre ma le loro prestazioni di back testing non corrispondono agli EA originali. È che gli EA a 5 cifre non possono essere testati? Quando si utilizza un rapporto di pip di 1 invece di 10, ancora non corrispondono alle prestazioni originali. Qualcuno può far luce su questo?
 

...

Grazie, Mladen controllerò l'EA allora. Spero di poter trovare il colpevole.

 

Tester - metodo di test dei prezzi aperti

Ciao, volevo testare la mia strategia manuale basata sull'indicatore VQ. Quando imposto "Solo prezzi aperti..." (vorrei negoziare manualmente dopo la chiusura della barra) come modello di test ottengo strani risultati - vedi screenshot e codice qui sotto.

Le domande sono:

1) perché non vedo i valori giusti (non nulli) del buffer degli indici (sono riempiti in altri metodi di test) e perché la barra rossa alle 06:45 ha un valore positivo?

2) dove non c'è modo di programmare EA per agire subito dopo la chiusura della barra, giusto?

Grazie per il vostro aiuto.

File:
open.png  124 kb
vqhisto.mq4  4 kb
 

...

C'è un altro problema in quel grafico:

Se sono stati utilizzati solo i prezzi aperti, poiché la dimensione della barra è calcolata come alto-basso, quei valori non potrebbero essere presenti all'apertura della barra (sono valori completamente sbagliati se sono presi all'apertura di una barra). Quindi, il "Solo i prezzi aperti" non significa quello che sembra significare ... la mia ipotesi è che sia la causa dei vostri problemi

mati_temp:
Ciao, volevo testare la mia strategia manuale basata sull'indicatore VQ. Quando ho impostato "Solo prezzi aperti..." (vorrei negoziare manualmente dopo la chiusura della barra) come modello di test ottengo strani risultati - vedi gli screenshot e il codice qui sotto.

Le domande sono:

1) perché non vedo i valori giusti (non nulli) del buffer degli indici (sono riempiti in altri metodi di test) e perché la barra rossa alle 06:45 ha un valore positivo?

2) dove non c'è modo di programmare EA per agire subito dopo la chiusura della barra, giusto?

Grazie per il vostro aiuto.
 

grazie

grazie mladen per il chiarimento

 

grazie per la tua condivisione

 
mati_temp:
Salve, volevo testare la mia strategia manuale basata sull'indicatore VQ. Quando ho impostato "Solo prezzi aperti..." (vorrei negoziare manualmente dopo la chiusura della barra) come modello di test ottengo strani risultati - vedi gli screenshot e il codice qui sotto.

Le domande sono:

1) perché non vedo i valori giusti (non nulli) del buffer degli indici (sono riempiti in altri metodi di test) e perché la barra rossa alle 06:45 ha un valore positivo?

2) dove non c'è modo di programmare l'EA per agire subito dopo la chiusura della barra, giusto?

Grazie per il vostro aiuto.

I prezzi aperti sono un buon metodo di test - il più veloce

Per usarlo correttamente l'EA deve essere regolato correttamente per funzionare come hai scritto "su barre chiuse".

Per esempio se stai usando High[0] - Low[0] per definire il range della candela corrente

non dovresti usare il modello a prezzi aperti, perché in realtà quando controlli tutte le condizioni

all'apertura della barra, non sapete quale sarà il massimo o il minimo finale della candela attuale.

All'inizio tutti i prezzi sono uguali a open (high = open, low = open, close = open).

Quindi per usarlo correttamente è necessario accettare un certo ritardo (una barra di ritardo) e ricodificare l'EA per usare

barra passata per i calcoli High e Low (High [1] invece di [0]).

Naturalmente ci possono essere altre cose controllate all'apertura.

Diciamo che farai trading in questo modo:

se il range della barra precedente > 100 e l'apertura > ma e l'apertura precedente < ma si fa trading lungo

Questo modello funzionerà perfettamente con i prezzi aperti solo nel backtest.

Ma è necessario contare il range sulle barre precedenti come High[1]-Low[1] e controllare altre condizioni

alla barra corrente per esempio ma[0] open[1].

Alcuni diranno: perché usare i valori di MA della barra corrente se non è chiusa,

e se contate i valori della media mobile dal prezzo di chiusura o dal prezzo tipico allora

cambierà valore fino alla fine della barra. Naturalmente sono d'accordo, ma in questo modo (se controllate la Ma solo

all'apertura) controllerete la MA come se fosse su barre chiuse.

E ultima parola:

ea ha bisogno di un'altra cosa. Se state usando il modello a prezzi aperti per il bactest

allora avete bisogno di simulare la stessa cosa nell'ea. Quindi potrebbe eseguire la funzione start

solo una volta all'inizio della barra.

Il modo migliore per farlo è quello di definire dopo l'inizio della funzione di avvio qualcosa di simile:

int start()

{

//----

static int newBar = 0;

if(Bars<=newBar)return;

newBar = Bars;

SOME OTHER LOGIC OF START FUNCTION (TRADING, MOVING STOP ETC)

//----

return(0);

}
Motivazione: