サンプルコード 一覧へ戻る

MQL5サンプルコード

【MT5(MQL5)サンプルコード】 Comment

スポンサーリンク

MT4(MQL4)/MT5(MQL5)のComment

チャート画面の左上にコメントを出す事ができます。

void  Comment(
  argument,     // 初めの値
  ...          // 次の値
  );

MT4→MT5になっても、変わらず使えます。

改行するには「 \n 」または 「 \r \ n 」を使用します。

カンマ区切りで64個まで値をセットできます。(最大文字数は2045文字)

サンプルコード

今回はスプレッドを表示してみる事にしました。

void OnInit()  
{

   MqlTick last_tick;
   SymbolInfoTick(_Symbol,last_tick);
      
   double Ask=last_tick.ask;
   double Bid=last_tick.bid;
   double spread = Ask-Bid;

    Comment
    (
      "現在のスプレッドを",
      "表示します\n",
      "Ask   =", Ask ,"\n",
      "Bid   =", Bid ,"\n",
      "Spread   =", DoubleToString(spread,10) ,"\n",
      "Spread(in pips) = ",NormalizeDouble((spread/Point()/10),Digits()),"\n"
    );

   return;
}

結果

USDJPY(小数点以下3桁)の場合

EURUSD(小数点以下5桁)の場合

おまけ(改行コードを画面に表示させたい場合)

「 \n 」を「\\n」にして\を2個重ねると、画面に表示させる事ができます。

void OnInit()  
{

   Comment
      (
      "現在のレート = ",SymbolInfoDouble(Symbol(),SYMBOL_BID),
      "\n改行したい場合は\\nを入れる",
      "\r\nもしくは\\r\\nを入れる"
      );

   return;

}

「 \n 」のように頭に「\」などをつけて文字を特殊操作に使用する事をエスケープシーケンスと言うのですが、これをさらにエスケープする事で画面に表示させています。(って説明難しいですね・・・。)

・「n」に「\」をつけて「\n」にしたら改行コードとして使える。

・さらに「\」をつけて「\\n」にしたら「\n」を画面表示させる事ができる。

・・・という風に憶えておけば、ひとまず大丈夫かと。

おまけ(結果)

コメント

タイトルとURLをコピーしました