Mt4 Fin de soporte. - página 18

 
Artyom Trishkin:

La tarea es la siguiente: necesito hacer una función que devuelva el hecho de abrir un nuevo bar. Primero en EURUSD M5.

Además, la tarea se ampliará.

Ya veo.

Supongamos que el siguiente prototipo de función funciona: bool New_bar(int Timeframe = M1) ?

Significa que un usuario llama a la función y le envía el ID de la franja horaria deseada. Como respuesta obtiene verdadero/falso (¿se ha abierto un nuevo bar o no)?

Si esto es lo que se necesita, intentaré escribirlo ahora.

 
Alexey Viktorov:

Ya veo. Se equivocó de persona... Sin duda, sabes cómo pasar una variable por referencia.

Ahora, para simplificar la escritura en el código, si necesita determinar el período especificado y el período actual. Resulta que también hay que crear variables para el periodo actual, ¿no?

Espera un momento, estoy averiguando el enunciado del problema.
 
Реter Konow:

Ya veo.

Supongamos que este prototipo de función funcione: bool New_bar(int Timeframe = M1) ?

Es decir, un usuario llama a la función y le pasa el identificador del plazo deseado. Como respuesta obtiene verdadero/falso (¿se ha abierto un nuevo bar o no)?

Si eso es lo que se necesita, intentaré escribirlo ahora.

Sólo hay que escribir una función que pregunte al usuario: "¿hay un nuevo bar en la M5?" y recibe una respuesta de sí/no.

Por ejemplo:

if(IsNewBar(PERIOD_M5)) // Вопрос: наступил ли новый бар на М5
  {
   // Да, наступил
  }
else
  {
   // Нет, не наступил
  }

Aquí está su función IsNewBar() y la desarrollaremos y giraremos más con la ampliación de la tarea

 
Artyom Trishkin:

Sólo hay que escribir una función en la que el usuario pregunte: "¿hay un nuevo bar en la M5?" y recibe una respuesta de sí/no.

Por ejemplo:

Aquí está su función IsNewBar() y vamos a desarrollarla y retorcerla más con una ampliación de la tarea

Ya veo. Ok. Dame un poco de tiempo y elaboraré el código. Sólo en ruso. Lo haré más conveniente.
 
Реter Konow:

Ya veo.

Supongamos que este prototipo de función funcione: bool New_bar(int Timeframe = M1) ?

Es decir, un usuario llama a la función y le pasa el identificador del plazo deseado. Como respuesta obtiene verdadero/falso (¿se ha abierto un nuevo bar o no)?

Si esto es lo que necesitas, intentaré escribirlo ahora.

Un consejo de un aprendiz autodidacta:

Para facilitar la migración a mql5, sería mejor no utilizar las variables de periodo int en mql4 sino del enum ENUM_TIMEFRAMES.

 
Реter Konow:
Lo tengo. Bien. Dame un poco de tiempo y escribiré el código. Sólo en ruso. Es más familiar.

Incluso mejor. Es más fácil de entender para los rusos y los rusoparlantes.

 
George Merts:

... Herencia y polimorfismo...


Creo con gusto que sus problemas no se pueden resolver sin ellos. Hay que entrar en detalles para creerlo :)


Artyom Trishkin:

Sólo tienes que escribir una función que pregunte al usuario: "¿hay un nuevo bar en la M5?" y obtener una respuesta de sí/no.

Por ejemplo:

Aquí está su función IsNewBar() y la desarrollaremos y giraremos más con la ampliación de la tarea

Girar

bool fb_Is_New_Bar(ENUM_TIMEFRAMES e_TF) {
  int
    i_This_Bar = int(floor(TimeCurrent() / PeriodSeconds(e_TF))),
    i_Last_Bar = int(GlobalVariableGet("LastBar " + string(e_TF)))
  ;
  if(i_This_Bar == i_Last_Bar) return(false);
  
  GlobalVariableSet("LastBar " + string(e_TF), i_This_Bar);
  return(true);
}
 

esto va a ser un poco off-topic de la conversación.

Estaba pelando patatas y se me ocurrió un pensamiento

si hay desarrolladores y programadores aquí, por qué no hacerlo en µl


- un archivo autosuficiente con su propia interfaz que ejecuta el terminal, skype y otro terminal

- en el terminal mt4(5) poner un bot de una lista seleccionada de 3 (menú desplegable)

 
Alexander Puzanov:

...

Girar


Gíralo. Frenos terribles.

 
Mickey Moose:

esto va a ser un poco off-topic de la conversación.

Estaba pelando patatas y se me ocurrió un pensamiento

si hay desarrolladores y programadores aquí, por qué no hacerlo en µl


- un archivo autosuficiente con su propia interfaz que ejecuta el terminal, skype y otro terminal

- en el terminal MT4(5) poner un bot de una lista de 3 seleccionados (menú desplegable)


¿Por qué?