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

 
Alexey Viktorov:

C'est inconvenant de mentir de manière aussi flagrante. Vous supprimez votre message et vous reportez votre analphabétisme sur quelqu'un d'autre. Menteur.

Quel message ?
Je n'ai écrit que sur prev_calculated et rates_total depuis le début.

Ce à quoi j'ai reçu une réponse de votre part :

Pourquoi se moquer ainsi d'un programmeur inexpérimenté ?

Que se passe-t-il s'il y a une histoire manquée et que la différence est supérieure à 1 ? Mais on s'en fiche un peu, on va juste sauter une mesure... tu sais, une de plus, une de moins. Et sans explications, pourquoi devrions-nous donner le code ? Vous voyez ce que vous obtenez à la fin ?

donc c'est vous le menteur)

1

 
Taras Slobodyanik:

Oui, vous devez soit changer la direction des tableaux, soit prendre l'indice rates_total-2 au lieu de 1.


Après avoir ajouté.

ArraySetAsSeries(open,true);
ArraySetAsSeries(high,true);
ArraySetAsSeries(low,true);
ArraySetAsSeries(close,true);
ArraySetAsSeries(time,true);   

Définit correctement.

2021.06.02 18:33:09.480 Test (Volatility 10 Index,M1)   Up
2021.06.02 18:34:09.479 Test (Volatility 10 Index,M1)   Dn

Code complet :

//+------------------------------------------------------------------+
//|                                                    test.mq5 |
//|                                  Copyright 2021, MetaQuotes Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property indicator_chart_window

#property indicator_buffers 2
#property indicator_plots   2

#property indicator_label1  "Signal UP"
#property indicator_type1   DRAW_ARROW
#property indicator_color1  clrLime
#property indicator_style1  STYLE_SOLID
#property indicator_width1  2

#property indicator_label2  "Signal DN"
#property indicator_type2   DRAW_ARROW
#property indicator_color2  clrRed
#property indicator_style2  STYLE_SOLID
#property indicator_width2  2

double up[];
double dn[];

datetime fin=0, last=0;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
  {
    IndicatorSetString(INDICATOR_SHORTNAME, "Prototype");
    
   SetIndexBuffer(0,up,INDICATOR_DATA);
   PlotIndexSetInteger(0,PLOT_ARROW,233);
    
   SetIndexBuffer(1,dn,INDICATOR_DATA);
   PlotIndexSetInteger(1,PLOT_ARROW,234);
   
   
  
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
   {
   
   ArraySetAsSeries(open,true);
   ArraySetAsSeries(high,true);
   ArraySetAsSeries(low,true);
   ArraySetAsSeries(close,true);
   ArraySetAsSeries(time,true);   
 
   fin=iTime(Symbol(), PERIOD_M1 ,0);
   if(last==fin) return(rates_total);
   last=fin;
   
   if(rates_total - prev_calculated == 1)
      {
         if(open[1] > close[1])
         {
           Print("Dn");
         }
    else if(open[1] < close[1])
         {
           Print("Up");
         }
     }

return(rates_total);
}
 
Taras Slobodyanik:

quel message ?
Je n'ai écrit que sur prev_calculated et rates_total depuis le début.

Ce à quoi j'ai reçu une réponse de votre part :

donc c'est vous le menteur)


Oui, je ne l'ai pas supprimé, je n'ai juste pas trouvé ce message tout de suite.

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégies de trading.

Toutes les questions des débutants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes.

Taras Slobodyanik, 2021.06.02 16:47

Parce qu'il n'y a pas d'équerres.

if(rates_total - prev_calculated == 1)
   {
   //Print("Новый бар");
   if(open[1] > close[1])
        {
        Print("Dn");
        }
   else if(open[1] < close[1])
        {
        Print("Up");
        }
   }

Mais ! Tu te rétractes toujours, qui es-tu ?
 
Et c'est ainsi que cela fonctionne
   ArraySetAsSeries(open,true);
   ArraySetAsSeries(high,true);
   ArraySetAsSeries(low,true);
   ArraySetAsSeries(close,true);
   ArraySetAsSeries(time,true);   
 

   if(rates_total - prev_calculated == 1)
      {
         if(open[1] > close[1])
         {
           Print("Dn");
         }
    else if(open[1] < close[1])
         {
           Print("Up");
         }
     }
 
Merci pour votre aide :)
 
Alexey Viktorov:

Oui, je ne l'ai pas supprimé, je ne l'ai juste pas trouvé immédiatement.

Mais ! Toujours en train de retirer mes mots, qui êtes-vous ?
Alexey Viktorov:

C'est impoli de mentir de façon aussi flagrante. Vous supprimez votre message et vous reportez votre analphabétisme sur quelqu'un d'autre. Menteur.

donc je suis un menteur parce que je n' ai pas supprimé mon message et blâmé mon analphabétisme sur les autres, original)))))


Je vais le répéter.

Taras Slobodyanik:

Je ne vous suggère pas de lire la fermeture de la barre sur la gauche, ce n'est pas mon code).

le mien seulement

if(rates_total - prev_calculated == 1)
 
m-r LSV:
Merci pour votre aide :)

s'il vous plaît)

 
Partagez un peu plus. Seulement à la condition que vous utilisiez tous les deux une GoPro - pour l'histoire.
 
Artyom Trishkin:
Partagez un peu plus. Seulement à la condition que vous utilisiez tous les deux une GoPro - pour l'histoire.

C'est la stratégie de certains "intelligents", leur souffler la poussière dans les yeux, et quand ils échouent, les accuser de tous les péchés, pour cacher leur analphabétisme et leur incompétence, laisser l'adversaire justifier qu'il n'est pas un imbécile.

 
Taras Slobodyanik:

C'est la stratégie de certains "intelligents", leur souffler de la poussière dans les yeux, et quand ils échouent, les accuser de tous les péchés pour cacher leur analphabétisme et leur incompétence, laisser leur adversaire se justifier qu'il n'est pas stupide.

Tarasik, va te faire foutre... Idiot. Regardez le code que vous avez généré après vos conseils... Cela s'appelle "enseigner comment ne pas le faire", et celui qui ne le comprend pas est de sa propre faute.

Raison: