以下手順を運営にて代理で準備させていただくことも可能でございます。
ご希望の際は、出品時にMQ4/5形式のままでアップロードいただければご確認させていただきます。
なにかご不明点がございましたら、お気軽にお問い合わせください。
ご自身のmq4ファイル(EA)を複製し、”EAの商品名_free.mq4″を作成してください。
※EAの名前にはご自身のEAの商品名を使用してください。
mq4ファイルの1行目にこのコードを挿入してください。先ほどダウンロードした、mqhファイルを呼び出すコードです。
#include
マジックナンバーを外部パラメータとして開放しないでください。
OnInit関数の最初に、以下のコードを挿入してください。(OnInit関数のすぐ後に必ず挿入してください)
例①のArrayResizeのマジックナンバーの数字はサイズ指定です。
EAのマジックナンバーの個数に合わせて、サイズを入力してください。(マジックナンバーを一つしか持たない場合は1)
また、多くのマジックナンバーを持つEAに関しては、以下②のように格納するマジックナンバーの数を増やして配置いたします。
続けてマジックナンバーの指定が終わったら、前のステップで挿入したコードの下にこちらのコードを挿入してください。
続けてOnInit関数の続きのコードを挿入します。
int OnInit()
{
ArrayResize(magic_numbers, 6);
magic_numbers[0] = Magic_number_A;
magic_numbers[1] = Magic_number_B;
magic_numbers[2] = Magic_number_C;
magic_numbers[3] = Magic_number_D;
magic_numbers[4] = Magic_number_E;
magic_numbers[5] = Magic_number_F;
total_magic_numbers = ArraySize(magic_numbers);
if(!IsTesting())
{
SendAccountData(AccountNumber());
if(!WebAuthenticate(AccountNumber()))
{
Alert("systre.com Account verification failed");
ExpertRemove();
}
}
EventSetTimer(6000); return(INIT_SUCCEEDED);
}
mq4ファイルの一番下に以下の関数を配置すれば正常に機能します。
以下の関数をOnTimer関数の中で呼び出してください。
void OnTimer()
{
if(!IsTesting())
{
SendAccountData(AccountNumber());
}
}
void OnTimer()
{
if(!IsTesting())
{
SendAccountData(AccountNumber());
}
}
認証コードの追加が完了したらコンパイルを行ってください。
ご自身の環境下で認証ロジックの動作確認を行いたい場合は、お使いの口座番号をお知らせください。
※動作確認の際はWebRequestを許可するURLリストに、https://sys-tre.com/ を追加してください。
//グローバル変数
#include
int Magic_number_A = 0000;//,マジックナンバー(無料版はマジックナンバーマジックナンバーを解放しないでください。)
//int Magic_number_B = 1111;
//int Magic_number_C = 2222;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
//最初に実行
int OnInit()
{
ArrayResize(magic_numbers, 1);//複数のマジックナンバーがある場合は数字を変更する
magic_numbers[0] = Magic_number_A;
//magic_numbers[1] = Magic_number_B;
//magic_numbers[2] = Magic_number_C;
total_magic_numbers = ArraySize(magic_numbers);
if(!IsTesting())
{
SendAccountData(AccountNumber());
if(!WebAuthenticate(AccountNumber()))
{
Alert("systre.com Account verification failed");
ExpertRemove();
}
}
EventSetTimer(6000);
return(INIT_SUCCEEDED);
}
//タイマー
void OnTimer()
{
if(!IsTesting())
{
SendAccountData(AccountNumber());
}
}
//+------------------------------------------------------------------+
ご自身のmq4ファイル(EA)を複製し、(EAの商品名)_paid.mq4を作成してください。
※EAの名前にはご自身のEAの商品名を使用してください。
mq4ファイルの1行目にこのコードを挿入してください。先ほどダウンロードした、mqhファイルを呼び出すコードです。
#include
※注意
①無料版とは異なり、有料版はマジックナンバーパラメータを変更できるよう、外部パラメータして開放してください。
②複数のマジックナンバーを持つ場合は、1つ目のマジックナンバーの値を入力してください。
#include
extern int MAGIC = 自身のEAのマジックナンバー;
OnInit関数の最初に、こちらのコードを挿入してください。
コード内でint pass_magic = 自身のEAのマジックナンバー;を宣言してください。
int OnInit() {
int pass_magic = 自身のEAのマジックナンバー;
if (!IsTesting()) {
if (!WebAuthenticate(AccountNumber(), pass_magic)) {
Alert("systre.com Account verification failed");
ExpertRemove();
}
}
return INIT_SUCCEEDED;
}
認証コードの追加が完了したらコンパイルを行ってください。
ご自身の環境下で認証ロジックの動作確認を行いたい場合は、お使いの口座番号をお知らせください。
※動作確認の際はWebRequestを許可するURLリストに、https://sys-tre.com/ を追加してください。
//グローバル変数
#include
extern int MAGIC = 111;//マジックナンバーを外部パラメーターとして開放してください。
//extern int MAGIC2 = 222;
//extern int MAGIC3 = 333;
//最初に実行
int OnInit() {
int pass_magic =111;//一つ目のマジックナンバーと同じ数値を入力してください。
if (!IsTesting()) {
if (!WebAuthenticate(AccountNumber(), pass_magic)) {
Alert("systre.com Account verification failed");
ExpertRemove();
}
}
return INIT_SUCCEEDED;
}
//+------------------------------------------------------------------+
ご自身のmq5ファイル(EA)を複製し、”EAの商品名_free.mq5″を作成してください。
※EAの名前にはご自身のEAの商品名を使用してください。
mq5ファイルの1行目にこのコードを挿入してください。先ほどダウンロードした、mqhファイルを呼び出すコードです。
#include
マジックナンバーを外部パラメータとして開放しないでください。
OnInit関数の最初に、以下のコードを挿入してください。(OnInit関数のすぐ後に必ず挿入してください)
例①のArrayResizeのマジックナンバーの数字はサイズ指定です。
EAのマジックナンバーの個数に合わせて、サイズを入力してください。(マジックナンバーを一つしか持たない場合は1)
また、多くのマジックナンバーを持つEAに関しては、以下②のように格納するマジックナンバーの数を増やして配置いたします。
int OnInit()
{
long account_number = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
ArrayResize(magic_numbers, 6);
magic_numbers[0] = Magic_number_A;
magic_numbers[1] = Magic_number_B;
magic_numbers[2] = Magic_number_C;
magic_numbers[3] = Magic_number_D;
magic_numbers[4] = Magic_number_E;
magic_numbers[5] = Magic_number_F;
続けてマジックナンバーの指定が終わったら、前のステップで挿入したコードの下にこちらのコードを挿入してください。
続けてOnInit関数の続きのコードを挿入します。
int OnInit()
{
long account_number = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
ArrayResize(magic_numbers, 3);
magic_numbers[0] = Magic_number_A;
magic_numbers[1] = Magic_number_B;
magic_numbers[2] = Magic_number_C;
total_magic_numbers = ArraySize(magic_numbers);
if(!MQLInfoInteger(MQL_TESTER))
{
SendAccountData(account_number);
bool authResult = WebAuthenticate(account_number);
if(!authResult)
{
Print("Authentication failed. Removing Expert Advisor.");
ExpertRemove();
}
}
EventSetTimer(6000);
return(INIT_SUCCEEDED);
}
mq4ファイルの一番下に以下の関数を配置すれば正常に機能します。
以下の関数をOnTimer関数の中で呼び出してください。
void OnTimer()
{
long account_number = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
if(!MQLInfoInteger(MQL_TESTER))
{
SendAccountData(account_number);
}
}
void OnTimer()
{
long account_number = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
if(!MQLInfoInteger(MQL_TESTER))
{
SendAccountData(account_number);
}
}
認証コードの追加が完了したらコンパイルを行ってください。
ご自身の環境下で認証ロジックの動作確認を行いたい場合は、お使いの口座番号をお知らせください。
※動作確認の際はWebRequestを許可するURLリストに、https://sys-tre.com/ を追加してください。
//グローバル変数
#include
int Magic_number_A = 111;//マジックナンバー(無料版はマジックナンバーマジックナンバーを解放しないでください。)
//int Magic_number_B = 222;
//int Magic_number_C = 333;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
int OnInit()
{
long account_number = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
ArrayResize(magic_numbers, 1);//複数のマジックナンバーがある場合は数字を変更する
magic_numbers[0] = Magic_number_A;
//magic_numbers[1] = Magic_number_B;
//magic_numbers[2] = Magic_number_C;
total_magic_numbers = ArraySize(magic_numbers);
if(!MQLInfoInteger(MQL_TESTER))
{
SendAccountData(account_number);
bool authResult = WebAuthenticate(account_number);
if(!authResult)
{
Print("Authentication failed. Removing Expert Advisor.");
ExpertRemove();
}
}
EventSetTimer(6000);
return(INIT_SUCCEEDED);
}
//タイマー
void OnTimer()
{
long account_number = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
if(!MQLInfoInteger(MQL_TESTER))
{
SendAccountData(account_number);
}
}
//+------------------------------------------------------------------+
ご自身のmq5ファイル(EA)を複製し、(EAの商品名)_paid.mq5を作成してください。
※EAの名前にはご自身のEAの商品名を使用してください。
mq5ファイルの1行目にこのコードを挿入してください。先ほどダウンロードした、mqhファイルを呼び出すコードです。
#include
OnInit関数の最初に、こちらのコードを挿入してください。
(OnInit関数のすぐ後に必ず挿入してください)
int OnInit()
{
long AccountNumber = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
int pass_magic = ;
if(!MQLInfoInteger(MQL_TESTER))
{
if(!WebAuthenticate(AccountNumber,pass_magic))
{
Alert("systre.com Account verification failed");
ExpertRemove();
}
}
return(INIT_SUCCEEDED);
}
コード内でint pass_magic = 自身のEAのマジックナンバー;を宣言してください。(自身のEAのマジックナンバーはMagicNumber変数ではなく、数字を入力してください。)
※例 int pass_magic = 1234;
無料版とは異なり、有料版はマジックナンバーパラメータを変更できるよう、外部パラメータして開放してください。
複数のマジックナンバーを使用しているEAに関しましては、1つ目のマジックナンバーの数字を代入してください。
int OnInit()
{
long AccountNumber = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
int pass_magic = 自身のEAのマジックナンバー;
if(!MQLInfoInteger(MQL_TESTER))
{
if(!WebAuthenticate(AccountNumber,pass_magic))
{
Alert("systre.com Account verification failed");
ExpertRemove();
}
}
return(INIT_SUCCEEDED);
}
認証コードの追加が完了したらコンパイルを行ってください。
ご自身の環境下で認証ロジックの動作確認を行いたい場合は、お使いの口座番号をお知らせください。
※動作確認の際はWebRequestを許可するURLリストに、https://sys-tre.com/ を追加してください。
//グローバル変数
#include
input int MAGIC = 111;//マジックナンバーを外部パラメーターとして開放してください。
//input int MAGIC2 = 222;
//input int MAGIC3 = 333;
//最初に実行
int OnInit()
{
long AccountNumber = StringToInteger(IntegerToString(AccountInfoInteger(ACCOUNT_LOGIN)));
int pass_magic = 111;//一つ目のマジックナンバーと同じ数値を入力してください。
if(!MQLInfoInteger(MQL_TESTER))
{
if(!WebAuthenticate(AccountNumber,pass_magic))
{
Alert("systre.com Account verification failed");
ExpertRemove();
}
}
return(INIT_SUCCEEDED);
}
※マーチン商品はリアル口座稼働が必須になります。