Hola :)
Estoy haciendo un indicador muy sencillito para mql4, nada del otro mundo,un indicador que me ayude a identificar el maximo y el mínimo de una determinada franja horaria y me calcule la entradas, el tp y el sl. Al final he conseguido que me funcione correctamente pero al mostrar la información en el chart como "Print" o "Comment", me aparece con una letra tan pequeña que me quedo bizca para leerlo. ¿hay alguna manera para establecer el tamaño de la fuente de ese "Comment" o "Print"? Estoy bucando por "string font size" pero no encuentro nada, seguramente no es la búsqueda correcta
Muchisimas gracias de antemano
La fuente, tamaño, etc, de los Print() y Comment() no pueden ser modificados.
Para ello debe utilizar OBJPROP_TEXT y darles el tratamiento de objeto.
Por cierto, he movido este hilo al apartado MQL4. Todo lo relacionado con MQL4/MT4 debe ir allí, ya que los apartados Indicadores, Asesores Expertos, etc, están destinados a MQL5.
Tenga eso en cuenta para próximas ocasiones.

- docs.mql4.com
Estoy tan pez que ni con el manual en la mano consigo lo que quiero.
Me explico:
Mi indicador con el "Print" en pantalla me funciona perfectamente y me devuelve una serie de datos que yo he averiguado previamente en el código, por ejemplo
Print(" ", Symbol() , " : " " Spread: " + DoubleToStr(MarketInfo(Symbol(), MODE_SPREAD)/PipValue , 2), " Nivel de SL : "+ DoubleToStr( NivelSL, Digits), " Maximo: "+ DoubleToStr( Canal_H, Digits), " Minimo: "+ DoubleToStr( Canal_L, Digits), " Distancia entre Mx/Min:"+ DoubleToStr( Distancia, Digits) );
De las indicaciones del manual para OBJ_TEXT creo entender que lo único que me interesa para mi caso, es decir, para modificar la fuente, es esto
//+------------------------------------------------------------------+ //| Creating Text object | //+------------------------------------------------------------------+ bool TextCreate(const long chart_ID=0, // chart's ID const string name="Text", // object name const int sub_window=0, // subwindow index datetime time=0, // anchor point time double price=0, // anchor point price const string text="A VER QUE PASA ", // the text itself const string font="Arial", // font const int font_size=10) ; // font size { //--- create Text object if(!ObjectCreate(chart_ID,name,OBJ_TEXT,sub_window,time,price)) { Print(__FUNCTION__, ": failed to create \"Text\" object! Error code = ",GetLastError()); return(false); } //--- set the text ObjectSetString(chart_ID,name,OBJPROP_TEXT,text); //--- set text font ObjectSetString(chart_ID,name,OBJPROP_FONT,font); //--- set font size ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size); //--- successful execution return(true); }
Pero lo único que consigo al compilar es el error undeclared identifier para chart_id, name,sub_window, time, price, font y font_size.
¿no están declaradas en bool?
Tambien me da el error 'void' function returns a value en los dos return
¿Alguien puede darme una pista? :'(
Gracias por vuestra atención
Estoy tan pez que ni con el manual en la mano consigo lo que quiero.
Me explico:
Mi indicador con el "Print" en pantalla me funciona perfectamente y me devuelve una serie de datos que yo he averiguado previamente en el código, por ejemplo
De las indicaciones del manual para OBJ_TEXT creo entender que lo único que me interesa para mi caso, es decir, para modificar la fuente, es esto
Pero lo único que consigo al compilar es el error undeclared identifier para chart_id, name,sub_window, time, price, font y font_size.
¿no están declaradas en bool?
Tambien me da el error 'void' function returns a value en los dos return
¿Alguien puede darme una pista? :'(
Gracias por vuestra atención
¿Podrías añadir más código?
NO hay ninguna función void en lo que has mandado.
En cuanto a esto "Pero lo único que consigo al compilar es el error undeclared identifier para chart_id, name,sub_window, time, price, font y font_size". Sí está declarado, al menos en esta parte del código que mandas,
pero sin ver más código no sé ni tan siquiera si el error está en esta parte del código.
¿Podrías añadir más código?
NO hay ninguna función void en lo que has mandado.
En cuanto a esto "Pero lo único que consigo al compilar es el error undeclared identifier para chart_id, name,sub_window, time, price, font y font_size". Sí está declarado, al menos en esta parte del código que mandas,
pero sin ver más código no sé ni tan siquiera si el error está en esta parte del código.
Muchísimas gracias Enrique. Disculpame por tardar tanto en responder pero estos dias han sido una locura para mi. Intento explicarme
El Void Ontick , donde hago los cálculos, termina con un Print y un Comment iguales para poder registrar en los logs los resultados que además veo en pantalla.
Despues de darle muchas vueltas he intentado meter en una variable el Comment para poder modificar la fuente y el tamaño de la fuente
void ObjetoTexto(string ObjetoTexto, int Tipo = OBJ_TEXT, color ColorText = clrBlack, int WidthText = 100, int StyleText = STYLE_DASH, string DatosText = Comment(), string FontText = "Arial", int SizeText = 12 , int AnchorLab = ANCHOR_LOWER, double AngleLab = 0, bool BackgroundLab = false, int Window = 0) { if(ZOR >= ZON) ObjectCreate(ObjetoTexto, Tipo, Window, 0, 0); ObjectSetInteger(0, ObjetoTexto, OBJPROP_COLOR, ColorText); ObjectSetInteger(0, ObjetoTexto, OBJPROP_WIDTH, WidthText); ObjectSetInteger(0, ObjetoTexto, OBJPROP_STYLE, StyleText); ObjectSetInteger(0, ObjetoTexto, OBJPROP_FONTSIZE, SizeText); ObjectSetInteger(0, ObjetoTexto, OBJPROP_ANCHOR, AnchorLab); ObjectSetDouble(0, ObjetoTexto, OBJPROP_ANGLE, AngleLab); ObjectSetInteger(0, ObjetoTexto, OBJPROP_BACK, BackgroundLab); ObjectSetText(ObjetoTexto, DatosText, WidthText, FontText, ColorText); }
Pero lo sigo haciendo mal porque todavia me manda dos errores y no he podido probar si funciona:
'Comment' - constant expected DibujarZona.mq4
'Comment' - wrong parameters count DibujarZona.mq4

- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Usted acepta la política del sitio web y las condiciones de uso
Hola :)
Estoy haciendo un indicador muy sencillito para mql4, nada del otro mundo,un indicador que me ayude a identificar el maximo y el mínimo de una determinada franja horaria y me calcule la entradas, el tp y el sl. Al final he conseguido que me funcione correctamente pero al mostrar la información en el chart como "Print" o "Comment", me aparece con una letra tan pequeña que me quedo bizca para leerlo. ¿hay alguna manera para establecer el tamaño de la fuente de ese "Comment" o "Print"? Estoy bucando por "string font size" pero no encuentro nada, seguramente no es la búsqueda correcta
Muchisimas gracias de antemano