導入ガイド/クイックスタート

導入ガイドへ戻る
STEP 1

API連携用ファイルをダウンロード

API連携ファイルページから、共通ヘッダーファイル ExpertAuth.mqh を取得します。

ダウンロードページへ
STEP 2

配置して import

ダウンロードしたファイルを配置し、EA またはインジケータから import します。

MQL4/Include/ExpertAuth.mqh
MQL5/Include/ExpertAuth.mqh
#include <ExpertAuth.mqh>
STEP 3

プロダクトIDを定義

商品登録画面で発行されたプロダクト ID を、EA またはインジケータ側で定義します。

#define PRODUCT_ID "***"
STEP 4

パスワード入力項目を用意

パスワード認証を使う場合だけ、外部パラメータとしてパスワード入力項目を用意します。

input string pass = "";
STEP 5

OnInit でタイマーを準備

初回認証を走らせるため、OnInit でタイマーを準備します。インジケータの場合は、削除処理のためにショートネームの設定も必要です。

// MQL5
int OnInit(){
   
   //挿入後5秒後に認証を行う。
   EventSetTimer(5);   
   //インジケータの場合はショートネームを設定
   IndicatorSetString(INDICATOR_SHORTNAME, "sample");
   return(INIT_SUCCEEDED);
}
// MQL4
int OnInit(){
   
   //挿入後5秒後に認証を行う。
   EventSetTimer(5);   
   //インジケータの場合はショートネームを設定
   IndicatorShortName("sample");
   return(INIT_SUCCEEDED);
}
STEP 6

OnTimer に認証処理を用意

OnTimer 内で認証処理を呼び出します。口座番号認証を主例にし、パスワード認証はコメントの行を使います。認証失敗時は EA またはインジケータをチャートから外します。

void OnTimer(){
   
   CJAVal result;

   //↓口座番号による認証
   result = AuthAccountNumber(PRODUCT_ID);
   //↓パスワードによる認証
   //result = AuthPassword(PRODUCT_ID, pass);
   
   bool   success   = result["success"].ToBool();
   int    code      = result["code"].ToInt();
   string reason    = result["message"].ToStr();
   int    expiresAt = result["license"]["expires_at"].ToInt();
   
   // 認証失敗
   if(!success){
      Alert("Authentication failed (", code, ") \nreason: ", reason);
      //↓チャートからEAを削除する
      //ExpertRemove();
      //↓チャートからインジケータを削除する
      ChartIndicatorDelete(0, 0, "sample");
      return;
   }
   
   // 認証成功メッセージ
   string message = "認証完了";
   if(expiresAt != 0){
      string expiry = TimeToString((datetime)expiresAt, TIME_DATE|TIME_MINUTES);
      message = message + " 使用期限: " + expiry + "です。";
   }
   
   Alert(message);
   EventSetTimer(3600);
}

導入サポート

実装が難しい場合は、認証導入代行にも対応できます

初期設定、認証組み込み、ヘッダーファイル導入まで、有償の導入代行として個別に相談できます。

初期設定

環境に合わせた初回セットアップを整理して進めます。

認証組み込み

EA やインジケータへの認証組み込みを相談しながら進めます。

ヘッダーファイル導入

ExpertAuth.mqh の導入と呼び出し準備まで対応できます。

Free / Lite / Pro の月額プランには含まれません。個別相談・個別見積もりで対応します。

お問い合わせはこちら