Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1491

 
Alexey Viktorov:

Es indecoroso mentir tan descaradamente. Borras tu post y le echas la culpa de tu analfabetismo a otro. Mentiroso.

¿Qué mensaje?
Sólo escribí sobre prev_calculated y rates_total desde el principio.

A lo que recibí una respuesta tuya:

¿Por qué te burlas así de un programador inexperto?

¿Qué pasa si hay un historial perdido y la diferencia es superior a 1? Pero en realidad no nos importa, vamos a saltarnos un bar... ya sabes, uno más, uno menos. Y sin explicaciones, ¿por qué deberíamos dar el código? ¿Ves lo que obtienes al final?

así que tú eres el mentiroso)

1

 
Taras Slobodyanik:

Sí, tienes que cambiar la dirección de las matrices o tomar el índice rates_total-2 en lugar de 1


Después de añadir.

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

Define correctamente.

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

Código completo:

//+------------------------------------------------------------------+
//|                                                    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:

¿Qué mensaje?
Sólo escribí sobre prev_calculado y rates_total desde el principio.

A lo que recibí una respuesta tuya:

así que tú eres el mentiroso)


Sí, no lo he borrado, es que no he encontrado ese post enseguida.

Foro sobre trading, sistemas de trading automatizados y pruebas de estrategias de trading.

Cualquier pregunta de los novatos en MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos

Taras Slobodyanik, 2021.06.02 16:47

Porque no hay paréntesis.

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

¡Pero! ¿Sigues retractándote de tus palabras quién eres?
 
Y así funciona
   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");
         }
     }
 
Gracias por su ayuda :)
 
Alexey Viktorov:

Sí, no lo he borrado, simplemente no lo he encontrado inmediatamente.

¡Pero! Todavía retrayendo mis palabras quién eres tú
Alexey Viktorov:

Es de mala educación mentir tan descaradamente. Borras tu post y le echas la culpa de tu analfabetismo a otro. Mentiroso.

así que soy un Mentiroso porque no borré mi post y culpo de mi analfabetismo a otros, original)))


Lo diré de nuevo.

Taras Slobodyanik:

No te sugiero que leas el cierre de la barra de la izquierda, ese no es mi código)

Sólo la mía

if(rates_total - prev_calculated == 1)
 
m-r LSV:
Gracias por su ayuda :)

por favor)

 
Comparte un poco más. Sólo con la condición de que ambos usen una GoPro - para la historia.
 
Artyom Trishkin:
Comparte un poco más. Sólo con la condición de que ambos usen una GoPro - para la historia.

Esta es la estrategia de algunos "listillos", soplarles el polvo en los ojos, y cuando fallan, acusarles de todos los pecados, para ocultar su analfabetismo e incompetencia, que el adversario justifique que no es un tonto.

 
Taras Slobodyanik:

Esta es la estrategia de algunos "listillos", soplarles el polvo en los ojos, y cuando fallan, acusarles de todos sus pecados para ocultar su analfabetismo e incompetencia, dejar que su oponente se justifique de que no es estúpido.

Tarasik, lárgate... Idiota. Mira el código que has generado después de tus pistas... Se llama "enseñar a no hacerlo", y quien no lo entienda es su culpa.

Razón de la queja: