yuki
今回はMT4のチャート上に画像を表示してみようで表示した画像をクリックするとサイトに飛ぶ仕組みを作ってみましょう
カオチャイ
この機能は無料でご利用できますが、MQLAuth.mqhのバージョン1.05以上がインストールされている必要がございますので、まだ準備ができていない方は下記の記事を参考にしてくださいね!
yuki
自分でつけるのが面倒くさいという方はシストレファクトリーのMQLAuth実装代行のサービスもご利用くださいね!
MQLAuthシステムを利用するための事前準備
MQLAuthを使うための準備
MQLAuthシステムを使う前提条件として「インジケーターをMT4の口座番号やパスワードで縛って管...
MT4に表示したロゴをクリックするとHPに案内します
無料配布や、販売したEAにロゴや画像を表示しておきますとブランドイメージとして認知されやすくなりますのでオススメなのですが、今回はこのロゴをクリックすると自分のホームページやTwitterなどに飛ばすコードを書いていきます。
MT4で表示できる情報には限りがありますが、この方法を使えば自社のブランディングを行うことが出来ます。
カオチャイ
合わせてEAに認証をつけるなどの工夫も大事ですよ!
yuki
ロゴをクリックしてPayPalで課金をしてもらうなどの流れを作りたい場合は、PayPal連携の記事を参考にしてくださいね
それではソースコードを書いていきましょう
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
ソースコードはこちらからダウンロードできます
カオチャイ
このコードでMT4に画像やロゴを表示させて、そこから自社のHPへの誘導や、アフィリエイト広告へ案内するなど色々な使いみちがありますよ!
インジケーターのカスタマイズ色々
【MQLコード解説】EA・インジケーターのカスタマイズ【体験版・LINE通知】EAやインジケーターに口座番号認証を実装する方法を紹介しています。
認証システムにはMQLAuthを利用して解説していきます。...
ダウンロードでそのまま使えるコード集
【コピペでOK】RSIのEAに口座認証や一括メッセージ機能を実装してみました
https://interactivebrokers.work/start_mqlauth/
個人でEAを販売する際につけてお...
【コピペでOK】MT4のチャートから飛ばすURLをソースコードを編集せずに、MQLAuthの管理画面から変えられるようにする
https://interactivebrokers.work/start_mqlauth/
メッセージのURL変更を簡単に
...
【コピペでOK】バイナリーオプションサインツールに体験版機能を機能を実装してみました
https://interactivebrokers.work/start_mqlauth/
体験版機能付きのBO用サインツー...
おすすめ参考記事
配布したEA利用者のMT4にメッセージを一斉配信する方法
https://interactivebrokers.work/start_mqlauth/
一斉送信機能で確実な宣伝が可能に...
MQLAuthシステムを利用するための事前準備
MQLAuthを使うための準備
MQLAuthシステムを使う前提条件として「インジケーターをMT4の口座番号やパスワードで縛って管...
EAアップデート時に自動でMT4のアラートを表示する機能を追加する
https://interactivebrokers.work/start_mqlauth/
アップデートのお知らせとは?
...
バイナリーオプションのインジケーターに口座認証を実装する方法
https://interactivebrokers.work/start_mqlauth/
口座番号認証はパスワードよりも安...