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

 
Сергей:

Te entiendo perfectamente, pero te equivocas.

Ponga las comillas y obtendrá:

'EURUSD' - nombre esperado MyIndi 3 (MA).mq4 61 14

A la derecha

¿Y dónde están las citas aquí?

EURUSD

 
Artyom Trishkin:

¿Dónde están las comillas?


Las comillas en mi código son dobles, en el error me salen comillas simples, no puedo hacer nada al respecto.

No tengo ningún problema con la salida de datos a la ventana. El problema es la salida errónea. En lugar de "plano" dice "¡Atento!" y viceversa. El algoritmo es elemental, no estoy seguro de dónde he metido la pata...

Tampoco tengo problemas de compilación. Publicar con el código #3437.

 

El propio indicadorhttps://cloud.mail.ru/public/6Ney/gTq1xMcMd

Planteé la cuestión de los gráficos del JPY que cambian los resultados aquí

El indicador en cuestión es aquíhttps://cloud.mail.ru/public/CAXu/p3uD3UzBJ . Entonces no me ayudaron con mi pregunta, ¿pueden ayudarme ahora?
 
Сергей:

Tengo comillas dobles en mi código, pero en el error me salen comillas simples, y no puedo hacer nada al respecto.

No tengo ningún problema con la salida de datos a la ventana. El problema está en los resultados erróneos. En lugar de "plano" dice "¡Atento!" y viceversa. El algoritmo es elemental, no estoy seguro de dónde he metido la pata...

Tampoco tengo problemas de compilación. Publicar con el código #3437.

Para que la gente no se equivoque, y pueda entender bien de qué estás hablando, hay todas las opciones para ello en el editor de posts en el que entras:

puedes adjuntar el código como un archivo (hay +Añadir archivo en la parte inferior),

puede emitir el código como un código,

por ejemplo:

//+------------------------------------------------------------------+
//| Выводит в журнал список свечей серии                             |
//+------------------------------------------------------------------+
void CSeriesCollection::PrintListCandlesSeries(const uint num_candle)
  {
   int total=m_series.Total();
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
   for(int i=0; i<total; i++){
      CCandleObject* candle=m_series.At(i);
      if(candle!=NULL){
         datetime time=candle.Time();
         if(time<TimeCurrent()-PeriodSeconds()*num_candle) continue;
         string tm=TimeToString(candle.Time());
         this.PrintCandle(candle);
         }
      }
   ::Print("====== "+TextByLanguage("Список свечей тайм-серии","List of time series candles")+" ======");
  }
//+------------------------------------------------------------------+

también puede mostrar la línea de registro como un código (puede copiarla del registro del terminal y pegarla aquí como un código (botón SRC))

2017.10.20 04:04:09.014 Свеча NZDUSD 2017.10.20 00:00, open: 0.70296, high: 0.70360, low: 0.70260, close: 0.70355, vol tick: 87, размер: 100, тело: 59, верх. тень: 5, нижн. тень: 36, тип: Бычья

entonces la gente no tendrá un malentendido de lo que estás hablando.

Y enviar a la gente a un recurso de terceros para que descargue no-saber-qué de él - no es muy amigable, ¿verdad?

 
Сергей:
...

Tampoco hay problema con la compilación. Publicar con el código #3437.

Bueno, puedes hacer clic en #3437, seleccionar "Copiar enlace" y pegar el enlace en tu mensaje (también en el editor de mensajes) - para que la gente no tenga que navegar donde realmente no es necesario ;)

 
Artyom Trishkin:

Y remitir a la gente a un recurso de terceros para que se descargue lo que sea de allí no es muy amistoso, ¿verdad?


Perdona mi analfabetismo.


MyIndi 1 MultiValue en MultiTimeFrames. En la parte inferior se muestra el número de puntos de compra.

MyIndi 2 Igual que el primero, pero eliminando los datos innecesarios. Datos añadidos en la parte inferior: se trata de la variación media del precio por minuto para los diferentes plazos.

MyIndi 3 es Multidivisa. Se basa en una única MA con un desplazamiento. Cuando se alcanza la diferencia en la MA, muestra "¡Atención!


Los tres funcionan incorrectamente cuando se adjuntan a los gráficos con JPY (por alguna razón). MyIndi 3 no funciona correctamente en absoluto, aunque el código es muy sencillo.

Y por supuesto en todas ellas no encuentro lo que está mal, ya que soy nuevo en esto... Si alguien tiene tiempo para resolverlo y ayudar, se lo agradecería mucho.
Archivos adjuntos:
MyIndi.mq4  54 kb
MyIndi_2.mq4  38 kb
 
Сергей:

Perdona mi analfabetismo.


MyIndi 1 Multidivisa en MultiTimeFrames. En la parte inferior se muestra el número de puntos de compra.

MyIndi 2 Igual que el primero, pero eliminando los datos innecesarios. Datos añadidos en la parte inferior: se trata de la variación media del precio por minuto para los diferentes plazos.

MyIndi 3 es Multidivisa. Se basa en una única MA con un desplazamiento. Cuando se alcanza la diferencia en la MA, muestra "¡Atención!


Los tres funcionan incorrectamente cuando se adjuntan a los gráficos con JPY (por alguna razón). MyIndi 3 no funciona correctamente en absoluto, aunque el código es muy sencillo.

Y por supuesto no puedo encontrar el error en todos ellos ya que soy un novato en esta materia. Si alguien tiene tiempo para entender y ayudar, le estaré muy agradecido.

Mira el"Punto", el JPY es diferente. Utilice MarketInfo. Por ejemplo double EUR_point=MarketInfo("EURUSD",MODE_POINT);

 
Nauris Zukas:

Echa un vistazo a "Point", JPY es diferente. Utilice MarketInfo. Por ejemplo double EUR_point=MarketInfo("EURUSD",MODE_POINT);

Gracias, lo probaré. Tenía la idea de que ese era el problema, pero no sabía CÓMO.


Me ayudó. ¡Muchas gracias, amable hombre! =)

He añadido al principio

      double USD_point=MarketInfo("EURUSD",MODE_POINT);
      double JPY_point=MarketInfo("USDJPY",MODE_POINT); 

y según el par que procese (con o sin JPY) utilizó una u otra variable.

 
Nauris Zukas:

Mira a Point, el JPY es diferente. Utilice MarketInfo. Por ejemplo double EUR_point=MarketInfo("EURUSD",MODE_POINT);

Es mejor ir directamente.

Point
SymbolInfoDouble(Symbol(),SYMBOL_POINT)
 
Vitaly Muzichenko:

Mejor de una vez.


Creo que la variante propuesta por@Nauris Zukas será adecuada para la multidivisa.

Y su variante es mejor para la moneda única porque toma los datos del gráfico al que está unido.