novichok2018: Gracias. Entiendo las convenciones, las tendré en cuenta. Pero para entender el script sugerido, por desgracia, mis conocimientos de mcl4 no son suficientes. Lo siento :( .
Hago todos mis experimentos con guiones. Ejecute el script en su terminal. Cambia algunas líneas o deséchalo. Ver lo que sucede
Quiero encontrar el Min Max de los datos del indicador, he hecho "todo según el manual", pero parece que los datos del indicador no se escriben en un array. MQL pro dígame dónde me he equivocado.
int limit=40000;
double ArrayGreen[];
ArrayResize(ArrayGreen,limit);
for (int i=0;i>=limit;i++)
{
ArrayGreen[i] =iCustom(NULL,0,"Kolier_SuperTrend_Indi",ATR_Period,ATR_Multiplier,0,1);
}
int max=ArrayMaximum(ArrayGreen,Quant,0);
double iMaximum = ArrayGreen[max];
Print("Max = ",ArrayGreen[max]," at index=",max);
double ArrayRad[];
ArrayResize(ArrayRad,limit);
for (int i=0;i>=limit;i++)
{
ArrayRad[i] = iCustom(NULL,0,"Kolier_SuperTrend_Indi",ATR_Period,ATR_Multiplier,1,1);
}
int min=ArrayMinimum(ArrayRad,Quant_Bars,0);
double iMinimum = ArrayRad[min];
Print("Min= ",ArrayRad[min]," at index=",min);
Quiero encontrar el Min Max de los datos del indicador, he hecho "todo según el manual", pero parece que los datos del indicador no se escriben en un array. Si usted es un profesional de MQL, por favor, aconséjeme dónde me he equivocado.
El valor de la variable límite es mayor que cero. Por lo tanto, ninguno de los bucles se ejecutará. En consecuencia, ArrayGreen y ArrayRad quedarán sin cubrir.
Si ponemos el límite a cero o menos, el programa volverá al primer bucle.
Por lo tanto, tenemos que modificar la condición de los bucles. Lo más probable es que se haga así:
Quiero encontrar el Min Max de los datos del indicador, he hecho "todo según el manual", pero parece que los datos del indicador no se escriben en un array. Tengo un buen MQL pro, por favor, aconséjeme dónde me he equivocado.
Además, en iCustom(...........); el último parámetro pasado i
for (int i=0;i<limit;i++)
{
ArrayGreen[i] =iCustom(NULL,0,"Kolier_SuperTrend_Indi",ATR_Period,ATR_Multiplier,0,i);
}
Para la comodidad de las pruebas, quiero quitar el botón para activar y desactivar la condición, para no tener que entrar en el código cada vez y no tener que cambiar la condición en texto, para que no tenga efecto.
En otras palabras, ahora mismo lo hago así:
if ((Close[1]<=High[2])&&(Close[1]>=Low[2])&&(Open[1]<=High[2])&&(Open[1]>=Low[2]))
{
Intenté sacar la habilitación y la deshabilitación en la configuración de entrada bool Y=True; (Donde Y es la condición), asignar Y a la condición, y dividir las ramas si la condición funciona o no mediante else if. Pero algo no funcionó.
Para la comodidad de las pruebas, quiero quitar el botón para activar y desactivar la condición, para no tener que entrar en el código cada vez y no tener que cambiar la condición en texto, para que no tenga efecto.
En otras palabras, ahora mismo lo hago así:
Apagándolo así:
Traté de tirar de la habilitación y deshabilitación en la entrada bool Y=True; (Donde Y es la condición), asignar Y a la condición, y dividir las ramas si la condición está o no está en efecto vía else if. Pero algo no funcionó.
Por favor, aconseje qué hacer en estos casos.
Se puede hacer lo siguiente
inputbool FLAG =True;
if (FLAG && (Close[1]<=High[2])&&(Close[1]>=Low[2])&&(Open[1]<=High[2])&&(Open[1]>=Low[2]))
{
La razón es que el algoritmo ignora la condición de Falso y pasa a las siguientes condiciones.
inputbool FLAG =False;
El algoritmo no irá más allá, mientras que debería ignorar esta condición cuando el código es Falso e ir a las siguientes condiciones.
En mi caso, la única opción es especificar 2 ramas?
inputbool FLAG =True;
if (FLAG=True)
{(Close[1]<=High[2])&&(Close[1]>=Low[2])&&(Open[1]<=High[2])&&(Open[1]>=Low[2]))
{//следующие условия
}
}
if (FLAG=False)
{//следующие условия
}
Para iniciar sesión y usar el sitio web MQL5.com es necesario permitir el uso de Сookies.
Por favor, active este ajuste en su navegador, de lo contrario, no podrá iniciar sesión.
Ha iniciado sesión. La autenticación de dos factores se ha desactivado. Vuelva a configurarla y escanee un nuevo código QR, o continúe con la autenticación de dos factores desactivada.
Hago todos mis experimentos con guiones. Ejecute el script en su terminal. Cambia algunas líneas o deséchalo. Ver lo que sucede
Quiero encontrar el Min Max de los datos del indicador, he hecho "todo según el manual", pero parece que los datos del indicador no se escriben en un array. MQL pro dígame dónde me he equivocado.
Quiero encontrar el Min Max de los datos del indicador, he hecho "todo según el manual", pero parece que los datos del indicador no se escriben en un array. Si usted es un profesional de MQL, por favor, aconséjeme dónde me he equivocado.
El valor de la variable límite es mayor que cero. Por lo tanto, ninguno de los bucles se ejecutará. En consecuencia, ArrayGreen y ArrayRad quedarán sin cubrir.
Si ponemos el límite a cero o menos, el programa volverá al primer bucle.
Por lo tanto, tenemos que modificar la condición de los bucles. Lo más probable es que se haga así:
Quiero encontrar el Min Max de los datos del indicador, he hecho "todo según el manual", pero parece que los datos del indicador no se escriben en un array. Tengo un buen MQL pro, por favor, aconséjeme dónde me he equivocado.
Además, en iCustom(...........); el último parámetro pasado i
algo así.
¡Buenas tardes!
Para la comodidad de las pruebas, quiero quitar el botón para activar y desactivar la condición, para no tener que entrar en el código cada vez y no tener que cambiar la condición en texto, para que no tenga efecto.
En otras palabras, ahora mismo lo hago así:
Apagándolo así:
Intenté sacar la habilitación y la deshabilitación en la configuración de entrada bool Y=True; (Donde Y es la condición), asignar Y a la condición, y dividir las ramas si la condición funciona o no mediante else if. Pero algo no funcionó.
¿Puede aconsejar cómo proceder en estos casos?
¡Buenas tardes!
Para la comodidad de las pruebas, quiero quitar el botón para activar y desactivar la condición, para no tener que entrar en el código cada vez y no tener que cambiar la condición en texto, para que no tenga efecto.
En otras palabras, ahora mismo lo hago así:
Apagándolo así:
Traté de tirar de la habilitación y deshabilitación en la entrada bool Y=True; (Donde Y es la condición), asignar Y a la condición, y dividir las ramas si la condición está o no está en efecto vía else if. Pero algo no funcionó.
Por favor, aconseje qué hacer en estos casos.
Se puede hacer lo siguiente
Podrías hacer esto.
La razón es que el algoritmo ignora la condición de Falso y pasa a las siguientes condiciones.
El algoritmo no irá más allá, mientras que debería ignorar esta condición cuando el código es Falso e ir a las siguientes condiciones.
En mi caso, la única opción es especificar 2 ramas?
¿O hay una manera más fácil?
En su versión resulta que si el valor
El algoritmo no irá más allá, mientras que debería ignorar esta condición si es Falso y pasar a las siguientes condiciones.
En mi caso, la única opción es escribir 2 ramas?
¿O hay una manera más fácil?
En su versión resulta que si el valor
El algoritmo no irá más allá, mientras que debería ignorar esta condición si es Falso y pasar a las siguientes condiciones.
En mi caso, la única opción es escribir 2 ramas?
¿O hay una manera más fácil?
Sólo así