[¡Archivo!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no lo dejéis pasar. No podría ir a ningún sitio sin ti - 2. - página 376

 
-xlapex-:

Aquí he aplicado la función MathAbs, Alerta muestra cero y cero, pero me gustaría que el módulo de diferencia y el índice de barra...

int start()
{
int mas1[30,2],mas2[30,2],mas3[30,2],ind_1;
{
for (int i=1;i<=count_bars;i++)
{
mas1[i, 0]=Close[i];
mas1[i, 1]=i;
mas2[i, 0]=Open[ i];
mas2[i, 1]=i;

mas3[i, 0] = MathAbs(Close[ i]-Open[ i]);
mas3[i, 0] = i;

ArraySort( mas3);
mod_1=mas3[2, 0];
ind_1=mas3[2, 1];

Alert( mod_1," ",ind_1);
}
}

return(0);
}

Sus arrays son int, y Open y Close son double correspondientemente 1 - 1 = 0
 

Hola a todos

Soy nuevo en mql4 tratando de escribir un Asesor Exper to usando el indicador aligator

Estoy intentando escribir un EA en mql4 pero aún no ha salido nada útil.

Los profesionales de los ciudadanos pueden haberle hecho tales peticiones triviales , preguntas , etc., pero aún así podrían pedir a los profesionales que escriban un experto en el indicador de caimanes

Pero aún así puede pedirle a los profesionales que escriban un experto en el indicador de caimanes


Estrategia de pips


Las posiciones de compra y venta se cierran cuando se alcanza el StopLoss y el TakeProfit

Una señal de compra cuando la línea verde cruza la azul y la roja desde abajo hacia arriba abre una posición de compra

una señal de venta cuando la regla verde cruza el rojo y el azul de arriba abajo para abrir una posición de venta

no abra más de una orden hasta que se cierre el cruce


StopLoss =10;

TakeProfit =10;

Magia =33;

SlipPage =5;

Lote =0,1;

Gracias de antemano


 
artmedia70:
Tus arrays son int, pero Open y Close son double
Reemplazado, sigue en ceros. Y otra cosa - en mis matrices bidimensionales, un conjunto es de tipo double, mientras que el segundo es de tipo int (índices de barras). ¿Cómo llevarlos a un tipo mientras se calculan, pero volver al tipo anterior de nuevo cuando se emite el resultado?
 
-xlapex-:
Reemplazado, sigue en ceros. Una cosa más - en mis matrices bidimensionales, un conjunto es de tipo double, y el segundo es de tipo int (índices de barras). ¿Cómo convertirlos al mismo tipo para el momento de los cálculos, pero volver al mismo tipo de nuevo cuando se emita el resultado?

¿Y a qué equivale count_bars?
 
Roger:

¿Y a qué equivale count_bars?

count_bars = 30;


He estado pensando y he decidido que dos matrices son redundantes, ya están especificadas programáticamente. Ahora será más fácil pensar. ¿Cómo puedo reducirlos a un solo tipo?

int start()
{
double mas1[30,2],mod_1;
int ind_1;
{
for (int i=1;i<=30;i++)
{
mas1[i, 0] = MathAbs(Close[i]-Open[i]);
mas1[i, 1] = i;

ArraySort(mas1);
mod_1=mas1[2, 0];
ind_1=mas1[2, 1];

Alert(mod_1," ",ind_1);
}
}
return(0);
}


 
-xlapex-:

count_bars = 30;

Entonces, sustitúyalo por

mod_1=mas1[2, 0];
ind_1=mas1[2, 1];

a

mod_1=mas1[i, 0];
ind_1=mas1[i, 1];
 
Roger:

Entonces, sustitúyalo por

a

Reemplazado. mod_1 da set={1,3,5,7,9,...,29} y ind_1 sigue mostrando cero.
 
-xlapex-:
Lo he sustituido. mod_1 da set={1,3,5,7,9,...,29}, pero ind_1 sigue mostrando cero.


no muestra el cero

double mas1[30,2],mod_1; 
int ind_1; 
for (int i=1;i<=30;i++)
{ 
   mas1[i, 0] = MathAbs(Close[i]-Open[i]);
   mas1[i, 1] = i;

   ArraySort(mas1);
   mod_1=mas1[i, 0];
   ind_1=mas1[i, 1];

   Print(mod_1," ",ind_1);
}

pero su código es un poco incomprensible

por ejemplo, el array mas no se ha formado todavía, pero ya lo estás ordenando

Tal vez el contexto de tu pregunta lo mejore:

double mas1[30,2],mod_1; 
int ind_1; 
for (int i=1;i<=30;i++)
{ 
   mas1[i, 0] = MathAbs(Close[i]-Open[i]);
   mas1[i, 1] = i;
}
ArraySort(mas1);
mod_1=mas1[2, 0];
ind_1=mas1[2, 1];
Print(mod_1," ",ind_1);
 
-xlapex-:
Reemplazado. mod_1 da set={1,3,5,7,9,...,29}, pero ind_1 sigue mostrando cero.

Sí.... ¿Y por qué soy tan despistado?

Resulta que todo es simple - ArraySort(mas1,30,1,MODE_DESCEND ). Todo lo que tienes que hacer es escribir todo lo que se supone que debes hacer.

 
abolk:


no muestra el cero

pero su código es un poco incomprensible

por ejemplo, el array mas no se ha generado todavía y ya lo estás ordenando

Y qué quiere decir con "no formado". ¿Qué más me falta?
Razón de la queja: