Tuesday 7 November 2017

Troncamento Di Valore Costante Mt4 Forex


Coding aiuto Stavo cercando di usare i cumtom NonLag ma PNR 2 NMC per il mio EA. Stavo scrivendo il codice come doppia MASignal iCustom (Simbolo (), 0, NonLag ma PNR 2 NMC, NlmPeriod, NlmPrice, PctFilter, Shift, 0) E 'possibile aprire il commercio, ma i cant modificare il valore PctFilter come 2.5. esso solo può inserire 2 o 3 (numero tondo). Per questo cerco di modificarlo direttamente nel codice e compilare avvertimento è troncamento di valore costante e la funzione di spostamento non funziona troppo. potete darmi qualche consiglio stavo cercando di usare i cumtom NonLag ma PNR 2 NMC per il mio EA. Stavo scrivendo il codice come doppia MASignal iCustom (Simbolo (), 0, NonLag ma PNR 2 NMC, NlmPeriod, NlmPrice, PctFilter, Shift, 0) E 'possibile aprire il commercio, ma i cant modificare il valore PctFilter come 2.5. esso solo può inserire 2 o 3 (numero tondo). Per questo cerco di modificarlo direttamente nel codice e compilare avvertimento è troncamento di valore costante e la funzione di spostamento non funziona troppo. potete darmi qualche consiglio Tutto sembra funzionare bene per me vedere l'esempio allegato. test1.mq4 A partire dal turno di lavoro. tutto spostamento non fa altro che sposta il display indicatore sul grafico. bar valore attuale è ancora elemento O-esimo buffer e così via indipendentemente da dove esso viene visualizzato. Spostamento non cambia. Rende solo apparire come se si tratta di un valore di un altro bar robbob1970: Ciao, sperando che qualcuno possa aiutare con questo. Ho trovato questo codice sopra a cAlgo e la speranza che qualcuno possa convertirlo in mq4 Molte grazie in anticipo Quindi, con le mie capacità variare limitate sono riuscito a battere questo indicatore personalizzato up. Il suo un semplice canale di PA. Tuttavia so Theres un errore da qualche parte, perché la prima volta che si carica il grafico simile a questo Se qualcuno potesse guardare il codice e dimmi dove ho sbagliato che sarebbe molto apprezzato. Sarebbe anche molto bello se una funzione pareggio rettangolo potrebbe essere aggiunto per identificare i lunghi periodi in cui il prezzo è trendingChanneling quindi sarebbe guardare un po 'qualcosa di simile Come si può vedere le caselle di evidenziare un'area della domanda con la teoria è che quando il prezzo si allontana da queste zone si continuerà a muoversi fino a raggiungere una nuova zona di approvvigionamento. In seguito dal post precedente ho anche bussato una variata. Lo stesso problema quando primi carichi sembra che questa volta caricato funziona benissimo e dà un canale che assomiglia a questo cosa sarebbe bene se qualcuno potesse appianare i canali e sbarazzarsi dei picchi V e le valli Perché quando si applica entrambi gli indicatori si dispone di un ottimo systemMetaTrader 5 - Tester guida per la rilevazione e ottimizzazione di Expert Advisors in MQL5 Introduzione la maggior parte del tempo in cui uno sviluppatore ha scritto un Expert Advisor, facendo in modo che il consulente esperto ha risposto all'obiettivo di una buona redditività è sempre molto tasking processo. In questo articolo, vedremo alcuni dei più importanti passi necessari in fase di test e l'ottimizzazione un Expert Advisor in modo che saremo in grado di raggiungere vicino alla meta desiderata di scrivere la Expert Advisor. 1. individuare e correggere errori di codice Inizieremo questo articolo, cercando in alcuni errori di codice comuni normalmente incontrate nel processo di scrittura di un codice di Expert Advisor. La maggior parte dei principianti tempo faccia qualche momento difficile individuare e correggere gli errori di codice quando si scrive i loro codici o quando si modifica un codice scritto da un altro sviluppatore. In questa sezione vedremo come è facile da usare l'editor MQL5 per identificare e correggere alcuni di tali errori. Avete appena completato la scrittura del codice e sembra tutto dovrebbe funzionare solo perché si è quasi certo che il codice è privo di errori. Oppure, si trattava di un codice che è stato scritto da qualcun altro e ti ha fatto un paio di modifiche e, ahimè, quando si preme il pulsante Compile (o premere F7), si sono stati presentati da una serie di errori nel codice come indicato nella scheda Errore la finestra MetaEditor Toolbox. Figura 1. Gli errori di compilazione in un codice di Expert Advisor Wow 38 errori e 1 allarme. il codice non può avere tanto gli errori, come mostrato qui, tutto quello che vogliamo guardare sono i vari tipi di errori che possono presentarsi quando si compila il nostro codice e come possiamo risolvere. Cerchiamo di descrivere lo schema di cui sopra. La Sezione segnato 1 mostra la descrizione dell'errore nel codice. Questo è ciò che ci dà l'idea di ciò che l'errore assomiglia. La sezione contrassegnata 2 ci mostra in quale file abbiamo l'errore. Questo è molto importante se abbiamo incluso i file contenenti errori. Con questo saremo in grado di sapere quale file vogliamo verificare l'errore descritto. La sezione contrassegnata 3 ci mostra che riga e colonna (sulla linea) nel codice l'errore si trova. Questo ci permette di sapere quale particolare linea per verificare l'errore descritto. La sezione contrassegnata 4 mostra la sintesi degli errori di compilazione e gli avvisi. Vediamo ora cominciare a risolvere il errori uno dopo l'altro. Cerchiamo di scorrere verso l'alto alla prima linea nella scheda Errore in modo da poter cominciare dall'inizio. Figura 2. Identificazione e risoluzione degli errori di codice Il primo problema è descritto come. troncamento del valore costante e viene scoperto nella riga 16 della colonna 20. per individuare la linea esatta nel nostro codice, dal menu Modifica del MetaEditor, selezionare Vai alla linea o premere CTRL G sulla tastiera. Figura 3. Individuazione del numero di errore riga di codice una finestra di dialogo verrà visualizzata. Figura 4. Individuare il numero di linea di errore di dialogo La gamma di serie, come mostrato nella finestra di dialogo è il numero totale di linee nel codice. In questo caso (1-354) mostra che il codice contiene 354 righe di codice. Digitare il numero di linea che si desidera controllare nella casella e fare clic sul pulsante OK. Sarete portati direttamente al numero di riga nel codice. Vedrete il cursore del mouse lampeggiante su quella particolare linea. Figura 5. Il cursore che mostra il numero di riga dell'errore Il problema qui è che si dichiara molto come una variabile intera (int), ma inizializzarla con un valore doppio (0,1). Per correggere questo errore cambieremo il int di raddoppiare. salvare il file e quindi di nuovo pulsante Compile per vedere se questo è stato corretto. Figura 6. Compilare e salvare il codice dopo la correzione è fatta sulla compilazione di nuovo, il primo problema è stato risolto, ma abbiamo ancora più problemi, come illustrato di seguito: Figura 7. Più errori si presenta nel codice dopo la compilazione Passiamo ora seguire la stessa procedura come sopra e andare alla linea 31. Tuttavia, questa volta ci sarà tasto destro del mouse sulla errore nella scheda Errori e selezionare Vai alla riga Figura 8. Un altro modo di localizzare linea di codice di errore O semplicemente selezionare l'errore e premere il tasto Invio sulla tastiera. Immediatamente, sarai portato al numero di riga di codice 31. Vedrete il cursore del mouse di lampeggiare e anche un piccolo pulsante rosso (icona di errore) rotonda su quella particolare linea di codice 31. figura 9a. Individuazione della linea di errore di codice Tuttavia, se si tratta di un messaggio di avviso come il primo sulla linea 16 che abbiamo corretto in precedenza, verrà visualizzato un pulsante triangolare di colore giallo (un'icona di avviso): Figura 9b. Individuazione della linea di codice di errore E 'molto evidente che noi non hanno alcun problema sulla linea 31. ma la descrizione di errore dice: STP - token imprevisto. Abbiamo poi devono controllare la riga di codice precedente (cioè la linea 30) per vedere che cosa può essere sbagliato. A ben vedere, il punto e virgola mancante dopo doppia ccminb - 95,0000 sulla linea 30, è per questo che abbiamo che l'errore sulla linea 31. Passiamo ora correggere questo errore digitando il punto e virgola dopo - 95,0000 e compilare nuovamente il codice. Ora gli errori linea 31 se ne sono andati. Successivo è la linea 100 come illustrato di seguito: esistono ancora Figura 10. Più errori nel codice Hey Olowsam, dobbiamo essere compilando dopo ogni correzione, perchè non dobbiamo solo andare a attraverso tutte le linee allo stesso tempo e dopo che abbiamo fatto tutte le correzioni poi si compila il codice una volta, invece di compilare dopo ogni correzione hai chiesto proprio questa domanda si può essere di destra in un certo senso, ma non voglio consigliare che. I problemi sono sempre risolti uno dopo l'altro Step by Step. Qualsiasi tentativo di grumo problema insieme e risolvere in una volta può portare a molti mal di testa. Presto capisce perché solo essere paziente con me. Torniamo al nostro problema, noi siamo per controllare la linea 100 per l'errore successivo. Gli stati di errore. se - espressioni non sono permessi su una portata globale e sono sicuro che l'espressione, se in linea 100 non è su una portata globale, ma perché stiamo avendo questo errore. Si prega andiamo alla linea 100. Figura 11. Individuazione l'errore nel codice che posso trovare alcun problema sulla linea 100 e perché abbiamo appena finito linea di correzione 31, siamo sicuri che il problema ora è tra la linea 32 e la linea 99. Quindi, passiamo verso l'alto per la linea 99 (abbiamo un commento. quindi non posso essere l'errore). Se guardiamo anche verso l'alto per le dichiarazioni (MqlTick. MqlTradeRequest e MqlTradeResult), siano correttamente dichiarati e punteggiati. Prossimo guardiamo il codice per il se l'espressione prima di queste righe di codice di dichiarazione e vedere se l'espressione è a posto. Su molto attento studio, si scopre che il se l'espressione ha una parentesi graffa di chiusura, ma non parentesi graffa di apertura. Figura 12. Guardando sopra il numero di riga di errore per identificare l'errore Aggiungere la parentesi di apertura e compilare nuovamente il codice. Una volta che il codice è stato compilato errori sulla linea 100, 107, 121, 126, 129, ecc sono stati completamente cancellati e quelli nuovi si presentano. Vedere il motivo per cui è bene seguire passo dopo passo Figura esistono ancora 13. Più errori nel codice seguente passiamo alla linea 56 con due errori. cciVal1 - conversione parametro non è consentito e cciVal1 - array è necessario a ben guardare alla linea 56. cciVal1 si suppone essere stata dichiarata come un array. Potrebbe essere che non ci dichiareremo come un array, ma ora cercando di usarlo come un array Cerchiamo di controllare la sezione di dichiarazione per confermare questa prima di poter sapere cosa seguente da fare. Da qui, possiamo vedere che abbiamo erroneamente dichiariamo cciVal1 come doppio piuttosto che come un array dinamico perché abbiamo omesso le parentesi quadre (). Aggiungiamo le parentesi quadre (proprio come abbiamo per cciVal2) e quindi compilare il codice. Figura 14. Errori nel codice è stato ridotto considerevolmente quello che molti errori sono scomparsi. Abbiamo solo errore corretto riportato sulla linea 56 e di alcuni altri errori sono stati risolti automaticamente. Questo perché, l'errore riportato sulla linea 56 è responsabile di tali altri errori. Questo è il motivo per cui è bene seguire un processo graduale per risolvere gli errori nel codice. Passiamo ora al prossimo errore segnalato sulla linea 103. GetLastError - identificatore non dichiarato Aspetta un minuto, GetLastError dovrebbe essere una funzione Lasciate andare per la linea 103 per vedere qual è il problema. Il problema è in realtà on line 103. GetLastError è una funzione e ogni funzione necessita di una coppia di parentesi per parametri di ingresso. Cerchiamo di tipo AN coppia vuota di parentesi e poi compilare il codice. La coppia vuota di parentesi indica che la funzione non ha argomenti o parametri. Successivamente, si passa alla linea 159. - L-valore richiesto e un avvertimento. espressione non è un valore booleano Andiamo alla linea 159 e vedere che cosa significa questo errore. Esso può essere visto qui che abbiamo assegnato il valore di POSITIONTYPESELL a PositionGetInteger (POSITIONTYPE) in if e questo non è ciò che intendiamo fare. Abbiamo voluto fare il confronto, invece. ora Cambieremo l'espressione di utilizzare uguale operatore piuttosto che utilizzare un operatore di assegnazione. (Che è invece). Fare la correzione e compilare il codice. Bene ora abbiamo più uno per andare. Andiamo alla linea 292 per vedere il motivo per cui si dice PositionsTotal - identificatore non dichiarato. Aspetta un minuto, si può ricordare che abbiamo visto un errore come questo prima GetlastError linea 103. Eventualmente, si dimentica di aggiungere la coppia di parentesi per PositionsTotal troppo, poiché è una funzione. Andiamo alla linea 292 per confermare. Proprio come sospettavamo, è perché abbiamo dimenticato di aggiungere la coppia di parentesi per la funzione PositionsTotal. A questo punto aggiungere la coppia di parentesi (PositionsTotal ()) e compilare il codice. Mi permetta, inoltre, che, è possibile ottenere questo errore se abbiamo effettivamente usare una variabile che non abbiamo dichiariamo in qualsiasi parte del codice. Figura 15. Tutti gli errori di compilazione è stato completamente risolto meravigliosa Ora siamo stati in grado di correggere tutti gli errori di compilazione. E 'giunto il momento di eseguire il debug nostro codice e vedere se ci sono errori di runtime. Qui, non saremo di entrare nei dettagli di come eseguire il debug il nostro codice come è già stato spiegato in questo articolo. All'inizio della sessione di debug, notiamo un altro errore: Figura 16. Errore di runtime osservato durante il debug di codice Fare clic sul pulsante OK e si saranno adottate per la riga di codice che genera l'errore. Figura 17. Identificare la riga di codice che genera l'errore di run-time L'errore viene generato da questo codice sulla linea 172, come si può vedere dalla figura sopra. Poiché l'errore è una matrice di errore di gamma, significa che il valore intendiamo ottenere dalla matrice è fuori del range dei valori della matrice disponibili. Quindi noi ora passare alla riga in cui copiamo l'indicatore di buffer in array per vedere qual è il problema. Possiamo osservare dalle funzioni CopyBuffer che abbiamo copiato solo tre valori (Bar 0, 1, e 2) il che significa che può accedere solo valori di matrice di maVal0. maVal1. e maVal2 e anche cciVal10. cciVal11 e cciVal12. ecc Ma nel nostro codice on line 172. stavamo cercando di ottenere il valore array per cciVal13. Questo è il motivo per cui l'errore è stato generato. Ora, arrestare il debugger in modo da poter correggere l'errore: Figura 18. debugger arresto per correggere un errore nel codice Per risolvere questo problema abbiamo bisogno di aumentare il numero di record da copiare dai buffer Indicatore a 5 in modo che saremo in grado di ottenere valori di matrice di cciVal10, cciVal11, cciVal12, cciVal13, e cciVal14 se necessario. Correggere il codice come illustrato e quindi avviare di nuovo il debugger. Questa volta, non più errori come notiamo le nostre azioni commerciali di eseguire Expert Advisor Figura 19. Tutti gli errori corretti, consulente esperto esegue commercio durante il debug 2. Prova del consulente esperto Una volta che siamo sicuri che il nostro codice è privo di errori, è giunto il momento di testare l'Expert Advisor per essere in grado di ottenere le migliori impostazioni che ci daranno i migliori risultati. Al fine di effettuare il test, useremo il tester strategia, un programma che è costruito nel terminale MetaTrader. Per avviare il tester strategia, Go per visualizzare il menu sul Terminal e selezionare Strategy Tester. Figura 20. Avvio della strategia Tester 2.1. I test preliminari del nostro consulente esperto A questo punto, vogliamo testare la nostra Expert utilizzando i simboli disponibili nella finestra di mercato. Con questo risultato, saremo in grado di indovinare quale le coppie di valute possiamo meglio ottimizzare il nostro esperto per. Assicurarsi che la finestra di mercato contiene la maggior parte delle valute ci si rivolge per l'esperto. Selezionare l'esperto nella scheda Impostazioni Tester strategia, selezionare il periodtimeframe che avete in mente (e, naturalmente, si può anche verificare per varie scadenze) e poi selezionare Tutti i simboli selezionati nel mercato degli orologi nel campo dell'ottimizzazione. Direttamente di fronte è il parametro di ottimizzazione dei risultati, selezionare Bilanciamento Max Factor profitto. Figura 21. Prova preliminare di Expert Advisor con tutti i simboli nella finestra Market Watch 1. Selezionare la modalità di generazione tick (ogni tick) 2. Selezionare Ottimizzazione tipo (Tutti i simboli selezionati nel Market Watch) 3. Selezionare il tipo di risultato atteso dall'ottimizzazione È può ottenere i dettagli dei vari tipi di ottimizzazione della documentazione di aiuto terminale. Non siamo avanti di test, in modo da lasciare in avanti con il n. Per questo test, verranno utilizzati i principali valuesparameters (evidenziato in verde) nella scheda Input. Figura 22. preliminari parametri di input di test Una volta fatto, passare alla scheda Impostazioni e fare clic sul pulsante Start. Al termine del test, verrà visualizzato un messaggio nella scheda ufficiale simile al seguente: Figura 23. Prova preliminare completata Una volta che il test è terminato, andare alla scheda di ottimizzazione dei risultati per vedere i risultati. Figura 24. ottimizzazione Prova preliminare risulta nostro interesse è nel simbolo che dà il risultato più alto sulla base della nostra impostazione (Balance Factor massimo profitto). Per ottenere questo, cerchiamo di ordinare i risultati facendo clic sul titolo del risultato in modo che il simbolo con il risultato più alto è indicato in alto. Figura 25. preliminare analisi dei risultati di ottimizzazione Da questo risultato, possiamo vedere che il nostro consulente esperto può essere redditizio per i seguenti simboli (EURUSD, EURJPY, AUDUSD) nell'arco di tempo che abbiamo selezionato. È possibile eseguire ulteriori questo test per un altro periodo di tempo, diciamo, 30 minuti e vedere quello che hai. Ciò deve essere tenuto come un incarico e si prega di condividere il risultato in modo che tutti noi possiamo imparare troppo. Dal risultato del nostro test preliminare, noi ora decidere quale simbolo (s) e temporale (s) ci accingiamo a ottimizzare il nostro Expert Advisor per. In questo esempio, si ottimizzare il nostro Expert Advisor per l'EURUSD e lasso di tempo di 1 ora. Quali sono le cose che motivano la scelta che abbiamo appena fatto: il fattore profitto è il rapporto tra il profitto totale di quella perdita totale per quel test. Il fattore del profitto più alto è il più redditizio vostra strategia di trading è. Questo si riferisce al relativo prelievo del capitale o la più grande perdita (in percentuale) del valore massimo di equità. Più basso è il drawdown (in percentuale), migliore è la strategia. Questo è il rapporto tra l'utile al prelievo massimo. Essa riflette la rischiosità della strategia di trading. Avendo deciso sul simbolo e il calendario da usare, è giunto il momento di ottimizzare il nostro consulente esperto. 2.2. Ottimizzare l'Expert Advisor ottimizzazione è semplicemente un processo di messa a punto delle prestazioni del nostro EA testando con diversi fattori (parametri) che determina l'efficacia o la redditività della nostra strategia codificato nel EA. È una procedura analoga a test, ma invece di testare l'EA sola volta, verrà testato più volte a seconda dei parametri selezionati nella scheda Input. Per iniziare, andiamo alla scheda Impostazioni e attivare l'ottimizzazione e quindi selezionare il tipo di risultato che vogliamo dalla nostra ottimizzazione. Figura 26. Impostazioni di ottimizzazione per Expert Advisor 1. Selezionare la modalità di generazione tick (ogni tick) 2. Selezionare Ottimizzazione tipo (Genetic Algorithm Based veloce) 3. Selezionare il tipo di risultato atteso da ottimizzazione (qui selezioniamo Balance Max Factor Profit) Si può ottenere i dettagli dei vari tipi di ottimizzazione della documentazione di aiuto terminale. Non siamo avanti di test, in modo da lasciare in avanti come numero Dopo aver impostato le proprietà di ottimizzazione, cerchiamo di impostare i parametri da utilizzare per l'ottimizzazione nella scheda Input. Figura 27. ottimizzazione dei parametri di input Dal stiamo ottimizzando, ci concentreremo solo sulle aree evidenziate in giallo. Prima di tutto, qualsiasi parametro che non vogliamo usare per l'ottimizzazione deve essere deselezionata. In altri termini, si provvederà a controllare solo i parametri che vogliamo usare per l'ottimizzazione della EA. Qui, ho controllato cinque parametri, ma si può decidere di controllare solo uno o due a seconda dei parametri che l'efficacia della vostra strategia si basa su. Ad esempio, è possibile controllare solo la media mobile e CCI periodi tale che il risultato di ottimizzazione vi permetterà di conoscere il miglior valore per ciascuno degli indicatori che danno il tuo EA le migliori prestazioni. Questa è l'essenza principale di ottimizzare. Inoltre, il numero di parametri controllati determinerà il numero totale di test che la EA passerà attraverso. Presto vedrete che cosa sto parlando. Impostazione dei valori Questo è il valore iniziale da utilizzare per la variabile selezionata per l'ottimizzazione. Usiamo la variabile Stop Loss a spiegare come impostare i valori. Per la Stop Loss, abbiamo chiesto il tester di iniziare con un valore di 30. Questo sarà il valore minimo che verrà utilizzato per la perdita di interruzione durante l'ottimizzazione. Questo è il valore incrementale per la Stop Loss. Se poniamo un incremento di 2 significa che, se nella prima prova, utilizza 30 per Stop Loss userà a 32, 36, 34 ecc nella seconda Ciò non significa che userà 30. poi seguita da 32. 34 ecc No, seleziona i valori in modo casuale, ma saranno sempre multipli di due (2) tra il valore di inizio e il valore di Stop. Questo è il valore massimo o massimo che verrà utilizzato per l'ottimizzazione. Qui abbiamo specificato 38. Ciò significa che i valori che saranno utilizzati per il test sarà tra 30 e 38, ma saranno valori che sono multipli di 2. Non userà 40 o qualsiasi valore maggiore. Il numero totale di test che saranno effettuati dipende dalle impostazioni di queste tre sezioni. Nel nostro esempio, il tester combinerà un totale di 5 possibilità solo per lo Stop Loss, come mostrato nella colonna Passi sulla scheda ingressi, si combinerà un totale di 8 possibilità per il Take Profit, ecc Con il tempo si considerano tutti le altre variabili, che sarà sempre a centinaia o migliaia di possibilità (testspasses). Se non volete aspettare per secoli al fine di ottimizzare un unico EA, assicuratevi di non includere o controllare troppe variabili forse solo due o tre che le prestazioni del vostro EA realtà dipende (più in particolare, i periodi di indicatore, se utilizzarli nel proprio codice). Inoltre è necessario assicurarsi che il valore del passo non comporterà avere troppe possibilità (test). Ad esempio, se usiamo 1 come il valore di passo, quindi abbiamo aumentato il numero di tentativi per la sola a 10 il Stop Loss. Bene, come detto in precedenza, il tempo totale necessario per completare una sessione di ottimizzazione dipende dal numero complessivo di agenti disponibili che avete l'installazione sul sistema. Credo che la spiegazione sia sufficiente. Una volta che abbiamo finito di impostare gli ingressi, ora torniamo alla scheda Impostazioni e fare clic sul pulsante Start. Una volta che l'ottimizzazione è stata completata, possiamo vedere i dettagli sulla scheda ufficiale. Figura 28. Ottimizzazione completata come indicato nella scheda ufficiale Per visualizzare i risultati come ogni test viene superato o completato, andiamo alla scheda Optimization Risultati. Ed è sempre bene per ordinare l'uscita dai risultati in modo da poter identificare facilmente le impostazioni che ci dà il miglior risultato in base alla nostra impostazione di ottimizzazione. Cliccando sul risultato rubrica all'interno della scheda di ottimizzazione risultati Ordini i risultati in ordine crescente o decrescente Figura 29. rapporto Ottimizzazione Commutazione per la scheda Grafico Ottimizzazione per vedere come il grafico assomiglia. Figura 30. Grafico Ottimizzazione Non capire ciò che si vede non preoccupatevi i puntini che vedete è un grafico del numero di test vostro EA passò contro il risultato di ottimizzazione in base al tipo di risultato di ottimizzazione è stato selezionato. Nel nostro caso abbiamo selezionato fattore di bilanciamento massimo profitto. 2.3. Interpretazione del risultato Per interpretare correttamente il rapporto di ottimizzazione, andare alla scheda Optimization Risultati. Scoprirete che non è possibile vedere alcuni campi, come, fattore di profitto, payoff atteso, drawdown, ecc Per vederli, tasto destro del mouse in qualsiasi punto della scheda di ottimizzazione Risultati e selezionare le informazioni aggiuntive che si desidera visualizzare come illustrato di seguito: Figura 31. Selezione drawdown nel risultato ottimizzazione Figura 32. Selezione Fattore di Rendimento in conseguenza di ottimizzazione Dopo aver aggiunto queste registrazioni aggiuntive, ci sarà ora analizzare il risultato ottimizzazione per decidere le impostazioni migliori per il nostro consulente esperto. Figura 33. Analizzando il risultato dell'ottimizzazione Nella figura di seguito, le sezioni evidenziate etichettato A e B indica i migliori risultati per il nostro Expert Advisor. Ora la scelta effettuata è completamente tuo, Tutto dipende da ciò che si sta cercando. Tuttavia, qui ci interessa non solo nelle impostazioni che danno il massimo profitto, ma hanno anche un prelievo più bassa. Come si può vedere, la sezione A (evidenziato in giallo) ha il miglior risultato (Balance max Profit Factor) di 22.381,71 con un utile di 924,10 mentre la sezione B (evidenziato in verde) ha il secondo miglior risultato di 22.159,25, ma con un più alto utile di 936,55. Sezione A ha avuto un drawdown minore di 1,78, mentre B ha una maggiore prelievo di 1,95. Il Tester strategia salva i risultati di ottimizzazione nella cartella dati terminale foldergtTestercache theltClient. Nel tuo caso tutti i dati di ottimizzazione verranno salvati nel file ccimaea. EURUSD. H1.0.xml, Il nome del file ha la seguente forma: ExpertName. SYMBOL. PERIOD. GenerationMode. xml, dove: ExpertName - Expert Advisor Nome Simbolo - simbolo Periodo - lasso di tempo (. M1, H1) GenerationMode - tick modalità generazione (0-ogni tick, 1 - uno minuti OHLC, 2 - i prezzi aperto). I file XML possono essere aperti da MS Excel. 2.4. Scegliere il miglior risultato Per ottenere finalmente il miglior risultato, abbiamo bisogno di guardare il grafico di ottimizzazione di nuovo. Tornare al grafico di ottimizzazione. Pulsante destro del mouse in qualsiasi punto all'interno del grafico e selezionare Grafico 1D. Figura 34. Selezionare 1-dimensionale (1 D) grafico per l'analisi risultato Con questo si può facilmente vedere i valori di ciascuno dei parametri di input che danno il miglior risultato. A questo punto è possibile iniziare a scegliere ogni parametro per essere in grado di vedere il miglior valore. Pulsante destro del mouse sul grafico e selezionare X-Axis e quindi selezionare il parametro che si desidera controllare. Sembrerà di seguito (per stop loss) Figura 35. Come ottenere il miglior valore StopLoss dal risultato dell'ottimizzazione In realtà, dal risultato di ottimizzazione, è molto chiaro che il miglior Stoploss è 34, il migliore TakeProfit è 78, e la migliore CCIPeriod1 è 62. per ottenere i valori migliori per il MAPeriod e CCIPeriod2, selezionate ciascuno di essi come sopra Figura 36. come ottenere il valore medio periodo migliore Passando dal risultato dell'ottimizzazione Questo grafico mostra un valore pari a 26 come il MAPeriod con il miglior risultato. Figura 37. Come ottenere il miglior valore CCIPeriod1 dal risultato dell'ottimizzazione Questo grafico mostra un valore pari a 62 come il CCIPeriod1 con il miglior risultato. Figura 38. Come ottenere il miglior valore CCIPeriod2 dal risultato dell'ottimizzazione Questo grafico mostra i valori di 28 o 30 come la CCIPeriod2 con i migliori risultati. Dopo aver ottenuto i migliori valori per ogni parametro, è giunto il momento per il collaudo finale del nostro Expert Advisor. 2.5. La prova finale La prova finale consiste nel mettere insieme i migliori parametri per il test della Expert Advisor. In questo caso, useremo i migliori valori che abbiamo scoperto nella sezione INPUT del tester di strategia come illustrato di seguito. Figura 39. I parametri di input test finale nella scheda Impostazioni del Tester strategia, ci consente di disattivare l'ottimizzazione come illustrato di seguito Figura 40. Le impostazioni di test finali Passiamo ora clic sul pulsante Start per iniziare il test. Una volta che il test è terminato, abbiamo i risultati nella scheda risultati come illustrato di seguito Figura 41. I risultati del test finale e allo stesso modo, abbiamo il grafico per il test sulla scheda Grafico Figura 42. La finale del grafico di prova risultato Conclusione In questo articolo , abbiamo discusso i modi per identificare e gli errori di codice corretto e abbiamo anche discusso come testare e ottimizzare un Expert Advisor per il miglior simbolo dall'orologio mercato. Con questo articolo, credo controllando il codice per errori utilizzando l'editor e l'ottimizzazione e la sperimentazione di Expert Advisors con il tester strategia rende la scrittura di una migliore e più redditizio Expert Advisor possibile.

1 comment:

  1. L'opzione binaria, il Forex e i loro simili sono un mezzo per fare soldi ma è più simile al gioco d'azzardo. Non ci sono mezzi sicuri per garantire che una persona possa trarre profitto con loro ed è per questo che si può anche ragionare come una truffa. Non dimentichiamo che alcune persone ti danno addirittura il 💯% di garanzia di realizzare profitti e finiscono per scappare con i tuoi soldi. Internet oggi è pieno di truffe di recupero di opzioni binarie, vedi così tante testimonianze condivise su come un'azienda o una società le hanno aiutate a recuperare ciò che hanno perso con le opzioni binarie. Ma credici, è solo un modo per attirare più persone e finire per truffarle.

      La grande domanda è: "Qualcuno può recuperare i propri soldi persi con l'opzione binaria e la truffa"
      Dirò di sì e ti dirò come.

      L'unico modo per recuperare i tuoi soldi è assumendo HACKERS per aiutarti a entrare nel sistema di sicurezza del database Firms usando le informazioni che ci fornisci, estrai il tuo file e recupera i tuoi soldi. Sembra una cosa davvero impossibile da fare, ti dirò, dovrebbe essere impossibile, ma con l'uso di software appositamente progettati conosciuti da hacker e autorità (come l'FBI, la CIA ecc.) È possibile e l'unico modo per recuperare i tuoi soldi.
     
      Per ulteriori informazioni, contattare PYTHONAX
    pythonaxservices@gmail.com
    pythonaxhacks@gmail.com

    2020 © PYTHONAX.

    ReplyDelete