How can I print text to the upper right corner of the screen?

 
//+------------------------------------------------------------------+
//|                                                  Label.mq5 |
//|                                        Copyright 2022, Label Ltd. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2022, Label  Ltd."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property indicator_chart_window

int OnInit()
  {    
   
   return(INIT_SUCCEEDED);
  }


int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
   if(rates_total > 0 && prev_calculated == 0)
     {       
      "BLA BLA BLA"

      DrawSignal();
     }
 
   return(rates_total);
  }
void DrawSignal()
{
   if("BLA BLA BLA")
     {
      text_name = "BUY";
      ObjectCreate(0, text_name, OBJ_LABEL, ANCHOR_RIGHT_UPPER, 0, 0);
      ObjectSetString(0,text_name, OBJPROP_FONT,"Impact");
      ObjectSetInteger(0,text_name,OBJPROP_FONTSIZE,24);
      ObjectSetInteger(0, text_name, OBJPROP_XDISTANCE, 5);
      ObjectSetInteger(0, text_name, OBJPROP_YDISTANCE,10);
     }
     }


I tried this way. But it didn't. For example, if any indicator has given a buy signal, "Buy" should appear in the upper right corner and this should be updated if necessary every time a new candle is opened.