-----------------------------------------------------------------------------------------------------------------------------------------
Hola, muy buenas.
Ando estudiando programación
mql4 y comparando códigos de otros programas para ir aprendiendo.
La verdad es que me he estancado bastante en el tema de las funciones personalizadas con valores dentro de los paréntesis.
Ojeando un EA de estos que hay por internet a patadas que se les denomina edu (ya sabemos todos porque).
En este EA, por ejemplo hay un mogollon de funciones personalizadas y en la mayoría de ellas aparece (int ai_0) que según donde se le ponga después pués no entiendo su valor.
Copypaste:
double f0_16(int ai_0) {
double ld_4 = 0;
double ld_24 = High[iHighest(NULL, 0, MODE_HIGH, albar, ai_0)];
double ld_32 = Low[iLowest(NULL, 0, MODE_LOW, albar, ai_0)];
ld_4 = ld_24 - ld_32;
return (ld_4);
}
void f0_52(int ai_0, double ad_4, double ad_12) {
if (!IsTesting()) {
while (IsTradeContextBusy() == TRUE) {
Sleep(100);
RefreshRates();
}
}
bool li_20 = OrderModify(ai_0, OrderOpenPrice(), ad_4, ad_12, 0, CLR_NONE);
if (li_20 == FALSE) f0_27(f0_6(15), ai_0, OrderOpenPrice(), ad_4, ad_12, GetLastError());
}
En el primer caso entiendo que se le dá valor 0 según donde esta situado. En busca del alto y bajo desde 0 barras al valor albar.
Pero en la segunda función, en el OrderModify se coloca ai_0 como valor del ticket de la orden ....¿ pero en que momento se le dá ese valor ?.
Bufff es que no lo entiendo ... todo el código esta lleno de ai_0 pero siempre dentro de funciones personalizadas, nunca fuera de ellas.
¿ Alguien me lo pudiera aclarar please ?.
Muchas gracias.
Saludos.
--------------------------------------------------------------------------------