[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 398

 
Jahspear писал(а) >>

Comment("Sample text" );

Hola a todos, aquí está el comentario que muestra el EA. Entonces desconectas el EA del gráfico, pero el comentario permanece. Entiendo que hay que hacer del comentario un objeto y luego prescribir el borrado de este objeto en deinit. En teoría está claro, pero en la práctica, no tanto. Profesionales, esbozar una plantilla de código, cómo hacer esto, por favor.

int deinit(){
   Comment("");
   return(0);
}
 
Vinin >>:

Gracias. Realmente lo quita. Pero inmediatamente, con la llegada de una nueva garrapata. No cuando se elimina el EA. ¿Cómo lo hago bien?

 

Por la tarde.

He aplicado una MA a un CCI y si busco su valor en el iMA, obtengo el valor del gráfico.

No sé cómo acceder a esta MA y obtener su valor de este CCI en lugar de hacerlo desde el gráfico, decidí hacerlo por cálculo.

He creado el siguiente script para comprobarlo. Supuestamente debería dar salida a cinco pares coincidentes de valores de CCI y MA simple en el CCI.
int start()
{
int Period_CCI=18;
int Period_MA=9;
double MApoCCI;
double ind_CCI,ind_CCI_2;
double Sum_CCI;
int k=1;
for (k=1;k<5;k++)
{
for (int i=1+k;i<Period_MA;i++)
{
ind_CCI= iCCI(Symbol(),0,Period_CCI,PRICE_TYPICAL,i);
Sum_CCI=Sum_CCI+ind_CCI;
}
MApoCCI=Suma_CCI/Periodo_MA;
ind_CCI_2= iCCI(Symbol(),0,Period_CCI,PRICE_TYPICAL,k);
Alert("MA por CCCI "+k+" ="+MApoCCI);
Alert("CCCI "+k+" ="+ind_CCI_2);
Sum_CCI=0;
}
//----
return(0);
}

Sale pares pero da los valores de MA en CCI que no coinciden con el valor de MA tomado al pasar el cursor por encima de

a la hora correspondiente en la línea de la MA en la ventana del CCI, los valores del CCI en este caso corresponden a la línea del gráfico.

¿Quién sabe por qué hay una diferencia en los valores de MA y es posible obtener los valores de MA de CCI de una manera más fácil de lo que estoy tratando de hacer?

 
Vekker >>:


Кто знает почему разница в значениях МА ...?.

Porque tienes un error en el código.

correcto

for (int i=1+k;i<Period_MA+k;i++)
{
...
}
y utilice el botón SRC para insertar el código.
 
alsu писал(а) >>

Porque tienes un error en tu código.

correcto

Lo he corregido sin saber para qué - lo he dejado para más adelante, si todo va bien. El valor MA ha cambiado, pero de nuevo no es el mismo que en la línea.

He ejecutado el script en GBPCHF en el par del día.

El cálculo da 45,62145966, desde la línea, calculada por Simple, se lee 62,6442.

Esto es vergonzoso, pero ¿qué es?

 
Jahspear >>:

Спасибо! Действительно удаляет. Но сразу, с приходом нового тика. А не когда удаляешь советник. А как сделать правильно?

¿Cómo lo ha conseguido? Deinit se activa una vez en el momento del cierre y no se ejecuta a posteriori. Puede que hayas insertado parte del código en start y deinit es una función separada que debería estar entre init y start.

 
granit77 >>:

Как Вы этого добились? deinit срабатывает один раз при завершении работы и не исполняется потиково. Возможно, Вы вставили часть кода в start, а deinit - это отдельная функция, которая должна стоять между init и start.

No sé yo mismo) Ahora lo he intentado de nuevo, con una ventana de gráfico limpia, ha funcionado. Así que este comentario fue interrumpido por un comentario de otro indicador.

 
Vekker >>:

Исправил, не разобираясь для чего - отложил на потом, если все пойдет. Значения МА поменялось, но снова не такое, как на линии.

Прогнал скриптик на паре GBPCHF на дневке.

расчет дает 45,62145966, с с линии, расчитанной по "Simple" снимается 62,6442

Стыдно, но кнопкой SRC - это как?

buscar más errores lógicos.


Es el SRC:


 

Hola, he decidido estudiar MQL4 y he empezado a trabajar con arrays. Cuando intento dar salida a un elemento Time[] me sale el valor 1264149780 en lugar de 2006.11.01 14:35, ¿o tal vez 1264149780 es una coordenada?

 
alsu писал(а) >>

buscar más errores lógicos.

El SRC lo es:

Gracias por el botón. Se vive y se aprende, y es malo para los despistados.