Questions des débutants MQL4 MT4 MetaTrader 4 - page 229
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Merci, y a-t-il une autre solution ? Ensuite, l'EA ouvre et ferme immédiatement la position.
vous devez fixer l'heure sur la condition
et ne pas le rafraîchir jusqu'à ce que la position soit fermée
soustrayez ensuite de l'heure actuelle l'heure que vous avez mémorisée
, lorsque les secondes données sont écoulées, fermez les positions.
Je l'ai fait.
double op = CalculateProfit() ;
int time_waiting=0 ;
if (op >= Profit)
time_waiting = TimeLocal() + 10 ;
if (TimeLocal() < time_waiting)
{
CloseAll() ;
}
mais cela me donne une erreur
perte éventuelle de données due à la conversion de type
n'est pas une erreur, mais un avertissement : des données peuvent être perdues lors de la conversion d'un type à un autre :
datetime time_waiting;
C'est-à-dire que je ne veux pas que l'EA se ferme dès que je vois 2 livres, mais un peu plus.
Et quoi, toujours après 10 secondes le bénéfice est plus grand ?).
Si cela ne vous dérange pas, aidez-moi à le réparer...
Accepter l'entière responsabilité du fait que
ushort
Le type courtnon signé est le type ushort, qui a également une taille de 2 octets. La valeur minimale est 0, la valeur maximale est 65 535.
int
Le type entier int a une taille de 4 octets (32 bits). La valeur minimale est de -2 147 483 648, la valeur maximale est de 2 147 483 647.
J'ai fait comme vous l'avez dit, mais pour une raison quelconque, après la fermeture, le conseiller expert ferme quelques transactions, malgré le fait que j'ai un délai d'une heure après la fonction CloseAll().
double op = CalculateProfit() ;
si (op >= Profit && LastTime == 0)
LastTime = TimeCurrent () ;
if(LastTime > 0 && TimeCurrent () - LastTime >= Second)
{
CloseAll() ;
LastTime = 0 ;
SendNotification("Trade is over") ;
Sleep(60*60000);// 60.000 = 1 min
}