ラインブレイクエントリー&エグジットEA|hjEA_LineBreak105

 水平ライン、トレンドラインでエントリー、エグジットするインジケーター『hjEA_LineBreak104 』 に時間制限を追加して欲しい、との依頼があり、対応しました。インジケーター名は、hjEA_LineBreak105

時間制限は、日単位での時間制限と時間帯制限、曜日時間での制限を考慮してみました。制限時間に達した場合、保有しているポジションがあれば決済するかしないか、選択可能の機能もつけてみました。

どのような使い勝手がいいか、わからないので、取り合えず作成した感あり、です。何かお気づきの点や改善・追加点などございましたらコメントください。

 なお、このEAは、1回動作、一度決済すると停止します。決済しても次のチャンスがきたら再度エントリーするEAではありませんのでご注意ください。

 時間制限でEAを停止する場合、セットした通貨ペアのすべてのポジションをクローズする仕様にしていました。余計なお世話をやめ、このEAでエントリーしたポジションだけクローズするように仕様変更しました。ダウンロード項を参照ください。

hjEA_LineBreak105仕様

  • 名前指定したラインでエントリー、エグジットする EA
    • ラインタッチ、または、終値確定で エントリー
    • エントリーラインは、水平ラインとトレンドライン
  • 決済は次の3タイプ
    • ライン
    • テイクプロフィット
    • トレーリングストップ
    • EA停止時間
  • 決済時の損益pipsを通知
  • 処理実行通知(トレーリングストップの通知なし)
    • アラート
    • アラートWindow
    • メール
    • プッシュ通知
  • 決済後、EA停止(次のエントリーなし)
    エントリー → 決済、で、このEAの動作は終了。
  • 稼働時間制限
    • 時間指定
    • 時間帯指定
    • 曜日と時間を指定
  • 稼働時間制限時間に達した際、保有ポジションの決済・非決済を選択可
  • 再稼働方法:次の3方法のいづれかで再稼働可能
    • EAのパラメーター設定Window で OK ボタンをクリック
    • 時間足を変更(一例) 
      • M5で取引していて、別の時間足で取引:M5 → M15
      • M5で取引していて、再度M5で取引:M5 → M15 → M5
    • EA削除、再設定
  • (注)再稼働の時間足変更は、ツール → オプション → エキスパートアドバイザタブ内の
    チャートの通貨ペアまたは時間足が変更されたら自動売買をストップする」にチェックが入っていない場合に動作可能
    (下記のEA再稼働時の注意点を参照)

パラメーター

  • アラートWindow
    • true:ポップアップwindow表示
    • false:ポップアップwindow非表示
  •  アラート
    • true:約定を音で知らせる
    • false:知らせない
  • アラート音ファイル名
    • 約定時のアラート音ファイル名を指定
  • メール
    • true:約定をメールで知らせる
    • false:知らせない
  • メールタイトル
    • メールのタイトル文字列を指定
  • プッシュ通知
    • true:通知する
    • false:通知しない
  • 停止時間選択:4つから選択
    • 時間制限なし
    • 時間:設定時間(停止時間)に停止
    • 時間帯:設定時間帯は停止
    • 曜日時間:設定曜日時間に停止。停止する時間は、停止時間。
  • 停止時ポジションClose
    • true:ポジションをClose(決済)
    • false:Closeしない
  • 決済方法選択
    • ライン
    • テイクプロフィット
    • トレーリングストップ
  • 取引ロット数
    • エントリーロット数を指定 
  • マジックNo.
    • この EA で管理するポジション区分番号
    • 他の EA と番号を同一にしない
  • ラインタッチでエントリー
    • true:現在足がエントリーラインにタッチ(抜け)したらエントリー
      • (short)現在足現在値<=エントリーライン
      • (short)現在足高値 > エントリーライン
      • (long) 現在足現在値>=エントリーライン
      • (long) 現在足安値 < エントリーライン
    • false:確定足の終値がエントリーラインを抜けたらエントリー
      • (short)確定足の終値<=エントリーライン
      • (short)確定足の高値> エントリーライン
      • (long) 確定足の終値>=エントリーライン
      • (long) 確定足の安値< エントリーライン
  • ラインタッチで決済
    • true:現在足がエントリーラインにタッチ(抜け)したらエントリー
    • false:確定足の終値がエントリーラインを抜けたらエントリー
  • エントリーライン名:ロング
    • ロングエントリーするライン名を指定
  • エントリーライン名:ショート
    • ショートエントリーするライン名を指定
  • 決済ライン名:ロング
    • ロングポジションを決済するライン名:利食い側
  • 決済ライン名:ショート
    • ショートポジションを決済するライン名:利食い側
  • ストップロス:損切
    • ストップロスの大きさを pips 指定
    • すべての決済方法でセットします
  • テイクプロフィット:利確
    • 決済方法:テイクプロフィットで指定するテイクプロフィット値を pips 指定
    • 決済方法:ライン、また、トレーリングストップでは、反応しない
  • トレーリングストップ値
    • 決済方法:トレーリングストップで使用するトレーリングストップ幅を pips 指定
  • ブレークイーブン
    • true:ブレークイーブン処理を実行する
    • false:実行しない
  • ブレークイーブンpips
    • ブレークイーブンを実行する利益幅を pips 指定

使 用 例

 すべての動作を例示する画像は準備することができませんでした。異常動作を見つけた方は、コメント投稿、よろしくお願いします。 なお、停止時間例のチャート内表示アナログ時計は、EAで表示したものではありません。

停止時間:時間

パラメーターは、、、

停止時間:時間でEA停止試行パラメーター

 7:40に停止するようにセット。チャート例は、7:40前は稼働中、7:40を過ぎると停止する例。毎日停止するので、その都度、再稼働が必要。午前1時に停止する設定だと、翌日朝稼働させたい時間に再稼働する必要があります。
このような条件だと、時間帯停止設定した方が便利だと思います。

停止時間:時間帯

パラメーターは、、、

停止時間:時間帯試行パラメーター

 停止時間、1:00~7:35にセット。チャート例は、7:35分前は停止、7:35を過ぎると稼働する例です。なお、1:00になったらEAは停止します。

停止時間:曜日時間

パラメーターは、、、

曜日時間でEA停止試行パラメーター

 曜日時間で停止するのを確認するのに、水曜日の7:45にEAが停止するように設定。
チャート例は、7:45を過ぎてtickデータを受信したときにEAが停止する例。

EA稼働中

曜日時間停止:水曜日、7:45で停止

決済方法:ライン

パラメーターは、、、

ライン決済試行パラメーター

スタートからエントリー

通知:アラートWindow、メールの順に。(プッシュ通知撮り忘れ)

決済:ラインタッチで決済

通知:アラートWindow、メールの順に。(プッシュ通知、撮り忘れ)

決済方法:テイクプロフィット

 パラメーターは、、、

テイクプロフィット試行パラメーター

スタートからエントリー

通知:アラートWindow、メール、プッシュ通知の順に。

ブレークイーブン

通知:アラートWindow、メール、プッシュ通知の順に。

決済:ブレークイーブンで移動したストップロスにかかりました。

通知:アラートWindow、メール、プッシュ通知の順に。

決済方法:トレーリングストップ

 パラメーターは、、、

トレーリングストップ試行パラメーター

エントリー:exshortラインは使わないが、MTF分析するとここまで行きそう・・・

通知:アラートWindow、メール、プッシュ通知の順に。

ブレークイーブン:打ちっ放しで外出してて、タイミングあわず、トレーリングストップも動いています。こんな感じで進むとイメージをつかんでいただければ幸いです。
また、ブレークイーブンの通知はありますが、トレーリングストップの通知はありません。現方法では、通知だらけになってしまいます。いかにタイミングを省くか考えるのが難しいので、現バージョンではトレーリングストップの通知はありません。

通知:アラートWindow、メール、プッシュ通知の順に。

トレーリングストップ進捗

決済:ストップラインに戻ってきた。。。

通知:アラートWindow、メール、プッシュ通知の順に。

 余談ですが、、、その後・・・

 当初の目標値まで届かなかった・・・ひとつ前の安値・赤点線ライン(H1ではなくM15の安値)で戻る可能性も考えておかないとね。

EA再稼働時の注意点

 右肩のEA稼働マーク、口がへの字になってます。これはEAが停止している状況を表しています。

EA停止は、設定によりますが、次の状況下で起こります。

  • 停電や熱暴走他で、PCの電源OFF
  • MT4の再起動
  • 通貨ペア変更
  • 時間足変更
  • 口座変更
  • プロファイル変更

 事例チャートは、ニコちゃんマークが口への字マークになった事例。昨日熱暴走して電源落ちました。かなり焦った・・・

再稼働時の確認と再稼働

 EA稼働文字が『Run』で、ニコちゃんマークがへの字口。この状態はEAは停止しています。プログラムで制御したかったのですが、方法がわからなかった。。。

この場合の確認と再稼働は、、、

  • ツールバーの自動売買ボタンが赤マーク → クリックして緑マーク
  • EAの自動売買チェックがない → チェック

ツールバー自動売買ボタン:EA停止状態

ツールバー自動売買ボタン:EA稼働中

 ボタンをクリックすると、停止中、稼働中が切り替わります。停止中は、自動売買文字の左アイコンに赤マークが出、ボタンは引っ込んでいません。稼働中は、自動売買2文字の左アイコンに緑マークが出、ボタンは押されたように引っ込んでいます。

EA自動売買チェックマーク:停止中

赤矢印、『自動売買を許可する』にチェックし、OKボタンをクリックすると稼働します。
このチェックボックスとツールバーの自動売買ボタン、両方ともONでEAは稼働します。

このWindowは、チャート右肩のニコちゃんマークをクリックしたらすぐ表示されます。素早く操作したい場合に便利です。

時間足切り替えでEA再稼働

 時間足を変更したらEAが停止する、停止しない、の設定は、オプションWindowのエキスパートアドバイザタブの設定に影響を受けます。
該当Windowを表示するには、
ツール → オプション → エキスパートタブ、と進みます。

チェック無し
チェック有り

 赤矢印『チャートの通貨ぺアまたは時間足が変更されたら自動売買をストップする』にチェックが入っていると、時間足を変更したら、EAは停止します。

 一度停止したら、決済が終わってることがほとんどだと思います。EAの再稼働は、パラメーターを変更、または確認し、OKボタンを押すことがほとんどだと思いますので、時間足変更による再稼働は考えなくていいかもしれないです。

ダウンロード

 興味ある方は、こちらからダウンロードしてください。使い勝手や改善点・追加仕様など、浮かびましたらコメントください。

自分勝手に、時間制限でEAを終了させた時には、同じ通貨ペアのポジションすべてクローズする仕様にしていました。気になったので、このEAでエントリーしたポジションのみクローズするように変更しました。

時間制限でEAを終了させる時には、セットしてある通貨ペアのすべてのポジションをクローズするのが当たり前だと思って作成していたのですが、複数のEAを動作テストしているとさすがに不便を感じてしまいました。

2019/8/26、7:30以前にダウンロードされた方、再度ダウンロードして入れ替えてください。

スポンサーリンク
FX
老後安泰ストレスフリー、毎日笑顔でルンルン気分

コメント