すべてのチャートを一括で閉じる方法|通貨ペア選択も可|MT4スクリプト


複数チャートを一括で閉じる方法はありますか?

FXの不労所得だけで年収2000万を達成しました。
このお悩みに誠意をもって回答します。
この無料EAで不労所得が稼げます
累計テスト120年以上・リアル取引公開2020年~

このページでわかること・できること
〇MT4チャートを一括で閉じる方法
〇通貨ペアを選択して閉じる方法
〇チャートを一括で閉じるスクリプトのダウンロード
〇スクリプトの導入方法と使い方について
チャートを一括で閉じるスクリプト|Select Chart Close
MT4用スクリプト「Select Chart Close」を使えば、開いているチャートを一括ですべて閉じることができる。
パラメーター画面で通貨ペアを入力すれば、その通貨ペアのチャートだけ閉じることも可能となる。
SelectChartCloseのダウンロード
スクリプト「Select Chart Close」はここでダウンロード可能できる。
ダウンロードするファイルは.ex4で、MT4データフォルダの「script」へ移動してインストールする。
SelectChartCloseのインストール

ダウンロードしたスクリプトはMT4の「scripts」フォルダへ移動し、MT4の再起動でインストールが完了する。
MT4から上記の順番でフォルダを開き、スクリプトを移動する。
スクリプトのインストールについて、詳細は以下ページを参照。
チャートを一括で閉じる|SelectChartCloseの使い方
MT4へインストールされたスクリプトはナビゲーターから呼び出しが可能となる。

スクリプトをチャートへドロップする、またはダブルクリックで起動するなどして実行する。
スクリプトを実行するとパラメーター画面が開く。
パラメーター画面で通貨ペアを入力し「OK」をクリックすると、入力された通貨ペアのチャートのみすべて閉じることができる。
通貨ペアを入力しないで「OK」をクリックした場合は、通貨ペアを問わずすべてのチャートを閉じる。



通貨ペアを指定すると、その通貨ペアのチャートだけ閉じる
指定が無い場合はすべてのチャートを閉じるわけですね

パラメーターで通貨ペアを選択すると「選んだ通貨ペアだけ閉じる」という使い方もできます。
チャートを一括で閉じるスクリプトの便利な使い方
チャートをすべて閉じるスクリプトSelect Chart Closeと、気配値に表示されるすべてのチャートを開くスクリプト「OpenAllCharts」は相性がいい。
OpenAllChartsで大量のチャートを開いた場合でも、Select Chart Closeで簡単に閉じることができる。
例えば、3種類の通貨ペアからチャートを4つずつ開くには、気配値に3種類の通貨ペアだけを表示させOpenAllChartsを4回実行すると簡単に完成する。
そのうち1種類の通貨ペアチャートが不要になった場合には、Select Chart Closeで通貨ペアを指定して削除できる。
もちろん、すべてのチャートをやり直したい場合にも、Select Chart Closeで一括削除が可能だ。
こういったツールを使えばチャート操作の手間を効率化するため分析にも集中できる。
SelectChartCloseのソースコード
//+------------------------------------------------------------------+
//| Select Chart Close.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 show_inputs
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
#include <stdlib.mqh>
// 入力パラメーター
input string SymbolToDelete = ""; //通貨ペア入力(未入力で全閉)
void OnStart()
{
// 空の場合はすべてのチャートを削除するか確認
if (SymbolToDelete == "")
{
if (MessageBox("すべてのチャートを閉じますか?", "確認", MB_YESNO | MB_ICONQUESTION) == IDYES)
{
DeleteAllCharts();
}
else
{
Print("キャンセルされました。");
}
}
else // 特定の通貨ペアのチャートを削除
{
DeleteChartsBySymbol(SymbolToDelete);
}
}
// 指定された通貨ペアのチャートを削除する関数
void DeleteChartsBySymbol(string symbol)
{
long chid = ChartFirst();
long pom;
while (chid != -1)
{
pom = ChartNext(chid);
if (ChartSymbol(chid) == symbol)
{
ChartClose(chid);
}
chid = pom;
}
}
// すべてのチャートを削除する関数
void DeleteAllCharts()
{
long chid = ChartFirst();
long pom;
while (chid != -1)
{
pom = ChartNext(chid);
ChartClose(chid);
chid = pom;
}
}
//+------------------------------------------------------------------+
ソースコードの詳細
void OnStart()
関数:- この関数はスクリプトのエントリーポイントであり、スクリプトの実行時は最初に呼び出される。
SymbolToDelete
という文字列型の変数が空かどうかをチェックしている。
空の場合はすべてのチャートを削除するかどうかの確認ダイアログを表示し、ユーザーの選択に応じて削除を実行するかキャンセルをする。SymbolToDelete
が空でない場合は、指定された通貨ペアのチャートを削除する関数DeleteChartsBySymbol
を呼び出す。
void DeleteChartsBySymbol(string symbol)
関数:- この関数は、引数として渡された通貨ペアのチャートを削除する。
ChartFirst()
関数を使用して最初のチャートのIDを取得し、その後、ChartNext()
関数を使用して次のチャートIDを取得しながら、すべてのチャートをチェックしている。- チャートの通貨ペアが引数の
symbol
と一致する場合、そのチャートをChartClose()
関数で閉じる。
void DeleteAllCharts()
関数:- この関数は、すべてのチャートを削除する。
- 同様に、
ChartFirst()
関数を使用して最初のチャートのIDを取得し、その後、ChartNext()
関数を使用して次のチャートIDを取得しながら、すべてのチャートを閉じる。
便利なMT4スクリプト集
-
ラウンドナンバーに自動で水平ラインを引く|MT4スクリプト
-
市場ごとに高値と安値を色分けするMT4ツール|時間帯ブレイクアウト
-
取引履歴をすべてCSVファイルに出力するスクリプト|MT4
-
リスクゼロの損益分岐点でストップ注文するスクリプト|ブレイクイーブン
-
MT4を便利にするスクリプトまとめ
-
すべてのチャートを一括で閉じる方法|通貨ペア選択も可|MT4スクリプト
-
MT4でSL・TP注文を一括でキャンセルする方法
-
ストップロス(損切り)とテイクプロフィット(利食い)を一括で注文する方法
-
MT4一括決済スクリプト|全決済と売り買い決済の選択もできる
-
すべてのチャートを一括で開くMT4スクリプト
-
チャートのトレンドラインやオブジェクトを一括で削除する方法
-
MT4チャートの時間足を一括で切替えるツール
まとめ
Select Chart Closeを使うことでチャートをすべて閉じることができる。
通貨ペアを選択すれば、その通貨ペアチャートだけ閉じることも可能だ。
スクリプトは本記事で無料ダウンロードできる。
インストールにはファイルをScriptsフォルダへ移動する。
スクリプトを実行するとパラメーター画面が開くので、通貨ペアを指定しチャートを閉じたい時は入力する。
通貨ペアを指定しなければすべてのチャートを一括で閉じることができる。
Select Chart Closeの他にも便利なスクリプトを配布しているため、それを合わせて使用することでチャート分析の効率を少しでも上げていただけたら幸いだ。