WindowScreenShot関数|チャートのキャプチャを取得
佐川直弘(株式会社トリロジー取締役)
MetaTrader4(MT4)では、チャートウィンドウのキャプチャ画像(スクリーンショット)を取得することで、現在のチャートの状態を画像として保存することができます。この記事では、チャートのキャプチャを取得する方法について、初心者向けにわかりやすく解説します。
WindowScreenShot関数|チャートのキャプチャを取得する方法
チャートウィンドウのキャプチャ画像を取得するには、`WindowScreenShot`関数を使用します。この関数を使うことで、指定した条件でチャートウィンドウのスクリーンショットを取得し、保存することができます。
以下は、`WindowScreenShot`関数の基本的な仕様です。
- WindowScreenShot関数の仕様
- bool WindowScreenShot(
string filename, // 保存するファイル名
int size_x, // 画像の幅(ピクセル)
int size_y, // 画像の高さ(ピクセル)
int start_bar=-1, // キャプチャするバーの数(1~)。0以下は表示されている全てのバーが対象。
int chart_scale=-1, // 倍率(0~5:値が大きいほど倍率が大きい)。負数は現在の表示倍率が適用される。
int chart_mode=-1 // 足の表示モード。CHART_BAR (0)、CHART_CANDLE (1)、CHART_LINE (2)
);
この関数は、チャートウィンドウのキャプチャ画像を取得します。キャプチャに成功した場合は `true` を、失敗した場合は `false` を返します。エラーの詳細情報は `GetLastError` 関数を使用して取得できます。キャプチャ画像ファイルは `experts/files` フォルダに格納されます。
以下は、`WindowScreenShot`関数を使ってチャートのキャプチャを取得するサンプルコードです。
- キャプチャ取得の例
- bool isTesting = IsTesting();
int tradesCounter = TradesTotal();
if(isTesting && ExtTradesCount < tradesCounter) {
//—- キャプチャを取得して保存
if(!WindowScreenShot(“shots/tester" + ExtShotsCount + “.gif", 640, 480)) {
int lastError = GetLastError();
} else {
ExtShotsCount++;
}
ExtTradesCount = tradesCounter;}
このサンプルコードでは、`WindowScreenShot`関数を使って、チャートのスクリーンショットを取得し、指定されたファイル名で保存しています。
チャートのキャプチャを取得する機能は、以下のような場合に役立ちます。
- よく使われるケース
- – 現在のチャートの状態を記録して保存したいとき
– テストや検証のためにチャートの画像を保存したいとき
– トレードの履歴を視覚的に記録したいとき
これらのケースで、`WindowScreenShot`関数を使うことで、効率的にチャートのキャプチャを取得することができます。
まとめ
MetaTrader4の`WindowScreenShot`関数を使えば、チャートのキャプチャ画像を簡単に取得して保存できます。これにより、トレーダーはチャートの状態を視覚的に記録しやすくなり、取引の精度を向上させることができます。初心者の方も、この記事を参考にぜひチャートのキャプチャ取得に挑戦してみてください。
ディスカッション
コメント一覧
まだ、コメントがありません