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
Se dopo l'ottimizzazione non ci sono risultati, significa che con qualsiasi combinazione di tutti i parametri all'interno delle gamme specificate con il passo specificato non c'è nessuna opzione, quando l'Expert Advisor non fallirebbe, o semplicemente non ha fatto trading a causa di condizioni obbligatorie non soddisfatte per l'apertura delle posizioni. Prova a giocare con la dimensione del lotto, la perdita e la dimensione del deposito iniziale, e leggi qualche pagina indietro e guarda il codice.
Grazie. Ho cercato in tutti i post, ma non ho trovato la mia versione. Sto seguendo le istruzioni. Se ci fosse qualcosa che non va, come funzionerebbe comunque l'ottimizzazione? Durante l'ottimizzazione, esegue alcune transazioni, anche se, da quanto ho capito, sono dieci volte meno di quanto dovrebbero essere? Sull'uscita 0.
E un'altra cosa, a proposito di guardare il codice: potrei anche leggere il cinese, non riesco nemmeno a capire dove si regola la dimensione dello stop :).
Ora ho provato solo a buttare i preset in modo coerente e a farlo funzionare per un mese, non è il massimo, ma funziona! 10 scambi. E dopo l'ottimizzazione non vuole funzionare affatto.
Un'osservazione costruttiva a SHOOTER777. Dovresti fare il tuo perceptron per ogni indicatore o farne uno universale per qualsiasi indicatore, perché usi il tuo indicatore e "le informazioni sono raccolte" attraverso il perceptron dell'indicatore AO.
Di quale indicatore stiamo parlando? Spiegherò il significato della domanda. Questo EA utilizza tre timeframes per determinare il momento e la direzione dell'entrata. La direzione del movimento principale è determinata su H4 e questo indicatore non è collegato a nessun Perceptron. Ma le voci su H1 dipendono dall'altro oscillatore, esattamente AO, e non sono logicamente collegate in alcun modo. Naturalmente, può essere cambiato. Pensavo che fosse facile come su H4. L'unica cosa di cui avete bisogno è nella funzione
double iA_C (int pr){int tmfr=60; return(iAO(Symbol(), tmfr, pr));}
per restituire il suo indicatore.
L'universalizzazione porta solo a tempi di ottimizzazione più lunghi e sensibili, quindi andate avanti. Probabilmente ci sono più di una dozzina di cloni di questo EA in fase di test. Mi piacerebbe sentire opinioni diverse.
Sì. Buona sera a tutti. L'indicatore più versatile è una linea, preferibilmente obliqua.
Ma seriamente, all'inizio del "post" c'era una domanda sulla scelta dell'ind.
Ho pensato che dovrei applicare non un indicatore di campionamento ma un indicatore di campionamento. Potremmo continuare all'infinito
Ma non so dove porterà e sembra banale. Ecco perché suggerisco
Non fatevi distrarre da funzioni multicurrency e protettive, ma testate una sola valuta con diversi indicatori.
indicatori. Presumo che SHOOTER abbia fatto questo lavoro, ma è stato usato MACD.
Mi chiedo quali altri?
Grazie.
Naturalmente si può testare una coppia con diversi indicatori, come ho fatto l'anno scorso. Ma alla fine, lo schema e l'algoritmo che ho trovato sono adatti solo per due o tre coppie. È impossibile testare sei o otto coppie con tre o cinque indicatori da solo. Ma se uno ne testasse uno, un altro, il terzo, ecc. e poi li confrontasse, tutti ne trarrebbero profitto.
Sì. Buona sera a tutti. L'indicatore più versatile è una linea, preferibilmente obliqua.
Ma seriamente, all'inizio del "post" c'era una domanda sulla scelta dell'ind.
Ho pensato che dovrei applicare non un indicatore di campionamento ma un indicatore di campionamento. Potrei continuare all'infinito
Ma non so dove porterà e sembra banale. Ecco perché suggerisco
Non fatevi distrarre da funzioni multicurrency e protettive, ma testate una sola valuta con diversi indicatori.
indicatori. Presumo che SHOOTER abbia fatto questo lavoro, ma è stato usato MACD.
Mi chiedo quali altri?
Grazie.
Naturalmente si può testare una coppia con diversi indicatori, come ho fatto l'anno scorso. Ma alla fine, lo schema e l'algoritmo che ho trovato sono adatti solo per due o tre coppie. È impossibile testare sei o otto coppie con tre o cinque indicatori da solo. Ma se uno ne testasse uno, un altro, il terzo, ecc. e poi li confrontasse, tutti ne trarrebbero profitto.
Ripetere quello che abbiamo passato ))))
Ci sono queste linee nel codice
bool TrBlnc = true; int StrtBlnc = 3000; int DBlnc = 1500; int UBlnc = 4000;
ha dichiarato che (TrBlnc = true) è abilitato a controllare il trading a seconda dello stato delle azioni.
Il trading si ferma e non viene eseguito se il saldo è inferiore a (DBlnc= 1500) di questo valore o superiore a (int UBlnc= 4000).
Controllo dell'esecuzione nella funzione FLG().
E ora, attenzione!!! Inizializzazione
if ( IsOptimization( ) ) TrBlnc = false;//if ( IsTesting( ) ) TrBlnc = false;
Cioè se c'è un'ottimizzazione, il controllo è disabilitato, se c'è un test o un controllo reale, è abilitato.
Spero di essermi spiegato bene. Guarda il bilancio iniziale o rimuovi e disattiva questo controllo
Di quale indicatore stiamo parlando? Lasciatemi spiegare il significato della domanda. Questo EA utilizza tre timeframes per determinare il momento e la direzione di entrata. La direzione del movimento principale è determinata su H4 e questo indicatore non è collegato a nessun perceptron. Ma le voci su H1 dipendono dall'altro oscillatore, esattamente AO, e non sono logicamente collegate in alcun modo. Naturalmente, può essere cambiato. Pensavo che fosse facile come su H4. L'unica cosa di cui avete bisogno è nella funzione
double iA_C (int pr){int tmfr=60; return(iAO(Symbol(), tmfr, pr));}
per restituire il suo indicatore.
L'universalizzazione porta solo a tempi di ottimizzazione più lunghi e sensibili, quindi andate avanti. Probabilmente ci sono più di una dozzina di cloni di questo EA in fase di test. Mi piacerebbe sentire opinioni diverse.
Avete aggiunto un altro indicatore in una nuova versione, sì, avete scritto una funzione per esso, dove restituite il suo valore, ma il Perceptron è stato scritto per la funzione iA_C!!!
doppio prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)
{double qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C(1);
se (MathAbs(qw)>at) return(qw);altrimenti return(0);}
......................................................................................................
......................................................................................................
void H1() { prcptx1 = prcptrnAC(x1,x2,x3,x4,px,tx) ;
prcpty1 = prcptrnAC(y1,y2,y3,y4,py,ty) ;
prcptX1 = prcptrnAC(X1,X2,X3,X4,pX,tX) ;
prcptY1 = prcptrnAC(Y1,Y2,Y3,Y4,pY,tY) ;
Stampa (Flq;)
BuSll (0,1,772012000);
}
Ho trovato un punto interessante:
L'Expert Advisor effettua trade durante il giorno. Alla fine della giornata controllo le sue prestazioni, confrontandole con quelle di un tester eseguito nello stesso arco di tempo. Ecco cosa succede: ci sono delle differenze. Cioè le operazioni che non sono simili a quelle che vengono fatte dall'Expert Advisor allegato al grafico, con le operazioni che vengono fatte dall'Expert Advisor nello Strategy Tester nello stesso arco di tempo. All'inizio ho pensato che forse c'erano delle irregolarità e ho guardato il registro - è assolutamente chiaro. Ma dopo aver riavviato il terminale (chiuso e riaperto) e rilanciato nello Strategy Tester le posizioni aperte e chiuse coincidono. Ho osservato questa situazione per 3 giorni.
Quindi hai aggiunto un altro indicatore nella nuova versione, sì, hai scritto una funzione per esso dove restituisci il suo valore, ma il perceptron è scritto per la funzione iA_C!!!!
doppio prcptrnAC(int q1,int q2,int q3,int q4,int pr,int at)
{double qw = (q1-50)+((q2-50)*iA_C(pr)+(q3-50)*iA_C(2*pr)+(q4-50)*iA_C(3*pr))/iA_C(1);
se (MathAbs(qw)>at) return(qw);altrimenti return(0);}
......................................................................................................
......................................................................................................
void H1() { prcptx1 = prcptrnAC(x1,x2,x3,x4,px,tx) ;
prcpty1 = prcptrnAC(y1,y2,y3,y4,py,ty) ;
prcptX1 = prcptrnAC(X1,X2,X3,X4,pX,tX) ;
prcptY1 = prcptrnAC(Y1,Y2,Y3,Y4,pY,tY) ;
Stampa (Flq;)
BuSll (0,1,772012000);
}
Ripetiamo ancora una volta.
L'indicatore, che ho aggiunto nella nuova versione, è progettato per determinare la direzione della tendenza sul timeframe superiore H4. Non è in alcun modo legato al perceptron, che determina i punti di ingresso su timeframe più piccoli. Il fatto che nelle prime versioni ho usato sia l'oscillatore H4 che H1 AO è solo una mia scelta, una coincidenza se volete.
Nella funzione H1 è anche possibile cambiare i percettori, indipendentemente dall'indicatore principale, penso che non sia difficile, ognuno può farlo da solo, darò un esempio più tardi, ma probabilmente non renderò questo blocco universale, è troppo lento e complicato.