私たちのファンページに参加してください
- ビュー:
- 13
- 評価:
- パブリッシュ済み:
-
このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動
プロップファームの口座は、MetaTrader 5が認識していない第2のルールブックに基づいて運用されています。そのルールには、固定された初期残高から算出される最大損失額、ブローカーの時計とは異なる時刻にリセットされる1日あたりの制限、利益支払いの安定性の上限、最低取引日数、ニュースブラックアウト、金曜日の取引締め切りなどが含まれます。 最初のルールブックに違反すれば、その取引はロスを被ります。2つ目のルールブックに違反すれば、口座を失うことになります。
このライブラリは、その背後にあるガード機能のソースコードです。任意のEAにコンパイルされ、1回のパスごとに凍結された口座のスナップショットに対して8つのルールをチェックし、そこから最大1つの指示のみを報告します――1つの不測の事態に対して8つの別々の反応を示すことは決してありません。それ自体はポジションを取らない仕組みです。

アーカイブの内容
24個のヘッダーファイル(.mqh)、1つのファサードクラス(CPropRulebook)、およびファサードをチャート上のパネルに接続するデモ用エキスパートアドバイザー(PropFirmDefense.mq5)が含まれています。 このデモ版は、Market上で「PropFirm Defense」という名称の無料製品として公開・コンパイルされています。このCodeBaseのエントリは、バイナリではなくクラスファイルをご希望の読者のために、ソースコード形式で提供されている同じガード機能です。
チェック項目
- 各パスで8つのルールをチェックします— 静的ドローダウン、トレーリング・ドローダウン、1日あたりの損失、利益目標、ペイアウトの一貫性、最低取引日数、ニュース・ブラックアウト、週末のフラット。
- 実際のトレーリング・ドローダウンと同様に動作するトレーリング・フロア— ピークに合わせて段階的に引き上げられ、残高が「開始値+トレーリング」に達すると恒久的に固定されます。これは、トレーリング・ドローダウン口座が実際に機能する仕組みと同じです。
- 1日ごとのリセットは、ブローカーの深夜ではなく、会社のタイムゾーンで行われるため、境界線の前後で計上された損失も正しい日に計上されます。
- ペイアウトルールは決してポジションを決済しません。 一貫性や最低取引日数の問題により出金が保留される場合でも、口座にリスクが生じることはありません。そのため、ガードは自動的に処理を行うのではなく、その旨を報告します。

動作の仕組み
- 1回のパスにつき1つの観測値が得られ、すべてのルールで共有され、そこから最大1つの指令が生成されます。8つのルールが同時に違反した場合でも、アクションは1つ発生するだけで、8つにはなりません。
- あらゆるもの(EA、手動取引、アカウント上のコピーシグナルなど)と併用可能です。自身ではポジションを保有しません。
- 状態は再起動後も保持されます。 アンカー、消費済み予算、およびラッチは永続化されるため、VPSの再起動を行ってもドローダウン許容値がリセットされることはありません。
- 「入力」ダイアログから、すべての閾値を自由に設定できます。一般的なブローカーのスタイルに合わせたプリセットが、設定の出発点として用意されています。

構成要素を再利用したい読者のためのアーキテクチャ
呼び出し元が必要とするクラスはCPropRulebook だけです。これは以下を構成します:
- CPropSnapshotBuilder— 1回のパスごとに1つの口座スナップショット(純資産、残高、ポジション、未確定損益)を固定化し、すべてのルールが同じ数値に基づいて判断できるようにします。
- CRuleRegistry+CRuleCoordinator— 8つのIPropRule実装を保持し、多数の判定結果を最大1つの指令に集約します。
- CProtectiveActionExecutor— ポジションにアクセスできる唯一のクラスであり、違反時のみポジションを清算するために使用されます。
- CGuardStateStore— ターミナルの再起動後も、トレーリングフロア、消費済み予算、およびラッチの状態を永続化します。
- CTerminalAlgoSwitch— ターミナルのグローバルな「アルゴリズム取引」ボタン用のオプションのアクチュエータ。必要な WinAPI 呼び出しが利用できない場合(Market ビルド、Linux/Wine、または AllowDllImport=0)、起動を拒否するのではなく、機能を制限して動作する。
これは戦略ではありません
これはエントリーのタイミングを決定するものではなく、収益性についても何ら保証しません。これは、実際に取引を行うものに対して、「今、このポジションを開いてよいか」および「この口座に現在違反状態にある項目はあるか」という2つの質問に答えるものです。
あらかじめ明記する制限事項
- あらかじめ設定された数値はあくまで出発点であり、契約ではありません。 プロップファームのルールブックは、プログラムや階層ごとに変更され、異なります。各閾値について、ご自身の契約内容と照らし合わせてご確認ください。
- ニュースルールは、ターミナルの経済カレンダーを必要とします。 カレンダーが利用できない場合(ストラテジーテスターではその状態になります)、このルールは実行を控えます。
- CTerminalAlgoSwitchは、market-buildスイッチ(PROP_MARKET_BUILD、添付のデモではデフォルトで有効)なしでコンパイルされた場合、user32.dllをインポートします。 独自のエントリポイントをコンパイルし、DLLを使用しないパス(マーケットルール、AllowDllImport=0、またはWinAPIのないプラットフォーム)が必要な場合は、インクルード文の前にそのマクロを定義してください。
本コンテンツは教育目的であり、金融アドバイスではありません。取引には損失のリスクが伴います。
MetaQuotes Ltdによって英語から翻訳されました。
元のコード: https://www.mql5.com/en/code/77156
Range compression percentile
当期間のこれまでの変動幅を、過去の変動幅の全履歴分布と比較して順位付けします。これは、ADR%のように単に平均値と比較するのではなく、真のパーセンタイルであり、統計的な圧縮や拡大を、パーセンタイルゲージを備えたコンパクトなリアルタイムパネル上で表示します。
MT5 Symbol Changer Profit Display
EMTOrdersUtilityは、複数の金融商品にわたる建玉状況をリアルタイムで把握したいと考えるアクティブなトレーダー向けに設計された、リアルタイム取引モニタリングおよび銘柄切り替えユーティリティです。
GDS Renko Replay Trainer
「GDS Renko Replay Trainer」は、MetaTrader 5の過去のレンコチャート上で手動での判断を練習するための無料の学習ツールです。 過去の期間を読み込み、その推移を再生しながら、仮想の「買い」または「売り」の取引を行うことができます。 一時停止したり、1ティック分進めたり、次の完成したレンコ・ブリックに移動したりすることができます。各仮想ポジションにはストップロスとテイクプロフィットが設定されており、トレーナーはセッションの結果を記録します。 このツールは、過去のビッド/アスクのティックから固定サイズのレンコ・ブリックを構築し、古典的な2ブリック反転を採用しています。 将来のティックは、表示されるチャートの描画や仮想取引の実行には使用されません。買い注文はエントリーにアスク、決済にビッドを使用し、売り注文はその逆を使用します。パネルに入力された注文は、次に再生される有効なティックを待ちます。ストップやターゲットは、価格のギャップを含め、すべてのティックでチェックされます。
週明けリオープンを基準にエントリーするEA(絶対時刻を使わずGMTオフセットとDSTに依存しない実装)
絶対時刻を使わず、バー履歴から週次の市場再開(リオープン)バーを実行時に検出してエントリーするEAの実装例です。ブローカーのGMTオフセットやDST規則に依存しません。