Domande dai principianti MQL4 MT4 MetaTrader 4 - pagina 209

 

Come può mql4 assicurarsi che venga restituito il valore corretto e non un errore/valore vuoto?

 
Xopb:

Vladimir, grazie! Ho allegato #include <MT4Orders.mqh> e funziona bene - forse il codice è molto disordinato, ma non è per conto reale. Non capisco perché qualsiasi coppia impostata nel tester funziona correttamente solo per coppie a 3 cifre incorporate in EA multicurrency. Seimposto una coppia di 5 cifre funziona anche, ma si apre a prezzi diversi (adiacenti), cioè il principio di funzionamento è violato, quale può essere la ragione?

Abbiamo fatto un errore da qualche parte. Qui sotto c'è il codice di lavoro.

#include <MT4Orders.mqh>

input string inSymb = "USDJPY";

TICKET_TYPE Buy( const string Symb )
{
  const double Ask = SymbolInfoDouble(Symb, SYMBOL_ASK);
  
  return(OrderSend(Symb, OP_BUY, 1, Ask, 0, 0, 0));
}

void OnTick()
{
  if (!OrdersTotal())
  {
    Buy(_Symbol);
    Buy(inSymb);
  }
}


Il vostro codice può sempre controllare rapidamente su un conto demo.


SZZY Tieni presente che non sempre lo status o il rating di un membro del forum indica una competenza sufficiente.

 
Puoi dirmi come lavorare con Canvas in mt4. Forse qualcuno ha un esempio semplice per disegnare un testo e una forma?
 
Yevhenii Levchenko:
Puoi dirmi come lavorare con Canvas in mt4. Forse qualcuno ha un esempio semplice per disegnare testo e forma?

Praticamente lo stesso di MT5. Guardate gli esempi che sono disponibili e fatelo. Cosa non funziona - chiedete e la gente ve lo dirà.

 

Ciao. Qual è l'errore? Nel ciclo for, l'int viene prima dell'i

 
Vladimir Makhnin:

Ciao. Qual è l'errore? Nel ciclo for, l'int viene prima dell'i

int i=0;

for(i=OrdersTotal()-1; ...) {
 if(...) {
 
Vitaly Muzichenko:

Perché? Probabilmente non c'è nessuna #proprietà rigorosa lì, o non è il primo errore

 
Vitaly Muzichenko:
Artyom Trishkin:


Grazie
Ho aggiunto la linea int i=0 dopo int count = 0
L'errore è scomparso

 
Vladimir Makhnin:

Grazie
Ho aggiunto la linea int i=0 dopo int count = 0
L'errore è scomparso

Le stranezze dell'incapsulamento, se ho capito bene, la visibilità della variabile solo nella funzione in cui è dichiarata, non è più visibile nella funzione successiva. E prima che le funzioni siano visibili in tutti. avreste potuto mettere il secondo int in if. E foe e iff sono funzioni separate.

 
Ciao, puoi dirmi come abilitare l'Alert sulla chiusura di una candela? Cioè il significato di questo: il segnale che attraversa la MA per esempio in TF 5, ma è innescato da qualche parte nel 2 ° minuto, eAlert dovrebbe funzionare alla chiusura della candela corrente....