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

 
Je suis désolé à l'avance. Cela fait 7-8 ans que je n'ai pas programmé. J'ai décidé d 'écrire un EA. J'utilise plusieurs horizons temporels dans mon trading. Comment puis-je insérer des données d'un autre horizon temporel dans un horizon temporel que je trade, ce qui fournit une image plus large ?
 
vvu78:
Je m'excuse d'avance... la dernière fois que j'ai programmé, il y a environ 7-8 ans, j'ai décidé d 'écrire un EA. Dans mes échanges, j'utilise plusieurs horizons temporels. Comment insérer des données d'un autre horizon temporel, qui donne une vue d'ensemble, dans un horizon temporel sur lequel j'échange ?


Utilisez les fonctions Copyxxx :

Où vous définissez le délai requis. Autres liens utiles :Organisation de l'accès aux données

 
Vladimir Karputov:


Utilisez les fonctions Copyxxx :

Où vous définissez le délai requis. Autres liens utiles :Organiser l'accès aux données


merci)
 

Bonjour, chers membres du forum, Je suis confronté au problème suivant dans Metatrader 5. Lors de l'insertion d'une ressource avec la commande

#resource"<resource_file_path>".


La qualité de l'image BMP est perdue. Toutes sortes de points apparaissent sur l'image lorsqu'on l'insère comme un objet OBJ_BIYMAP_LABEL.

Qui a rencontré un tel problème et, surtout, comment ce problème a-t-il été résolu ?

 
Les commentaires non liés à ce sujet ont été déplacés vers "Questions des débutants de MQL4 MT4 MetaTrader 4".
 

Dans mq4 PERIOD_H1 renvoie 60, qu'en est-il dans mq5 ?

SL=SL_Start*(PERIOD_H4/P);
 
Nikolay Gaylis:

Dans mq4 PERIOD_H1 renvoie 60, qu'en est-il dans mq5 ?


PériodeSecondes

PeriodSeconds Renvoie le nombre de secondes d'une période. int PeriodSeconds ( ENUM_TIMEFRAMES period=PERIOD_CURRENT // période du graphique ) ; Paramètres period=PERIOD_CURRENT [in] Valeur de la période du graphique de l'énumération ENUM_TIMEFRAMES. Si le paramètre n'est pas spécifié, le nombre de secondes de la période graphique actuelle, à laquelle le programme est en cours d'exécution, est renvoyé. Valeur retournée Nombre de secondes dans la période spécifiée. Voir aussi _Période, Périodes graphiques, Date et heure, Visibilité des objets https://www.mql5.com/ru/docs/common/periodseconds

 
Vladimir Karputov:


PériodeSecondes

PeriodSeconds Renvoie le nombre de secondes d'une période. int PeriodSeconds ( ENUM_TIMEFRAMES period=PERIOD_CURRENT // période du graphique ) ; Paramètres period=PERIOD_CURRENT [in] Valeur de la période du graphique de l'énumération ENUM_TIMEFRAMES. Si le paramètre n'est pas spécifié, le nombre de secondes de la période graphique actuelle, à laquelle le programme est en cours d'exécution, est renvoyé. Valeur retournée Nombre de secondes dans la période spécifiée. Voir aussi _Période, Périodes graphiques, Date et heure, Visibilité des objets https://www.mql5.com/ru/docs/common/periodseconds


Merci ! Et comment récupérer la valeur de la période par les secondes reçues ?

ENUM_TIMEFRAMES P;
P_sec=PeriodSeconds(P);
if(NEWBAR(S,P_sec)==true)
  {
  }

bool NEWBAR(string Sy,int Pe)
  {
   if(progon==false && time_bar[s_s]<TimeCurrent()-Pe)
     {
      CopyTime(Sy,Pe,0,1,time_bar_x);
      time_bar[s_s]=time_bar_x[0];
      progon=true;
        }else {progon=false;
     }
   return(progon);
  }

La variable Pe doit être convertie enCopyTime.

 

bien que d'accord... j'utiliserai P directement avant d'envoyer vers une fonction qui

ENUM_TIMEFRAMES P;
P_sec=PeriodSeconds(P);
if(NEWBAR(S,P_sec)==true)
  {
  }

bool NEWBAR(string Sy,int Pe)
  {
   if(progon==false && time_bar[s_s]<TimeCurrent()-Pe)
     {
      CopyTime(Sy,P,0,1,time_bar_x);
      time_bar[s_s]=time_bar_x[0];
      progon=true;
        }else {progon=false;
     }
   return(progon);
 

Les gars, en passant de mq4 à mq5- les résultats sont complètement différents je ne comprends pas- pouvez-vous s'il vous plaît comparer les valeurs de l'indicateur que j'obtiens de la même manière ?

MQ4

         RSI1=iRSI(S,P,rsi_p,PRICE_MEDIAN,i_RSI);
         RSI2=iRSI(S,P,rsi_p,PRICE_MEDIAN,i_RSI+1);
         if(RSI2>50&&RSI1<50){}

MQ5

RSI_handle=iRSI(S,P,rsi_p,PRICE_CLOSE);
CopyBuffer(RSI_handle,0,0,100,RSI);
ArraySetAsSeries(RSI,true);
if(RSI[1+i_RSI]>50&&RSI[i_RSI]<50){}
En écrivant, j'ai vuPRICE_MEDIAN etPRICE_CLOSE, mais à part ça ?