[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 41

 
Señores, otra pregunta: ¿cómo (mediante qué operador, por ejemplo) podemos obtener información sobre el resultado de cerrar una orden? ¿Fue un beneficio, es decir, por TP, o una pérdida, es decir, por SL? He entendido que sólo con el seguimiento del saldo mediante el AccountBalance? ¿O hay otra manera?
 

Utilice la función OrdersHistoryTotal ( ) para determinar el número de posiciones cerradas en el historial.

Repasa las operaciones en el bucle. Seleccione cada operación mediante OrderSelect(...MODE_HISTORY),

Compare el precio de cierre con el precio SL y TP.

Es mejor comparar no estrictamente, sino con una tolerancia de 1 a 3 puntos, porque el precio de cierre puede no estar cerca exactamente del precio SL/TP, sino con deslizamiento.

 
goldtrader >> :

Utilice la función OrdersHistoryTotal ( ) para determinar el número de posiciones cerradas en el historial.

Repasa las operaciones en el bucle. Seleccione cada operación mediante OrderSelect(...MODE_HISTORY),

y comparar el precio de cierre con el SL y el TP.


¡¡¡Gracias por su ayuda y rapidez!!!

 
Amigos, si alguien está interesado, ayúdenme a resolver esto. Intenté hacer un canal de volatilidad de Vince. No se trata de renderizar. ¿Puede averiguar dónde está el error, por favor? Llevo tres días buscándolo sin éxito.
Archivos adjuntos:
 
locol91 писал(а) >>
Amigos, cualquiera que esté interesado, ayuda a entender. Intentó hacer un canal de volatilidad según Vince. No se trata de renderizar. Mira dónde está el error, por favor. Llevo tres días buscándolo sin resultados.

Acabo de empezar a buscar, ¿no hay nada confuso?

   if ( counted_bars==0) limit=Bars- N; 
   if ( counted_bars>=0) limit=Bars- counted_bars; 

Y entonces no hay ninguna confusión, ¿por qué Close[i] cuando =Bars? ¿Cómo se utiliza iMAOnArray? El primer argumento debe ser un array, tienes 1 elemento del array... etdtp

 
Sí. Ya lo he hecho por ensayo y error. Intenté todo tipo de cosas. Aquí está la corregida. No entiendo lo de Close[i] con =Bars.
Archivos adjuntos:
 

Por favor, indíquenos cómo "redondear" la fecha-hora al período del marco temporal actual.

Asumo esta opción:

datetime X = TimeCurrent(); // или любое другое
datetime Y = X - ( TimeMinute( X) % Period() )

¿Es esto correcto y podría ser más sencillo

 
r0mBY писал(а) >>

Por favor, indíquenos cómo "redondear" la fecha-hora al período del marco temporal actual.

¿Es correcto y puede ser más sencillo?

int iBarShift( string symbol, int timeframe, datetime time, bool exact=false)

Busque la barra por el tiempo. La función devuelve el desplazamiento de la barra a la que pertenece la hora especificada. Si no hay ninguna barra para el tiempo especificado (un "hueco" en el historial), la función, dependiendo del parámetro exacto, devuelve -1 o el desplazamiento de la barra más cercana.

Encuentra la barra y mira su Time[].

Si lo entiendo bien "redondeado")

 
Figar0 >> :

int iBarShift( string symbol, int timeframe, datetime time, bool exact=false)

Busca el bar por tiempo. La función devuelve el desplazamiento de la barra a la que pertenece la hora especificada. Si no hay ninguna barra para el tiempo especificado (un "hueco" en el historial), la función, dependiendo del parámetro exacto, devuelve -1 o el desplazamiento de la barra más cercana.

Encuentra la barra y mira su Time[].

Si lo entiendo bien "redondeado")

Sí, eso es. >> Gracias.

 
vikon >> :

Sé sobre la apertura de un pedido usando un código.

Necesito crear un sistema semiautomático con propiedades de gestión.

Abro una posición manualmente, pero el EA monitoriza el tamaño del lote y lo cambia por defecto en MT (servicio/configuración/comercio/volumen por defecto).

¿Puedo hacerlo?

No con las herramientas MQL.

Razón de la queja: