Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 100
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
Non capisco dove metterlo e perché non è (-1)
c'è un parametro di ingresso bool
void OnTick
{analisi dell'apertura degli ordini, trailing stop}
vuoto Trailing Stop
{corrisponde alle condizioni di chiusura
se sì, copriamo tutto quello che c'è
}
Non so quale sia la vostra logica. Come ti aspetti che io indovini quello che hai lì?
di tre punti
1 punto esterno dove impostiamo se vogliamo aprire il secondo o più ordini
2) una condizione in cui dobbiamo aprire il primo ordine
3) punto di chiusura dell'ordine
Posso mandarti il codice ma è lo stesso per tutti
Allora, perché sporcate il thread se non avete bisogno di aiuto?
Non troverete messaggi utili in mille pagine inutili
P.S. O il tuo obiettivo è quello di riempire i tuoi post al massimo?Allora chiedo uno schema dell'interruttore su questi tre punti. Allora cancellerò i miei post se li consideri spazzatura.
Qual è questo punto?
1 punto esterno dove impostiamo se vogliamo aprire il secondo o più ordini
2) una condizione in cui dobbiamo aprire il primo ordine
3) punto di chiusura dell'ordine
Sai almeno cosa vuoi?
Non si può impostare un ordine nel punto 2, non si può chiudere e si può solo cancellare. In generale, tutto quello che hai è in qualche modo logicamente incoerente e vago, devi essere un deputato.
C'è questa parte del codice:
ObjectCreate(0,nm,OBJ_TEXT,0,0,0);
ObjectSetString(0,nm,OBJPROP_PRICE, TIME(0)+Period()*60*3); // сдвиг вправо на 3 свечи
}
Domanda:Periodo() restituisce un valore sano fino a M30, da H1 un insieme di cifre, e non è più possibile compensare il segno in questo modo.
Come spostare da N - candelieri indipendentemente dal periodo? Non devo scrivere una funzione separata, vero?
C'è questa parte del codice:
ObjectCreate(0,nm,OBJ_TEXT,0,0,0);
ObjectSetString(0,nm,OBJPROP_PRICE, TIME(0)+Period()*60*3); // сдвиг вправо на 3 свечи
}
Domanda:Periodo() restituisce un valore sano fino a M30, da H1 un insieme di cifre, e il marcatore non può più essere spostato in questo modo.
Come spostare da N - candelieri indipendentemente dal periodo? Non devo scrivere una funzione separata, vero?
Grazie!
La domanda è: quanto è corretta questa voce, è all'inizio del programma, mentre in tutto il programma vengono usati molti Time[0] e Time[1], e non per essere chiamati ogni volta, è scritto in una variabile. Sembra che non ci siano errori al di fuori dell'array, ma tutto è definito superficialmente:
//------------
void OnTimer()
ArraySetAsSeries(TM, true);
if(CopyTime(_Symbol, PERIOD_CURRENT, 0, 2, TM)==-1) return;
TIME0 = TM[0];
TIME1 = TM[1];
Grazie!
Qual è questo punto?
1 punto esterno dove impostiamo se vogliamo aprire il secondo o più ordini
2) una condizione in cui dobbiamo aprire il primo ordine
3) punto di chiusura dell'ordine
Sai almeno cosa vuoi?
Non si può impostare un ordine nel punto 2, non si può chiudere e si può solo cancellare. In generale, sei sempre in qualche modo logicamente incoerente e vago, hai bisogno di essere un deputato.
per favore. Ecco il parametro esterno bool OpenOrders=false;//+---ordine aperto
Ho bisogno che apra gli ordini, li chiuda e poi rimanga sul grafico senza consumare risorse
al momento è autosegata (funziona, ma è inaccettabile per un elemento del pannello)
per favore. Ecco il parametro esterno bool OpenOrders=false;//+---ordine aperto
Ho bisogno che apra un ordine, lo chiuda e poi rimanga sul grafico senza consumare risorse
al momento è autosegata (funziona, ma è inaccettabile per un elemento del pannello)
Io l'avrei fatto. Aggiungere "Disabilitato" al codice
P.S. Sostituire la linea 72 con "if(! Disabled) return;". Penso che la logica della bandiera sia chiara.Io farei quanto segue. Aggiungere "Disabilitato" al codice.
P.S. Sostituire la linea 72 con "if(! Disabled) return;". Penso che la logica della bandiera sia chiara.No, non è chiaro. Tornare da dove siamo venuti.
1) Disabled=true
inizializzare a true inite
passare a ontik if(!Disabled) return;
aprire chiudere
Disabled=false; exit. Tutto è a posto.
2) Disabled=false
inizializzare ontik a true
passare a ontic if(!Disabled) return;
aprire chiudere
Disabled=false; exit. Dove devo aprire il prossimo ordine? Qualche variante dovrebbe permetterlo.
Ora capisci perché ti ho chiesto di descrivere la logica?
Ho anche un'opzione di 2 EAs.
No, non capisco. Torniamo da dove siamo venuti.
1) Disabled=true
inizializzare nell'inite a true
passare a ontik if(!Disabled) return;
aprire chiudere
Disabled=false; exit. Tutto è a posto.
2) Disabled=false
inizializzare ontik a true
passare a ontic if(!Disabled) return;
aprire chiudere
Disabled=false; exit. Dove devo aprire il prossimo ordine? Qualche variante dovrebbe permetterlo.
Ora capisci perché ti ho chiesto di descrivere la logica?
Ho anche un'opzione di 2 EAs.