MQL4コードチェック項目
| FX・自動売買・システムトレードのすべてがわかるMT4やEAの投資情報サイト【fx-on.com】

閲覧履歴

MQL4コードチェック項目

MQL4コードチェック項目の内容について掲載します。
出品者様は、fx-onにEAを出品なさる際にチェックリストとして、ご利用いただければ幸いです。



全体の流れは下記のとおりです。

1.ソースコード(mq4)をチェック
2.Strategy Testerでバックテストを実施してチェック
3.デモ口座で運用してチェック


出品者様のご説明どおりのロジックになっているか(システムトレード各商品の[EAについて]参照)
また、運用上、致命的な問題がないかを観点とした、チェック項目です。


※本チェックは、EAの成績について保証しているものではありませんので予めご了承ください



下記に具体的なチェック内容を記載します。最終更新日:2013/11/26


1.ソースコード(mq4)をチェック


1-1.マジックナンバー処理

1EAに対して1つのマジックナンバーが設定されていること。

サンプル例
extern int MagicNumber = 123456;
OrderSend( Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, NULL, MagicNumber );


1-2.ポジション管理

マジックナンバーで適切にポジションが処理されていること。

サンプル例
if ( OrderSymbol() != Symbol() || OrderMagicNumber() != MagicNumber ) { continue; }
if ( OrderSymbol() == Symbol() && OrderMagicNumber() == MagicNumber ) { Position++; }


1-3.桁数処理

入力されるパラメータに対して、2,3,4,5桁に対応されていること。

サンプル例
if ( Digits == 3 || Digits == 5 ) { StopLossPips *= 10; }


1-4.一括決済処理

デクリメント処理されていること。

サンプル例
for ( int i = OrdersTotal() - 1; i >= 0; i-- ) { OrderClose( ~ );}


1-5.決済リトライ処理

スリッページが発生して決済されない場合に、以降(次のティック)の処理で決済されること。

サンプル例
if ( iMA(~) > XX ) { OrderClose( ~ );}


1-6.カウントダウン処理

カウントダウン方式のブローカーの場合に成行注文時にTakeProfit, StopLoss が 0 であること。

サンプル例
OrderSend( Symbol(), OP_BUY, Lots, Ask, Slippage, 0, 0, NULL, MagicNumber );


1-7.ポジション制限処理

ポジション制限処理されていること。

サンプル例
if ( buyPosition <= 5 ) { OrderSend( ~ ); }


1-8.一枚運用処理

両建てにならないこと。

サンプル例
if ( buyPosition == 0 ) { OrderSend( ~ ); }


1-9.インジケーター値

パラメータが引き継がれていること。

サンプル例
iMA(param1,param2,param3,param4,param5,param6,param7)


1-10.エラー制御

エラーハンドリングがある場合は正しく処理されていること。

サンプル例
OrderSend( ~ ); if ( GetLastError() == 130 ) { ~ }




2.Strategy Testerでバックテストを実施してチェック


2-1.エラー出力

登録されたFX運用会社(メインの1社)でエラーなく動作すること。


2-2.カウントダウン処理

メインの1社とは別のFX運用会社でカウントダウン方式を切り替えてエラーなく動作すること。


2-3.バックテスト動作

バックテストが問題なく動作すること。※ドローダウンは確認しません


2-4.ポジション数

パラメータで指定したポジションを超過しないこと。


2-5.一枚運用処理

両建てにならないこと。




3.デモ口座で運用してチェック


3-1.EA複数同時運用

EAを複数同時運用した場合に、問題なく動作すること。


3-2.グローバル変数処理

バックテスト後も影響なく適切に処理されていること。


3-3.MT4再起動

MT4再起動後も影響なく適切に処理されていること。




以上です。

優秀なEAのご出品を心からお待ちしております。

証券会社接続へ興味のある出品者様はこちら!!

関連記事