複数ライン、タッチorクロス確定エントリー|タッチエグジットEA

複数ラインタッチorクロス確定エントリー|タッチエグジットEA|hjEA_LineBreakEntry

 水平ラインとトレンドラインへタッチ、またはクロス確定でエントリー、エントリーと同時に損切 stoploss と利確 takeprofit をセット。エグジットは、stoploss または takeprofit にタッチ時点。ブレークイーブンとトレーリングストップ設定可能。

 複数ラインでのエントリーとエグジットが可能。
ブレークイーブンとトレーリングストップは、指定した全ライン対象。

スポンサーリンク

 必ずデモ口座で動きを把握してくださいね。今週、国内口座のひとつ、FXTF(ゴールデンウェイ・ジャパン株式会社)でも試行していましたが、今のところ仕様通りに動作しています。
(FXTFは、今、口座開設してもEAは動作しません)

更新履歴

初版。


 MT4は、FX業者に関わらず同じ動作をすると思っていますが、読者からの連絡で違和感を感じることがあります。
私がインジケーターやEAを作成し、検証している主なMT4業者二社を以下に紹介します。
なお、私の利用している国内FX業者は、この二社と同動作です。

プライバシーポリシー

hjEA_LineBreakEntry 仕様

 水平ライン、トレンドラインにタッチ、またはクロス確定でエントリー。エグジットはエントリー時に引いたラインにタッチした時点。

ラインは複数本指定可能。パラメーターのライン名に記載した文字列がラインの接頭文字列となります。

 ストップロスとリミット(テイクプロフィット)は、ストップレベルより大きい値に設定することを必須条件にしています。
該当するラインは、エグジット(決済)すると消えますので、long で決済したら、再度 long というラインをセットすればエントリーします。なお、該当するラインが存在する限り、エントリー・エグジットします。


実際に引いたラインにライン名をつける際、接頭語は統一してください。
例えば、パラメーターでライン名を次のように指定した場合、、、

  • パラメーター longName = long
    • 実際のライン名:long、long1、long2、long100、longline、etc
  • パラメーター shortName = short
    • 実際のライン名:short、short1、short2、short111、shortline、etc

 パラメーターでセットした名前の前に文字列追加した場合、また、パラメーターでセットした名前とライン名接頭文字列が不一致だとエントリーラインとして認識しませんのでご注意ください。


  • エントリー:二択
    • ラインタッチ時
    • ラインクロス確定時
  • エグジット
    • エントリー時にストップロス(損切 stopLoss)と
      リミット(利食 takeProfit)をセット
    • トレーリングストップ:trailingStop = true 時
    • ブレークイーブン:breakEven = true 時
  • ストップロス(損切 stopLoss)
    • 値 > ストップレベル
    • 値 ≦ ストップレベル:EA動作停止
  • リミット(利食 takeProfit)
    • 値 > ストップレベル
    • 値 ≦ ストップレベル:EA動作停止
  • トレーリングストップ
    • 値 > ストップレベル
    • 値 ≦ ストップレベル:EA動作停止
    • リミットライン(takeProfit ライン)は、存在していると機能します
      • リミットラインが不要な場合、該当するリミットラインを消去
      • 利食値を増減したい場合、リミットラインを移動させる
  • ブレークイーブン
    • 値 > ストップレベル
    • 値 ≦ ストップレベル:EA動作停止

パラメーター

 すべて、英数字表記にしようとしてて、うっかり日本語残ってました。
この部分、動画では日本語ですが、ダウンロードファイルは英文字に変更しています。

hjEA_LineBreakEntry|パラメーター名変更前
パラメーター名変更前
hjEA_LineBreakEntry|パラメーター名変更後
パラメーター名変更後
hjEA_LineBreakEntry|パラメーター entryType 蘭変更項目
entyrType 変更項目
  • lots
    • 注文ロット数
  • entryType:二択
    • touch:ラインタッチでエントリー
    • cross:ラインクロス確定でエントリー
  • longName
    • long:Buy 用のライン名(接頭文字列)
  • shortName
    • short:Sell 用のライン名(接頭文字列)
  • stopLoss
    • 損切を pips 指定
  • takeProfit
    • 利確を pips 指定
  • trailingStop
    • true:トレーリングストップ実行
    • false:実行しない
  • breakEven
    • true:ブレークイーブン実行
    • false:実行しない
  • trailingStopPips
    • トレーリングストップ幅を pips 指定
  • breakEvenPips
    • ブレークイーブン実行する 利益側 pips を指定

使用例

エントリーラインセット方法

 事例は、トレンドラインです。

1)トレンドラインを引く

hjEA_LineBreakEntry|トレンドライン描画

2)トレンドラインのプロパティをオープン

hjEA_LineBreakEntry|トレンドラインプロパティオープン

3)トレンドラインの名前を変更

hjEA_LineBreakEntry|トレンドライン名前変更前
ライン名変更前
hjEA_LineBreakEntry|トレンドライン名前変更後
ライン名変更後

ライン名の重複は不可。重複したら警告が表示されます。

hjEA_LineBreakEntry|ライン名重複時の警告
ライン名重複警告

エントリー

 上記ラインセット事例の後、ラインタッチでエントリーされた状態。

hjEA_LineBreakEntry|トレンドラインタッチエントリー

複数本セットエントリーエグジット事例

 事例のように近くにセットすることはないと思います。
事例作成のため、適当に本数増やしていますので、まずはデモ口座でいろいろ試行してください。

ブレークイーブン事例

 ブレークイーブン実行前後のチャート例。ストップロスラインがエントリー価格に移動しています。

hjEA_LineBreakEntry|ブレークイーブン実行前
ブレークイーブン実行前
hjEA_LineBreakEntry|ブレークイーブン実行後
ブレークイーブン実行後

トレーリングストップ事例

 トレンドライン2本、ショート・ロングそれぞれ1本。水平ライン、ショート1本で事例作成。

hjEA_LineBreakEntry|トレンドラインショート・ロング各1本、水平ラインショート1本
エントリーライン描画
hjEA_LineBreakEntry|トレンドラインショート、水平ラインショートエントリー
ショート2本エントリー
hjEA_LineBreakEntry|ショート2本、ロング1本|トレーリングストップスタート前
ショート2本エントリー後、ロング1本エントリー
hjEA_LineBreakEntry|ロング、トレーリングストップ稼働
ショート2本ストップロス、ロングのみトレーリングストップ稼働中

動画事例

今 後

 トレーリングストップとブレークイーブンのチェックタイミング、現状は、tick 単位。指定秒数間隔、ローソク足確定間隔を追加するかどうか思案中。

使用中にバグを見つけましたら、遠慮なくコメントしてください。再現できた場合、できるだけ早く修正します。

イラスト、コーヒー

コメント