MT4のチャートに表示させた画像(ロゴ)クリックでブラウザを開いてみよう

MT4からブラウザを開く方法
yuki
yuki
今回はMT4のチャート上に画像を表示してみようで表示した画像をクリックするとサイトに飛ぶ仕組みを作ってみましょう
カオチャイ
カオチャイ
この機能は無料でご利用できますが、MQLAuth.mqhのバージョン1.05以上がインストールされている必要がございますので、まだ準備ができていない方は下記の記事を参考にしてくださいね!
yuki
yuki
自分でつけるのが面倒くさいという方はシストレファクトリーのMQLAuth実装代行のサービスもご利用くださいね!
MQLAuth準備編
MQLAuthシステムを利用するための事前準備 MQLAuthを使うための準備 MQLAuthシステムを使う前提条件として「インジケーターをMT4の口座番号やパスワードで縛って管...

MT4に表示したロゴをクリックするとHPに案内します

無料配布や、販売したEAにロゴや画像を表示しておきますとブランドイメージとして認知されやすくなりますのでオススメなのですが、今回はこのロゴをクリックすると自分のホームページやTwitterなどに飛ばすコードを書いていきます。

MT4で表示できる情報には限りがありますが、この方法を使えば自社のブランディングを行うことが出来ます。

 

カオチャイ
カオチャイ
合わせてEAに認証をつけるなどの工夫も大事ですよ!
yuki
yuki
ロゴをクリックしてPayPalで課金をしてもらうなどの流れを作りたい場合は、PayPal連携の記事を参考にしてくださいね

 

それではソースコードを書いていきましょう

yuki
yuki
今回は、MT4のチャート上に画像を表示してみようで作った内容にOnChartEventを付け加えるだけなのでとっても簡単にできますよ!

 

int OnInit() {
   Auth_ShowBMPIMG("\\Include\\Images\\SYSFAClogo50.bmp", "SYSFAC_LOGO");

   return(INIT_SUCCEEDED);
}

こちらは前回作成した画像を呼び出すコードです。この時につけたオブジェクト名”SYSFAC_LOGO”を利用します。

 

// ここから追加
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam) {

}
// ここまで

OnChartEvent()を追加します。

 

void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam) {
   if(id == CHARTEVENT_OBJECT_CLICK) {
      if(StringFind(sparam, "SYSFAC_LOGO", 0) >= 0)
         bool result = Auth_OpenURL("https://interactivebrokers.work/");
   }
}

次にクリックイベントを追加します。

“SYSFAC_LOGO”という名前のオブジェクトをクリックしたら、Auth_OpenURL関数の引数に指定したURLをブラウザで開くようにします。

以上で完成です。

 

今回作成したコード

//+------------------------------------------------------------------+
//|                                      ©2020  MT4ツール製作【シストレファクトリー】 |
//|                                 https://interactivebrokers.work/ |
//+------------------------------------------------------------------+
#include <MQLAuth.mqh>
#resource "\\Include\\Images\\SYSFAClogo50.bmp"

#property copyright "Copyright 2020, Jini Ltd."
#property link      "https://mql-auth.com/"
#property version   "1.00"
#property strict
#property indicator_chart_window

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit() {
   Auth_ShowBMPIMG("\\Include\\Images\\SYSFAClogo50.bmp", "SYSFAC_LOGO");

   return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {
   ObjectsDeleteAll(ChartID(),  "MQLAuth_LOGO", EMPTY, EMPTY);
}
//+------------------------------------------------------------------+
//| 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(rates_total);
}
//+------------------------------------------------------------------+
//| ChartEvent function                                              |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,
                  const long &lparam,
                  const double &dparam,
                  const string &sparam) {
   if(id == CHARTEVENT_OBJECT_CLICK) {
      if(StringFind(sparam, "SYSFAC_LOGO", 0) >= 0)
         bool result = Auth_OpenURL("https://interactivebrokers.work/");
   }
}

 

yuki
yuki
ソースコードはこちらからダウンロードできます
カオチャイ
カオチャイ
このコードでMT4に画像やロゴを表示させて、そこから自社のHPへの誘導や、アフィリエイト広告へ案内するなど色々な使いみちがありますよ!
インジケーターのカスタマイズ色々
MQLコードでEAをカスタマイズ
【MQLコード解説】EA・インジケーターのカスタマイズ【体験版・LINE通知】EAやインジケーターに口座番号認証を実装する方法を紹介しています。 認証システムにはMQLAuthを利用して解説していきます。...
ダウンロードでそのまま使えるコード集
MQL実装例
【コピペでOK】RSIのEAに口座認証や一括メッセージ機能を実装してみました https://interactivebrokers.work/start_mqlauth/ 個人でEAを販売する際につけてお...
MQL実装例
【コピペでOK】MT4のチャートから飛ばすURLをソースコードを編集せずに、MQLAuthの管理画面から変えられるようにする https://interactivebrokers.work/start_mqlauth/ メッセージのURL変更を簡単に ...
MQL実装例
【コピペでOK】バイナリーオプションサインツールに体験版機能を機能を実装してみました https://interactivebrokers.work/start_mqlauth/ 体験版機能付きのBO用サインツー...
おすすめ参考記事
メッセージ送付機能
配布したEA利用者のMT4にメッセージを一斉配信する方法 https://interactivebrokers.work/start_mqlauth/ 一斉送信機能で確実な宣伝が可能に...
MQLAuth準備編
MQLAuthシステムを利用するための事前準備 MQLAuthを使うための準備 MQLAuthシステムを使う前提条件として「インジケーターをMT4の口座番号やパスワードで縛って管...
アップデート自動通知
EAアップデート時に自動でMT4のアラートを表示する機能を追加する https://interactivebrokers.work/start_mqlauth/ アップデートのお知らせとは? ...
バイナリーオプションツールに認証をつける
バイナリーオプションのインジケーターに口座認証を実装する方法 https://interactivebrokers.work/start_mqlauth/ 口座番号認証はパスワードよりも安...