SOLO CANDELA / BAR - Come catalogare o segregare la candela? - PER FAVORE CORREGGIMI! - pagina 4
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
Ho la sensazione che perdiamo un po' di controllo sul codice....
No, questo non è sicuramente il posto giusto.
Questa "gestione degli errori" non migliora nulla. Controlla di nuovo.
Questo non è stato creato per divertimento! Dovrebbe essere usato per resettare le bandiere eseguite su una nuova barra.
Cosa abbiamo imparato sul confronto dei doppi e se questo ha senso qui?
Così hai deciso di cancellare il tuo post a cui mi riferisco... Ben fatto, questo è molto utile!
Scusate ma ieri c'è stato un problema con internet (mql4.com non funziona più). Stavo cercando di correggere qualcosa e ... crollare
Non è facile aiutarvi. Perché non provi a implementare solo una strategia per ora, ma con unafunzione corretta, Open(), Close(), Count(), NewBar(), Signal().
Il blocco sottostante è al di fuori della funzione di avvio. Non sono sicuro che questo sia voluto.
Penso lo stesso di te, piccoli passi. Prendiamo solo un'opzione BULL4
A volte sembra Ea al mio su codebase
https://www.mql5.com/en/code/9156 - interessante
Capisco questi (ma non sento), è una bandiera ecapisco il suo scopo
Cosa ne pensi di piccoli passi?
Sì, piccoli passi, quindi gli errori sono gestibili...
Vuoi evidenziare qualcosa di specifico dal codice EA?
Non lo vedrò più - non ti aiuterò più se ignori ulteriormente i passi di correzione che io - o qualcun altro - ti ha consigliato di fare:
Lo slittamento è 0? Probabilmente otterrai un errore, ma la gestione degli errori fissata lo prenderà :-)
Questo non è sbagliato, ma non è l'ideale e nel peggiore dei casi non fa quello che volete all'interno del ciclo. Meglio, non iniziare nemmeno a usare i loop da 0 a OrdersTotal. Leggete questo: Loop e chiusura o cancellazione di ordini
Qual è lo spread del tuo broker e quante cifre hai per il simbolo che vuoi negoziare? Non sono sicuro che tu usi Point correttamente (Leggi la prima pagina del tuo thread).
Sì, piccoli passi, quindi gli errori sono gestibili...
Vuoi evidenziare qualcosa di specifico dal codebase EA?
Penso di no, niente da illuminare, ho capito quello che ho scritto.
Non lo vedrò più - non ti aiuterò più se ignori ulteriormente i passi di correzione che io - o qualcun altro - ti ha consigliato di fare:
Sì. So cosa fare NormalizeDouble, cosa che ho capito (se ho: euro/usd = 1.2390022129.....09.... E abbiamo bisogno di: 1,29893 fine! non infinito) ma non posso scrivere questi, potrebbero essere questi?
if ( NormalizeDouble ( abc(),0 ) )
If ( NormalizeDouble ((Close[1]-Bid) +3*point),0 ) ;
Lo slippage è 0? Probabilmente otterrete un errore, ma la gestione fissa degli errori lo prenderà :-)
Posso avere +1 senza problemi result=OrderSend(Symbol(),OP_BUY,0.41,Ask, 1 ,Close[1]-25*Point,0,"",MAGICMA1,0,Blue);
errore gestirà, bene, vediamo cosa sarà dopo
Questo non è sbagliato, ma non è l'ideale e nel peggiore dei casi non fa quello che vuoi all'interno del ciclo. Meglio, non iniziare nemmeno a usare i loop da 0 a OrdersTotal. Leggete questo: Cicli e chiusura o cancellazione di ordini
OTTIMO ARTICOLO! Dovrei leggerlo all'inizio :)
Qual è lo spread del tuo broker e quante cifre hai per il simbolo che vuoi negoziare? Non sono sicuro che tu usi il punto correttamente (Leggi la prima pagina del tuo thread).
Ho Admiral Market Bid=1,29000 Ask = 1,29001. Questi è un problema che so,,, ma non ho risoluzione in questo momento non ho trovato il buon esempio.
Sto scrivendo il codice...
Sì. So cosa fa NormalizeDouble, penso di aver capito (se ho: euro/usd = 1.2390022129.....09.... E abbiamo bisogno di: 1,29893 fine! non infinito) ma non posso scrivere questi, potrebbero essere questi?
if (NormalizeDouble( abc(),0 ) )
Non puoi NormalizeDouble() un bool, l'indizio è nel nome della funzione e anche nella documentazione.
Non puoi NormalizeDouble() un bool, l'indizio è nel nome della funzione e anche nella documentazione.
È un peccato che non possiamo normalizzare il vero per essere molto vero :-(
Sì. So cosa fa NormalizeDouble, cosa che capisco ( se ho: euro/usd = 1.2390022129.....09.... E abbiamo bisogno di: 1,29893 fine! non infinito) ma non posso scrivere questi, potrebbero essere questi?
No, non devi normalizzare Bid o Close[1]. Quello che volevo dire è che non dovresti semplicemente confrontarli per l'uguaglianza.
Immaginate:
Chiusura[1] = 1,31933
Nuova_barra
Tick1, Offerta = 1.31935
Tick2, Offerta = 1.31934
Tick3, Offerta = 1.31937
Tick4, Offerta = 1.31937
Tick5, Offerta = 1.31942
Il tuo codice cerca un Tick dove Bid è 1.31936
Perderai il tuo segnale. Questo non accadrebbe, se usi > .
Posso avere +1 senza problemi result=OrderSend(Symbol(),OP_BUY,0.41,Ask, 1 ,Close[1]-25*Point,0,"",MAGICMA1,0,Blue);
Questo non migliora di molto la situazione. Tutto il tuo calcolo in punti dovrebbe essere Pips dalla mia comprensione. Tuttavia, non ho esperienza con i broker ECN, quindi potrebbe funzionare.
Questo non è sbagliato, ma non è l'ideale e in un caso peggiore non fa quello che vuoi all'interno del ciclo. Meglio, non iniziare nemmeno a usare i loop da 0 a OrdersTotal. Leggete questo: Loop e chiusura o cancellazione di ordini
ARTICOLO MOLTO BUONO! Dovrei leggere questi all'inizio :)
Concordo e ci sono molti articoli molto buoni più, scritti dallo stesso autore. Anche il libro non è un brutto posto per iniziare.
Ho Admiral Market Bid=1,29000 Ask = 1,29001. Questi è un problema che so,,, ma non ho risoluzione in questo momento non ho trovato il buon esempio.
Sul sito del vostro broker è indicato che per EURUSD lo spread minimo è 0,1. Lo spread medio è 0,5. <-- Questo è inteso in pip! Quindi 0,1 è 1 punto. 0,5 è 5 punti.
Quindi, nel tuo caso, un Pip è 10*Punto. Lo spread confonderà tutti i tuoi mini calcoli dove aggiungi solo 3 punti ad un prezzo.
Cerca "adjust for 5 digit broker" e dovresti trovare molti esempi.
CIAO :)
Se questo codice era cattivoperché stavo passando dei segnali, è migliorato.Ho pensato che il problema è interamente in un posto diverso, non nel segno di uguaglianza '=='......... il '>=' è un'idea migliore naturalmente
Domanda 1. Devo usare MyPips in candela, in queste funzioni? bool BULL4()
Problema DIGIT.
Ho trovato questi
https://www.mql5.com/en/forum/140097 da WHRoeder
https://www.mql5.com/en/forum/123736 da WHRoeder
Cos'è Digit? in https://docs.mql4.com/predefined/variables/digits e https://docs.mql4.com/convert/doubletostr
Poiché tu sei l' esperto avrei dovuto dire qualcosa, potrebbe essere importante.
Ora uso lapiattaforma MT4 e vedo 4 cifre dopo il punto decimale (Bid-Ask= 0.0001 usualy). Al momento abbiamo programmatoin MQL4 lasciare che sia.
In MT5, vedo5 cifre dopo il punto decimale. c'èdifferenza tra MQL4 eMQL5. Al momento questo spreco non haimportanza per me. Importanteper il nostro EA ha funzionato bene.
non voglio in questo momento a parlare di esso (a meno che non sia necessario)
E ho scritto il programma per me è buono :) e tu?