Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 58

 
Vitaly Muzichenko:

Voici

void OnTick()
{
  Comment( cLot(100)," | ",AccountFreeMarginCheck(_Symbol,OP_BUY,cLot(100)) );
}
Bonne chance à vous. J'ai une erreur.
 
Movlat Baghiyev:
Bonne chance à vous. J'ai une erreur.
Alors, revenons en arrière. Montrez-moi votre code. J'utilise la même formule pour calculer le lot, tout fonctionne.
 

Ainsi, une version plus ou moins fonctionnelle de l'EA précédente est prête.

Voici l'essentiel.

par exemple, vous avez 50 commandes

à la commande "close all", maximum 15 d'entre elles sont fermées ; toutes les autres ont des timeouts et des requotes

Les autres nécessitent des passages répétés et lors de mouvements brusques, le nombre de passages augmente considérablement.

Est-il possible de mettre cela sur mon compte ?

D'après ce que je sais, de tels appels au chef des serveurs ne sont pas les bienvenus, mais je peux me tromper.

 
trader781:

Ainsi, une version plus ou moins fonctionnelle de l'EA précédente est prête.

Voici l'essentiel.

par exemple, vous avez 50 commandes

à la commande "close all", maximum 15 d'entre elles sont fermées ; toutes les autres ont des timeouts et des requotes

Les autres nécessitent des passages répétés et lors de mouvements brusques, le nombre de passages augmente considérablement.

Est-il possible de mettre cela sur mon compte ?

D'après ce que je sais, de tels appels au chef des serveurs ne sont pas les bienvenus, mais je peux me tromper.

Afin de ne pas psycho chef ne devrait pas répéter stupidement, et d'analyser les erreurs et de prendre une décision compétente, d'essayer à nouveau ou de sauter.

Alternativement, si le cycle est construit de 0 à ... alors le saut est inévitable. Utiliser une boucle inverse

for(int i = OrdersTotal(); i >= 0; --i)
 
Alexey Viktorov:

Pour éviter que le chef ne s'affole, il ne faut pas répéter bêtement, mais analyser les erreurs et prendre une décision intelligente : réessayer ou laisser tomber.

Alternativement, si le cycle est construit de 0 à ... alors le saut est inévitable. Utiliser une boucle inverse

for(int i = OrdersTotal(); i >= 0; --i)
CommandesTotal()-1
 
Artyom Trishkin:
CommandesTotal()-1
Alexey Viktorov:

Pour éviter que le chef ne s'affole, il ne faut pas répéter bêtement, mais analyser les erreurs et prendre une décision intelligente : réessayer ou laisser tomber.

Alternativement, si le cycle est construit de 0 à ... alors le saut est inévitable. Utilisez la boucle inverse

for(int i = OrdersTotal(); i >= 0; --i)

voici un morceau de log pendant le traitement en cours, une partie est modifiée, et, quelle que soit la commande, toutes les commandes ne sont pas déclenchées, s'il y a plus de 20 commandes, ceci est répété pour toutes à chaque commande, et seul le testeur

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testeur : stop loss #716 à 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testeur : stop loss #715 à 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testeur : stop loss #714 à 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testeur : stop loss #713 à 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testeur : stop loss #712 à 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:03:00 Testeur : stop loss #711 à 1.05321 (1.05297 / 1.05347)

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1 : modify #711 sell 0.01 EURUSD at 1.05862 sl : 1.05321 tp : 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : modify #712 sell 0.02 EURUSD at 1.05682 sl : 1.05321 tp : 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1 : modify #713 sell 0.04 EURUSD at 1.05388 sl : 1.05321 tp : 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : modify #714 sell 0.08 EURUSD at 1.05229 sl : 1.05321 tp : 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1 : modify #715 sell 0.16 EURUSD at 1.05077 sl : 1.05321 tp : 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Moving tral-martin EURUSD,M1 : modify #716 sell 0.32 EURUSD at 1.05232 sl : 1.05321 tp : 0.00000 ok

2017.01.05 18:31:44.919 2016.12.14 23:01:00 Tral-martin mobile EURUSD,M1 : ouvrir #716 vendre 0.32 EURUSD à 1.05232 ok

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1 : Erreur OrderModify 4051

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1 : stoploss invalide pour la fonction OrderModify

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Moving tral-martin EURUSD,M1 : modify #715 sell 0.16 EURUSD at 1.05077 sl : 200.00000 tp : 0.00000 ok

2017.01.05 18:31:44.918 2016.12.14 22:52:00 Tral-martin mobile EURUSD,M1 : ouvrir #715 vendre 0.16 EURUSD à 1.05077 ok

2017.01.05 18:31:44.918 2016.12.14 22:44:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.918 2016.12.14 22:44:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.918 2016.12.14 22:44:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1 : Erreur OrderModify 4051

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Moving tral-martin EURUSD,M1 : stoploss invalide pour la fonction OrderModify

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Tral-martin mobile EURUSD,M1 : modifier #714 vendre 0.08 EURUSD à 1.05229 sl : 200.00000 tp : 0.00000 ok

2017.01.05 18:31:44.917 2016.12.14 22:44:00 Tral-martin mobile EURUSD,M1 : ouvrir #714 vendre 0.08 EURUSD à 1.05229 ok

2017.01.05 18:31:44.916 2016.12.14 22:09:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.916 2016.12.14 22:09:00 Tral-martin mobile EURUSD,M1 : Erreur OrderClose 138

2017.01.05 18:31:44.916 2016.12.14 22:09:00 Moving tral-martin EURUSD,M1 : Erreur OrderModify 4051

 
Artyom Trishkin:
CommandesTotal()-1

Non. C'est vrai. Artyom, lisez les fonctions d'incrémentation/décrémentation des préfixes et postfixes.

Dans ma version, la valeur de départ est d'abord diminuée de 1, puis le cycle commence.

 
Alexey Viktorov:

Non. C'est vrai. Artyom, lisez les fonctions d'incrémentation/décrémentation des préfixes et postfixes.

Dans ma version, la valeur de départ est d'abord diminuée de 1, puis le cycle commence.

Je n'ai pas fait attention à la décrémentation - je suis sur mon portable...
 

trader781:   вот кусок журнала при текущей обработке, часть кроется часть модифицируется, причем вне зависимости от команды сработают не все ордера, если ордеров больше 20, это повторяется для всех при каждой команде, а ведь только тестер

Encore une fois avec un glissement nul (138) ?

Et les stoploss ne sont pas calculés correctement, selon le journal de bord.
 
Vitalie Postolache:

Encore une fois avec un glissement nul (138) ?

50 est partout

le fait qu'avec un grand nombre de commandes, toutes ne sont pas simultanément fermées ou modifiées

Stop Losses - je m'en fous, je les résoudrai quand je les fermerai tous en même temps.

pour l'instant, c'est comme ça

https://www.mql5.com/ru/charts/6368852/eurusd-m1-metaquotes-software-corp

График EURUSD, M1, 2017.01.05 17:10 UTC, MetaQuotes Software Corp., MetaTrader 4, Demo
График EURUSD, M1, 2017.01.05 17:10 UTC, MetaQuotes Software Corp., MetaTrader 4, Demo
  • www.mql5.com
Символ: EURUSD. Период графика: M1. Брокер: MetaQuotes Software Corp.. Торговая платформа: MetaTrader 4. Режим торговли: Demo. Дата: 2017.01.05 17:10 UTC.