Si vous cliquez avec le bouton droit de la souris dans l'onglet graphique du testeur MT4 et sélectionnez "Copier", la fenêtre/menu contextuel ne disparaît pas.
Bonjour à tous) S'il vous plaît, aidez-moi à écrire un code (plus correctement une petite partie) mon but est d'écrire une fonction qui sélectionne l'historique des commandes et là j'ai besoin de voir la valeur à laquelle la dernière commande a été fermée, positive ou négative. Veuillez indiquer qui fait cela (je me creuse déjà les méninges )))))).
Bonjour à tous) S'il vous plaît, aidez-moi à écrire un code (plus correctement une petite partie) mon but est d'écrire une fonction qui sélectionne l'historique des commandes et là j'ai besoin de voir la valeur à laquelle la dernière commande a été fermée, positive ou négative. Si vous connaissez le code, veuillez m'en informer (je me suis déjà creusé la tête). )))))
Merci d'avance.
MQL4
//+------------------------------------------------------------------+// Возвращает флаг закрытия последней позиции в убытке. Позиция выбирается по символу, типу и магикуbool isLossLastClosePos(string sy, int op, int mn) {
datetime t=0;
int i, j=EMPTY;
for(i=OrdersHistoryTotal()-1; i>=0; i--) {
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {
if(OrderMagicNumber()!=mn) continue;
if(OrderSymbol()!=sy) continue;
if(OrderType()!=op) continue;
if(t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
if(OrderSelect(j,SELECT_BY_POS,MODE_HISTORY)) {
if(OrderProfit()+OrderCommission()+OrderSwap()<0) return(true);
}
return(false);
}
//+------------------------------------------------------------------+// Возвращает флаг закрытия последней позиции в убытке. Позиция выбирается по символу и магикуbool isLossLastClosePos(string sy, int mn) {
datetime t=0;
int i, j=EMPTY;
for(i=OrdersHistoryTotal()-1; i>=0; i--) {
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {
if(OrderMagicNumber()!=mn) continue;
if(OrderSymbol()!=sy) continue;
if(OrderType()>1) continue;
if(t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
if(OrderSelect(j,SELECT_BY_POS,MODE_HISTORY)) {
if(OrderProfit()+OrderCommission()+OrderSwap()<0) return(true);
}
return(false);
}
//+------------------------------------------------------------------+
Nous le vérifions de cette façon :
if(isLossLastClosePos(symbol, magic)) {
// последняя позиция закрыта в убытке
}
Bonjour à tous) S'il vous plaît, aidez-moi à écrire un code (plus correctement une petite partie) mon but est d'écrire une fonction qui sélectionne l'historique des commandes et là j'ai besoin de voir la valeur à laquelle la dernière commande a été fermée, positive ou négative. Veuillez indiquer qui fait cela (je me creuse déjà les méninges )))))).
Merci d'avance.
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.05.2008 |//| Описание : Возвращает тип закрытия по профиту, //| 1= позиция закрыта в профите, |//| 2- позиция закрыта в минусе |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+int isCloseLastPosByStoporTake(string sy="", int op=-1, int mn=-1) {
datetime t;
int i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
double ocp=OrderProfit();
if (OrderProfit()+OrderCommission()+OrderSwap()>0) return(1);
if (OrderProfit()+OrderCommission()+OrderSwap()<0) return(2);
}
return(0);
}
Pour le savoir, il faut faire ceci :
if(isCloseLastPosByStoporTake("",-1,-1)==1) // Позиция закрыта в плюсеif(isCloseLastPosByStoporTake("",-1,-1)==2) // Позиция закрыта в минусе
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает флаг убыточности последней позиции. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+bool isLossLastPos(string sy="", int op=-1, int mn=-1) {
datetime t;
int i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderProfit()<0) return(True);
}
return(False);
}
Vous réalisez que vous êtes stupide avec vos sous-entendus maintenant, n'est-ce pas ?
Le code est le mien. J'ai pris la logique et les noms de variables d'Igor. Donc je ne prends pas votre allusion. Le nom de la fonction ? Est-ce que ça reflète le sens, ou est-ce que tu ne connais pas l'anglais ?
Vous réalisez que vous êtes stupide avec vos sous-entendus maintenant, n'est-ce pas ?
Le code est le mien. J'ai pris la logique et les noms de variables d'Igor. Donc je ne prends pas votre allusion. Le nom de la fonction ? Est-ce que ça a du sens, ou est-ce que tu es nul en anglais ?
C'est un mec. Aucun commentaire. Bonne chance avec ça. Je me fiche de la façon dont vous écrivez ou de qui vous adoptez. Je viens de voir le vrai visage.
A quoi sert le modificateur const à la fin d'une méthode ?
Quels avantages obtenons-nous en utilisant ce modificateur dans l'initialisation des noms de variables ?
Je suis conscient du fait que la variable ne peut pas changer et obtenir une valeur différente.
Peut-être que ce modificateur accélère le fonctionnement du programme ?
Cela vient de OOP. Cela signifie que la méthode ne modifie pas l'objet à partir duquel elle est appelée. Les arguments n'ont rien à voir avec cela.
L'avantage est que lorsque vous regardez le prototype, vous verrez que l'objet ne sera pas modifié, c'est-à-dire qu'il sera visible.
Bonjour à tous) S'il vous plaît, aidez-moi à écrire un code (plus correctement une petite partie) mon but est d'écrire une fonction qui sélectionne l'historique des commandes et là j'ai besoin de voir la valeur à laquelle la dernière commande a été fermée, positive ou négative. Veuillez indiquer qui fait cela (je me creuse déjà les méninges )))))).
Merci d'avance.
Bonjour à tous) S'il vous plaît, aidez-moi à écrire un code (plus correctement une petite partie) mon but est d'écrire une fonction qui sélectionne l'historique des commandes et là j'ai besoin de voir la valeur à laquelle la dernière commande a été fermée, positive ou négative. Si vous connaissez le code, veuillez m'en informer (je me suis déjà creusé la tête). )))))
Merci d'avance.
MQL4
Nous le vérifions de cette façon :
Bonjour à tous) S'il vous plaît, aidez-moi à écrire un code (plus correctement une petite partie) mon but est d'écrire une fonction qui sélectionne l'historique des commandes et là j'ai besoin de voir la valeur à laquelle la dernière commande a été fermée, positive ou négative. Veuillez indiquer qui fait cela (je me creuse déjà les méninges )))))).
Merci d'avance.
Pour le savoir, il faut faire ceci :
MQL4
Vérifiez comme ça :
))))
))))
Vous réalisez que vous êtes stupide avec vos sous-entendus maintenant, n'est-ce pas ?
Le code est le mien. J'ai pris la logique et les noms de variables d'Igor. Donc je ne prends pas votre allusion. Le nom de la fonction ? Est-ce que ça reflète le sens, ou est-ce que tu ne connais pas l'anglais ?
MQL4
Vérifiez comme ça :
pour savoir ce que vous faites :
Merci beaucoup ! !!
Vous réalisez que vous êtes stupide avec vos sous-entendus maintenant, n'est-ce pas ?
Le code est le mien. J'ai pris la logique et les noms de variables d'Igor. Donc je ne prends pas votre allusion. Le nom de la fonction ? Est-ce que ça a du sens, ou est-ce que tu es nul en anglais ?