Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 6. - página 198
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Buenas tardes.
Por favor, indique cómo se puede aplicar lo siguiente:
El precio se mueve entre 1,9047 y 1,9080 (las cifras son arbitrarias). Si el precio de apertura de la siguiente vela se mueve fuera de este rango - emite una Alerta. Si no lo hace, espera a la siguiente vela. Y así hasta que el precio salga de la gama.
Gracias de antemano.
Este es un fragmento de código, cuyos datos se utilizan para el análisis:
Es decir, más adelante el código se verá así:
Y aquí está la cuestión: ¿cómo y dónde debemos ponerlo? Si está dentro de la condición, no se imprimirá ninguna alerta, y si está fuera de la condición, las alertas se imprimirán en cada tick.
Pido disculpas por mi pregunta mal formulada.
Este es un fragmento de código, cuyos datos se utilizan para el análisis:
es decir, más adelante el código se verá así:
Y aquí está la cuestión: ¿cómo y dónde debemos ponerlo? Si está dentro de la condición, no se imprimirá ninguna alerta, y si está fuera de la condición, las alertas se imprimirán en cada tick.
Pido disculpas por mi pregunta mal formulada.
Gracias, lo he solucionado. Aquí hay otra pregunta: las alertas se generan ahora a partir de un intervalo de tiempo especificado y cuando se supera el rango hasta el "tope". ¿Hay alguna manera de detener esta "búsqueda" cuando el primer valor satisface la condición?
Pues bien, hay que entender la condición principal que se cumple todo el tiempo, durante un periodo de tiempo. Por ejemplo, comparando los tiempos. Después de emitir todas las alertas, hay que asignar un nuevo valor a la variable con la que se compara la hora actual. Busca una función que defina una nueva barra. El concepto de su construcción debería ayudarte.
¿Lo has leído aquí?
¿Cómo puedo saber la distancia mínima del mercado para colocar una orden pendiente?
¿Cómo puedo saber la distancia mínima del mercado para colocar una orden pendiente?
int level=MarketInfo(Symbol(), MODE_STOPLEVEL);
si el StopLevel es cero, entonces lo más probable es que level=MarketInfo(Symbol(), MODE_SPREAD)*2;
Alpari utiliza precisamente el doble spread como StopLevel.
Para determinar la distancia lea aquí.
Gracias artmedia70:
OK, mucho tiempo sin respuesta, te daré una pista: cuando devuelve el valor verdadero de la función isCloseLastPosByStop (), devuelve un valor más, que es el tamaño del lote de la última posición encontrada.
¿Cómo hacerlo? Pase una variable a la función por referencia, en la que escribirá el tamaño del lote en la propia función. Para ello, deberá modificar ligeramente la función isCloseLastPosByStop ()
Si no entiendes nada, busca una función que devuelva el tamaño del lote de la última posición cerrada. O puedes hacer uno tú mismo. Y utilizarlo, pero esto es más costoso que pasar el valor del lote junto con true
He modificado la función para que en lugar de True la función devuelva una variable lote, en la que la propia función he escrito el tamaño del lote.
Todo se compila, pero los pedidos no se abren:
2013.10.23 20:57:46 2011.02.24 16:25 GMT EURUSD,M5: OrderSend error 4051
2013.10.23 20:57:46 2011.09.22 22:20 WEDNING EURUSD,M5: cantidad de lotes no válida para la función OrderSend
Por favor, dígame cuál es mi error.
Gracias.
He modificado la función para que en lugar de True la función devuelva una variable lote, en la que he escrito el tamaño del lote en la propia función.
Todo se compone, pero las órdenes no se abren en el diario dice:
2013.10.23 20:57:46 2011.02.24 16:25 PM EURUSD,M5: OrderSend error 4051
2013.10.23 20:57:46 2011.09.22 22:20 WEDNING EURUSD,M5: cantidad de lotes no válida para la función OrderSend
Por favor, aconséjeme cuál es mi error.
Gracias.
La función que determina la última posición cerrada por parada tiene un tipo bool, mientras que usted está intentando devolver el tipo double. En consecuencia, devuelve 0 o 1.
Escribí que deberíamos añadir el paso de una variable por referencia en ella:
Ahora comprueba el último Buy, por ejemplo:
Así...