Erreurs, bugs, questions - page 2068

 
Andrey Khatimlianskii:

Mettez les bûches, ça aura plus de sens. Tant le conseiller expert que le terminal.

Onglet "Terminal

2017.11.10 16:29:01.266 '8615385': order was opened : #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000
2017.11.10 20:37:38.949 '8615385': close order #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000 at price 0.00000
2017.11.10 20:37:39.277 '8615385': close order #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000 at price 0.00000
2017.11.10 20:37:39.745 '8615385': order #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000 closed at price 1.68356
2017.11.10 20:37:39.745 '8615385': order #4448742 sell 0.02 EURNZD closing at 0.00000 failed [Invalid parameters]

Onglet Expert

        Line 8103: 2    16:29:01.266    Forex V2 EURNZD,M1: open #4448742  sell 0.02 EURNZD at 1.68131 ok
        Line 8104: 0    16:29:01.266    Forex V2 EURNZD,M1: Order #4448742  open

        Line 10145: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 1 закрытия/удаления ордера #4448742  Ошибка: 3
        Line 10146: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10147: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 2 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10148: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10149: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 3 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10150: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10151: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 4 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10152: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10153: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 5 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10154: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10155: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 6 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10156: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10157: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 7 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10158: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10159: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 8 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10160: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10161: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 9 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10162: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10163: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 10 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10164: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10165: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 11 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10166: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10167: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 12 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10168: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10169: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 13 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10170: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10171: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 14 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10172: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10173: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 15 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10174: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10175: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 16 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10176: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10177: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 17 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10178: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10179: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 18 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10180: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10181: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 19 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10182: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10183: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 20 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10184: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10185: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 21 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10186: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10187: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 22 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10188: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10189: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 23 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10190: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10191: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 24 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10192: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10193: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 25 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10194: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10195: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 26 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10196: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10197: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 27 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10198: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10199: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 28 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10200: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10201: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 29 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10202: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        Line 10203: 0   20:37:39.760    ExpertName EURNZD,H1: Неудачная попытка 30 закрытия/удаления ордера #4448742  Ошибка: 4108
        Line 10204: 3   20:37:39.760    ExpertName EURNZD,H1: unknown ticket 4448742 for OrderClose function
        
        Line 10243: 2   20:37:39.760    ExpertName EURNZD,H1: close #4448742  sell 0.02 EURNZD at 1.68131 at price 1.68356

Aucune fermeture n'a vraiment lieu après l'erreur 3. Je l'ai compris.

Le conseiller expert n°1 est en train de fermer et le second essayait de fermer la même position en même temps.

J'ai corrigé la logique de fonctionnement et il n'y a plus d'erreurs maintenant.


MAIS : Le numéro d'erreur passe de #3 à #4108 lorsque les paramètres passés à OrderClose() dans la boucle restent inchangés.

Pourquoi la première erreur #3 et ensuite #4108 sont lancées ? - C'est la question qui demeure.

{Si nous regardons les chronologies, alors nous avons une tentative de fermeture d'un ordre verrouillé (dans ce cas, l'erreur 139 elle-même n'est pas affichée), mais après sa fermeture (et donc l'ordre est déverrouillé) nous obtenons l'erreur 3 }.


Pourquoi le terminal ne nous donne-t-il pas une erreur spécifique indiquant que l'ordre est bloqué, mais plutôt l'erreur trop générale 3 ?

 
Kirill Belousov:

MAIS : Changez le numéro d'erreur de #3 à #4108 quand les paramètres passés à OrderClose() dans la boucle sont inchangés.

Pourquoi l'erreur n°3 est la première et ensuite la n°4108 ? - C'est la question qui demeure.

C'est la version du code où il y avait 1 OrderSelect, n'est-ce pas ? Alors le 4108 est justifié.

3 est quand un autre EA ferme une position et 4108 est quand nous essayons de fermer une position déjà fermée.

 
Andrey Khatimlianskii:

C'est la version du code où il y avait 1 OrderSelect, n'est-ce pas ? Alors le 4108 est justifié.

3 est quand un autre EA ferme une position, 4108 est quand nous essayons de fermer une position déjà fermée.

Bien.

Mais pourquoi l'erreur 139 n'est-elle pas générée lorsqu'on essaie de clôturer un ordre qui a déjà été clôturé ?

Après tout, nous avons plutôt la situation de l'erreur 139. N'est-ce pas ?

 

Texte d'erreur incorrect

void f( int &[] ) {}

class A
{
public:
  int Array[];
  
  void f2() const
  {
    f(this.Array); // 'Array' - constant variable cannot be passed as reference
  }
};
 
Ce n'est pas censé jurer
Print(NULL); // 'NULL' - expression of 'void' type is illegal
 
Kirill Belousov:

Correct.

Mais pourquoi l'erreur 139 ne s'affiche-t-elle pas lorsqu'on essaie de clôturer un ordre qui a déjà été envoyé à la clôture ?

Après tout, nous avons plutôt la situation de l'erreur 139. N'est-ce pas ?

Je ne sais pas. Mais on ne peut pas non plus parler de bogue.

 
Andrey Khatimlianskii:

Je ne sais pas. Mais il est difficile d'appeler ça un bug non plus.

2017.11.10 16:29:01.266 '8615385': order was opened : #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000
2017.11.10 20:37:38.949 '8615385': close order #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000 at price 0.00000
2017.11.10 20:37:39.277 '8615385': close order #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000 at price 0.00000
2017.11.10 20:37:39.745 '8615385': order #4448742 sell 0.02 EURNZD at 1.68131 sl: 0.00000 tp: 0.00000 closed at price 1.68356
2017.11.10 20:37:39.745 '8615385': order #4448742 sell 0.02 EURNZD closing at 0.00000 failed [Invalid parameters]

Si vous regardez le journal du terminal, le message d'erreur 3 est généré après la fermeture de la position, et non lorsque le verrouillage du serveur aurait dû être détecté.

Le message d'erreur 139 aurait pu être affiché presque 0,5 seconde plus tôt. Pendant tout ce temps, le conseiller expert "se bloque" pour obtenir l'erreur 3 après la fermeture de l'ordre.

Et d'ailleurs, l'erreur 3 Invalid Parameters figure dans le journal du terminal et 4108 uniquement en raison de sa sortie et uniquement dans l'onglet EA. Il semble que le 4108 soit un traitement côté client.

Je veux juste connaître/comprendre la logique afin de la mettre dans le code plutôt que de tâtonner avec la méthode de la jauge scientifique.... )

Dans quelle autre situation pourrait-on obtenir une erreur 139 que celle-ci... ?

 
Kirill Belousov:

Quelle meilleure situation pour obtenir une erreur 139 que celle-ci... ?

Lorsqu'un ordre en attente/SL/TP est déclenché ou qu'une position est fermée par un stop out (également sur le serveur).

Je ne sais pas pour le 4108.
Mais encore une fois, je ne vois aucune raison de s'y intéresser - si 2 EAs donnent simultanément un ordre de fermeture, l'un d'entre eux aura certainement une erreur (quelle différence cela fait-il ?).
Le traitement est très simple - faire OrderSelect et vérifier OrderCloseTime.

 
Ilnur Khasanov:

wtf ?
du modérateur :
Malheureusement, en raison d'un problème technique, le texte de la description a été supprimé. Veuillez l'écrire à nouveau et envoyer le produit pour vérification.
Nous nous excusons pour le désagrément causé.

Ce n'est pas seulement un inconvénient, c'est une douleur dans le cou plusieurs fois (chaque fois - une attente de 10 jours), et puis effacer et dire : oops, désolé, nous avons effacé, en quelque sorte le restaurer vous-même, puis attendre encore 10 jours. - Et quand j'essaie de le faire, le site se plante...

Qu'est-ce que c'est que ça ? Quel genre de pépin doit-il se produire pour que ça se perde ? Qu'il n'y ait pas d'historique à récupérer ? Le message de description a été stocké pendant quelques jours.
Pourquoi le message du modérateur ne s'est pas affiché cette fois-ci ?

Je sais pertinemment que ce problème d'effacement n'arrive pas une seule fois. Ce prétendu pépin, en fait ce n'est pas un pépin (Probablement retardé), car il n'arrive pas qu'à moi et pas en même temps (le problème existe depuis plus de six mois) ! - Veuillez commenter...

Et s'il vous plaît, réparez-la. Si vous ne pouvez pas, engagez-moi. Je le ferai en une semaine, pour 2 000 euros.

Quel fiasco.

En fait, vont-ils rétablir l'effacement ? La moitié de ma correspondance avec le modérateur a disparu. Les messages du forum ont disparu. Et les modérateurs ont supprimé des messages qui étaient devenus vides.
Pourquoi n'y a-t-il pas de mode de maintenance ? - Il est préférable de dire dans un tel ordre : d'abord le mode est activé, puis le travail est en cours, puis le mode est rétabli.

Dès que j'ai posté un message, le site est en panne. J'ai décidé d'actualiser - le site est en panne...

wtf pour la deuxième fois. le commentaire ci-dessus a été écrit il y a 4 jours. maintenant il revient avec une remarque que j'ai déjà corrigée. j'ai posté une nouvelle version du produit. maintenant elle a disparu. où est passée la nouvelle version ?
Ce n'est pas une façon de travailler - enfin, ce n'est pas sérieux...
Dans un nouveau commentaire au modérateur, j'ai dupliqué la description qui manquait pour ne plus en perdre.
que faire avec le produit ? l'envoyer par email ? le joindre aux commentaires ? ou réessayer et attendre 24 heures ?
 

TimeTradeServer

Возвращает расчетное текущее время торгового сервера. В отличие от функции TimeCurrent(), расчет значения времени производится в клиентском терминале и зависит от настроек времени на компьютере пользователя. Существует 2 варианта функции.

Les paramètres dont nous parlons ne sont pas clairs ! J'ai un courtier d'ouverture qui diffuse 13 heures, l'ordinateur de bureau affiche 13 heures, mais la fonction renvoie 12 heures - comment cela se fait-il ?

Par conséquent, il n'est pas clair pourquoi cette fonction

int Shift=Bars(Symbol(),PERIOD_CURRENT,Open_Time,NowTime);

Calcule tout, siOpen_Time est 13 heures etNowTime est 12 heures.