![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
Domanda sulla funzione incrociata
Ciao Coders Guru,
Grazie mille per le tue lezioni! Sto ancora imparando mq4 e non vedo l'ora di leggere altri tuoi tutorial.
Stavo seguendo il codice di My_First_EA.mq4 e ho una domanda sulla funzione Crossed().
La prima volta che la funzione Crossed() viene chiamata, current_direction != last_direction sarà sempre TRUE, perché alla prima chiamata:
static int last_direction = 0; e current_direction viene immediatamente assegnato 1 o 2.
Che ne dite di testare per vedere se last_direction = 0, che assicurerebbe Return(0) alla prima chiamata di Crossed(). (vedi sotto)
Grazie ancora,
Bachy20
=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
int Crossed (double line1 , double line2)
{
static int last_direction = 0;
static int current_direction = 0;
se(linea1>linea2)current_direction = 1; //su
se(linea1<linea2)direzione_corrente = 2; //giù
/la direzione corrente sarà sempre diversa da
/ultima direzione, al primo utilizzo di questa funzione
if(current_direction != last_direction) //cambia
{
if (last_direction == 0) //return(0) al primo utilizzo di questa funzione
{
last_direction = current_direction
return (0);
}
else
{
last_direction = current_direction;
return (last_direction);
}
}
else
{
return (0);
}
}
Grazie per tutto il vostro lavoro.
Grande lavoro Guruji... Continua il buon lavoro...
Grazie mille per i fantastici tutorial
Caro Codeguru,
Grazie mille per il fantastico tutorial fornito da te, sarà di grande aiuto per i neofiti come me :-)
Grazie ancora.![](https://c.mql5.com/forextsd/smiles/You_Rock_Emoticon.png)