Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 815
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
Et quand pensez-vous que ce cycle devrait se terminer ?
?
Corrigé :
if(R==0)
{
while(true)
{
Sleep(30000);
Alert("Ошибка!");
DeleteBuy=OrderDelete(OrderTicketBuy);
DeleteSell=OrderDelete(OrderTicketSell);
return(1);
}
}
Calcul du bénéfice également.
J'ai inséré un message et un traitement des erreurs dans la boucle while (true). La boucle fonctionne, le message est écrit, pas d'erreur. Mais il ne passe pas la condition, les données ne semblent pas être mises à jour.
J'ai inséré un message et un traitement des erreurs dans la boucle while (true). La boucle fonctionne, le message est écrit, pas d'erreur. Mais il ne passe pas la condition, les données ne sont pas mises à jour.
Voici quelques conseils supplémentaires.
Ce cycle ne prend pas en compte toutes les commandes ; de plus, s'il y a plus d'une commande d'un même type (par exemple, trois commandes bystop sont passées), que se passera-t-il ?
En fait, ce devrait être l'inverse : nous devrions d'abord choisir un ordre, et seulement si un ordre est choisi, nous devrions vérifier son type et faire toutes sortes de bêtises à son sujet :
Et dans le "sweep-switch-which-type-traits-stoploss", pourquoi exactement ??? Et quand cette ligne sera-t-elle exécutée, dans un premier temps et dans un second temps ?
Ici, le type d'ordre est d'abord considéré, puis l'ordre est sélectionné. En fait, cela devrait être l'inverse, il faut d'abord sélectionner l'ordre, puis si l'ordre est sélectionné, regarder son type et s'en moquer de toutes sortes de façons :
donc :
if(R==1)//238
{
Alert("yes");
R=0;
SelectBuy=OrderSelect(OrderTicketBuy,SELECT_BY_TICKET);
}
if(R==2)//245
{
Alert("yes");
R=0;
SelectSell=OrderSelect(OrderTicketSell,SELECT_BY_TICKET);
}
Et dans le "scroll-type-tralit-stoploss"( =D. Qu'est-ce que tu n'aimes pas ? Je trouve ça normal, c'est très clair. ), pourquoi exactement partout ? Et quand cette ligne sera-t-elle exécutée, dans un premier temps et dans un second temps ?
De cette façon, il sera exécuté par condition :
Timen=OrderCloseTime();
if(Timen>0)
{
DeleteSell=OrderDelete(OrderTicketSell);
OldProfit=0;
WarBuy=true;
break;
}
Eh bien, oui, la rupture apparaîtra mieux dans la chaîne OrderClose. Ensuite, nous devons ajouter OrderDelete.
Voici quelques conseils supplémentaires.
Cette boucle ne prend pas en compte tous les ordres. En outre, s'il y a plus d'ordres d'un type que d'un autre (par exemple, trois ordres bystop sont placés), que se passera-t-il ?
OrdersTotal commence à partir de 1 et OrderSelect à partir de 0.
Y a-t-il plus d'un ordre du même type sur 1 symbole ? Non. Mais je vais regarder à nouveau.
Nous avons besoin d'une condition proche de celle-ci : "Si MA==prix, alors".
Cela fera l'affaire :
if((MA>Open[0] && MA<Close[0]) || (MA<Open[0] && MA>Open[0]))
P.S. : Bonne année !
Bonne année !
J'ai récemment commencé à étudier MQL 4 et je voulais poser une question :
Par exemple, j'ai une condition pour ouvrir un ordre :
si (Bid>=SS+5*Point)
OrderSend(Symbol(),OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,NULL,Magic,0,Green) ;
La question est la suivante : quelle condition doit être spécifiée pour ouvrir le deuxième ordre si le premier ordre a un bénéfice de 10 points ou plus ?
Bonne année !
J'ai récemment commencé à étudier MQL 4 et je voulais poser une question :
Par exemple, j'ai une condition pour ouvrir un ordre :
si (Bid>=SS+5*Point)
OrderSend(Symbol(),OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,NULL,Magic,0,Green) ;
La question est la suivante : quelle est la condition à spécifier pour ouvrir le deuxième ordre dans le cas où le premier ordre a un profit de 10 points ou plus ?
Regardez ici, il y a beaucoup de fonctions pour presque tous les cas.
https://www.mql5.com/ru/forum/131859
Bonne année !
J'ai récemment commencé à étudier MQL 4 et je voulais poser une question :
Par exemple, j'ai une condition pour ouvrir un ordre :
si (Bid>=SS+5*Point)
OrderSend(Symbol(),OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,NULL,Magic,0,Green) ;
Maintenant, la question est la suivante : quelles conditions doivent être spécifiées pour ouvrir le deuxième ordre si le premier ordre a un profit de 10 points ou plus ?
Présélectionner la commande OrderSelect (Ticket_first_order, SELECT_BY_TICKET) ;
si(OrderOpenPrice()+10*Point==Ask)
OrderSend(Symbol(),OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,NULL,Magic,0,Green) ;
Нужно условие максимально приближенное к этому: "если MA==цене, то".
Такое пойдет:
if((MA>Open[0] && MA<Close[0]) || (MA<Open[0] && MA>Open[0]))
Hourra, ça a l'air de marcher. J'ai inséré l'opérateur return et "O" dans chaque boucle pour éviter les opérations inutiles.
Un problème : les ordres sont maladroits - je ne sais pas comment formuler la condition.
J'ai un trader appelé forexstart, si cela fait une différence. le problème est que j'ai écrit un robot de trading qui fonctionne sur des graphiques de 1 minute. il analyse l'historique sur de nombreux graphiques, l'historique est donné pour environ un mois et demi et pas plus.
j'ai un robot de trading qui fonctionne sur un graphique d'une minute. il analyse l'historique. sur de nombreux graphiques, l'historique est donné pour environ un mois et demi et pas plus, bien que le graphique horaire - quotidien - annuel montre l'historique.
Comment puis-je y faire face ?
J'ai un trader appelé forexstart, si cela fait une différence. le problème est que j'ai écrit un robot qui fonctionne sur des graphiques de 1 minute. il analyse l'historique sur de nombreux graphiques et n'affiche rien d'autre.
j'ai un robot de trading qui fonctionne sur le graphique d'une minute. il affiche l'historique. sur de nombreux graphiques, l'historique est donné pour environ un mois et demi et pas plus, bien que le graphique horaire - quotidien - annuel affiche l'historique. il y a aussi des cas où il revient à une certaine date puis s'interrompt, le jeu continue il y a quelques mois, bien que les graphiques supérieurs montrent tout à nouveau.
Comment puis-je y faire face ?