ローソク足の残り時間をカウントダウン表示するMT4インジケーター

CandleStick Countdownアイキャッチ
  • URLをコピーしました!

ローソク足が更新される残り時間を表示できるようにしたいです。

ホシノ

FXの不労所得だけで年収2000万を達成しました。
このお悩みに誠意をもって回答します。

BBF_MQL5-202400601
リアルトレード公開|EA BBF

このページでわかること・できること

ローソク足の更新時間を表示するインジケーターのダウンロード

(CandleStick Countdownインジケーター)

インジケーターの使い方やプログラムについて

目次

インジケーターのダウンロード

ここからインジケーターのダウンロードが可能。
ダウンロードするインジケーターファイルは.ex4ファイルとなる。
MT4のインジケーターフォルダへ移動すれば使用可能だ。

CandleStick Countdownのインストール

ダウンロードしたCandleStick CountdownインジケーターはMT4のデータフォルダからindicatorsフォルダを探しファイルを移動する。

ファイル>データフォルダを開く>MQL4>indicators

indicatorsフォルダにファイルを移動し、MT4を再起動するとインストールが完了する。

CandleStick Countdownインジケーターとは?

CandleStick Countdownチャート画像
CandleStick Countdownで足の更新時間がカウントダウン表示される

このインジケーターは、現在の足が更新されるまでの残り時間を表示する。インジケーターの機能や使い方の詳細は以下。

  1. 残り時間の表示: インジケーターは、現在の足が次に更新されるまでの残り時間(分と秒)を表示する。更新されるまでの時間が短縮されると、残り時間もそれに応じて減少する。
  2. パラメーターの調整: インジケーターにはいくつかのパラメーターが用意されている。
    • LabelColor: テキストの色を設定。デフォルトはイエローに設定されているが、必要に応じて変更が可能。
    • FontSize: テキストのフォントサイズを設定。デフォルトでは12に設定されているが、必要に応じて変更が可能。
  3. 柔軟な表示位置:テキストを価格のラインに追従させる。
  4. 視認性の向上: テキストの色やサイズ、位置などを調整して、チャート上で視認性を向上できる。

このインジケーターは、トレーダーが現在の足の残り時間を簡単に把握し、トレードのタイミングをより正確に判断するのに役立つ。

CandleStick Countdownのプログラム

//+------------------------------------------------------------------+
//|                                        CandleStick Countdown.mq4 |
//|                                     Copyright 2024, FX-Bonus.net |
//|                                            https://fx-bonus.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright 2024, FX-Bonus.net"
#property link      "https://fx-bonus.net/"
#property version   "1.00"
#property strict
#property indicator_chart_window
#define  OBJ_NAME "time_left_label"
#define  FONT_NAME "Microsoft YaHei"
//+------------------------------------------------------------------+
//| Custom indicator input parameters                                |
//+------------------------------------------------------------------+
input color  LabelColor=clrYellow;
input int    FontSize=12;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void DeleteLabel()
{
   int try=10;
   while(ObjectFind(0,OBJ_NAME)==0)
   {
      ObjectDelete(0,OBJ_NAME);
      if(try--<=0)break;
   }
}
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
{
//--- indicator buffers mapping
   EventSetTimer(1);
   DeleteLabel();
//---
   return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
   EventKillTimer();
   DeleteLabel();

}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
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[])
{
//---

//--- return value of prev_calculated for next call
   return(rates_total);
}
//+------------------------------------------------------------------+
//| Timer function                                                   |
//+------------------------------------------------------------------+
void OnTimer()
{
//---
   UpdateTimeLeft();
}
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void UpdateTimeLeft()
{

   int seconds=0;// the left seconds of the current bar
   int m = 0; //Minute
   int s = 0; //Second  mm:ss

   datetime time  = iTime(Symbol(),PERIOD_CURRENT,0);
   double   close = iClose(Symbol(),PERIOD_CURRENT,0);

   seconds = PeriodSeconds(PERIOD_CURRENT) - (int)(TimeCurrent()-time);

   m = seconds / 60;
   s = seconds % 60;

   string text="                        -- "
               +StringFormat("%02d",m)+":"
               +StringFormat("%02d",s);

   if(ObjectFind(0,OBJ_NAME)!=0)
   {
      ObjectCreate(0,OBJ_NAME,OBJ_TEXT,0,time,close+_Point);
      ObjectSetString(0,OBJ_NAME,OBJPROP_TEXT,text);
      ObjectSetString(0,OBJ_NAME,OBJPROP_FONT,FONT_NAME);
      ObjectSetInteger(0,OBJ_NAME,OBJPROP_COLOR,LabelColor);
      ObjectSetInteger(0,OBJ_NAME,OBJPROP_SELECTABLE,false);
      ObjectSetInteger(0,OBJ_NAME,OBJPROP_FONTSIZE,FontSize);
   }
   else
   {
      ObjectSetString(0,OBJ_NAME,OBJPROP_TEXT,text);
      ObjectMove(0,OBJ_NAME,0,time,close+_Point);
   }
}
//+------------------------------------------------------------------+

ソースコードを詳しく解説

  1. プロパティ: #property ディレクティブは、スクリプトのプロパティを定義する。ここでは、著作権情報、リンク、バージョン、そしてチャート上に表示するための指示が含まれている。
  2. 入力パラメーター: input ディレクティブを使用して、ユーザーが変更できる入力パラメーターを定義している。ここでは、テキストの色とフォントサイズはユーザーによって変更が可能。
  3. ラベル削除関数: DeleteLabel 関数は、指定された名前のオブジェクト(ラベル)を削除するための関数。
  4. 初期化関数: OnInit 関数は、カスタムインジケーターの初期化時に呼び出される。ここでは、タイマーの設定と既存のラベルの削除を行っている。
  5. 終了関数: OnDeinit 関数は、カスタムインジケーターが削除されるときに呼び出される。ここでは、タイマーの終了と既存ラベルの削除を行っている。
  6. 計算関数: OnCalculate 関数は、新しいバーが計算されるたびに呼び出される。ここでは、現在の足の情報が取得され、次のバーが更新されるまでの残り時間が計算されている。
  7. タイマー関数: OnTimer 関数は、タイマーが設定され、一定の時間間隔で呼び出される。ここでは、UpdateTimeLeft 関数が呼び出される。
  8. 時間更新関数: UpdateTimeLeft 関数は、現在のバーが更新されるまでの残り時間を計算し、チャート上にテキストとして表示。テキストの位置やスタイルは、ユーザーが入力パラメーターで変更できる。

MT4インジケーターまとめ

  • URLをコピーしました!
  • URLをコピーしました!

このEAを使って、将来の見通しが立ちました

収入を増やしたい、将来のための資産が欲しい、支払いに縛られない自由な生活がしたい

このEAを使うと将来が見通せます。

22年以上で無敗の安定取引。リスク0%運用も可能なロジック。年利100%越えの上級者向け取引も可能。

マネーマシンとして育て上げることで大きな不労所得を得られます。

BBF-Girl
ドリームEA_BBF 無料ダウンロード
BBF_MQL5-202400601
リアルトレード公開|EA BBF

ポジション監視の時間

集中力は続いてますか?


オートクローズツールを使ってポジション管理を自動化


自動ポジション管理だから万が一でも大丈夫

あなたは空いた時間を自由に、効率的に使えます

自動決済ルールは独自にカスタム可能

ストップ、リミット変更にも対応。

エントリー後のポジション管理をすべて自動化できるトレーディングサポートツール。

トレード中のちょっとした離席など、念のためセットといった使い方も可能。

MT4用自動決済ツール【AutoCloseTool】は無料で入手できます。

オートクローズツール

取引ごとにキャッシュバックが発生します

もらわないだけ損している
取引ごとに毎回発生する現金のキャッシュバック
海外FXのキャッシュバックはメリットしかないサービスです

取引ごとにキャッシュバック
目次