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

 
Roman:

¿Puedes decirme si hay un gancho para el indicador mql5? Para establecer dos propiedades de visualización.

Y de alguna manera enlazar diferentes salidas, cada una a su propia propiedad de mapeo.

Sí, lo hay. Pero es sólo para mql5 y no funcionaría con el Market. En los indicadores hay que buscar un indicador con el nombre del segundo y si no está presente, entonces ChartIndicatorAdd().

 
Alexey Viktorov:

Lo hay. Pero sólo para mql5 y no funcionará para Market. En los indicadores hay que buscar un indicador con el nombre del segundo indicador y si no está presente, entonces ChartIndicatorAdd().

Tienes dos indicadores. No uno con propiedad de doble renderización simultánea en el gráfico principal y en la subventana.

Pero servirá como variante de lanzamiento simultáneo de dos indicadores. Pero los datos deberán obtenerse de dos indicadores, no de uno.

 
Artyom Trishkin:

Bueno, son dos indicadores. No uno con la doble propiedad simultánea de dibujar en el gráfico principal y en la subventana.

Aunque, como variante de lanzamiento simultáneo de dos indicadores diferentes, servirá. Pero los datos deberán obtenerse de dos indicadores, no de uno.

Sí, eso es, el significado era dibujar en el gráfico principal y en la subventana, desde un solo código.

Artyom Trishkin:

Utilice sus propios dibujos en el gráfico principal de la subventana.

Ahí es donde viene el inconveniente. ¿Cómo se dibuja desde la subventana al gráfico?
Si tienes un ejemplo, será más claro.

 

Por favor, ayúdenme con un problema que he encontrado. No entendí por qué el cálculo que probé no ayudó a calcular el margen. Estoy utilizando la fórmula de:

h ttps://www.mql5.com/ru/docs/constants/environment_state/marketinfoconstants?#enum_symbol_calc_mode

Pero los problemas persisten.

Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Для получения текущей рыночной информации служат функции SymbolInfoInteger(), SymbolInfoDouble() и SymbolInfoString(). В качестве второго параметра этих функций допустимо передавать один из идентификаторов из перечислений ENUM_SYMBOL_INFO_INTEGER, ENUM_SYMBOL_INFO_DOUBLE и ENUM_SYMBOL_INFO_STRING соответственно. Некоторые символы (как правило...
 

Dime cómo traducir este código de MQL4 a MQL5:

datetime  bar_day   = TimeDay(Time[Bars - 1]);

?

He probado muchas variantes, aquí está una de ellas:

int bars=Bars;
//+------------------------------

   datetime  bar_day   = TimeDayMQL4(iTimeMQL4(NULL,0,(bars - 1)));

He probado muchas variantes, aquí está el código de las funciones TimeDayMQL4 y iTimeMQL4 creadas en la biblioteca de compatibilidad MQL4:

int TimeDayMQL4(datetime date)
  {
   MqlDateTime tm;
   TimeToStruct(date,tm);
   return(tm.day);
  }

datetime iTimeMQL4(string symbol,int tf,int index)
{
   if(index < 0) return(-1);
   ENUM_TIMEFRAMES timeframe=TFMigrate(tf);
   datetime Arr[];
   if(CopyTime(symbol, timeframe, index, 1, Arr)>0)
        return(Arr[0]);
   else return(-1);
}

Pero sigue sin funcionar, me sale 1970...

 
Sayberix :

Dime cómo traducir este código de MQL4 a MQL5:

?

Es fácil. Siga este artículo: https://www.mql5.com/ru/articles/81

Переход с MQL4 на MQL5
Переход с MQL4 на MQL5
  • www.mql5.com
Данная статья, построенная в форме справочника по функциям MQL4, призвана помочь переходу с MQL4 на MQL5. Для каждой функции языка MQL4 приведено описание и представлен способ ее реализации на MQL5, что позволит вам значительно ускорить перевод своих программ с MQL4 на MQL5. Для удобства функции разбиты на группы, как в документации по MQL4.
 
jaffer wilson:

Es fácil. Siga el artículo: https://www.mql5.com/ru/articles/81

Actualicé mi puesto. Lo he probado, no funciona. Obtengo este valor en las variables: D'1970.01.01 00:00:24'

También utilizo TimeMonthMQL4 y TimeYearMQL4
 
jaffer wilson:

Por favor, ayúdenme con un problema que he encontrado. No entendí por qué el cálculo que probé no ayudó a calcular el margen. Estoy utilizando la fórmula de:

h ttps://www.mql5.com/ru/docs/constants/environment_state/marketinfoconstants?#enum_symbol_calc_mode

Pero el problema continuaba.

No lo he averiguado, no tengo ni idea, por desgracia.

 
Roman:

Sí, así es, la cuestión era dibujar en el gráfico y en la subventana, desde el mismo código.

Este es el problema. ¿Cómo dibujar desde la subventana al gráfico?
Si tienes un ejemplo, será más fácil de entender.

Hay dos maneras de mostrarlo en el gráfico:

  1. Objetos gráficos
  2. Lienzo

En cualquier caso, tendremos que hacer un buffer adicional que no se mostrará en la ventana de datos, pero del que se podrán obtener estos datos. En el buffer se escribirán los valores que se pueden utilizar para obtener datos de la ventana principal. Entonces será posible recibir datos tanto de la subventana como del gráfico principal desde un indicador.

O bien, es más conveniente escribir primero todos los datos calculados para cada barra en este búfer y luego utilizar estos datos para construir el gráfico principal en la ventana principal. La forma de trazarlo depende de usted. Yo elegiría Kanvas.

 
Sayberix:

Actualicé mi puesto. Lo he probado, no funciona. Obtengo este valor en las variables: D'1970.01.01 00:00:24'.

También utilizo TimeMonthMQL4 y TimeYearMQL4

Del artículo citado por Jaffer

void OnStart()
{
   datetime Time[];
   int count = 2;        //сколько копируем 
   ArraySetAsSeries(Time, true);
   CopyTime(_Symbol, PERIOD_D1, 0, count, Time); 
   
   Print(Time[1]); //1-окрытие вчерашнего дня, 0-открытие текущего дня
}