Questions des débutants MQL5 MT5 MetaTrader 5 - page 181

 

Veuillez m'indiquer comment augmenter le volume d'une position ouverte, par exemple, lorsqu'un nouveau signal est émis. Je n'utilise pas la bibliothèque Trade\Trade.mqh. La demande ressemble à ceci :

 if(!PositionSelect(_Symbol))
 mrequest.action = TRADE_ACTION_DEAL;              // немедленное исполнение
      mrequest.price =  NormalizeDouble(Ask,_Digits);   // последняя цена ask
      mrequest.sl = NormalizeDouble(mrequest.price - SL*_Point,_Digits);                                   // Stop Loss
      mrequest.tp = NormalizeDouble(mrequest.price + TP*_Point,_Digits);                                // Take Profit
      mrequest.symbol = _Symbol;                        // символ
      mrequest.volume = lot1;                            // количество лотов для торговли
      mrequest.magic = Mag1;                               // Magic Number
      mrequest.type = ORDER_TYPE_BUY;                   // ордер на покупку
      mrequest.type_filling = ORDER_FILLING_FOK;        // тип исполнения ордера - все или ничего
      mrequest.deviation=10;                            // проскальзывание от текущей цены
                                        
      OrderSend(mrequest,mresult);                       // отсылаем ордер
      if(mresult.retcode==10009 || mresult.retcode==10008)
        Print("Оpen position Buy");
Ou dois-je créer une nouvelle demande en utilisant TRADE_TRANSACTION_ORDER_ADD?
 

J'ai écrit ma classe, je l'ai mise dans le dossier include, j'ai créé un script, j'ai écrit le chemin vers ma classe, mais les fonctions ne sont pas mises en évidence. Si vous écrivez du code utilisant mes fonctions, elles fonctionneront, mais elles ne sont pas mises en évidence. La mise en évidence des bibliothèques standard est. Veuillez me dire ce que je dois faire pour que mes fonctions soient mises en évidence ?

Voici une telle classe

class BaseClass
   {
    protected:
    
    public:
    
    //конструктор
    void BaseClass(){};
    
    void Fly()
      {
       Alert ("Go fly");
      }
      
    void Move()
      {
       Alert ("Go move");
      }
   };
 
trora:

situation-un ordre ouvert dans mt4. lorsque le moment est venu de le clôturer, j'appuie sur x dans la fenêtre de transaction, où se trouve la fin de la ligne d'ordre. comment la procédure de clôture est-elle effectuée ? quelles étiquettes. quels identifiants de transaction sont envoyés ?

i>La compréhension est nécessaire pour un problème plus important.

lors de l'ouverture du compte d'un investisseur, tous les ordres du gestionnaire qui ont été précédemment ouverts y sont copiés.

la priorité absolue est de trouver comment copier uniquement les nouveaux ordres ouverts et fermés par le gestionnaire après la saisie du compte d'un investisseur.

si vous savez comment faire, décrivez-le en détail.

si vous savez ce qui est impossible, veuillez expliquer le raisonnement.

seulement imho : quand x est cliqué, la commande est fermée selon le ticket de commande.

le copieur ne doit pas compter les opérations avant un certain temps (par exemple, une variable externe ou l'heure de démarrage du copieur).

 
BigfOOt:

Pouvez-vous me dire ce que je dois faire pour que mes fonctions soient mises en évidence ?

Vous ne pouvez pas. La mise en évidence des fonctions utilisateur n'est pas implémentée. Essayez de contacter le Service Desk et demandez-leur de l'implémenter. Ils peuvent le faire.
 
MetaDriver:
Vous ne pouvez pas. Les fonctions de l'utilisateur ne sont pas mises en évidence. Essayez de contacter le Service Desk et demandez-lui de l'implémenter. Il pourrait le faire.
J'ai écrit au Service Desk il y a quelque temps. Ils semblaient l'approuver.
 
Swan:

seulement imho : quand vous cliquez sur x l'ordre est fermé selon le ticket de l'ordre.

il est théoriquement possible de résoudre ce problème - le copieur ne devrait pas considérer les transactions avant un certain temps (par exemple : soit une variable externe, soit le moment du déclenchement du copieur).

Je veux donc savoir (je ne suis pas un programmeur, le cas échéant) - est-ce que le ticket est envoyé avec tous les paramètres - y compris le numéro, l'heure d'ouverture, le prix et le volume, ou seulement le numéro d'un ordre ouvert - qui est fermé ?

9 il est évident que j'ai besoin d'un filtre par heure d'exécution du copieur ou par heure d'ouverture du compte. je devrais simplement le comprendre moi-même - afin de pouvoir l'expliquer clairement au programmeur

 
MetaDriver:
Vous ne pouvez pas. La fonction personnalisée de mise en évidence n'est pas implémentée. Essayez de contacter le Service Desk et demandez-leur de l'implémenter. Ils peuvent le faire.
J'ai écrit ma classe et mon conseiller expert l'été dernier, et la mise en évidence de mes fonctions fonctionnait, et maintenant ce n'est plus le cas. Pourquoi ai-je dû le supprimer...
 
BigfOOt:
L'été dernier, j'ai écrit ma classe et mon expert et j'ai souligné que mes fonctions fonctionnaient, mais maintenant ce n'est plus le cas. Pourquoi l'avoir supprimé...
Demandez au bureau de service. Cela arrive quand quelque chose se casse avec les mises à jour.
 
Bonjour, chers amis. J'ai du mal à comprendre les paramètres d'optimisation de l'EA. J'essaie de modifier l'un des paramètres dans les propriétés de l'EA, par exemple, le tirage maximal, mais après avoir modifié le paramètre, il revient à la valeur par défaut de 70. Comment puis-je le changer pour, par exemple, 30 ?
 
MetaDriver:
Vous ne pouvez pas. La fonction personnalisée de mise en évidence n'est pas implémentée. Essayez de contacter le Service Desk et demandez-leur de l'implémenter. Ils peuvent le faire.
Hm, qu'est-ce que la "mise en évidence des fonctions utilisateur" ? On dirait que c'est tout ce qu'il y a...