Preguntas de un "tonto" - página 101

 
Desead:
Por favor, indíqueme cómo obtener el precio de compra y venta de un par de divisas que no se negocia actualmente. En mt4 había un comando marketinfo, pero en mt5 no hay tal comando.

Artículo de ayuda - Migración de MQL4 a MQL5

Exactamente a su pregunta:

ParámetrosSymbolInfoDouble() y SYMBOL_BID/SYMBOL_ASK

//Аналог маркетинфо
double  EurAsk = SymbolInfoDouble("EURUSD",SYMBOL_ASK);
double  EurBid = SymbolInfoDouble("EURUSD",SYMBOL_BID);

double  GbpAsk = SymbolInfoDouble("GBPUSD",SYMBOL_ASK);
double  GbpBid = SymbolInfoDouble("GBPUSD",SYMBOL_BID);
 
Me puedes decir si mt5 tiene un calendario de noticias en sus herramientas, ¿puede el EA analizarlas de alguna manera? Por lo menos, consiga la hora de publicación y la moneda a la que afectará la noticia.
 
Lazarev:
Moody: En mt5, ¿hay un calendario de noticias en las herramientas, puede el EA analizarlas de alguna manera? Por lo menos, consigue la hora de lanzamiento y la moneda que se verá influenciada por la noticia.

Si la noticia está marcada en el gráfico (opcionalmente controlada), entonces, según entiendo, el EA puede detectarla. Para el resto, tenemos que encontrar una solución por nuestra cuenta.

Por segundo año he estado pidiendo a los desarrolladores que implementen las noticias en MQL y proporcionen un archivo (y no por semana como es ahora).

 
Interesting:

Si la noticia está marcada en el gráfico (opcionalmente controlada), entonces, según entiendo, el EA puede detectarla. Llevo dos años pidiendo a los desarrolladores que vinculen las noticias a MQL.

Y por segundo año he pedido a los desarrolladores que enlacen las noticias a MQL y proporcionen un archivo (y no como ahora durante una semana).

Si ya has comentado en otro hilo que las noticias se pueden detectar a través de objetos gráficos, ¿podrías decirme cómo? Quiero escribir un EA que opere con las noticias, aunque no esté optimizado en el tester, puede que lo corrija yo mismo de alguna manera en una cuenta demo
 
Lazarev:
Me gustaría desarrollar un Asesor Experto que opere sobre las noticias, aunque no esté optimizado en el Probador de Estrategias, lo corregiré yo mismo de alguna manera usando una cuenta demo

Las noticias que se muestran en el gráfico son objetos gráficos de tipo OBJ_EVENT, se puede obtener información de este tipo, pero es muy pobre, sólo se puede obtener el nombre de la noticia y la hora de publicación, ni el significado ni otra información de la tabla de calendario obtendrá.

Aquí hay un script que añade líneas verticales a los eventos de noticias, creo que como punto de partida para su tema va a hacer.

Archivos adjuntos:
 
No consigo averiguar qué es lo que dibuja el indicador. Es decir, qué función es la que da la orden de dibujar. Puede alguien darme un ejemplo de cuerpo de función OnCalculate que dibuje una línea recta con valor 17.
Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
Desead:
No puedo entender qué se dibuja exactamente en el indicador . Es decir, qué función ordena el dibujo. Puede alguien darme un ejemplo del cuerpo de la función OnCalculate que dibuje una línea recta con el valor 17.

¿Búferes indicadores u objetos gráficos?

HH los buffers del indicador se dibujan en el indicador, las matrices no se declaran como tal, los estilos de dibujo se definen en las propiedades del preprocesador #property indicator_...

Es decir, todo lo que haya en los buffers de los indicadores se dibujará automáticamente.

Archivos adjuntos:
Test.mq5  3 kb
 
Urain:

¿Búferes indicadores u objetos gráficos?

HH los buffers del indicador se dibujan en el indicador, esas matrices no se declaran como tal, los estilos de dibujo se establecen en las propiedades del preprocesador #property indicator_...

Es decir, todo lo que hay en los búferes de los indicadores se dibujará automáticamente.

Gracias, ahora le echaré un vistazo.

El problema es muy sencillo, graficar en una ventana aparte la diferencia de precios entre el eurusd y el gbpusd. Tengo los precios de las cotizaciones actuales. La diferencia, respectivamente, también. Es decir, para cada tick tengo algún valor, según el cual, necesito dibujar un punto que forme una línea o dibujar una línea en estas coordenadas.

Me he dado cuenta de que debo usar buffers y arrays con indicación de dirección diferente, no entiendo muy bien para qué, teniendo en cuenta que no necesito el suavizado por periodo. Buscaré información sobre el dibujo por objetos gráficos, puede que haya algo que necesite.

 
Desead:

Gracias, ahora le echaré un vistazo.

En general la tarea es muy sencilla, trazar en una ventana separada la diferencia de precios entre el eurusd y el gbpusd. Tengo los precios de las cotizaciones actuales. La diferencia, respectivamente, también. Es decir, para cada tick tengo algún valor, según el cual, necesito dibujar un punto que forme una línea o dibujar una línea en estas coordenadas.

Me he dado cuenta de que debo utilizar buffers y arrays con indicación de dirección diferente, no entiendo muy bien para qué, teniendo en cuenta que no necesito el suavizado por periodo. Buscaré el dibujo por objetos gráficos, puede que haya algo que necesite.

Presta atención, habrá problemas de sincronización. Primero hay que crear una base de datos sincronizada y luego hacer las restas.

string Symbolbuf[6]={"EURUSD","GBPUSD","AUDUSD","USDJPY","USDCHF","USDCAD"};
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
datetime fmin(datetime value1,datetime value2)
  {
   return(value1<value2?value1:value2);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
datetime fmax(datetime value1,datetime value2)
  {
   return(value1>value2?value1:value2);
  }  
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnStart()
  {
   datetime timestart;
   timestart=(datetime)SeriesInfoInteger(Symbolbuf[0],PERIOD_M1,SERIES_FIRSTDATE);
   for(int i=1;i<6;i++)
     {
      timestart=fmax(timestart,(datetime)SeriesInfoInteger(Symbolbuf[i],PERIOD_M1,SERIES_FIRSTDATE));
      Print(Symbolbuf[i]," = ",(datetime)SeriesInfoInteger(Symbolbuf[i],PERIOD_M1,SERIES_FIRSTDATE));      
     }
   Print("-----------------   ",timestart);  
   for(int i=0;i<6;i++)
     {
      Print(Symbolbuf[i]," = ",Bars(Symbolbuf[i],PERIOD_M1,timestart,TimeCurrent()));
     }
  }
 

Hola. Quiero ejecutar mi Asesor Experto en AUD/USD. Como lo hago, solo lo tengo funcionando en euro/dólar. He cambiado el par en el menú Servicio/Configuración/Descarga. Pero recibí el mensaje" No se encontróel símbolo seleccionado ".

Gracias.

Документация по MQL5: Получение рыночной информации / SymbolSelect
Документация по MQL5: Получение рыночной информации / SymbolSelect
  • www.mql5.com
Получение рыночной информации / SymbolSelect - Документация по MQL5