




Japan
あなたの「勝てるロジック」を
眠らせていませんか?
「MQL5の実装が難しい」という悩みを解決する、EA開発用パーツ集『Core Toolkit』。
厄介なエラー対策や資金管理はすべてモジュールにお任せ。
あなたはロジックを書くだけで、堅牢なEAが完成します。
- ✓ 【自由度】MQL5で思い通りのロジックを書きつつ、面倒な処理だけ一任できる
- ✓ 【確実性】煩雑なエラー処理(約定拒否、リクオート等)を自動リトライで回避
- ✓ 【安全性】口座残高やレバレッジに基づく、安全な発注ロットを自動計算
- ✓ 【汎用性】証券会社ごとのロット制限などを自動読み取り&補正
- ✓ 【完全買い切り】月額費用なし。他プロジェクトへのソースコード流用も自由
■ あなたが作るのは「ロジック」だけ
Core Toolkit導入で、自由度はそのままに簡単・安心なコード自作が可能
■ コード量と手間の圧倒的な違い
「注文を出して、失敗したらリトライする」だけの処理でも、MQL5ではこれだけの差が出ます。
■ こんな壁にぶつかっていませんか?
MQL4からMQL5へ移行しようとして、注文処理の複雑さに挫折していませんか?
- ✖ OrderSend関数の構造が複雑で、思い通りの注文が出せない。
- ✖ バックテストでは完璧なのに、リアル口座だと「約定拒否」ですぐに止まってしまう。
- ✖ 証券会社ごとにロットの仕様が違い、対応コードを書くのが手間で仕方ない。
- ✖ 口座の余力に基づいた正しいロット計算が組めているか不安がある。
- ✖ 自作のEAを販売したいが、購入者の環境で「エラーが出て動かない」というクレームが怖い。
■ Core Toolkitがすべて解決します
同梱のテンプレートに「条件」を書き込むだけで、プロレベルの安全処理が施されたEAが完成します。
🛒 【特徴1】実運用を想定した注文管理 (OrderManager)
スリッページやリクオートを自動で検知し、指定回数まで再発注を行います。複雑なエラーハンドリングを関数1行で実現。
🛡️ 【特徴2】証拠金に基づくロット自動調整 (RiskManager)
現在の口座残高、レバレッジ等を取得し、「安全に発注できる最大ロット」を自動計算します。
🎯 【特徴3】口座仕様の自動読み取り
証券会社ごとのロット制限(最小・最大ロット数、ステップ幅)を自動で読み取り、最適な値に補正して発注します。
📢 【特徴4】外部通知機能 (NotifyManager)
LINEやDiscordへの通知も関数を呼び出すだけ。VPSで放置稼働させているEAの動作確認が容易になります。
■ 収録されている主要関数(一部抜粋)
💰 資金・ロット管理
- CheckMarginAdvanced : 口座残高や仕様を考慮し、安全な発注ロットを自動算出
🛒 注文・エラーハンドリング
- SendOrderAdvanced : リトライ回数や許容スリッページを指定できる成行発注
- SendPendingOrderAdvanced : 有効期限などを指定できる待機注文
🎯 決済・ポジション管理
- SetTrailingStop : 含み益に合わせてストップロスを自動追従
- SetBreakEven : 指定した含み益に達したら、建値にストップロスを移動
- CloseAllPositions : 保有中のポジションを安全に一括決済
■ 「動かないEA」を量産しないためのインフラ
せっかく素晴らしいロジックを思いついても、いざリアル口座で動かしてみると「注文が弾かれる」「資金不足エラーで止まる」といった予期せぬトラブルで、EAが本来のパフォーマンスを発揮できないことは少なくありません。
もしあなたが自作EAの販売を目指しているなら、購入者の異なる口座環境で「エラーが出て動かない」というクレームに対応するのは、精神的にも技術的にも非常に大きな負担となります。
Core Toolkitは、そうした「エラーへの不安」を根底から解消するためのインフラです。
- ・一度買えば、これから作るすべてのEAに流用可能
- ・ロジックが変わっても、強固な安全装置はそのまま
- ・商用版なら、作成したEAの販売も自由
これは単なる便利ツールではなく、あなたのアイデアを「安全に稼働する実運用レベルのEA」として形にし続けるための、一生モノの開発基盤です。
■ 選べる2つのライセンス
ご利用目的に合わせて、2つのエディションをご用意しています。
1. 通常版 (Personal Edition) ≪本製品はこちら
本ツールを使って作成したEAをご自身の口座で運用いただけます。
2. 商用版 (Commercial Edition)
作成したEA(.ex5形式)の外部販売・無償配布が正式に許可されます。
また、商用版限定の「稼働ログ非表示関数」が利用可能。あなたの独自ロジックの秘匿性を高め、エンドユーザーにクリーンな環境を提供できます。
いずれのエディションも、本ツールキットのソースコード(.mqh)そのものの二次配布・転売は禁止されています。
■ パッケージ内容
- ・CoreToolkit_Template.mq5 (EA開発用ベーステンプレート)
- ・主要モジュール群(.mqh / .ex5)
- - 資金管理(RiskManager)
- - 注文・エラー管理(OrderManager)
- - 決済・トレール管理(PositionManager)
- - 環境認識(TradeHelpers)
- - 外部通知(NotifyManager)
- ・導入・開発マニュアル (PDF)
- ・エラー解決リファレンス (PDF)
■ よくある質問(FAQ)
■ 付録:APIリファレンス詳細
Core Toolkitに搭載されている主要関数の仕様です。クリックして詳細を展開できます。
🛡️ 資金管理(RiskManager)
機能: 資金管理モジュールのデバッグログ出力のON/OFFを制御します。trueでログ出力ON、falseでOFF(クリティカルエラーのみ出力)となります。配布・販売用のEAをコンパイルする際はfalseに設定するか、エンドユーザーがパラメータで変更できるように実装してください。
引数:
enable(bool): ログ出力の有効/無効
機能: 固定の安全設定(許容リスク90%、レバレッジ25倍、クロスレート150.0等)を用いて、指定ロットで安全に発注可能か簡易チェックを行います。
引数:
symbol(string): 対象銘柄(通常は_Symbolを指定)target_lot(double): 発注したい基本のロット数(例: 0.1)
戻り値: 補正後のロット数(double型)。0.0が返った場合は発注をスキップしてください。
機能: 口座残高とレバレッジから計算し、資金不足やブローカーの最大ロット制限を考慮した「安全な発注ロット」を算出・補正して返します。テスター環境でのクロスレート取得エラー時のフォールバック指定が可能です。
引数:
symbol(string): 対象銘柄(通常は_Symbolを指定)target_lot(double): 発注したい基本のロット数(例: 1.0)total_risk_ratio(double): 許容リスク割合(例: 余力の20%〜40%など、90%を上限とする場合は 0.90 を指定)fallback_leverage(double): 取得失敗時の代替レバレッジ(例: 25.0)fallback_contract(double): 取得失敗時の代替コントラクトサイズ(例: 100000.0)fallback_rate(double): 取得失敗時の代替クロスレート(例: 150.0)
戻り値: 補正後のロット数(double型)。0.0が返った場合は発注をスキップしてください。
🛒 注文管理(OrderManager)
機能: 注文管理モジュールのデバッグログ出力のON/OFFを制御します。trueで出力ON、falseでOFF(資金不足や自動売買未許可などのクリティカルエラーのみ出力)となります。
引数:
enable(bool): ログ出力の有効/無効
機能: 基本設定(リトライ3回、スリッページ30ポイント)で成行注文を発行します。FOK/IOC方式の自動切り替えを内部で処理します。なお、ブローカーによっては許容スリッページ設定は無効になります。
引数:
symbol(string): 対象銘柄(通常は_Symbolを指定)type(ENUM_ORDER_TYPE): 注文タイプ(ORDER_TYPE_BUYまたはORDER_TYPE_SELL)vol(double): 発注ロット数(RiskManagerで補正済みの値を推奨)sl(double): ストップロス価格。設定しない場合は0.0(レート価格を指定。Pipsではない)tp(double): テイクプロフィット価格。設定しない場合は0.0(レート価格を指定。Pipsではない)magic(ulong): EAを識別するマジックナンバー(例: 12345)comment(string): 注文コメント(例: "EA_Entry_Buy")
戻り値: 成功した場合は注文チケット番号(ulong型)、失敗時は0。
機能: 成行注文を発行します。FOK/IOC方式の自動切り替えや、リクオート時の自動再試行機能、許容スリッページを細かく指定できます。なお、ブローカーによっては許容スリッページ設定は無効になります。
引数:
symbol(string): 対象銘柄type(ENUM_ORDER_TYPE): 注文タイプvol(double): 発注ロット数sl(double): ストップロス価格(レート価格を指定)tp(double): テイクプロフィット価格(レート価格を指定)magic(ulong): マジックナンバーcomment(string): 注文コメントmax_retries(int): 約定拒否時の最大リトライ回数(例: 3)max_slippage_points(int): 許容スリッページ幅(単位はPoints。例: 30)
戻り値: 成功した場合は注文チケット番号(ulong型)、失敗時は0。
機能: 基本設定で指値・逆指値などの待機注文を発行します。有効期限はGTC(無期限)となります。
引数:
symbol(string): 対象銘柄type(ENUM_ORDER_TYPE): 待機注文タイプ(ORDER_TYPE_BUY_LIMITなど)vol(double): 発注ロット数target_price(double): 注文の待機価格(レート価格を指定)sl(double): ストップロス価格(レート価格を指定)tp(double): テイクプロフィット価格(レート価格を指定)magic(ulong): マジックナンバーcomment(string): 注文コメント
戻り値: 成功した場合は注文チケット番号(ulong型)、失敗時は0。
機能: 有効期限やリトライ回数を指定して指値・逆指値などの待機注文を発行します。
引数:
expiration(datetime): 注文の有効期限(0を指定した場合は無期限 GTC となる)max_retries(int): エラー時の最大リトライ回数- ※その他の引数はSimple版と同様です。
戻り値: 成功した場合は注文チケット番号(ulong型)、失敗時は0。
🎯 決済・ポジション管理(PositionManager)
機能: 決済・ポジション管理モジュールのデバッグログ出力のON/OFFを制御します。日常的なトレール更新などのログを非表示にし、決済失敗などの重大なエラーのみを出力することが可能です。
引数:
enable(bool): ログ出力の有効/無効
機能: 指定した銘柄とマジックナンバーに合致する保有ポジションをすべて一括決済します。
引数:
symbol(string): 対象銘柄magic(ulong): 決済対象のEAマジックナンバーmax_slippage_points(int): 許容スリッページ幅(単位はPoints)。-1を指定した場合は無制限となります。
戻り値: 決済に成功したポジション数(int型)。
機能: 指定した銘柄とマジックナンバーに合致する待機注文をすべて一括で取り消します。
引数:
symbol(string): 対象銘柄magic(ulong): 取消対象のEAマジックナンバー
戻り値: 取り消しに成功した注文数(int型)。
機能: 価格の追従に合わせてストップロスを切り上げるトレーリングストップを実行します。
引数:
symbol(string): 対象銘柄magic(ulong): 対象のマジックナンバーtrail_points(double): 現在価格からSLまでの距離(単位はPoints。例: 150.0 = 15Pips)step_points(double): SLを更新するための最低更新幅(単位はPoints。細かすぎる更新を防ぐ。例: 10.0)activation_points(double): トレールを開始する含み益のトリガー(単位はPoints。0.0の場合は即時作動。例: 100.0を指定すると含み益が10Pipsを超えてから作動)
戻り値: SLの更新が行われた場合はtrue、それ以外はfalse。
機能: 指定した含み益(トリガー)に達した際、建値+ロックポイントの位置にストップロスを自動移動させます。
引数:
symbol(string): 対象銘柄magic(ulong): 対象のマジックナンバーtrigger_points(double): ブレイクイーブンを発動する含み益の基準値(単位はPoints。例: 100.0)lock_profit_points(double): 建値からプラス方向へ確保する利益幅(単位はPoints。スプレッド負けを防ぐ。例: 10.0)
戻り値: SLの更新が行われた場合はtrue、それ以外はfalse。
🔍 補助ツール(TradeHelpers)
機能: 補助ツールのデバッグログ出力のON/OFFを制御します。フィルターによるエントリー見送り等のログを非表示にし、内部の判定ロジックを秘匿することができます。
引数:
enable(bool): ログ出力の有効/無効
機能: 指定した銘柄とマジックナンバーに合致するポジション数を取得します。
引数:
symbol(string): 対象銘柄magic(ulong): マジックナンバーtype(int): ポジションのタイプ(POSITION_TYPE_BUYやPOSITION_TYPE_SELL)。-1を指定した場合は買い売りの両方をカウントします。
戻り値: 条件に合致するポジション数(int型)。
機能: Pipsの数値を、価格差(Price)に変換します。3桁・5桁業者の場合は自動で10倍されます。
引数:
symbol(string): 対象銘柄pips(double): 変換したいPips数(例: 20.0)
戻り値: 変換後の価格差(double型。例: USDJPYで 20.0 Pips = 0.200)
機能: PipsをMT5内部で計算に使用するポイント(Points)に変換します。
引数:
symbol(string): 対象銘柄pips(double): 変換したいPips数(例: 20.0)
戻り値: 変換後のポイント(double型。例: 5桁ブローカーで 20.0 Pips = 200.0 Points)
機能: インジケーターのハンドルを指定して、特定バッファとシフト位置の値を安全に取得します。
引数:
handle(int):iMA等で取得したインジケーターのハンドル番号buffer_num(int): 取得したいバッファ番号(メインライン=0 など)shift(int): 取得するローソク足のシフト位置(0=現在足、1=1本前の確定足)
戻り値: 取得したインジケーターの値(double型)。失敗時は EMPTY_VALUE。
機能: 指定した時間軸のローソク足において、この関数が最初に呼び出されたタイミングで一度だけ true を返します。ティック毎の連続実行を防ぐ際に使用します。
引数:
symbol(string): 対象銘柄timeframe(ENUM_TIMEFRAMES): 時間軸(例:PERIOD_M15)
戻り値: 新しい足が形成された瞬間であればtrue、それ以外はfalse。
機能: 現在のスプレッドが指定ポイント以下であるかを判定します。
引数:
symbol(string): 対象銘柄max_spread_points(int): 許容する最大スプレッド幅(単位はPoints。例: 30)
戻り値: スプレッドが許容範囲内であればtrue、超過していればfalse。
機能: 現在のサーバー時間が、指定した開始時間と終了時間の範囲内であるかを判定します。
引数:
start_time(string): 開始時間(書式は "HH:MM"。例: "08:00")end_time(string): 終了時間(書式は "HH:MM"。例: "21:30")
戻り値: 稼働時間内であればtrue、時間外であればfalse。
📢 通知モジュール(NotifyManager)
機能: 通知モジュールのデバッグログ出力のON/OFFを制御します。サマリーレポート等のログを非表示にしつつ、設定漏れによる通信エラー(4014エラー等)の警告のみを出力させることが可能です。
引数:
enable(bool): ログ出力の有効/無効
機能: 指定したWebhook URLを経由して、Discordチャンネルにメッセージを送信します。
引数:
webhook_url(string): DiscordのWebhook URLmessage(string): 送信するテキストメッセージ
戻り値: 送信成功でtrue、失敗でfalse。
機能: 指定したアクセストークンを使用して、LINE Notify経由でメッセージを送信します。
引数:
token(string): LINE Notifyのアクセストークンmessage(string): 送信するテキストメッセージ
戻り値: 送信成功でtrue、失敗でfalse。
For those using GogoJungle for the first timeEasy 3 steps to use the product!
At GogoJungle, we provide services to enrich your investment life for our members. In addition, product purchases are limited to members. Why not register as a member now and make use of GogoJungle!
