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

 

Una pista.

#property indicador_separar_ventana

//+------------------------------------------------------------------+
//| Función de inicialización de indicadores personalizada |
//+------------------------------------------------------------------+
int init()
{

//---- indicadores
ObjectCreate("beneficio",OBJ_LABEL,0,0,0,0);


//----
return(0);
}
//+------------------------------------------------------------------+
//| Función de desinicialización de indicadores personalizada |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
return(0);
}
//+------------------------------------------------------------------+
//| Función de iteración de indicadores personalizada |
//+------------------------------------------------------------------+
int inicio()
{
//----
Print("Beneficio ", AccountProfit());


string profit ="Beneficio ="+DoubleToStr(AccountProfit(),2);

ObjectSetText("beneficio",beneficio,9, "Tahoma",Blanco);
ObjectSet("beneficio",OBJPROP_XDISTANCE,3);
ObjectSet("beneficio",OBJPROP_YDISTANCE,100);

}

¿como se puede emitir en una ventana separada del indicador, y no en el propio gráfico? dime ))

 
alderru >> :

Por lo tanto, la declaración de los topes indicadores no significa que los valores de las celdas sean cero. ¿Verdad?

Por lo tanto, MathMax no se calcula, ya que uno de los valores a comparar (concretamente, GBPUSD_High) no tiene ningún valor (en absoluto, ni siquiera cero).

Ya veo. Gracias OneDepo.

Pido disculpas por confundir a todos con mi simplificación (juego de palabras). Como ya he mencionado, no me interesa el valor de las cotizaciones altas, me interesa el valor máximo en la barra de mi propia función, cuya curva dibuja y vuelve a dibujar con éxito el indicador mientras está formando la barra. Este es el rango de rediseño del indicador durante la barra que me interesaba.

Lo pensaré.

P.D. ¿Pero por qué MathMin se considera sin problemas, las condiciones son iguales y se declaran iguales?

P.D. Soy muy franco. No puedo hacerlo. Ayuda, por favor.

Bueno, vamos a descubrirlo.

1. Cuando he dicho que los valores del buffer indicador son valores no asignados, es decir, valores arbitrarios o "basura" informativa, te he asustado intencionadamente, porque es una "mala idea" utilizar las variables de esta manera, como dicen los clásicos. Créeme, te harás la vida mucho más fácil inicializando siempre todas las variables que utilices, independientemente del lenguaje de programación. Una de las características de MQL4 es que inicializa las variables locales por cero por defecto, y los buffers indicadores por EMPTY_VALUE. De la ayuda:

VALOR_VACÍO. 0x7FFFFFFFF Valor por defecto, puntero al valor vacío.

Tenga en cuenta que este valor se puede cambiar con SetIndexEmptyValue(), pero en su caso no es esencial, así que vamos a dejarlo así.


2. Si el valor del buffer del indicador es igual a EMPTY_VALUE, el indicador no se dibuja en este punto.


3 Veamos qué tenemos ahora.

GBPUSD_High[i]=MathMax(GBPUSD_High[i],GBPUSD[i]);

EMPTY_VALUE, es decir, aproximadamente 2 a la novena potencia se compara con 1,6. ¿Qué devolverá MathMax()? Correcto, es EMPTY_VALUE el que se escribe en el i-ésimo elemento del buffer de indicadores y según el paso 2 no se dibujará.

Con el código.

GBPUSD_Low[i]=MathMin(GBPUSD_Low[i],GBPUSD[i]);

Del mismo modo, la diferencia es que MathMin() devolverá 1,6. Se dibujará el búfer bajo.

Conclusión. Vuelva a leer el perno resaltado.

Buena suerte

 
PyMbIH >> :

¿como mostrarlo en una ventana separada del indicador y no en el propio gráfico? dime ))

int init()
   {
   IndicatorShortName("Profit");
   return(0);
   }
int start()
{
//----
if(ObjectFind("прибыль")<0)
   {
   int win_idx=WindowFind("Profit");
   ObjectCreate("прибыль",OBJ_LABEL, win_idx,0,0,0,0);
   }//и т.д.

algo así)

 
OneDepo писал(а) >>

Bueno, vamos a resolverlo...

Buena suerte

Lo tengo todo resuelto.

Introduje variables adicionales Max[0] y Min[0] que se comparan y que almacenan resultados intermedios durante la formación de barras. A su vez, asigné sus valores a mis variables indicadoras GBPUSD_High[i] y ...Low[i] . Así no tuveque comparar con variables no inicializadas :-)

¡Y todo funcionó!

Muchas gracias OneDepo por la aclaración, se me ha pasado por alto en alguna parte al leer el tutorial.

 

¿Puedes decirme cómo añadir un stop loss a Ilan1.4?

ejemplo:

extern int StopLoss = 50

¿qué hay que añadir?

ticket=OrderSend(Symbol(),OP_BUYLIMIT,pLots,pLevel,sp,StopLong(pr,sl),TakeLong(pLevel,tp),pComment,pMagic,pExpiration,pColor);

ticket=OrderSend(Symbol(),OP_BUYSTOP,pLots,pLevel,sp,StopLong(pr,sl),TakeLong(pLevel,tp),pComment,pMagic,pExpiration,pColor);

 
tmp.0 >> :
Siguiente pregunta, por favor :)

Por favor, indíqueme cómo hacer un archivo EA "establecido".

Lo he intentado yo mismo en el probador en las propiedades del EA, luego "guardar", pero no hay manera.

¡AYUDA!

 
aksol >> :

Por favor, indíqueme cómo hacer un archivo EA "establecido".

Lo he intentado yo mismo en el probador en las propiedades de EA y luego "guardar", pero no hay manera.

¡AYUDA!

Así que estás haciendo lo correcto.

 
sergeev >> :

Así que lo estás haciendo bien.

Yo guardo en la carpeta "symbolsets", ¿es eso correcto o hay otra forma más fácil?

>> Gracias.

 

Buenas tardes.

Abajo está el archivo con el indicador Pattern, me da este error todo el tiempo en diferentes TFs

2009.08.20 11:58:49 No se puede abrir el archivo'C:\NProgramme\XTB-Trader 4/experts/indicators\MTFPI-sub1.ex4' en el EURUSD,Daily, podría alguien por favor comprobar lo que necesita para corregir, gracias de antemano.
Archivos adjuntos:
 
grego писал(а) >>

Buenas tardes.

Abajo está el archivo con el indicador Pattern, sigo recibiendo este error en diferentes TFs

2009.08.20 11:58:49 No se puede abrir el archivo 'C:\Programme\XTB-Trader 4\perts\indicators\MTFPI-sub1.ex4' en el EURUSD,Daily, ¿puede alguien por favor, comprobar lo que necesita para corregir? Gracias de antemano.

Falta el indicador MTFPI-sub1 .