Erreurs, bugs, questions - page 2841

 
Alexandr Nikolaev:

Avez-vous lu attentivement mon message et ? J'ai volontairement évité de compliquer le code avec différentes normalisations et vérifications. Je fais toujours ça dans mes EA. Vous voyez que dans le code il y a des tentatives d'ouvrir un ordre sans SL et TP ? J'ai spécifiquement enregistré ces tentatives, mais elles n'ont pas fonctionné. Le but de cet EA n'est pas d'ouvrir des ordres comme il se doit mais de faire des tentatives pour au moins faire quelques erreurs et il semble que ce soit 0 tentative ici.

Le but du validateur de marché n' est pas de laisser passer de tels codes sans vérification... Sinon, le marché serait inondé de codes de mauvaise qualité...

Le code ne passe pas la validation ? Lisez ce message. Il ne repasse pas ? Relisez-le...

 
Alexandr Nikolaev:

Ce n'est pas à propos du lot, je mettais n'importe quel lot, et je faisais la normalisation du lot, et il y avait des erreurs, mais ici, ça ne jure par rien, sauf qu'il n'y a pas de transactions.

https://www.mql5.com/ru/forum/296801/page15#comment_17812974
Avec des fonds de 1 dollar, il n'y aura pas de transactions. C'est ce que dit le validateur.
Et en général, le sujet est correct à déplacer.

Замучила ошибка there are no trading operations
Замучила ошибка there are no trading operations
  • 2020.07.30
  • www.mql5.com
Не первый день пытаюсь понять природу ошибки there are no trading operations, которая появляется независимо от того, прописываю я в робота кучу про...
 

J'ai remarqué une chose désagréable, je ne me suis pas connecté ni installé le terminal de toute la soirée d'hier - je voulais vérifier pourquoi mon navigateur changeait ?

dans la première image avant de se connecter et d'installer le terminal.

dans la deuxième image, j'ai installé le terminal et visité le site - et mon navigateur a changé, comment le réparer ? et qu'est-ce que cela peut être ?

---------------------------------------------

(Le navigateur est une fenêtre sur le monde - et comment, je ne veux pas que le monde entier, viennent sans demander mon espace. )

Dossiers :
m8lv.PNG  873 kb
aerb_2.PNG  138 kb
 
SanAlex:

J'ai remarqué une chose désagréable, je ne me suis pas connecté ni installé le terminal de toute la soirée d'hier - je voulais vérifier pourquoi mon navigateur changeait ?

dans la première image avant de se connecter et d'installer le terminal.

dans la deuxième image, j'ai installé le terminal et visité le site - et mon navigateur a changé, comment le réparer ? et qu'est-ce que cela peut être ?

---------------------------------------------

(Le navigateur est une fenêtre sur le monde - et comment, je ne veux pas que le monde entier, sans être demandé à entrer dans mon espace. )

J'ai répété l'installation jusqu'au premier point de restauration du système, puis je suis allé dans les paramètres du navigateur et je les ai mis à jour.

- Il s'est avéré que le navigateur effectuait lui-même ces modifications. Donc mt5 n'a rien à voir avec ça et le site non plus.

- Je m'excuse auprès du site web pour mes doutes.

Dossiers :
15vvcg.PNG  116 kb
 

J'ai obtenu ceci en changeant de compte de trading

2020.09.02 18:55:24.767 VR Watch list and linker (NMTP.MM,H1)   Access violation at 0x00007FF8622C72A6 write to 0x0000000000000024
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C71E0 803 D21E2150000    cmp        byte [rip+0x15e221], 0x0
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C71E7 0 F95C0            setnz      al
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C71EA C3                ret        
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C71EB CC                int3       
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7200 48895 C2418        mov        [rsp+0x18], rbx
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7205 55                push       rbp
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7206 56                push       rsi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7207 57                push       rdi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7208 4154              push       r12
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C720A 4155              push       r13
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C720C 4156              push       r14
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C720E 4157              push       r15
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7210 4881 ECA0000000    sub        rsp, 0xa0
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7217 488 B05C2621700    mov        rax, [rip+0x1762c2]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C721E 4833 C4            xor        rax, rsp
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7221 4889842490000000  mov        [rsp+0x90], rax
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7229 654 C8B2C25300000  mov        r13, [gs:0x30]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                                  00
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7232 488 D05BF821500    lea        rax, [rip+0x1582bf]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7239 4032 ED            xor        bpl, bpl
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C723C 89542448          mov        [rsp+0x48], edx
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7240 33 F6              xor        esi, esi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7242 40886 C2440        mov        [rsp+0x40], bpl
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7247 4 C896C2450        mov        [rsp+0x50], r13
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C724C 488 BD9            mov        rbx, rcx
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C724F 448 BE6            mov        r12d, esi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7252 483 BC8            cmp        rcx, rax
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7255 0 F8438010000      jz         dword 0x7ff8622c7393
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C725B 403835 A6E11500    cmp        [rip+0x15e1a6], sil
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7262 0 F859B010000      jnz        dword 0x7ff8622c7403
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7268 3935 BAE11500      cmp        [rip+0x15e1ba], esi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C726E 0 F855D010000      jnz        dword 0x7ff8622c73d1
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7274 4038357 DDC1500    cmp        [rip+0x15dc7d], sil
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C727B 488 D3D7EDC1500    lea        rdi, [rip+0x15dc7e]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7282 480 F45FE          cmovnz     rdi, rsi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7286 48397318          cmp        [rbx+0x18], rsi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C728A 0 F84D1000000      jz         dword 0x7ff8622c7361
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7290 488 B03            mov        rax, [rbx]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7293 4883 F8FF          cmp        rax, 0xff
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C7297 0 F84D1000000      jz         dword 0x7ff8622c736e
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C729D 448 BFE            mov        r15d, esi
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72A0 4883 F8FF          cmp        rax, 0xff
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72A4 7403              jz         0x7ff8622c72a9
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)      crash -->  00007 FF8622C72A6 FF4024            inc        dword [rax+0x24]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72A9 4 C8B7318          mov        r14, [rbx+0x18]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72AD 4 C8D2D44821500    lea        r13, [rip+0x158244]
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72B4 BD22170000        mov        ebp, 0x1722
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72B9 E872890300        call       0x7ff8622ffc30  ; RtlGetCurrentTransaction (ntdll.dll)
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72BE 85 C0              test       eax, eax
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)                 00007 FF8622C72C0 0 F855E0B0A00      jnz        dword 0x7ff862367e24
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   00: 0x00007FF8622C72A6
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   01: 0xFFFFFFFFFFFFFFFF
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   02: 0x000002351BFE1278
2020.09.02 18:55:24.771 VR Watch list and linker (NMTP.MM,H1)   
 
Pouvez-vous me dire si le conseiller expert peut se référer à d'autres symboles dans le cadre de son travail sur un symbole ? Par exemple, mon Expert Advisor fonctionne sur le AUD/usd, et je veux implémenter une analyse à l'intérieur de l'exécution de son code, par exemple l'or, qui amène le robot à prendre des décisions sur les actions ultérieures sur les trades aud/usd. Voici un exemple. Je veux faire des calculs basés sur les principales devises dans une EA, disons sept. Je veux essayer d'implémenter l'analyse inter-personnelle. Les nouvelles paraissent dans un pays, le prix saute et sur la base de ces changements, une décision est prise d'ouvrir des ordres pour 1 à 7 paires. Théoriquement, cela est possible sans l'utilisation de programmes et de services externes au sein de MQL4 ? Que pensez-vous de MQL5 ?
 
Denis Diakonov:
Pouvez-vous me dire si un EA peut accéder à d'autres symboles tout en travaillant sur un symbole ? Par exemple, mon Expert Advisor a été lancé sur l'AUD/usd et je veux pouvoir ajouter dans son code une analyse, par exemple, de l'or, qui permettra à mon robot de prendre des décisions sur les actions à mener sur les trades aud/usd. Voici un exemple. Je veux faire des calculs basés sur les principales devises au sein d'un EA sur un graphique. Je veux essayer d'implémenter l'analyse inter-personnelle. Les nouvelles paraissent dans un pays, le prix saute et sur la base de ces changements, une décision est prise d'ouvrir des ordres pour 1 à 7 paires. Théoriquement, cela est possible sans l'utilisation de programmes et de services externes au sein de MQL4 ? Que pensez-vous de MQL5 ?

Il n'y a pas de limitations pour les MQL5 Expert Advisors : en travaillant sur un symbole, les MQL5 Expert Advisors peuvent librement analyser les OHLC des cadres temporels et des symboles d'autres personnes, et peuvent librement ouvrir des positions et placer des ordres en attente sur d'autres symboles.

 

Je vais reposer la question de l'erreur "hidden method calling". Il y a un code :

class A
{
  public:
    virtual void extend(int x) = 0; // if removed in both classes - no warning
    virtual void extend(string x)
    {
    }
};

class B: public A
{
  public:
    virtual void extend(int x) override
    {
    }
};

void OnStart()
{
  B b;
  b.extend(""); // deprecated bla-bla-bla
}

Expliquez pourquoi une méthode avec un paramètre de type string est cachée même si elle est publique et non surchargée ? Pourquoi dois-je le surcharger dans une classe dérivée ? Et pourquoi l'avertissement disparaît-il si je supprime une méthode surchargée avec un type de paramètre différent ?

 
Stanislav Korotky:

1. Expliquez pourquoi une méthode dont le paramètre est de type string est cachée, même si elle est publique et non surchargée ?
2. Pourquoi dois-je le surcharger dans une classe dérivée ?
3. Et pourquoi l'avertissement disparaît-il si je supprime une méthode surchargée avec un type de paramètre différent ?

1. Norme C++ pour la sélection d'une fonction surchargée (méthode de classe surchargée).
La première fonction correspondante est recherchée par nom, et non par signature, en partant de la classe actuelle et en allant dans chaque classe de base.

2. Norme C++. Il est nécessaire de remplacer ou d'utiliser explicitement la déclaration d'utilisation.
En MQL, les méthodes et les champs de la classe de base sont "directement disponibles" à partir des classes dérivées

.
En fait, le comportement d'héritage dans MQL est similaire à l'utilisation de la déclaration pour chaque champ et méthode de base en C++.
Dans MQL, d'une part ils ajoutent de la liberté, mais d'autre part ils exigent les mêmes choses qu'en C++, mais ne fournissent absolument aucune méthode pour contourner les avertissements ridicules du point de vue de l'utilisateur.


 
Sergey Dzyublik:

Dans MQL, d'une part ils ajoutent de la liberté, mais d'autre part ils exigent les mêmes choses qu'en C++, mais ne fournissent absolument aucune méthode pour contourner les avertissements ridicules du point de vue de l'utilisateur.

Ce n'est pas ridicule : l'intérêt de cet avertissement est qu'aujourd'hui il compile, et demain il ne le fera pas. Ou (pire encore) une autre méthode sera appelée, "bonté" des conversions implicites douteuses de chaînes de caractères dans MQL.

Le fait qu'il n'y aura pas de recherche de la meilleure méthode par type(1) peut s'expliquer par le souci de l'utilisateur, mais le fait qu'il n'y aura pas de recherche par le nombre de paramètres(2)- c'est deux pas en arrière.