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

 
Сергей Таболин:

¡Van en detrimento de la constructividad del diálogo...!

¡Bonito!

 

Estimados expertos, necesito que el EA recorra todas las órdenes cerradas durante la inicialización. Pero el problema es que, para hacer esto, necesito hacer algunas manipulaciones en el terminal para mostrar todo el historial, porque normalmente es un mes o tres por defecto.

Y ahora tengo una pregunta. ¿Puedo utilizar un programador para recorrer todo el historial de operaciones, aunque el filtro esté establecido para un periodo corto?

Gracias de antemano por las respuestas.

 
Pavel Komarovsky:

Estimados expertos, necesito que el EA recorra todas las órdenes cerradas durante la inicialización. Pero el problema es que, para hacer esto, necesito hacer algunas manipulaciones en el terminal para mostrar todo el historial, porque normalmente es un mes o tres por defecto.

Y ahora tengo una pregunta. ¿Puedo utilizar un programador para recorrer todo el historial de operaciones, aunque el filtro esté establecido para un periodo corto?

Gracias por sus respuestas.

No, no puedes.

 

Buenas tardes a todos.

Por favor, ayuden a arreglar el script, fue escrito en 2009, pero por alguna razón dejó de funcionar en las nuevas versiones.

Archivos adjuntos:
RiskAdvisor.mq4  12 kb
 
Aleksey Mavrin:

No, no puede.

¿Puedo leer en qué lugar del DC y del terminal de usuario se registra cuando se abre/se cierra una orden de mercado/pendiente, cuando el tipo de orden cambia de pendiente a mercado, cuando se cierran/se eliminan órdenes y qué sucede con estos registros después? Lo único que tenemos en los muelles es la solicitud y la estructura de órdenes/comercios/posiciones. Me gustaría conocer el proceso con más detalle))))

 
Valeriy Yastremskiy:

¿Puedo leer en qué lugar del DC y del terminal de usuario se registra cuando se abre/se cierra una orden de mercado/pendiente, cuando un tipo de orden cambia de pendiente a mercado, cuando se cierra/se elimina una orden y qué sucede con estos registros después? Lo único que tenemos en los muelles es la solicitud y la estructura de órdenes/comercios/posiciones. Me gustaría conocer los detalles del proceso )))).

Si arreglas la información de la documentación con algunas comprobaciones y experimentos, puede que lleguemos a un entendimiento. Y hay muchos temas en el foro, que prefieren utilizar las etiquetas OnTradeTransaction OnTrade, etc.

Pero todas las preguntas a los desarrolladores sobre "cualquier otro detalle" recibieron una respuesta como: todo está ya escrito.

Pero si tiene una pregunta concreta, pregúntela.

 
Aleksey Mavrin:

La información de la documentación, si se puede consolidar con experimentos y comprobaciones, entonces se puede llegar a un entendimiento. Y hay un montón de temas en el foro que son más propensos a encajar las etiquetas OnTradeTransaction OnTrade, etc.

Pero todas las preguntas a los desarrolladores sobre "cualquier otro detalle" recibieron una respuesta como: todo está ya escrito.

Pero si tiene una pregunta específica, sólo tiene que preguntar.

OrderSelect en el ticket realizado anteriormente. La orden está pendiente. Qué solicitud para obtener que la orden se ha convertido en mercado, aparte de comprobar el tipo de orden en cada tick. En los registros, esta hora se registra, pero parece que no hay ningún campo para esta hora en la estructura de la orden, ¿o me equivoco? Cuando cambiamos el tipo de orden, OrdersTotal() y OrdersHistoryTotal tampoco cambian, si entiendo bien.

El resto parece estar más claro)

 
Hola a todos. ¿Hay alguna forma de averiguar todos los campos de configuración posibles de un EA? Me interesan principalmente todos los valores posibles de las listas desplegables en los ajustes. Si guardo una plantilla con un EA o su configuración, al leer dicho archivo, aunque el campo sea una lista, no puedo entenderlo.
 
Hola, ¿podríais decirme cómo obtener los valores del Awesome Oscillator de diferentes marcos temporales al mismo tiempo? He escrito este código, pero sólo puedo obtener los valores de la primera asa. El valor de la segunda asa coincide con el de la primera por alguna razón, aunque tenga otro marco temporal. ¡Por favor, ayuda!

void OnTick()
  {
   double PriceArray[];
   
   int AOhandle = iAO(_Symbol,PERIOD_M15);
   
   ArraySetAsSeries(PriceArray, true);
   
   CopyBuffer(AOhandle, 0, 0, 3, PriceArray);
   
   double AOvalue = NormalizeDouble(PriceArray[0], 6);

 
   double PriceArray1[];
   
   int AOhandle1 = iAO(_Symbol,PERIOD_H1);
   
   ArraySetAsSeries(PriceArray1, true);
   
   CopyBuffer(AOhandle1, 
    1 , 0, 3, PriceArray1);
   
   double AOvalue1 = NormalizeDouble(PriceArray[0], 6);
   
  
   Comment ("Awesome Oscillator Value: ", AOvalue, "\n", "\n",
            "Awesome Oscillator Value: ", AOvalue1);
  }


 

Mikhail:
Здравствуйте! Подскажите пожалуйста чайнику, как получить значения Awesome Oscillator с разных таймфреймов одновременно? Написал вот такой код, но значения удается получить только с первого хендла. Значение второго хендла почему-то совпадает с первым, хотя таймфрейм указан другой. Помогите пожалуйста!

void OnTick()
  {
   double PriceArray[];
   
   int AOhandle = iAO(_Symbol,PERIOD_M15);
   
   ArraySetAsSeries(PriceArray, true);
   
   CopyBuffer(AOhandle, 0, 0, 3, PriceArray);
   
   double AOvalue = NormalizeDouble(PriceArray[0], 6);

 
   double PriceArray1[];
   
   int AOhandle1 = iAO(_Symbol,PERIOD_H1);
   
   ArraySetAsSeries(PriceArray1, true);
   
   CopyBuffer(AOhandle1, 
    1 , 0, 3, PriceArray1);
   
   double AOvalue1 = NormalizeDouble(PriceArray[0], 6);
   
  
   Comment ("Awesome Oscillator Value: ", AOvalue, "\n", "\n",
            "Awesome Oscillator Value: ", AOvalue1);
  }



sucede)) 1 se pierde mucho en el fondo de las letras inglesas l i etc., es más conveniente llamar entonces a los sufijos 001, 2... etc.