EA/インジゲーター共通(MT4)

口座認証機能とは、お客様が登録した口座アカウント1つでのみEAを稼働させる機能です。
固有の識別IDがex4ファイルに自動で付与され、登録されているMT4口座以外ではご利用いただけません。EA起動時にWebサーバーへ認証を行うことによって不正利用のリスクを未然に防ぎ、利用を許可されたユーザーのみが利用できるようになります。

※現在、FXジャンルのダウンロード商品とメディアのストア商品に対応しています。

STEP 1【ダウンロード商品】商品を作成する(mqhファイルをダウンロードする)

発行管理画面左メニューからダウンロード商品を作成します。

※すでに販売中の商品には口座認証はご利用になれません。

ダウンロード商品は作成する段階で販売するファイルのアップロードが必須になります。商品作成後に認証に必要なコードを挿入してコンパイルしたファイルと差し替える流れになりますので、あらかじめ認証用コードを挿入したファイルを準備しておきたい場合は、以下からmqhファイルをダウンロードして「STEP3 MT4にmqhファイルを配置する」へお進みください。

STEP 1【メディア】mqhファイルをダウンロードする

発行管理の商品詳細画面から、mqhファイルをダウンロードします。

STEP 2EAファイル判別キーを作成する

発行管理の商品詳細画面から、EAファイル判別キーを作成します。
STEP5 口座認証に必要なコードを配置する」で必要な文字列です。



判別キーを追加する」ボタンをクリックします。

STEP 3MT4にmqhファイルを配置する

MT4を起動して、上部メニューの「ファイル」から「データフォルダを開く」をクリックします。



STEP1でダウンロードしたZIPファイルを解凍してできた「regimag.mqh」を「MQL4」フォルダの中の「Include」フォルダに配置します。

STEP 4MetaEditorを起動してEA/インジケーターのソースコードを開く

MT4上部メニューの「ツール」から「メタエディター」をクリックします。



販売するEA/インジケーターのファイルを選択してソースコード(mq4ファイル)を表示します。

STEP 5口座認証に必要なコードを配置する

下記を参考にソースコードの適切な位置に認証コードを挿入します。


#property設定してある次の行に以下の2行を追加

#include <regimag.mqh>
Regimag regimag("STEP2で作成したEAファイル判別キー");

int OnInit() の中の最上行に以下の1行を追加

if(!regimag.authorize("OnInit")) return(INIT_FAILED);

void OnTick() の最上行に以下の1行を追加

if(!regimag.authorize("OnTick")) return;

void OnDeinit(const int reason) の最上部に以下の1行を追加

regimag.deinit();

完了したらex4ファイルにコンパイルします。

DLLを使用している場合

重複読み込みによるエラーが発生した場合、regimag.mqhの以下の部分でDLLの読み込みが行われていますので、
重複する関数の行をコメントアウトしてください。
すべての行が重複している場合は#importのブロックをコメントアウトしてください。

regimag.mqh
//+------------------------------------------------------------------+
// | DLL imports                                                                     |
//+------------------------------------------------------------------+
#import “wininet.dll”
   int  InternetOpenW(string, int, string, string, int);
   int  InternetOpenUrlW(int, string, string, int, int, int);
   bool InternetReadFile(int, uchar &arr[], int, int&);
   bool InternetCloseHandle(int);
#import

STEP 6【ダウンロード商品】商品ファイルを変更する

レジまぐの発行管理画面に戻り、商品詳細画面から、アップロード済みの商品ファイルをSTEP4でコンパイルしたex4ファイルに差し替えます。

STEP1でダウンロード商品の作成をせずに販売ファイルの準備をされた方はここで「STEP1 商品を作成する」を参考に作成していただき、「STEP7 口座認証の設定」へお進みください。


STEP 6【メディア】ストア商品を作成する

レジまぐの発行管理画面に戻り、商品詳細画面からストア商品を作成します。
商品ファイルとしてSTEP4でコンパイルしたex4ファイルをアップロードして下書きで保存(※)します。

※すでに販売中の商品には口座認証はご利用になれません。



STEP 7【ダウンロード商品】口座認証の設定

商品詳細画面から口座認証設定をします。



STEP 7【メディア】口座認証の設定

商品詳細画面のストア商品一覧のセレクトボックスから口座認証を利用する商品を選択します。



STEP 8疎通テストを行う

疎通テスト用ファイル(ex4ファイル)をダウンロードしてMT4に配置します。

※認証に必要なコードが付加されていますので、ダウンロードしたファイルのファイル名を変更しないでください。
 【参考】メタトレーダーにexファイルを配置する



チャートに「認証成功」と表示されたら疎通テストは完了です。



チャート内のメッセージの表示位置

認証の際に表示するメッセージを任意の位置に変更することができます。
regimag.mqhの以下の部分で設定していますので、お好きな位置に調整してください。

regimag.mqh
//+------------------------------------------------------------------+
// | Message display                                                               |
//+------------------------------------------------------------------+
int     regimagMessageDisplay      = 1;
int     regimagMessageXDistance = 200;
int     regimagMessageYDistance = 20;
color regimagMessageColor         = clrNONE;

発行管理画面のステータスも疎通テストが完了したことを示しています。

認証に失敗した際のメッセージ一覧と対処方法

メッセージ 原因と対処方法
dll読込を許可してください [Check the [Arrow DLL imports] checkbox] エキスパートアドバイザを設定する」を参考に「DLLの使用を許可する」にチェックを入れてください。
認証失敗 [authorize param invaild] ファイル名による認証に失敗しました。
認証に必要な情報が含まれていますので、ファイル名は変更しないでください。
認証失敗 [already used by another fx account] ほかの口座で認証済みのため、認証に失敗しました。
口座を変更したい場合はレジまぐにログインしていただき、認証口座の解除を行ってください。
認証失敗 [sms auth failed] SMS認証ができなかったため、認証に失敗しました。
レジまぐにログインしていただき、SMS認証を行ってください。
認証失敗 [free trial expired] 無料試用期間が終了したため、認証に失敗しました。
商品をご購入いただくことで引き続きご利用になれます。
認証失敗 [contents not found] レジまぐの商品情報が取得できませんでした。
レジまぐにお問い合わせください。
認証失敗 [authorize failed] 認証情報に誤りがあります。
認証に必要な情報が含まれていますので、ファイル名は変更しないでください。
認証失敗 [unknown error invaild [bug]]
認証失敗 [exception error]
認証に失敗しました。
レジまぐにお問い合わせください。
認証処理保留中 [Invalid result code] サーバーメンテナンス等、認証処理が行えない場合に表示されます。EAは動作していますのでしばらくお待ちください。
1日以上続くようであればお問い合わせください。

STEP 9【ダウンロード商品】疎通が確認できたら販売を開始する

疎通テストが成功したら販売を開始できます。
商品詳細画面から販売を開始します。

STEP 9【メディア】疎通が確認できたら販売を開始する

疎通テストが成功したら販売を開始できます。
商品詳細画面のストア商品一覧から疎通テストが完了した商品を編集します。



編集画面にて公開予定日時を設定して公開します。

EA/インジゲータに口座認証を使用する

TOP