[ARCHIVO]Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No puedo ir a ningún sitio sin ti - 5. - página 137
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
En este momento la tarea es la siguiente: fastMa ha cruzado slowMa hacia arriba... así que estamos buscando dónde comprar. Entonces esperamos hasta que el precio, es decir, Ask (ya que consideramos comprar) alcance fastMa ( bueno, supongo que no habrá un valor exacto, necesitamos +- cierta desviación, y esto se cambia por i_thresholdFromMa) y tan pronto como el precio alcance fastMa +- i_thresholdFromMa el Asesor Experto debe establecer BUYSTOP en (fastMa + buyHear * pt).
Lo que se me ha ocurrido no funciona en un terminal y no siempre funciona en otro. Algo va mal en general.
La última variante de la función buyHear aquí:
Estos son los parámetros de entrada:Los errores se pueden ver en la captura de pantalla (en OrderSend() el precio se alimenta por encima de la varilla roja, y la orden como se ve en la captura de pantalla está por debajo de....):
He estado fuera unos días... Me pregunto: ¿tienen los mismos parámetros las varillas lanzadas en el gráfico que las varillas utilizadas en los cálculos? ¿Tal vez sea ahí donde está enterrado el perro?
(Todavía no he tenido tiempo de profundizar en el código y desmontarlo).
Yo haría una función, por ejemplo:
y llamarlo para obtener los parámetros
Hola, ¿podríais aconsejarme? Una señal del indicador para comprar se ha disparado, abro una orden sólo después de confirmar las dos velas siguientes hacia arriba.
Hola, ¿podríais aconsejarme? Una señal del indicador se ha disparado para comprar, abro una orden sólo después de confirmar las dos velas siguientes hacia arriba.
Así que comprueba que las dos últimas velas arriba y la condición de abrir una orden hace dos barras al mismo tiempo.
Por lo tanto, compruebe que los dos últimos candlesticks hacia arriba y la condición de abrir una orden dos barras hacia atrás al mismo tiempo.
¿cómo lo hago?
Y si es así, la señal se activa esperar la confirmación, sólo después de una barra hacia arriba o hacia abajo 2 bares.
Necesitamos que recuerde la barra sobre la señal, la barra después de la señal, compararlas si las dos son ascendentes o descendentes, entonces .....
¿cómo lo hago?
Si la señal funcionó, esperamos la confirmación, pero después de que la barra suba o baje.
Debe recordar la barra sobre la señal, la barra después de la señal, compararlas si las dos son ascendentes o descendentes, entonces .....
¿cómo lo hago?
Si la señal funcionó, esperamos la confirmación, pero después de que la barra suba o baje.
Debe recordar la barra sobre la señal, la barra después de la señal, compararlas si las dos son ascendentes o descendentes, entonces .....
Estoy escribiendo un simple Asesor Experto y me encuentro con muchos problemas.
La condición es
Recuerdo el precio de cierre de la barra actual y lo introduzco en la variable Startprice si la cuarta barra anterior estaba en la barra deslizante.
Si la condición se cumple, entonces dibuja un icono que muestra el precio de cierre de la barra, es decir, el precio inicial.
Lo que he conseguido es que el icono se dibuje, pero sólo una vez, mientras que yo lo necesito siempre.
El precio de cierre de la barra no coincide con el precio Startprice a 0,00001. ¿Por qué y cómo lo arreglo?
He intentado redondear y recortar a 5 dígitos, pero no ha servido de nada.
En el registro usando la impresión llamo el valor Startprice, muestra el número sólo hasta 4 dígitos y menos.
¿Cómo conseguir la misma precisión que en la ventana de datos del terminal?
Este problema del punto decimal también se aplica al propio deslizador. Si llamas a sus valores a través de print, no puedes obtener más de 4 dígitos en el registro.
Utilice DoubleToStr(number, Digits) para la salida. En lugar de Dígitos puede escribir la precisión que desee. Añada al nombre del icono la hora de la barra en la que está fijando el icono.
si es así
no funciona, culpa a '=' - tipos incompatibles C:\fortest\experts\sve.mq4 (34, 14)
¿Cómo lo escribo correctamente?
Gracias por la respuesta, he estado luchando con esto durante una semana )
Utilice DoubleToStr(number, Digits). En lugar de Dígitos, puede escribir la precisión que desee. Añade el tiempo de la barra al nombre del icono donde lo estás configurando.
pero para la salida, entiendo que la impresora sólo imprime 4 o menos dígitos.
entonces si Print (DoubleToStr(Startprice,5)); // imprimir Startprice
da 5.
Pero aquí está la forma de añadir el tiempo de la barra.
Esta línea no añade el tiempo del bar?