Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 6. - pagina 452
![MQL5 - Linguaggio delle strategie di trading integrato nel client terminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
La domanda è sorta, è possibile scrivere un Expert Advisor o uno script, che sarebbe quello di raggiungere per esempio una perdita del 2% il giorno chiuderebbe tutte le transazioni?
È possibile.
Aiuto -- ho comprato un nuovo portatile con vin.8 installato -- ho scaricato il terminale da alpari ultimo aggiornato -- carico gli indicatori con cui ho lavorato prima, nella cartella MQL4-indicators, appaiono lì -- ma nel terminale stesso negli utenti non li vedono, il supporto clienti non dice nulla di diretto - cosa fare?
Devo aver capito male cosa fare - file di programma - ho Alpari - apro ---- ci sono cartelle ---- MQL4- indikatori - li metto dentro - appaiono - chiudo - apro il terminale - non sono nei file utente
Grazie, mi ha aiutato.
Sotto l'ultima esterna:
extern int slippage = 2; // slippage dei prezzi quando si chiudono le posizioni di mercato
inserirne un'altra:
extern bool total_symb = true; // su tutte le coppie
e su ogni linea:
if ((OrderSymbol() == Symbol())
e
if(OrderSymbol() == Symbol())
sostituire questo:
if(OrderSymbol() == Symbol() || total_symb)
in teoria dovrebbe funzionare, controllare.
Chiude solo un paio di grafici dove la posizione è attivata. su altri si chiude un errore 4107. Ho provato a cambiare in extern bool Buy = false; //cancellare/chiudere la direzione degli ordini di acquisto
La domanda è sorta, è possibile scrivere un Expert Advisor o uno script, che sarebbe quello di raggiungere per esempio una perdita del 2% il giorno chiuderebbe tutte le transazioni?
Quindi, Ticket è ancora usato da qualche parte nella vecchia versione. Dobbiamo pulire il codice...
Fatto come segue:
Le posizioni sono completamente chiuse. È vero che esce l'errore zero, ma le banchine dicono che significa nessun errore. E non riesco a trovare il messaggio"Tutti gli ordini chiusi" nel registro.
Ho messo in grassetto le righe che ho cambiato. Sembra funzionare, non ho ancora controllato a fondo.
Non capisco bene come funzionano i loop. Supponiamo che io abbia del codice sopra e sotto e nel mezzo del ciclo. Se le condizioni del ciclo coincidono, il codice viene eseguito solo all'interno del ciclo e non lascia che le linee di codice sotto il ciclo vengano eseguite? Considerando questo esempio, l'operatorebreak interrompe il ciclo? Permettendo l'esecuzione delle linee sottostanti, o il programma inizia a calcolare dall'inizio?
Correggetemi se sbaglio: break interrompe il ciclo in cui si trova, mentrecontinue esegue la valutazione dell'operatore sopra di esso, quindi non è chiaro se c'è un secondo operatore - la sua valutazione sarà interrotta ocontinue interrompe tutto il codice e manda il programma a eseguirlo per primo?