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

 
ANDREY:

Veuillez me dire ce que signifie EA dans le contexte de ce que vous avez écrit dans votre message. Je veux trouver et lire plus sur ce sujet.....
Merci.

EA = Expert Advisor

EA

C'est la première fois que je vois quelqu'un sur ce forum qui n'a pas compris l'abréviation...

Je n'ai pas essayé de placer un ordre dans MT5 en remplissant toute la structure de la demande, il y a un SB, si vous le comprenez, c'est une ligne pour ouvrir un ordre

trade.Buy(0.1);

https://www.mql5.com/ru/articles/481

 
MakarFX:

Imprimer


La raison pour laquelle il passe à la M5 n'est pas claire.

Les bylots et les sellots sont-ils mondiaux ou locaux ?
 
Alexey Viktorov:

Lequel est le meilleur ?

(0 == 0 et 1 == 0) - la condition n'est pas remplie

(0 + 1 == 0) - la condition n'est pas non plus satisfaite.

Quelle est la différence entre ET et addition dans cet exemple particulier ?

Le code est plus lisible.
 
Alexey Viktorov:

Lorsque le TF est commuté, l'EA est redémarré.

Le problème est résolu comme suit

int    CountOrder(int Order_Type) 
 {
  int Orders=0;
  for(int a=OrdersTotal()-1;a>=0;a--)
   {
    if(OrderSelect(a, SELECT_BY_POS, MODE_TRADES)==false) continue;
    if(OrderSymbol()!=_Symbol) continue;
    if(Order_Type == OrderType() || Order_Type == -1) Orders++;
   }
  return Orders;
 }
int    OrOfSy;
//+------------------------------------------------------------------+
void OnTimer(void)
  {
//----
   OrOfSy=CountOrder(-1);
  if(OrOfSy!=0)
   if(ChartPeriod()!=PERIOD_M15)
    if(ChartSetSymbolPeriod(0,Symbol(),PERIOD_M15))
     {Print(ChartPeriod());}
  if(OrOfSy==0)
   if(ChartPeriod()!=PERIOD_M5)
    if(ChartSetSymbolPeriod(0,Symbol(),PERIOD_M5))
     {Print(ChartPeriod());}
//----
  }
Tout fonctionne)
 
MakarFX:

Le problème a été résolu comme suit

Tout fonctionne)
OrofSys est dans la zone mondiale.
 
Igor Makanu:

EA = Expert Advisor

conseiller

C'est la première fois que je vois quelqu'un sur ce forum qui n'a pas compris l'abréviation

à propos de ce qui a été discuté - je n'ai pas essayé de placer des ordres dans MT5 en remplissant la structure complète de la demande, il y a un SB, si vous le comprenez, il ouvre un ordre dans une ligne

https://www.mql5.com/ru/articles/481

Je l'ai. Merci.

 
SanAlex:

erreur - cette ligne doit être supprimée ( double const = 0 ; )

et tout fonctionnera



Bonjour SanAlex ! 2020.10.29_06:54 GMT+3. Merci pour vos suggestions. L'indicateur BrainTrend1Sig.mq4 sera utile. Je n'ai pas réussi à convertir le code de .mq5 en .mq4. Je vais essayer de créer un conseiller expert rentable basé sur cet indicateur.

 
Valeriy Yastremskiy:
Le code est plus lisible.

Ça dépend...

 

Pouvez-vous me dire comment verrouiller le bouton

   //--- обработка кнопки Создать трендовую линию Buy
   if(sparam=="Button 3")
      {
      if(trigger_greateB==true)
         {
         Sleep(100);
         trigger_greateB=false;
         ObjectSetInteger(0,"Button 3",OBJPROP_STATE,true);
         //--- Определяем координаты
         ChartXYToTimePrice(0,xn,yn+20,window,dt_1,price_1);
         ChartXYToTimePrice(0,xn+100,yn-20,window,dt_2,price_2);
         //--- Создаем трендовую линию Buy
         TrendCreate(0,("OrderBuy: "+Symbol()),0,dt_1,price_1,dt_2,price_2,ColorUP,0,1,false,true,false,false,0);
         return;
         }
      }

vous devez verrouiller la presse si

if(ObjectGet("OrderBuy: "+Symbol(),OBJPROP_PRICE1)!=0)
 
MakarFX:

Pouvez-vous me dire comment verrouiller le bouton

Vous devez bloquer la presse si

Juste comme ça, ajoutez-le à la condition.

if(sparam=="Button 3" && ObjectGet("OrderBuy: "+Symbol(),OBJPROP_PRICE1)!=0)

Ou == 0, plus probablement. Ou bien, mieux vaut utiliser la recherche d'un objet par son nom, et s'il n'existe pas d'objet de ce type, en créer un. Et cela n'a pas d'importance si le bouton est pressé ou non.

Raison: