Ayuda a la codificación - página 652

 
stevenpun:

Gracias mladen ,

Creo que estoy ciego, nunca vi el buffer 6. Ahora funciona perfectamente :)

Acabo de hacer una prueba rápida en el probador de ea , después de la prueba de comprobar en la "lista de indicadores " .

Se ha cargado muchas veces el indicador, ¿es esto normal?


stevenpun

No, no es normal

Comprueba los tipos de parámetros utilizados en la llamada a iCustom() (este error suele ocurrir cuando el tipo de parámetro utilizado en la llamada a iCustom() no es el mismo que en la lista de parámetros de los indicadores)

 
mladen:

No, no es normal

Comprueba los tipos de parámetros utilizados en la llamada a iCustom() (este error suele ocurrir cuando el tipo de parámetro utilizado en la llamada a iCustom() no es el mismo que el de la lista de parámetros del indicador)

Todavía no puedo solucionarlo , intento copiar todo el parámetro del indicador y sigue siendo el mismo .

Sr. mladen, ¿puede ayudarme a eliminar todas las alertas y el marco temporal del indicador?

Para que sea "simple" para el uso de ea solamente.

 
stevenpun:

Todavía no puedo solucionarlo , intento copiar todo el parámetro del indicador sigue siendo el mismo .

Sr. mladen , es que me puede ayudar a eliminar toda la alerta y el marco de tiempo del indicador ?

Para que sea "simple" para el uso de ea solamente.

He utilizado este código :

//------------------------------------------------------------------
//
//------------------------------------------------------------------
#property indicator_chart_window
#property indicator_buffers 0
extern int     UpBandPrice          =     0;    // Upper Band Price(ex.2 for High)     
extern int     LoBandPrice          =     0;    // Lower Band Price(ex.3 for Low) 
extern int     MA_Length            =     6;    // Bollinger Bands Period
extern int     MA_Mode              =     0;    // Mode of Moving Average  
extern double  Deviation            =     1;    // Deviation
extern int     DeviationLength      =     20;    // Period of Standard Deviation
extern double  MoneyRisk            =     0.5;    // Offset Factor
extern int     SignalMode           =     1;    // SignalMode: Display signals mode: 0-only Stops,1-Signals & Stops,2-only Signals
extern int     LineMode             =     1;    // Display line mode: 0-no,1-yes  
extern int shift  =1;
//------------------------------------------------------------------
//
//------------------------------------------------------------------
int init()  { return(0); }
int start() 
{ 
   double trendCurr = iCustom(Symbol(),0,"BBands stop v3 MTF + limited bars",0,UpBandPrice, LoBandPrice, MA_Length, MA_Mode,Deviation,DeviationLength,MoneyRisk,SignalMode,LineMode,6,shift);
   double trendPrev = iCustom(Symbol(),0,"BBands stop v3 MTF + limited bars",0,UpBandPrice, LoBandPrice, MA_Length, MA_Mode,Deviation,DeviationLength,MoneyRisk,SignalMode,LineMode,6,shift+1); 
   Comment(trendCurr,"    ",trendPrev);
   return(0); 
}


para la prueba, y todo funciona bien

 
oguz:
Hola amigos,
¡Este es mi ea y ahora no abrir cualquier orden!
Tal vez el problema es más reciente mt4 b988. ¿Me puede ayudar por favor?

PS: Mi corredor es ahora "tipo instantáneo" Tal vez es códigos no compatibles corredor de tipo instantáneo?
¿Qué errores se obtiene en los expertos o la ficha de diario de la terminal?
 
mladen:

He utilizado este código :


para la prueba, y todo funciona bien

He probado el código que has puesto pero sigue dando el mismo problema.

Te adjunto el ea, cuando tengas un rato libre ¿puedes probarlo?

Y tengo una pregunta más sobre el TotalsOrder() .

Quiero que la función close all se cierre solo para el gráfico que adjunto.

Por lo que sé, TotalsOrder() devolverá todas las órdenes abiertas para todos los símbolos, pero ¿cómo obtener un par de divisas específico?

Trate de obtener la respuesta de la Internet, pero no entiendo realmente.

Uno de los códigos es contar las órdenes en el bucle de órdenes, pero no estoy seguro de dónde colocar el código.


string symbol=Symbol();
int    orders_cnt=0;
int    total=OrdersTotal();
for(int i=0; i<total; i++)
{
    if(OrderSelect(i)==false) continue;
    if(OrderSymbol()==symbol) orders_cnt++;
}


Archivos adjuntos:
BbandTest.mq4  34 kb
 
oguz:
Hola amigos,
¡Este es mi ea y ahora no abrir cualquier orden!
Tal vez el problema es más reciente mt4 b988. ¿Me puede ayudar por favor?

PD: Mi broker es ahora "tipo instantáneo" ¿Quizás son códigos no compatibles con el broker tipo instantáneo?

Solo tienes que cambiar el nombre del indicador a " ptl 2_1 + alerts.mq4 " entonces debería funcionar .

El ea iCustom llama a este nombre .

 
stevenpun:

He probado el código que has puesto pero sigue dando el mismo problema.

Te adjunto el ea, cuando tengas un rato libre ¿puedes probarlo?

Y tengo una pregunta más sobre el TotalsOrder() .

Quiero que la función close all se cierre solo para el gráfico que adjunto.

Por lo que sé, TotalsOrder() devolverá todas las órdenes abiertas para todos los símbolos, pero ¿cómo obtener un par de divisas específico?

Trate de obtener la respuesta de la Internet, pero no entiendo realmente.

Uno de los códigos es contar las órdenes en el bucle de órdenes, pero no estoy seguro de dónde colocar el código.



stevenpun

No causa esos errores en mi terminal (funciona como debería - cargar sólo una instancia del indicador, sin cambio de código)

Además, la función que has puesto está bien, pero tienes que comprobar si el OrderSymbol() es el mismo que Symbol() cuando cierras la orden también

 
stevenpun:

Sólo tienes que cambiar el nombre del indicador a "ptl 2_1 + alerts.mq4" y debería funcionar.

El ea iCustom llama a este nombre .

Su nombre original es el mismo de todos modos.

El nuevo foro ha cambiado su nombre para subirlo.

 
mladen:
¿Qué errores obtienes en la pestaña de expertos o de diario del terminal?
Estoy esperando cualquier error para obtener la pestaña de diario...
 
oguz:
Estoy esperando cualquier error para conseguir la ficha del diario...
OK. Cuando lo hagas, por favor publica el error que te da