Posicionar un texto en el borde derecho de la pantalla

仕事が完了した

実行時間6 分
依頼者からのフィードバック
El desarrollador tiene amplios conocimientos del lenguaje mq5 y trabaja con bastante eficiencia y calidad. Lo recomiendo al 100%
開発者からのフィードバック
¡Un verdadero profesional y una buena persona! ¡Fue un placer trabajar! ¡Gracias por tu pedido!

指定

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?



ファイル:

応答済み

1
開発者 1
評価
(619)
プロジェクト
722
33%
仲裁
46
48% / 41%
期限切れ
14
2%
取り込み中
2
開発者 2
評価
(3)
プロジェクト
3
0%
仲裁
0
期限切れ
0
3
開発者 3
評価
(184)
プロジェクト
317
24%
仲裁
23
35% / 13%
期限切れ
23
7%
仕事中
パブリッシュした人: 3 codes
4
開発者 4
評価
(62)
プロジェクト
92
16%
仲裁
4
0% / 25%
期限切れ
2
2%
5
開発者 5
評価
プロジェクト
0
0%
仲裁
1
0% / 0%
期限切れ
0
仕事中
6
開発者 6
評価
(144)
プロジェクト
186
41%
仲裁
24
58% / 21%
期限切れ
13
7%
7
開発者 7
評価
(23)
プロジェクト
29
14%
仲裁
3
0% / 67%
期限切れ
3
10%
仕事中
類似した注文
Esta especificación técnica detalla la recreación completa de una herramienta para detección de impulsos en índices sintéticos, estructurando el algoritmo para rastrear spikes, trazar zonas de interacción operativa según la mitigación del precio y gestionar alertas sonoras o emergentes con un filtrado dinámico que optimice el procesamiento del gráfico
Prueba técnica limitada para desarrollo en MQL5 de un motor de mapeo estructural mediante pivotes y líneas. Este encargo corresponde a un desarrollador previamente seleccionado y con quien las condiciones de la prueba ya fueron acordadas. Alcance formal: TT-TEST-MAP-001 v1.1 — Fases A+B+C Presupuesto total acordado: USD 30 . El detalle completo de la Tarea Técnica y los casos de evaluación serán proporcionados dentro
El objetivo principal es corregir el comportamiento de repintado del indicador actual (PainX 600 / SpikeZone), asegurando que la información de niveles, líneas horizontales y marcas de señal mostradas visualmente en el gráfico en tiempo real permanezca inalterada y trazable históricamente
Requiero alguien capaz de crear un EA que copie operaciones de una cuenta con clave inversor que usa un HTF, debe ser exacto y sino no me sirve. Yo puede crearlo y funciona pero demora en copiar y por eso recurro a uds con más conocimientos que yo

プロジェクト情報

予算
30+ USD