Daily Loss and Drawdown Risk Manager MT4
- ユーティリティ
- バージョン: 1.0
- アクティベーション: 15
1つのチャートに置けば、日次損失上限と最大ドローダウンを口座全体で守らせます。トレードを建てたのが誰かは問いません。あなたの手動発注でも、スマートフォンのアプリでも、別のEAでも、シグナルのコピーでも同じです。上限に達すると、すべてのポジションを決済し、すべての待機注文を削除し、ロックが終わるまでは、新たに建てられたものを何であれ決済し続けます。作動するのは上限を超えたあとではなく、上限の手前にあなたが設定したラインです。そして、何をしたかを平易な言葉で伝えます。
リスクマネージャーでうまくいかない原因が、機能の不足であることはまれです。原因は、遅れて作動する上限、名前とは違う意味を持つ設定、パラメーターを編集すると黙って外れてしまうロック、あるいは触れるとは誰も思っていなかったトレードの決済です。そのそれぞれに、以下で平易に答えます。
設定のしかた
プロップファームのチャレンジでも、ご自身で決めた上限でも、重要なのは次の設定です。
- Account size:チャレンジの口座サイズ(たとえば100000)、またはご自身の上限を測る基準にしたいサイズです。0のままにすると、最初の実行時に残高を取り込みます。
- Daily loss limit と Overall loss limit:日次損失上限と最大ドローダウンです。Loss limits are set in の設定で、口座通貨の金額かパーセントかを選びます。パーセントは口座サイズに対する割合で、全体の上限がトレーリングの場合は最高点に対する割合です。
- Daily baseline:その日のドローダウンをどこから測るかです。その日の開始時の残高、その日の開始時の有効証拠金、そのどちらか高いほう、またはその日の有効証拠金の最高値のいずれかです。最高値のほうは、その日の開始時の残高より下から数えることはありません。
- Daily reset hour:ファームの1日が切り替わる時刻(サーバー時間)です。
それ以外のルールは、設定するまですべてオフです。全体の上限は、既定では口座サイズから測ります。大半のチャレンジが採用している固定の下限です。ドロップダウン1つで、代わりに到達した有効証拠金の最高値からのトレーリングドローダウンにできます。その場合、パーセントはその最高点に対する割合になるので、口座が増えればそれに合わせて大きくなります。ファームが固定額でトレーリングする場合は、その上限を金額で設定してください。
上限に達したら動きます。あとから報告するのではありません。
- 既定では上限の90パーセントで作動し、80パーセントで警告します。どちらもご自身で設定できます。この余裕は、窓開けや約定の遅れを、ファームのラインに届く前に吸収するためのものです。余裕より大きな値動きがあれば、それでもラインを越えることがあります。
- すべての銘柄のすべてのポジションを決済し、すべての待機注文を削除します。エクスポージャーの大きいものから順に行います。ブローカーが拒否した決済は、秒が変わってから最初の価格で送り直します。価格による拒否ならその直後に、それ以外の拒否なら最長30秒の待ち時間が過ぎたあとです。試行はすべて、ブローカーの応答とともにログに記録されます。
- ロック中に建てられたものは、現れた時点で決済されます。MetaTraderがこのツールをセットした状態で動いている間は、ティックごとと1秒ごとに確認します。あなたの手によるものでも、スマートフォンからでも、別のプログラムからでも同じです。
- 損失は、エクイティプロテクターと同じく有効証拠金で測ります。そのため含み損も、大半のファームと同じ数え方で数えます。ブローカーが加えるクレジットは除外するので、クレジットが損失を隠すことは決してありません。
- 日次のロックは日次リセットで終わります。全体のロックは、あなたが解除を要求するまで、有効証拠金が測定の起点まで戻るまで、またはその上限をオフにする変更が反映されるまで続きます。
1日はリセット時点から測ります。その時刻にMetaTraderが閉じていても同じです。リセット後に起動すると、それ以降に口座に計上されたものは、夜間に約定した損切りも含めて、ツールが動いていた場合と同じように今日の上限に算入されます。有効証拠金を使う基準では、リセット時点で保有していたトレードを、チャートの履歴から読んだその時点の価格で評価します。MetaTraderを閉じている間に決済されたものも含みます。リセット時点の価格を1分以内に読み取れない場合は、「エキスパート」タブにその旨を表示し、リセット時点の価格を使わずに、起動した時点のトレードの状態からその日を測ります。
「口座履歴」タブを「全期間」に設定してください。MetaTrader 4がプログラムに見せるのは、そのタブに読み込まれている履歴だけで、このツールでは次の5つがそれを読みます。MetaTraderが閉じている間に始まった1日、そのリセット時点で保有中のトレードが持っていた価格、入金や出金とトレードによる損失の区別、その日のトレード数と連敗、一部決済でチケットが変わったトレードの追跡です。「全期間」が安全な設定ですが、ツールが見る必要のある日数をカバーする期間であれば足ります。MetaTrader 4には、履歴が足りないことをプログラムが知る方法がありません。そのためツールがあなたに修正を求めることはできず、ここはご自身で正しく設定していただく必要があります。
外れないロック
- MetaTraderを再起動してもロックは外れません。ツールを外してもう一度セットしても同じです。ロックはこのMetaTraderの中に口座のログイン番号ごとに保存されるので、ある口座のロックが別の口座にまでついてくることはありません。
- ストラテジーテスターの実行がロックに触れることはありません。MetaTrader 4はテストの実行に、ターミナル自身の保存領域を渡します。ライブのロックが保存されているのもそこです。そのため、テストが書き込むものはすべて専用の領域に入り、各実行の開始時に消去されます。
- パラメーターを編集してもロックは外れません。より厳しい損失上限はすぐに適用されます。より緩い上限は、上限をオフにする場合も含めて、次の日次リセットか、あなたが要求した解除まで待ち、そのことが「エキスパート」タブに表示されます。全体の上限をオフにすると、その変更が反映された時点で、そのロックも一緒に外れます。
- 1日単位の2つのカウント、Watch only(監視のみ)、口座サイズについても同じです。口座サイズでは、全体の上限を口座サイズから測っている間(既定の設定です)は、大きいほうがより厳しい数字です。作動するラインが上がるからです。それ以外のときは、小さいほうがより厳しい数字です。新しい口座サイズが日次の上限に反映されるのは、次のリセットか解除からです。ただし、損失上限が有効化を拒否したサイズを置き換える場合は、この限りではありません。また、どちらかの損失上限がオンの間は、より大きい新しいサイズが1トレードあたりのリスクに反映されるのも、そのときです。トレードごとのルールは、新しい値をすぐに反映します。
- ツールが受け付けられない設定、たとえば作動ライン以上に設定した警告は、ツールを止めます。MetaTraderがツールをチャートから外し、その理由を、既定ではポップアップで、そして常に「エキスパート」タブで伝えます。受け付けられる設定でもう一度セットするまで、上限もルールも働きません。すでにかかっているロックは維持されます。
- 解除は要求であって、スイッチではありません。Ask to clear a tripped lock を true にすると、30分後にまだ true のままであれば解除が有効になります。それより前に戻せば取り消せます。解除が反映されると、設定ダイアログは入力されたとおりに適用されます。口座サイズも含みます。ただし、Daily reset hour と、その日の開始時に読み取る方式の Daily baseline は例外で、次のリセットまで待ちます。そして、すでに起きたことは引き続き数えられます。そのため、実際の損失で作動したロックはすぐにまた作動し、誤った設定で作動したロックは、設定を直せば解除されたままになります。そのあとは false に戻してください。true のままだと再び要求することができず、要求しようとするとその旨を伝えます。
建てたのが誰であれ、すべてのトレードに効くルール
どれも設定するまではオフです。グループごとに独自の動作があり、トレードを決済するか、警告だけにするかを選べます。損切りのないトレードには、損切りを付けることもできます。
- Most one trade may risk, by its stop(損切りで測った、1トレードあたりの最大リスク)。損切りが約定した場合に失う金額を、エントリー価格から測り、口座サイズに対するパーセントで表します。両方の損失上限がオフで口座サイズも入力されていない場合は、残高に対するパーセントです。判定は、トレードが現れたときに行い、その損切りかサイズが変わるたびに改めて行い、MetaTraderが再起動したときやツールがもう一度セットされたときにも新たに行います。損失が出てしまってからではありません。
- 損切り(ストップロス)のないトレード。許容した秒数が過ぎると、リスク上限の位置に損切りを付けて利確はそのまま残すか(これには Most one trade may risk の設定が必要です)、トレードを決済するか、警告します。その損切りを置くはずの位置を価格がすでに越えている場合は、すぐに約定してしまう損切りを置くのではなく、トレードを決済します。
- Symbols allowed(取引を許可する銘柄)。それ以外の銘柄のトレードは、動作の対象になります。リストにある銘柄をブローカーが扱っていない場合は、その銘柄名をポップアップで示してツールを起動させません。そのまま動かして、意図していた銘柄のトレードをすべて決済させることはしません。
- Most open positions, and most lots open in total(保有ポジション数の上限と、保有ロット合計の上限)。動作の対象になるのは最も新しいトレードです。
- Most trades per day, and a stop for the day after a number of losses in a row(1日の最大トレード数と、一定回数の連敗でその日の取引を止める設定)。オーバートレードを防ぐ2つのルールで、スワップと手数料込みで数えます。上限に達したあとに建てられたトレードだけが、動作の対象になります。
すでに建っていたものは決済しません
保有中のトレードがある口座でセットすると、それらのトレードはトレードごとのルールでは警告の対象になるだけで、そのルールで決済されることは決してありません。損失上限は違い、そのこともはっきり伝えます。損失上限は有効になった瞬間から口座のすべてのトレードを対象にします。一部のトレードを無視する上限は、上限とは言えないからです。
夜間にMetaTraderを閉じても、WindowsがPCを再起動しても、どのトレードを統制の対象とするかは変わりません。最初からやり直しになるのは、ツールをチャートから外し、後日もう一度セットしたときだけで、そうなったときは「エキスパート」タブにそう表示されます。
ほかのEAと並べて使うとき
MetaTraderは1つのチャートにつき1つのエキスパートアドバイザを動かします。そのため、これは専用のチャートに置き、ほかのEAはそれぞれのチャートのままにします。ほかのEAのトレードも、ほかのトレードと同じように統制します。損失上限はラインでそれらを決済し、オンにしたルールはそれらにも働きます。例外は設けられないので、意図的に損切りなしでトレードするEAには、そのルールを損切りを付ける設定にしていれば損切りが付きます。その場合は、代わりに警告に設定してください。ストラテジーテスターは一度に1つのプログラムしか実行しないため、ほかのEAと一緒にバックテストすることはできません。
別のプログラムが建て直しを繰り返すとき
MetaTrader 4は、トレードがどこから来たかを記録しません。手動で発注したトレードにMetaTrader 4が付けるマジックナンバーは0で、独自のマジックナンバーを設定しないプログラムが付けるのも0です。そのため、ツールはまさにそのとおりに伝え、それ以上のことは主張しません。したがって、マジックナンバー0でトレードするプログラムは、あなたの手動発注と同じものとして読まれます。そのプログラムが建てたものも変わらず決済され、ログに記録され、決済のたびに通知されますが、止めるべきプログラムとして名指しされることはありません。ほぼすべてのエキスパートアドバイザはマジックナンバーを設定しており、それらはプログラムとして名指しされます。
- ロック中に建てられたトレードは、毎回決済されます。ロックが決済したトレードをプログラムが15分以内に同じ銘柄で建て直すと、ポップアップがそのプログラムをマジックナンバーとコメントで示し、その銘柄のチャート、別のターミナル、シグナルのコピーを確認するよう案内します。MetaTrader 4は、どのエキスパートアドバイザがどのチャートで動いているかを教えてくれないためです。このポップアップは初回と、その後は5回ごとに表示されるので、ループするEAのせいでポップアップに埋もれることはありません。すべての決済は、マジックナンバーも含めてログに記録されます。
- あるいは、MetaTraderを閉じることもできます。口座がノーポジションになってから閉じるので、その中で動いているプログラムは、あなたがもう一度開くまで止まります。スマートフォンや別のターミナルからのトレードは止められず、MetaTraderが閉じている間は、それらを決済するものは何もありません。既定ではオフで、MQL5 VPSでは決して行いません。そこでは、もう一度開くものが何もないからです。閉じたあとに何かを再起動したり元に戻したりはしません。チャートもほかのEAもあなたが残したままで、戻ったときにはロックもかかったままです。
入金、出金、クレジット
- 入金は利益ではなく、余裕を増やすこともありません。口座サイズが入金に合わせて上がることは決してありません。
- 出金は損失として数えません。出金はまず入金額を上回る利益から差し引かれ、次に入金額から差し引かれます。口座サイズが下がるのは、残高を口座サイズより下に押し下げた部分の分だけです。
- クレジットは、測定する有効証拠金から除外されます。
- 入金や出金についてツールが判別できるのは、「口座履歴」タブに読み込まれている範囲までです。これが上で説明した設定です。上限が履歴のために一時停止することはありません。MetaTrader 4には、履歴が欠けていることをプログラムが知る方法がないためです。
誤りがあれば、有効化を拒否します
ある口座で初めて動かしたとき、すでに作動ラインを越えている損失上限は有効になりません。何も決済されず、カードに Not armed(未有効化)と表示され、「エキスパート」タブに理由が表示されます。その損失がラインの内側に戻った時点で有効になり、日次の上限は遅くとも次の日次リセットで有効になります。それまでは口座を保護しません。もう一方の上限は通常どおり有効になります。以前に動かしたことのある口座では、ツールが止まっていた間に出た損失もそのまま数えられ、もう一度セットされるとすぐにそれに基づいて動作します。全体の上限がオンで、口座サイズから測る設定(既定)の間は、ゼロを1つ多く入力した口座サイズは拒否され、カードに Check the account size(口座サイズを確認)と表示されます。ただし、ロックがかかっている場合は別です。拒否が続いている間は、どちらの上限も有効になりません。ロックの解除によって適用されたそうしたサイズは拒否されません。ロックがまた作動し、訂正した数字は次の解除で反映されます。全体の上限がトレーリングのときやオフのときは、ゼロが1つ多くても検出されず、そのサイズが反映されると、パーセントで設定したすべての上限が10倍に広がります。どちらかの損失上限がオンの間は、カードに測定の基準にしている口座サイズが表示されるので、ゼロが1つ多いサイズは見ればわかります。
行ったことすべての記録
- 口座のログインごとに1つのCSVファイルを、MQL4\Files フォルダに書き出します。内容は、サーバー時刻とローカル時刻、ルール、チケット、銘柄、売買の方向、数量、マジックナンバー、価格、ブローカーの応答コードと結果、そしてメモです。応答コードはMetaTrader 4自身のエラー番号で、「エキスパート」タブに表示されるものと同じです。成功した呼び出しでは空欄になります。記録するのはツールが行ったことで、警告は「エキスパート」タブに残ります。
- 1行ごとに、ファイルを開いて書き込み、閉じるので、クラッシュしても、すでに書き込まれたものは何も失われません。
- Excelなど別のプログラムがファイルを開いたままにしている場合、行はその隣のファイルで待機し、ファイルが空いた時点で順番どおりに書き込まれます。先にMetaTraderが閉じた場合でも、行は保持され、次にツールが起動したときに書き込まれます。
トレードは1つずつ独立しています
MetaTrader 4の口座は注文ベースなので、ネッティングを考える必要はありません。各トレードはそれ自身のサイズと時刻で判定され、ルールが決済するのは違反したそのトレードです。1回で決済できないほど大きいトレードは、拒否されるのではなく、分割して決済されます。
一部決済は、誰が行ったものでも新しいチケットを残します。これはこのツールではなく、MetaTrader 4によるものです。決済した部分が元のチケットを持ち、残りは新しいチケットで戻ってきて、そこにはサーバー自身のコメントが付きます。ツールはそのつながりをたどるので、手動で一部決済したトレードも、Most trades opened per day(1日に建てるトレード数の上限)では1つのトレード、Stop for the day after this many losses in a row(指定回数の連敗でその日を停止)では1つの結果のままです。目に見えるのは、アクションログでチケット番号が変わることと、トレードに入力したコメントがサーバーのコメントに置き換わることです。
Watch only(監視のみ)
1つの設定で、すべてのルールを警告に変えられます。通知はしますが何も決済せず、カードの表示は Reached(到達)になり、Locked(ロック中)にはなりません。動作中のツールでオンにすると、緩める変更として扱われます。トレードごとのルールはすぐに切り替わりますが、損失上限と1日単位のカウントは次の日次リセットまで決済を続けます。切り替えたあとに初めて達した上限も含みます。
カード
- Room before it acts(作動までの余裕)。近いほうの上限までの余裕を、口座通貨で示します。見ておくべき数字はこれです。
- 日次と全体の損失。それぞれにバー、作動する位置の印、状態の表示があります。状態は Clear(問題なし)、Near the limit(上限に接近)、Reached(到達)、Locked(ロック中)、Not armed(未有効化)のいずれかです。
- 口座サイズと、その出どころ。as typed(入力どおり)、from the balance(残高から)、after a withdrawal(出金後)のいずれかです。
- 今日のトレード数、連敗数、保有ポジション数、保有ロット数。オンにしたルールについて表示します。
- 最後に行ったことと、その理由。
- どこにでもドラッグでき、その場に固定することも、パラメーターで四隅のどこかに固定することもできます。
通知は、サウンド付きのポップアップ、MetaTraderアプリへのプッシュ通知、メールで届き、それぞれ個別にオン・オフできます。プッシュ通知とメールは、先にMetaTrader自身のオプションで設定しておく必要があります。
MT5とMT4
両方のプラットフォームに対応し、1つのファイルからビルドしています。バージョンも同じ、設定も名前と既定値まで同じ、カードも同じ、ルールも同じです。MetaTrader 4の設定ダイアログには、MetaTrader 5では表示されない区切りの行が、グループの間に加わります。この出品はMetaTrader 4版で、MetaTrader 4そのものが違いを生む点については、ご自身で探していただくのではなく、このページで説明しています。トレードを誰が建てたかについて何を記録するか、一部決済のあとに何が残るか、そしてプログラムにどれだけの履歴を渡すかです。
デモについて、率直に
このマーケットでは、有料製品のデモはストラテジーテスターでしか動きません。そこでは、トレードを発注しないツールには見せられるものが何もありません。そのためビジュアルモードのテストでは、ツールが自分でトレードを建てます。1場面ずつ、それぞれがオンにしたルールに違反するように作られていて、そのルールが働く様子をカードが示します。初期状態でオンになっているのは2つの損失上限だけなので、見たいルールは開始前にオンにしてください。ツールが建てるトレードには、「TFX demo」で始まるコメントが付きます。損失上限が作動したあとは、ロック中にもう1つトレードを建てるので、それがすぐに決済される様子も見られます。MetaTrader 4のテスターはチャートの銘柄でしか取引しないため、許可銘柄のルールが働くのを見るには、その銘柄をリストから外してください。そのうえで、ほかの場面はリストなしの2回目のテストで実行してください。ほかの場面もその銘柄で取引するので、その銘柄がリストから外れている間はスキップされます。
テスターでは通知は一切配信されません。代わりに、カードと「操作履歴」がすべてのイベントを示します。MetaTrader 4のストラテジーテスターはプログラムのタイマーを一切動かさないため、テストではデモもすべてのルールもティックに合わせて進みます。ライブのチャートでは1秒ごとのタイマーも動くので、ティックとティックの間にルールが動作することもあります。テスターでだけ行い、ほかでは一切行わないことが1つあります:入金額2000未満の「ビジュアルモードなし」の実行では、このマーケットの自動チェックが取引操作を確認できるように最小ロットのサンプルトレードを発注し、その実行では上限もルールも一切働きません。そのことは「操作履歴」に表示されます。少額の入金額で、ビジュアルモードを使わないバックテストをご自身で実行する前に、知っておく価値があります。同じ条件だからです。ビジュアルモードの実行がデモで、それ以外の実行ではすべて上限とルールが働きます。ストラテジーテスターの外で、トレードを建てることは決してありません。
このツールではないもの
トレードマネージャーではありません。建値移動も、トレーリングストップも、一部利確も、エントリーも、シグナルもありません。それらを行うのは当方の Trade Manager(MT5用の製品です)で、対象は Trade Manager を置いたチャートの銘柄のトレードです。こちらは1つのチャートから口座のすべてのトレードを統制し、トレードに対して行うことは、決済するか、損切りを付けるか、その2つだけです。
監視するだけのツールでもありません。2つの損失上限を表示し、トレードには一切触れない、MT5用の無料のパネルも公開しています。こちらは、その上限に基づいて動作します。
知っておくとよいこと
- チャート1つに置いてください。1つで口座全体を統制します。2つ目を置くと、同じトレードに対して動作することになります。
- プログラムや銘柄を損失上限の対象から外す方法はありません。口座にあるトレードは、すべて損失上限の対象です。
- 日次リセットの時刻は変更できます。変更で1日が長くなることはあっても、短くなることはありません。
- リセットの時刻はサーバー時間で、MetaTrader 4はプログラムにサーバーの時計そのものを渡しません。ツールは価格が届くたびにサーバーの時計とあなたのコンピューターの時計の差を取り、それをもとに動くので、価格と価格の間でも、週末をまたいでも、1日は切り替わります。
必要なときは、私が答えます
コメント欄かMQL5のメッセージで質問していただければ、サポート窓口ではなく私が返信します。壊れているところがあれば知りたいですし、不具合の報告には回避策ではなく修正で応えます。
ご自身の上限は、もう分かっているはずです。このツールはそれを守らせ、何をしたかを正確に伝えます。
