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

 
Andrey Sokolov:

Saludos.

¿Puedes decirme cómo especificar la condición, de modo que si la vela actual ya ha sido abierta por las condiciones especificadas y cerrada manualmente, no se abra antes de la nueva?

Si el número de la barra en la que se abrió la última orden cerrada es el mismo que el número de la barra en la que se cerró la última orden cerrada, y este número es igual a cero, entonces ...
 
Artyom Trishkin:
Si el número de barra en el que se abrió la última orden cerrada es el mismo que el número de barra en el que se cerró la última orden cerrada y este número es cero, entonces ...
felicitaciones y respeto
 
Andrey Sokolov:
felicitaciones y respeto
De nada, la respuesta está en tu propia pregunta ;)
 
Artyom Trishkin:
Comience por crear una plantilla: en el editor, haga clic con el botón derecho del ratón en la ventana del navegador sobre Indicadores y seleccione crear una carpeta. Póngale un nombre: contendrá exactamente sus indicadores.

A continuación, haga también clic en esta nueva carpeta y seleccione Nuevo archivo. Se abrirá una ventana del asistente, donde se seleccionará el tipo de programa a crear - Indicador de Usuario. Tendrá que seguir todos los pasos del asistente, añadir los parámetros de entrada, el tipo de pantalla, etc. Tendrás que intentar averiguarlo por tu cuenta. Una vez que llegue al final, se creará la nueva plantilla de indicadores. Todo lo que tienes que hacer es rellenarla con el código requerido, pero este es el siguiente paso...

Es difícil decidir qué se necesita cuando no se sabe exactamente cómo se va a aplicar.

La pregunta es: ¿necesito la función On Timer?

No necesito OnChartEvent. No estoy planeando nada de eso.

En cuanto a OnCalculate, ¿cuál es más versátil? ¿OnCalculate (...prices)? Estoy pensando en elegirlo.

 
Andrey Koldorkin:

Es difícil decidir qué se necesita cuando no se sabe exactamente cómo se va a aplicar.

La pregunta es: ¿necesito la función On Timer?

No necesito OnChartEvent. No estoy planeando nada de eso.

En cuanto a OnCalculate, ¿cuál es más versátil? ¿OnCalculate (...prices)? Estoy pensando en elegirlo.

¿Vas a calcular algo en el temporizador? No lo creo.

Pero el hecho de que necesites precios OHLC - eso debería darte el OnCalculate() correcto de los dos.
 
Hola, te pido una pista aquí, ya que no te pueden dar una respuesta adecuada en otro sitio. Me interesa una pregunta: ¿es posible sustituir la función de bloqueo sin utilizar órdenes de contador? Es decir, después de una determinada cantidad de puntos en un paso o en un par de divisas, una orden o una cadena de órdenes (principalmente órdenes de stop) deja de aumentar el beneficio y lo congela antes del final del ciclo, cerrando a mano o por bloqueo total, sin importar el movimiento del precio del mercado. Hay que tener en cuenta que el cierre normal del pedido no es adecuado. Sólo necesito manipular el saldo y no cambiarlo como en el bloqueo, pero los lotes son lotes, como los pedidos extra.

Si ese código existe, por favor, dame el nombre de la función o indícame dónde encontrarlo.
 
paragon67:
Hola, pido una pista aquí, ya que no pueden darle una respuesta adecuada en otro lugar. Me interesa una pregunta: ¿es posible sustituir la función de bloqueo sin utilizar órdenes de contador? Es decir, después de una determinada cantidad de puntos en un paso o en un par de divisas, una orden o una cadena de órdenes (principalmente órdenes de stop) deja de aumentar el beneficio y lo congela antes del final del ciclo, cerrando a mano o por bloqueo total, sin importar el movimiento del precio del mercado. Hay que tener en cuenta que el cierre normal del pedido no es adecuado. Sólo necesito manipular el saldo y no cambiarlo como en el bloqueo, pero los lotes son lotes, como los pedidos extra.

Si este código existe, por favor dame el nombre de la función o indícame dónde encontrarlo.
Tendría que hacerlo yo mismo y, para ser sincero, no tengo ni idea de cómo triturar los pedidos. Actualmente estoy haciendo algo similar pero me llevará mucho tiempo.
 
Artyom Trishkin:
¿Vas a calcular algo en el temporizador? No lo creo.

Pero el hecho de que usted necesita los precios OHLC - esto debería darle la opción correcta OnCalculate() de los dos.

Se ha creado una plantilla. ¿A dónde vamos a partir de aquí?

Tenemos que enseñar a trazar su línea )

 
Andrey Koldorkin:

Se ha creado una plantilla. ¿A dónde vamos a partir de aquí?

Tenemos que enseñar a trazar su línea )

Así que... muéstrame el patrón. ¿Cómo sabes lo que hay ahí?
 

Por favor, aconséjeme una solución al problema del redondeo.

Necesito deshacerme del punto decimal sin un resto - el redondeo y la exponenciación no resuelven todo el problema - ¿qué debo hacer?

Por ejemplo, era 1,44430 y necesito 144430.

Parte del código - tal cual

NormalizeDouble(Low[1],Digits)*MathPow(10,(Digits+1)*1-1)