[¡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 145

 
100yan:

Gracias.
Pero no funciona, es un simple desplazamiento... ¡y necesito saber el valor de la MA 56 barras atrás! ¿Alguien tiene algún consejo? Gracias de antemano.
 
ma_shift es el desplazamiento, shift es la barra en la que se calcula la MA
 
eddy:

doble iMA( símbolo, timeframe, period, ma_shift, ma_method, applied_price, shift)
Parámetros:
ma_shift
- shift - desplazamiento del indicador con respecto al gráfico de precios.
shift- índice del valor obtenido del buffer del indicador (desplazamiento con respecto a la barra actual en el número de períodos especificado)
.

Yo también lo he leído... Puede que lo haya entendido mal, pero en la práctica lo he probado de diferentes maneras... No funciona. Por ejemplo, con Alligator: si cambias tanto su desplazamiento como ma_shift en el indicador, el resultado es el mismo: se desplaza en el gráfico... ¿Por qué?
 
IgorM:
todo es correcto, sólo que no hay control de que un pedido ya ha sido realizado, es decir, ahora tendrá un nuevo pedido cada tick

¿Cómo se ajusta este control?
 
100yan:
Yo también he leído eso... quizá me equivoque, pero en la práctica he probado diferentes formas... No funciona. Por ejemplo, con Alligator: si cambias tanto shift como ma_shift en el indicador, el resultado será el mismo: el gráfico se desplazará... ¿Por qué?

No hay desplazamiento si ma_shift=0, debe ser porque no hay valores después del desplazamiento, es decir, porque la línea termina.

 
¿Puedes decirme cómo mover o copiar objetos (líneas verticales en mi caso) de una ventana a otra?
 
AndrejFX:
¿Puedes decirme cómo mover o copiar objetos (líneas verticales en mi caso) de una ventana a otra?

hay un sincronizador de objetos en el código base

Pero si sólo son líneas verticales, ésta es mejor.

 
sergeev:

el código base tiene un sincronizador de objetos

pero si solo son verticales, este es mejor

bonito guión, ¡gracias!
 

eddy:

¿por qué mi MainBuffer[i] supera los 100? ¿dónde está el error?

He encontrado dónde está el error, pero no entiendo por qué.

HighesBuffer[i]=MathMax(HighesBuffer[i],High[k]); //if(High[k]>maximum) maximum=High[k];
 LowesBuffer[i]=MathMin(LowesBuffer[i],Low[k]);   // if(Low[k]<minimum) minimum=Low[k];

no es lo mismo que.

if(High[k]>HighesBuffer[i]) HighesBuffer[i]=High[k];
if(Low[k]<LowesBuffer[i]) LowesBuffer[i]=Low[k];
 


Chicos ayuda, no lo entiendo....
Entrada para comprar: Cuando dos indicadores RSI con períodos de 14 y 17 se cruzan simultáneamente y cierran por encima de 30 hacia arriba....

Entrada para vender: Cuando dos indicadores RSI con periodos de 14 y 17 se cruzan simultáneamente y cierran por debajo del nivel de 70 desde arriba ....

Lo que me interesa es un cruce simultáneo de la sangre... es decir, EJEMPLO

diRSI1 y diRSI2 estaban ambos por debajo de 30, y al cierre de la siguiente vela ambos estaban por encima de 30... De la misma manera, con el nivel 70.


double diRSI1=iRSI(NULL,0,14,PRICE_CLOSE,0);
double diRSI2=iRSI(NULL,0,17,PRICE_CLOSE,0);
double diRSI3=iRSI(NULL,0,14,PRICE_CLOSE,1);
double diRSI4=iRSI(NULL,0,17,PRICE_CLOSE,1);

if(AccountFreeMargin()<(100*Lots)){
Print("No tenemos dinero. Margen libre = ", AccountFreeMargin());
return(0);
}
if (!ExistPositions()){

if (( diRSI1>30 && diRSI2>30 && diRSI3<30 && diRSI4<30)){
OpenBuy();
return(0);
}

if ((diRSI1<70 && diRSI2<70 && diRSI3>70 && diRSI4>70)){
OpenSell();
return(0);
}
}


si es correcto entonces en la prueba todavía abre operaciones que no encajan....

AYUDA...

Razón de la queja: