Adding Text To Metatrader

 
Does anyone know how blocks of text (or pictures) can be added to a chart in MetaTrader ?
The usual way only allows 1 line of text at a time.
Is there an indicator or script that can do this ?

Any help greatly appreciated.
 
jezzy:
Does anyone know how blocks of text (or pictures) can be added to a chart in MetaTrader ?
The usual way only allows 1 line of text at a time.
Is there an indicator or script that can do this ?

Any help greatly appreciated.
good question. I would like to know as well. I've seen people with custom stuff on their indicators so I'm sure it can be done.
 

Try to read some help about objects https://docs.mql4.com/objects.

And particulary about labels -> OBJ_LABEL.

Btw, even Comment() can show much more than 1 line. All you need is to form the output string properly.

 
hasayama:

Try to read some help about objects https://docs.mql4.com/objects.

And particulary about labels -> OBJ_LABEL.

Btw, even Comment() can show much more than 1 line. All you need is to form the output string properly.

Hi, hasayama, can you tell us how to add multi-line ObjectSetText?

I am using this, but it is not working:

   if (ShowInstructions)
      {
      string InstructionsText; InstructionsText = StringConcatenate ("YOU CAN MOVE THIS TEXT ANYWHERE YOU WANT!", "\n",
      "Horizontal & Trend lines Orders:", "\n", "buy only / sell only / trade (will trade Buy & Sell)");
         {
         ObjectCreate ("Instructions", OBJ_LABEL, 0, 0, 0); ObjectSet ("Instructions", OBJPROP_CORNER, 0); ObjectSet ("Instructions", OBJPROP_XDISTANCE, 5);
         ObjectSet ("Instructions", OBJPROP_YDISTANCE, 120); ObjectSetText ("Instructions", InstructionsText, 8, "Arial", InstructionsTextColor);
         }
      }

It only shows text until "... & Trend lin"! It does NOT put text in new line as per "\n".

My Comment() is FULL! Under it I want to add multi-line text, the instructions for EA orders that are not obvious from Comment

   Comment (
   " Trading Hours: ", StartTrading, " to ", StopTrading, " | SIGNALS ONLY: ", BoolToStr2 (SignalsOnly), "\n",
   " Filter | Signal TF: ", FilterBarTF, " | ", SignalBarTF, " | Trade Per Bar: ", OncePerBarTF, "\n",
   " SL: TF: ", StopLossTF, " | Bars Back: ", StopLossBarsBack, " | Pips from HiLo: ", StopLossPipsFromHiLo, "\n",
   " HiLo TS: ", BoolToStr (UseTrailHiLoStop), " | TF: ", TrailBarTF, " | Bars Back: ", TrailBarsBack, " | Pips from HiLo: ", TrailPipsFromHiLo, "\n",
   " BE: ", BoolToStr (MoveStopOnce), " | When ", MoveStopWhenPrice, " | To ", MoveStopTo, " | Pair Info: ", TickValue * 10, " | ", SwapBuy, " | ", SwapSell , " | ", Spread, "\n",
   " Auto MM: ",  BoolToStr (MoneyManagement), " | Risk: ", Risk, " | Lots: ", Lots, " | Magic: ", magic, "\n",
   " Closed Profit: ", NormalizeDouble (GetClosedProfit (magic), 2), " | P/L: ", NormalizeDouble (GetProfit (magic), 2), " | Equity: ", NormalizeDouble (AccountEquity(), 2), "\n",
   " Contact & PayPal Donations: chistabo@gmail.com | Expires: ", TimeToStr (ExpirationTime), "\n"
            );

Text would be like:

YOU CAN MOVE THIS TEXT ANYWHERE YOU LIKE!
If you put Horizontal or Trend Lines on Chart and set their Properties/Common/Description 
(small letters ONLY!, Chart/Properties(F8)/Common/Show object description to see line Text), EA will:
- trade (will trade BUY & SELL), buy only, sell only
- stop (SignalsOnly = TRUE, no trading, just monitoring open orders)
- close all, close buy, close sell (will close orders: ALL, BUY, SELL)
- break even (MoveStopLossOnce = TRUE, as per EA Settings)
- trail (TrailHiLoStopLoss = TRUE, as per EA Settings, will trail StopLoss)
-----------------------------------------------------------------------------
... there is more...
// 1. FILTER TF - IF PRICE GOES HIGHER THAN OPEN OF BAR - ALLOW BUY, IF IT GOES LOWER THAN OPEN OF BAR - ALLOW SELL
// 2. SIGNAL TF - IF PRICE GOES HIGHER THAN HIGH OF BAR - BUY, IF IT GOES LOWER THAN LOW OF BAR - SELL
// 3. SIGNALS ONLY - WILL ALERT ON SIGNAL, NOT TRADE - YOU CAN PUT WAV SOUND FILE OF YOUR CHOICE IN 'SOUNDS' FOLDER AND PUT FILE NAME IN 'WhichSound' FIELD
// 4. NOT SIGNALS ONLY - WILL TRADE ON SIGNALS ->
// 5. IF MONEY MANAGEMENT IS ENABLED, IT WILL AUTOMATICALY CALCULATE LOTS FROM RISK (1.O = 1% RISK) AND HIGH/LOW OF STOPLOSSBARSBACK X STOPLOSSTF +/- STOPLOSSPIPSFROMHILO
// 6. IF MONEY MANAGEMENT NOT ENABLED, IT WILL USE 'Lots'
// 7. MOVE SL ONCE = BREAK EVEN, YOU CAN CHOOSE WHEN (in pips) AND WHERE (in pips too) - IF ENABLED
// 8. WILL TRAIL AT HIGH (SELL) OR LOW (BUY) TRAILBARSBACK X TRAILBARTF +/- TRAILPIPSFROMHILO - IF ENABLED
// 9. YOU CAN ENABLE OPEN PRICE DAILY, WEEKLY OR MONTHLY - FUNCTION IS IN INIT, IT WILL REFRESH WHEN YOU SWITCH TF OR REAPPLY EA
// 10. BUTTONS: SELFEXPLANATORY - CLEAR -> WILL CLEAR ALL!!! 'ARROWS' FROM CHART, THIS IS FOR SMALL SL LINES OR TESTER ARROWS | ARM/UNARM WILL SHOW/HIDE TRADING ARROWS
//   (OPEN - LINE - CLOSE) FOR CLOSED TRADES - OPEN TRADES ARROWS WILL ALWAYS BE ON CHART - ALL ARROWS ARE SET BEHIND BARS (BACKGROUND) | CLOSE LAST WILL - WELL CLOSE LAST TRADE
// 11. FANCY FUNCTIONS: YOU CAN PUT HORIZONTAL OR TREND LINE AND PUT ORDERS IN DESCRIPTION (SMALL LETTERS ONLY) - IT WILL (IT SHOULD) EXECUTE ORDERS WHEN PRICE CROSSES LINE:
//   'stop' - SIGNALS ONLY | 'buy only' | 'sell only' | 'trade' - TRADE BUY & SELL | 'close all' - AND STOP TRADING | 'close buy' - AND STOP TRADING | 'close sell' - AND STOP TRADING
// / 'break even' - TURNS BREAK EVEN 'true' | 'alert' - WILL PLAY ALERT SOUND | 'trail' - WILL START HIGH/LOW STOPLOSS TRAILING
// 12. MAGIC NUMBER IS AUTOMATIC, ENCRYPTED FROM SYMBOL (PAIR NAME) AND EA NAME - YOU CAN'T USE 2 EA's ON SAME PAIR! WELL, YOU CAN, BUT THEY WILL HAVE SAME MAGIC NUMBER! OR RENAME EA!
// 13. IT IS CODED TO TRADE ONLY ONCE PER INDICATED BAR - AS PER 'ONCEPERBAR' TIMEFRAME - IT SHOULD REMEMBER ALL SETTINGS ON CHART AT STARTUP/SHUTDOWN, THEY ARE STORED IN 
//   GLOBAL VARIABLE, SAME GOES FOR TRADE ONCE PER BAR FUNCTION, WHICH SHOULD WORK - TESTED ON ALPARI UK
// 14. IF YOU NEED OR WANT TO OPEN NEW TRADE ON ALREADY TRADED BAR - TRY 'TOOLS' - 'GLOBAL VARIABLES' - SELECT 'TRADEDTHISBAR' FOR WANTED PAIR - SET VALUE TO '0' - NOT TESTED
// 15. IT SHOULD WORK WITH 2(3)/4(5) BROKERS / WITH ECN BROKERS TOO
// 16. NAME - SET CUSTOM NAME - IT WILL BE USED FOR OrderSend COMMENT FIELD (FOR THOSE PARANOIC ABOUT MANY PEOPLE AROUND THE GLOBE USING THE SAME EA, THE BROKER WILL SEE THIS
//   AND SEND A MAN IN BLACK UPON US - AAAAAAAA!) / IT WILL BE USED FOR OFFLINE CHARTS TOO - IF YOU WANT TO USE THEM, SET NAME FROM MAX 4 CHARACTERS! DO NOT USE 'BUDA' OR 'THOR'
//   OR 'XENA' OR 'SEX' OR 'WALE' OR 'D**K' OR 'DJEK' (JACK FONETICALY) - WHY, YOU MAY ASK - SIMPLY BECAUSE EVERYBODY WILL USE THOSE NAMES AND BROKER WILL SEE THAT AND SEND MAN
//   IN BLACK UPON YOU! LOL LOL LOL
// 17. OFFLINE CHARTS - MT4 - FILE - OPEN OFFLINE - CHOOSE ONE PAIR - IT WILL OPEN OFFLINE CHART (DUUH!) WHICH MONITORS PERFORMANCE OF EA - VERY HANDY FOR ANAYLZING OR JUST CHECKING...

Thank you for your help,


Have fun,


Simon

 

Chistabo:

My Comment() is FULL!

What do you mean full? You can have as many lines as you want.
 
WHRoeder:
What do you mean full? You can have as many lines as you want.

I think he means "Amount of passed parameters cannot exceed 64".

Reason: