Posicionar un texto en el borde derecho de la pantalla

Auftrag beendet

Ausführungszeit 6 Minuten
Bewertung des Entwicklers
¡Un verdadero profesional y una buena persona! ¡Fue un placer trabajar! ¡Gracias por tu pedido!
Bewertung des Kunden
El desarrollador tiene amplios conocimientos del lenguaje mq5 y trabaja con bastante eficiencia y calidad. Lo recomiendo al 100%

Spezifikation

Logré crear un indicador que muestra una línea en los niveles comerciales High y Low del día anterior y en la apertura del día actual, intenté añadirle un texto que defina la línea pero por mas que lo intento no logro posicionar el texto en el lugar deseado (el borde derecho de la ventana) (ver imagen adjunta). El texto sí se dibuja pero se posiciona en el tiempo actual del eje X. 

// Añadir texto para el high del día anterior
      if (ObjectFind(0, highTextName) == -1)
      {
         if (!ObjectCreate(0, highTextName, OBJ_TEXT, 0, TimeCurrent(), previous_high))
         {
            Print("Error al crear el texto del máximo del día anterior");
         }
         else
         {
            ObjectSetString(0, highTextName, OBJPROP_TEXT, "HD");
            ObjectSetInteger(0, highTextName, OBJPROP_COLOR, clrTeal);
            ObjectSetInteger(0, highTextName, OBJPROP_FONTSIZE, 8);
         }

// Añadir texto para el low del día anterior
      if (ObjectFind(0, lowTextName) == -1)
      {
         if (!ObjectCreate(0, lowTextName, OBJ_TEXT, 0, TimeCurrent(), previous_low))
         {
            Print("Error al crear el texto del mínimo del día anterior");
         }
         else
         {
            ObjectSetString(0, lowTextName, OBJPROP_TEXT, "LD");
            ObjectSetInteger(0, lowTextName, OBJPROP_COLOR, clrTeal);
            ObjectSetInteger(0, lowTextName, OBJPROP_FONTSIZE, 8);
         }

// Añadir texto para la apertura del día actual
      if (ObjectFind(0, openTextName) == -1)
      {
         if (!ObjectCreate(0, openTextName, OBJ_TEXT, 0, TimeCurrent(), current_open))
         {
            Print("Error al crear el texto de la apertura del día actual");
         }
         else
         {
            ObjectSetString(0, openTextName, OBJPROP_TEXT, "OD");
            ObjectSetInteger(0, openTextName, OBJPROP_COLOR, clrYellow);
            ObjectSetInteger(0, openTextName, OBJPROP_FONTSIZE, 8);
         }

   // Obtener el ancho del gráfico en píxeles
   long chartWidth = ChartGetInteger(0, CHART_WIDTH_IN_PIXELS);

   // Coordenadas de la línea del High
   int high_x = 0, high_y = 0;
   if (ChartTimePriceToXY(0, 0, TimeCurrent(), HighLineBuffer[0], high_x, high_y))
   {
      high_x = MathMin((int)chartWidth - 10, high_x); // Ajustar posición X
      ObjectSetInteger(0, highTextName, OBJPROP_XDISTANCE, (int)chartWidth - high_x - 10); // Ajustar posición X
      ObjectSetInteger(0, highTextName, OBJPROP_YDISTANCE, high_y);
   }

   // Coordenadas de la línea del Low
   int low_x = 0, low_y = 0;
   if (ChartTimePriceToXY(0, 0, TimeCurrent(), LowLineBuffer[0], low_x, low_y))
   {
      low_x = MathMin((int)chartWidth - 10, low_x); // Ajustar posición X
      ObjectSetInteger(0, lowTextName, OBJPROP_XDISTANCE, (int)chartWidth - low_x - 10); // Ajustar posición X
      ObjectSetInteger(0, lowTextName, OBJPROP_YDISTANCE, low_y);
   }

   // Coordenadas de la línea de Apertura
   int open_x = 0, open_y = 0;
   if (ChartTimePriceToXY(0, 0, TimeCurrent(), OpenLineBuffer[0], open_x, open_y))
   {
      open_x = MathMin((int)chartWidth - 10, open_x); // Ajustar posición X
      ObjectSetInteger(0, openTextName, OBJPROP_XDISTANCE, (int)chartWidth - open_x - 10); // Ajustar posición X
      ObjectSetInteger(0, openTextName, OBJPROP_YDISTANCE, open_y);
   }

   return rates_total;
}



¿Alguien tiene alguna idea de como podría mejorar esto?



Bewerbungen

1
Entwickler 1
Bewertung
(635)
Projekte
744
34%
Schlichtung
49
53% / 39%
Frist nicht eingehalten
14
2%
Arbeitet
2
Entwickler 2
Bewertung
(3)
Projekte
3
0%
Schlichtung
0
Frist nicht eingehalten
0
Frei
Veröffentlicht: 3 Beispiele
3
Entwickler 3
Bewertung
(184)
Projekte
318
24%
Schlichtung
24
38% / 13%
Frist nicht eingehalten
23
7%
Frei
Veröffentlicht: 3 Beispiele
4
Entwickler 4
Bewertung
(62)
Projekte
92
16%
Schlichtung
4
0% / 25%
Frist nicht eingehalten
2
2%
Frei
5
Entwickler 5
Bewertung
Projekte
0
0%
Schlichtung
1
0% / 0%
Frist nicht eingehalten
0
Arbeitet
6
Entwickler 6
Bewertung
(144)
Projekte
186
41%
Schlichtung
24
58% / 21%
Frist nicht eingehalten
13
7%
Frei
7
Entwickler 7
Bewertung
(23)
Projekte
29
14%
Schlichtung
3
0% / 67%
Frist nicht eingehalten
3
10%
Arbeitet
Ähnliche Aufträge
EA Vencido 30 - 100 USD
Hace tiempo compré un EA, y se suponía que no tenía fecha de vencimiento y dejo de funcionar porque aparece vencido, solo tengo ex5 y el programador no responde, usa un indicador y se el TP y SL y nada más. ¿Puedes arreglar esto
Necesito un Expert Advisor para MetaTrader 5 que opere XAUUSD en temporalidad M1 (broker XM). La idea es que el EA lea el mercado rápido, decida si va a subir o bajar y entre de inmediato, sin filtros que lo dejen inactivo mucho tiempo. Lógica de entrada: Tendencia con EMA 8, 21 y 50 en M1, con entradas por retroceso y recuperación de la EMA. ADX como filtro de fuerza, sin zonas muertas donde el bot no opere. M5 (EMA
NECESITO UN BOT QUE OPERE EN ORO 24/5 DONDE ANALICE EL MERCADO, CONFORME SU FUERZA TOME OPERACIONES CORTAS TIPO SCALPING CORTO, SEÑALES ABIERAS POR TIEMPO LIMITADO QUE SE ADAPTE AL PRECIO DEL MERCADO Y SU VOLATILIDAD
Hello. I need a professional developer to translate a proprietary strategy from a TradingView Indicator (Pine Script) into a fully automated Expert Advisor (EA) for MetaTrader 5 (MT5). The bot will trade NAS100 based strictly on specific New York session windows, volume confluences, and a daily VWAP filter. Execution must be via Market Orders only (no pending orders). I have a complete ZIP folder prepared with the

Projektdetails

Budget
30+ USD