任意のラインで全ポジションを決済するツール
複数のポジションを任意のラインで決済したい場合、損益がどのくらいになるかを計算するのは結構手間がかかります。
例えば下のチャートでは、ロット数の異なるポジションを全部で5つ保有していますが、①のあたりまで下げたら全部決済したいような場合、どのくらいの利益になるのかを計算するのは結構面倒です。
(チャート1)
ということで、任意に引いたラインの位置での損益を表示し、レートがラインに到達した瞬間に当該チャートの通貨ペアの全てのポジションを自動決済するEA、
Line_All_Close_EA
を作ってみました。
(チャート2)
どんな場面で使えるのか。
例えば、「宙・鉄火場の激子さん」などのナンピンEAなどを運用していて、レンジ相場の継続や相場の反転が予想される場合、決済ポイントが早すぎると思われることがあります。
(チャート3)
上のチャートの実際のトレードでは、ナンピンEAによる自動決済で利益は1,237円にとどまっていますが、もし①のあたりまでホールドしていたとすれば利益は6,000円強まで伸びたはずです。
(たらればですが・・・)
その後も相場は大きく下落したのでもしホールドを継続していれば更に大きな利益になったはずです。(たらればの極みですが・・・)
(チャート4)
こんな場面では、ナンピンEAを一旦停止してLine_All_Close_EAを稼働し、想定される利益を確認しながら決済位置をナンピンEAの決済位置よりも利益が出る側に置き換え、更にナンピンEAのトレーリングストップで利益を伸ばすことが可能となります。
適用の手順
- ナンピンEAの停止
(チャート1)から相場が利益の乗る方向に進むことを確信したら、ナンピンEAが決済する(チャート3)の手前でナンピンEAを停止する。 - Line_All_Close_EAの稼働
Line_All_Close_EAを稼働させ、利確ライン及び損切ラインを設定する。
なお、利確ライン及び損切ラインはあらかじめ設定しておいてもかまいません。
あとは放置するか、もしくは状況を見てラインを移動してトレーリングストップ等を行います。
EAの使い方
チャート表示について
EAをチャートに適用すると右上に3つのボタンが表示されます。
トップラインボタンを押すと現在値より30pips上にトップラインが引かれ、その位置での損益が表示されます。
ボトムラインボタンを押すと現在値より30pips下にボトムラインが引かれ、その位置での損益が表示されます。
それぞれのラインは自由に移動することができます。
レートがそれぞれのラインに達した際に、当該通貨ペアの全てのポジションが決済されます。
ただし、各ポジションの平均利益がMPP(Minimum Profit Pips)に表示された数値に満たない場合は決済されません。
これは想定しない決済を防ぐためです。
MPPはパラメーターで任意に設定することができます。
パラメータについて
・Slippage
スリップを許容する範囲です。
・Minimum_Profit_Pips
各ポジションの最小の利(pips)です。
ここで設定した利益を満たさない場合は決済されません。
・TOP_LINE_COLOR
トップラインの色です。
・BOT_LINE_COLOR
ボトムラインの色です。
ダウンロード
今回作成した、Line_All_Close_EAはメルマガ読者専用ルームにアップしておきますので興味のある方はダウンロードしてご利用くださいね。
ご注意
ご利用は動作確認を十分行ったうえで自己責任でお願いいたします。
コメント
Michiさん
こんばんは。
このサイトには興味深いものがたくさんあって楽しみです。
Line_ALL_Close_EA.ex4 を試してみましたが、自分の環境では
トップライン、ボトムラインを通過しても決済されません。
DLLの使用、自動売買は許可してあり、EAは一応作動しています。
原因として考えられることと解決策を教えていただけると
ありがたいです。
現在、EXNESSのデモ口座でBTCUSDでテストしています。
土日でも動いているものが他にないので、通常の通貨では
試していません。
Kiwaさん、おはようございます。
後ほど確認して改めてお返事しますのですみませんがもうしばらくお待ちくださいm(__)m
Kiwaさん、おはようございます。
ご質問の件、ボクの環境(gemforex EURUSD)で試してみたところ正常に動作するようでした。
ビットコインはボクの環境では確認することができないのですが、プログラム的に通貨の扱いが異なると思われるので正常に動作しないかもしれません。
すみませんがドル円とかユーロドルとかで動作の確認をしていただくことはできますか?
Michiさん
お世話になります。
ドル円とユーロドルを試しましたが、やはり状況は同じで、
トップライン、ボトムラインを通過しても決済されません。
BigbossとThreeTraderのMT4を使ってみても同じでした。
念のためお尋ねしますが、決済が起きるのは、
トップラインを下から上に抜けた場合、
ボトムラインを上から下に抜けた場合、
と考えて合っていますか?
また、決済が起きるのは、売りと買いの両方のポジション
でしょうか、あるいは片方だけでしょうか?
Kiwa
Kiwaさん、おはようございます。
正常に動作しないとのこと、ご不便をおかけしております。
以下、ご質問の件です。
> 決済が起きるのは、
> トップラインを下から上に抜けた場合、
> ボトムラインを上から下に抜けた場合、
> と考えて合っていますか?
そのような動作をするようにしています。
> 決済が起きるのは、売りと買いの両方のポジション
> でしょうか、あるいは片方だけでしょうか?
両方のポジションを決済するようにしています。
動作については以下の動画を参考にしてみてください。
(ただいま音声を入れられない状況なので無音でごめんなさい)
https://youtu.be/4_qLQkwtQwg
もしかしたら利益がMPP(Minimum Profit Pips)デフォルトで0.1(PIPS)以下なので決済しないのかもしれませんね。
動画ではMPPを-20pipsにしてます。
Michiさん
お返事ありがとうございます。
何度もテストを繰り返して、うまく決済される場合と
何も起きない場合があることがわかりました。
BTCUSDでも正常に決済される場合があり、
「BTCUSDだけうまくいかない」というわけではない
ようです。
どういう時に失敗するのか、まだ判明しませんが、
「トップライン、ボトムラインをすべてのポジション
の外側に置く」
と正常動作して、そうでなければ動作しないという
可能性はないですか?
値動きが非常に遅い場合、じれったくて待っていられず、
トップライン、ボトムラインを現在価格のすぐ近くまで
移動するとうまくいかないような気がします。
また、このEAは、売値と買値のどちらに反応するように
作られていますか? スプレッドが広い場合に正常動作
しないことが多いように感じます。
しばらくテストを続けます。
Kiwaさん、こんにちは。
ご質問の件についてXMで確認してみました。
https://youtu.be/8D60D6v6Xrs
>「トップライン、ボトムラインをすべてのポジション
>の外側に置く」
>と正常動作して、そうでなければ動作しないという
>可能性はないですか?
動画をご覧いただければわかるとおり、そのような可能性はないと思われます。
(音声いれられなくてすみません)
> トップライン、ボトムラインを現在価格のすぐ近くまで
> 移動するとうまくいかないような気がします。
動画の通り、1分足でラインを現在価格のすぐ近くまで移動してみましたがボクの環境では正常に動作しているように見えます。
> また、このEAは、売値と買値のどちらに反応するように
> 作られていますか?
MT4の現在値とほぼ同じ売値(BID)で決済するようにしています。
ちなみにMPPはいくつで動作させていますか?
また正常に動作しなかった際のキャプチャをアップしていただければ何かわかるかもしれないのでよろしくお願いします。
マジックナンバーがないので、同一画面に2種類のペア同士(2個のチャート)を、それぞれEAを作動した場合、決済はどうなりますか?
totoさん、こんにちは。
ご質問の件、決済はEAを適用した通貨ペア毎に行われるようにしていたはずだと思います。
ぜひデモ口座などで確認してみてくださいね。