Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 204
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
El cruce de MA se produce entre barras - cogió un claro ejemplo
La MA de las barras a la izquierda y a la derecha del cruce es diferente del precio en el punto de cruce. Entiendo que el que pregunta quiere el valor en el punto exacto de cruce en lugar del valor en una de las barras vecinas. Este valor exacto puede obtenerse mediante interpolación lineal, ya que la MA entre barras se construye como segmentos de línea recta. O tomar las coordenadas de cada MA en barras adyacentes. Construye analíticamente 2 rectas y calcula su punto de intersección. Se puede calcular considerando 2 triángulos similares. Surge una pregunta contraria: ¿por qué lo necesitamos? ¿Son los costes proporcionales al valor del resultado? Al fin y al cabo, los puntos de intersección se moverán si los parámetros del MA se modifican mínimamente. Lo más probable es que lo exija el director del proyecto del curso
No puedo encontrar el error en mis cálculos.
Necesito encontrar el máximo y el mínimo del día anterior, pero por alguna razón el mínimo fue el día anterior
Es mejor utilizar CopyHigh y CopyLow con el periodo PERIOD_D1 y la barra o el tiempo correspondiente.
Cualquier barra de cualquier Timeframe contiene información generalizada del correspondiente intervalo de barras de Timeframes inferiores: máximo, mínimo, hora de apertura y cierre y volumen igual a la suma de los volúmenes de las barras inferiores. Más concretamente, esta información está contenida en las matrices correspondientes
Lo haría, pero es posible que no pueda calcular los datos usando más algoritmos, ya que tendría que buscar otros valores de ayer y sería una tarea volver a escribir las funciones.
Si pudieras decirme dónde está el error en mi código, no lo entiendo. Cuando intento mostrar el número de barras todas encajan, pero cuando intento obtener el máximo o el mínimo, no muestra lo que debería.
Lo haría, pero puede que no sea capaz de calcular los datos porque tendría que buscar otros valores de ayer y sería un coñazo volver a escribir las funciones.
Si pudieras decirme dónde está el error en mi código, no lo entiendo. Cuando muestro el número de barras en la pantalla, todo converge, pero cuando intento obtener el máximo o el mínimo, no muestra lo que debería.
Has hecho tanto lío que no puedo ni siquiera darle sentido. Una montaña de conversiones de uno a otro...
¿Y todo para encontrar el máximo y el mínimo del día?
¿Qué es lo que no te funciona?
¿Necesitas saber los máximos del día? Por favor:
¿Necesita saber el máximo de ayer? Fácil:
¿Necesitas saber el mínimo de anteayer? No hay problema:
Bueno, podrías tomar el camino más fácil y utilizar funciones cuádruples puras:
Pero yo no aconsejaría - usando nuevas construcciones de lenguaje, te preparas a ti mismo y a tu código para que algún día no se soporte el cuádruple, y la autodisciplina y todo eso ;)
Has hecho un lío tan grande que es difícil de ordenar. Una montaña de conversiones de una cosa a otra...
¿Todo para encontrar los altos y bajos del día?
¿Qué es lo que no te funciona?
¿Necesitas saber los máximos del día? Por favor:
¿Necesita saber el máximo de ayer? Fácil:
¿Necesitas saber el mínimo de anteayer? No hay problema:
Bueno, podrías tomar el camino más fácil y utilizar funciones cuádruples puras:
Pero yo no aconsejaría - usando nuevas construcciones de lenguaje, te preparas a ti mismo y a tus códigos que algún día el cuádruple no será soportado, y la autodisciplina y todo eso ;)
Yo mismo he encontrado un error ( toda la falta de atención malinterpretó los parámetros iHighest, iLowest ).
Así que no es adecuado ya que necesitará otros cálculos de ayer
He encontrado el error yo mismo (toda la falta de atención ha hecho que se malinterpreten los parámetros iHighest,iLowest).
Esto no es adecuado ya que se necesitarán otros cálculos de ayer
if(Red ) OrderSend( ... Buy ...) ; if( Blue ) OrderSend( ... Sell ...) ;
Sólo lo contrario, vender en la parte superior, comprar en la parte inferior...
La función OnInit (la antigua que pedía el init) se ejecuta al inicio del indicador (al cambiar de marco temporal, recompilar, ...). Todas las variables utilizadas deben tener un valor asignado. La línea SetIndexDrawBegin(0,i-1) está presente en la función OnInit; hay que asignar un valor a la variable i o utilizar una constante
if(Red ) OrderSend( ... Buy ...) ; if( Blue ) OrderSend( ... Sell ...) ;
Sólo lo contrario, vender en la parte superior, comprar en la parte inferior...
La función OnInit (la antigua que pedía el init) se ejecuta al inicio del indicador (al cambiar de marco temporal, recompilar, ...). Todas las variables utilizadas deben tener un valor asignado. En la función OnInit, está la línea SetIndexDrawBegin(0,i-1); hay que asignar un valor a la variable i o utilizar una constante
Para ser sincero, no entiendo nada, soy nuevo en la programación de Mql4, si no te importa ayudarme con el código.
El código suele ayudar en el trabajo autónomo.
Aquí - el algoritmo o para corregir sus errores. Pero no para volver a escribir para ti.