- Aiuto per la codifica
- L'EA non funziona su più coppie, ho bisogno di aiuto
- Domande dai principianti MQL4 MT4 MetaTrader 4
//+------------------------------------------------------------------+ //| QQE 4hr_15min TESTING | //| triggers on 4 hour QQE, then uses 15 min QQE to enter trade. | //+------------------------------------------------------------------+ #property copyright "Expert Advisor Builder" #property link "http://sufx.core.t3-ism.net/ExpertAdvisorBuilder/" //Check position bool IsTrade = False; for(int i = 0; i < Total; i ++) { OrderSelect(i, SELECT_BY_POS, MODE_TRADES); if(OrderType() <= OP_SELL && OrderSymbol() == Symbol()) { IsTrade = True; if(OrderType() == OP_BUY) { //Close //+------------------------------------------------------------------+ //| Signal Begin (Exit Buy) | //+------------------------------------------------------------------+
Per mostrare che cattivo costruttore di expert advisor sia questo, ho copiato alcune linee
Non usa il magicnumber delle compravendite quando controlla le compravendite aperte
questo EA può gestire le compravendite che non vuoi che vengano cambiate da questo EA
Sta contando in alto controllando le compravendite e in questo ciclo totale chiuderà anche le compravendite quindi deve contare in basso......
E qualunque sia il risultato di Orderselect() continuiamo a eseguire il prossimo blocco.
LOL
Come ho detto, sono un principiante nella codifica, e questo EA è/era funzionante, quindi ho tentato di svilupparlo, e quando mi sono trovato in difficoltà, ho chiesto aiuto su questo forum.
Bel tentativo di prendere in giro i miei sforzi, senza in realtà dire nulla che come principiante posso usare. Il LOL è perché ho chiesto aiuto?
Non voglio o ho bisogno di diventare un esperto di codifica, ho solo pensato che una richiesta educata di assistenza per risolvere un semplice errore (o due) avrebbe effettivamente portato a qualcuno che mi consigliasse dove si trova l'errore nel codice. Quello che deVries ha scritto qui effettivamente NON mi aiuta affatto, poiché dovrei studiare/praticare/sperimentare per anni forse per capire anche solo quello che è stato detto.
Non eravate tutti novellini una volta, e avevate bisogno solo di una gentile parola di assistenza per far funzionare dei semplici codici? Per favore?
Non eravate tutti novellini una volta, e avevate bisogno solo di una gentile parola di assistenza per far funzionare dei semplici codici? Per favore?
Raptor, sto facendo uno sforzo. Voglio solo un EA funzionante che posso sviluppare ulteriormente man mano che imparo. Questo funzionava, poi ho modificato qualcosa e ora non funziona più. Ho letto sulla codifica, ma non ho 4 o più anni per aggiornarmi. Solo un piccolo aiuto concreto per favore, dato che quello che è stato detto qui non mi è di grande aiuto.
È un po' come imparare a fumare una sigaretta dove il consiglio è 'accendila'!
Come ho detto, sono un principiante nella codifica, e questo EA sta funzionando, quindi ho tentato di svilupparlo, e quando mi sono trovato in difficoltà, ho chiesto aiuto su questo forum.
Bel tentativo di prendere in giro i miei sforzi, senza in realtà dire nulla che come principiante posso usare. Il LOL è perché ho chiesto aiuto?
Non voglio o ho bisogno di diventare un esperto di codifica, ho solo pensato che una richiesta educata di assistenza per risolvere un semplice errore (o due) avrebbe effettivamente portato a qualcuno che mi consigliasse dove si trova l'errore nel codice. Quello che deVries ha scritto qui effettivamente NON mi aiuta affatto, poiché dovrei studiare/praticare/sperimentare per anni forse per capire anche solo quello che è stato detto.
Non eravate tutti novellini una volta, e avevate bisogno solo di una gentile parola di assistenza per far funzionare dei semplici codici? Per favore?
"è molto tempo per vedere se le mie correzioni lo aggiustano, e sto diventando frustrato" citato da te
Questo è il problema che hai. Stai usando un "Expert Advisor Builder" (che sta codificando un brutto modo....) per creare i tuoi EA.
Quando questo programma sta facendo i tuoi EA di merda, allora non hai imparato la conoscenza per vedere cosa c'è di sbagliato nella codifica.
Se hai iniziato da solo a creare EA senza EA Builders automatici
allora troverai i problemi più facilmente sapendo dove guardare in primo luogo
se hai le linee di programma di un EA fatto o non fatto da te....
E sì, ci vuole tempo per imparare, ma se puoi vedere tu stesso qual è l'errore, allora la tua frustrazione non sarà così grande
chi vuole usare merda STOP USARE QUELL'EA BUILDER ....
Solo un piccolo aiuto concreto per favore,
OK, un piccolo aiuto . . .
Trova questa parte nel tuo codice e cambiala in questo . . .
//+------------------------------------------------------------------+ //| Variable End | //+------------------------------------------------------------------+ //Check position bool IsTrade = False; for(int i = Total -1; i >= 0; i --) { if( OrderSelect(i, SELECT_BY_POS, MODE_TRADES) && OrderType() <= OP_SELL && OrderSymbol() == Symbol())
Questo non controlla il Magic Number ... dovrai aggiungerlo se vuoi piazzare ordini manuali sulle stesse coppie o se vuoi operare su diversi timeframe sulla stessa coppia allo stesso tempo ... lo fai?
Bars non è affidabile, è una cattiva idea usare Bars... dovresti invece usare Time.
Il tuo Slippage non è regolato per i broker a 4/5 cifre . . e nemmeno il tuo TP o SL.
Se rendete il vostro SL piccolo otterrete un errore 130 perché non state controllando se è troppo vicino o permettendo lo Spread.
Il vostro broker è un broker ECN? Non potete impostare SL & TP quando piazzate un ordine a mercato con un broker ECN, dovete codificare un OredrModify() per aggiungere lo SL & TP dopo che l'ordine è stato piazzato . . .
Devo continuare? Questa è roba di BASE... questi punti saltano fuori su questo forum giorno dopo giorno...
E tu non capisci molto di questo perché non hai codificato nulla... hai usato il codice di qualcun altro. . " Expert Advisor Builder". C'è solo una scorciatoia: Jobs
Come ho detto, sono un principiante nella codifica, e questo EA sta funzionando, quindi ho tentato di svilupparlo, e quando mi sono trovato in difficoltà, ho chiesto aiuto su questo forum.
Bel tentativo di prendere in giro i miei sforzi, senza in realtà dire nulla che come principiante posso usare. Il LOL è perché ho chiesto aiuto?
Non voglio o ho bisogno di diventare un esperto di codifica, ho solo pensato che una richiesta educata di assistenza per risolvere un semplice errore (o due) avrebbe effettivamente portato a qualcuno che mi consigliasse dove si trova l'errore nel codice. Quello che deVries ha scritto qui effettivamente NON mi aiuta affatto, poiché dovrei studiare/praticare/sperimentare per anni forse per capire anche solo quello che è stato detto.
Non eravate tutti novellini una volta, e avevate bisogno solo di una gentile parola di assistenza per far funzionare dei semplici codici? Per favore?
Caro ziobigpete,
Le mie scuse se ti sei offeso. Non stavo loling a voi. Ero e sono ancora in vena di scherzare con "Expert Advisor Builder". Ero un novellino 4 anni fa, ho fatto un sacco di domande stupide, - diamine sto ancora imparando adesso - alcuni forumer qui correggono me e il mio codice e io lo accetto, imparo anche dal codice degli altri - chiedi a RaptorUK su questo - mi ha corretto domenica scorsa e quella cosa del download della storia.
Mettiamola così, se il tuo EA funziona su dati di 4 ore, allora devi davvero aspettare. Un giorno intero ha solo 6 candele/barre su 4 ore. Un'altra cosa, hai detto che fai trading da molto tempo e presumo che tu faccia trading manuale e che questo EA sia basato sulla tua strategia. Beh, il trading manuale non richiede pazienza?, lo stesso vale per questo EA allora.
hai detto questo ...
Raptor, sto facendo uno sforzo. Voglio solo un EA funzionante che posso sviluppare ulteriormente mentre imparo. Questo funzionava, poi ho modificato qualcosa e ora non funziona più. Ho letto sulla codifica, ma non ho 4 o più anni per aggiornarmi. Solo un piccolo aiuto concreto per favore, dato che quello che è stato detto qui non mi è di grande aiuto.
È un po' come imparare a fumare una sigaretta dove il consiglio è 'accendila'!
Allora la mia domanda è, Whoa ..., quale parte di esso che hai modificato? Ora ci hai chiesto di trovare l'errore e correggerlo.
Guardo il tuo codice più tardi, e btw, il file .ex è un file compilato che non aiuta.
:)
Prendiamo un esempio del perché il "tuo" codice è cattivo. . . .
Ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, StopLossLevel, TakeProfitLevel, "Sell(#" + MagicNumber + ")", MagicNumber, 0, DeepPink); if(Ticket > 0) { if(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) { Print("SELL order opened : ", OrderOpenPrice()); if(SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Open Sell"); } // if(Order... else // <--- this else is in relation to the OrderSelect, so when the OrderSelect fails the error stored in GetLastError is updated { Print("Error opening SELL order : ", GetLastError()); // <--- this will give you Error 0 and you will be scratching your head } // else } // if(Ticket...
l'errore riportato è in relazione all'OrderSelect NON all'OrderSend. . .
Dovrebbe essere fatto così . . .
Ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, Slippage, StopLossLevel, TakeProfitLevel, "Sell(#" + MagicNumber + ")", MagicNumber, 0, DeepPink); if(Ticket < 0) { Print("Error opening SELL order : ", GetLastError()); // <--- this will give you Error that relates to the OrderSend } // if(Ticket... else // <--- this else is in relation to the if(Ticket < 0) { if(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES)) { Print("SELL order opened : ", OrderOpenPrice()); if(SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Bid, Digits) + " Open Sell"); } // if(Order... } // else
Caro ziobigpete,
Le mie scuse se ti sei offeso. Non stavo leccando a te. Ero e sono ancora in vena di scherzare con "Expert Advisor Builder". Ero un novellino 4 anni fa, ho fatto un sacco di domande stupide, - diamine sto ancora imparando adesso - alcuni forumer qui correggono me e il mio codice e io lo accetto, imparo anche dal codice degli altri - chiedi a RaptorUK su questo - mi ha corretto domenica scorsa e quella storia del download.
Stiamo tutti ancora imparando... e anche se non lo fossimo, siamo tutti esseri umani e tutti commettiamo errori... specialmente io. L'unica persona che non commette errori è quella che non fa nulla...
A proposito ... perché aspettare a testare il tuo codice . ... testalo nel tester ... il tester della strategia. ;-)
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Accetti la politica del sito e le condizioni d’uso