水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジット、パネル版EA

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA

 描画した水平ライン、またはトレンドラインへのタッチorブレイク確定でエントリー、エグジットは、ラインへのタッチまたはブレイク確定・pips 指定、トレーリングストップが選択可能なMT4 EA『hjEA_LineEntryExit』。

その他機能として、ブレークイーブン、エントリー前のEA停止、残り時間到達でEA停止・ポジションクローズあり。

 前バージョン 1.09 では、パネルの上下が長く、PC環境によりますが画面上下方向に2つから3つ以上のチャートを表示するとパネルが最小化、元のサイズに戻すとパネル下側が切れる現象が見られました。少しですがパネルの上下サイズを小さくしてこれらの現象を避けられるようにしました。

でも、パネルの上下サイズを自由に変更できないので、根本的対策にはなっていないです。パネル全体が表示できる環境下でしか使用できないです。都度、広げて縮めることができる方ならいいけど・・・

 最小化残り時間EA停止・ポジションクローズは、ひょっとしたら日時指定の方が使い勝手よいのでは?と勝手に判断しています。ご提案者の方には恐縮なんですが、今後変更するかもしれません。

スポンサーリンク

届いている異常動作

 異常動作の連絡が届いており、いろいろ検証しているのですが、異常動作の再現ができず、しっかりとした回答ができていない状況です。その後の検証で、当方で再現できず原因不明のご連絡は削除しました。

以下、届いている異常動作

  • 複数チャート使用時、パネルの残像が残る、何かの処理をするとどんどん増える
    • 今確認できていること
      • 新規チャートを増やし、EAをセットした場合、再現できず
      • 定型チャートとして保存して、新規チャートに適用した場合、パネルのみ表示され、EAはセットされない
      • 以上より、何かの処理をするとどんどん増える現象が把握できませんでした。

 利用される方は、必ずデモ口座で動作確認してくださいね。私自身、検証しているつもりなんですが、ヌケがある可能性は否めません。

私の主な検証口座:GemForex MT4 デモ口座

履 歴

  • Ver. 1.11:2022.11.11
    • バグフィックス
      • 次足に進んでもトレンドライン値が変わらない
    • 使用者の方からの異常動作連絡
      Sさん、ありがとうございました。
  • Ver. 1.10
    • パネルサイズ変更、条件項目名変更

 以前のバージョンは、『水平ライン・トレンドラインタッチorブレイク確定エントリー&決済EAまとめ』を参照ください。

 途中からパネル化したこと、前バージョンを記録として残そうとしていたことから、各バージョン、ダウンロード可能としていましたが、バグフィックス前のバージョンも残していることになり、利用者の方に???と感じさせていました。

よって、過去バージョンのダウンロードは中止し、過去バージョンの記事には最新版へのリンクをはりました。


 MT4は、FX業者に関わらず同じ動作をすると思っていますが、読者からの連絡で違和感を感じることがあります。私がインジケーターやEAを作成し、検証している主なMT4業者二社を以下に紹介します。
現在は、主にGemForexのデモ口座で作成・検証 → 
XMのデモ口座で検証、自分のルールに活用できそうだったらリアル口座で使用、と進めています。なお、私の利用している国内FX業者は、この二社と同動作です。

プライバシーポリシー

hjEA_LineEntryExit 仕様

 引いたラインにエントリー、エグジット、EAエントリー前停止の役割を持たすために、それぞれ個別に名称を指定。それぞれの役割のラインにラインにタッチまたはブレイク確定で、役割を実行するEA。

 ポジション保有前に予想と反対方向に価格が動き、ここまできたらEA停止させるラインの指定が可能。

 ポジション保有後にブレークイーブン、トレーリングストップ、EA稼働残り時間の指定が可能。

  • EA稼働・停止ボタン
    • EA停止状態:EA off 灰色表示
    • EA稼働状態:EA on 青色表示
    • 自動売買ボタン制御しないので、他のEAへの影響はありません。
    • パラメーター、時間足、通貨ペアを変更すると EA off になります。
      変更した瞬間にエントリー、エグジットが実行される状況を避けるようにしています。
    • パラメーター:EA稼働残り時間:整数を指定した場合、指定時間経過後にEAを停止します。
      価格データ受け取り時に条件判断しますので、指定時間経過後の最初に価格データを受信した時点でEA停止となります。
  • エントリー
    • 水平ラインとトレンドライン
      • ライン名称指定
      • Long・short 個別指定
      • 設定ラインにタッチまたは足クロス確定でエントリー
      • 通貨ぺア変更で消去
        ラインをセットしていた通貨ぺアに戻っても復元しない
  • エグジット(利確と決済)
    • 利確 T/P 、損切 S/L をラインで指定
      • 対応ライン:水平ライン、トレンドライン
      • T/P・S/L ラインを Long・shortそれぞれ個別にライン名を指定
      • T/P・S/L ラインに対し、タッチまたは足クロス確定でエグジット
      • 通貨ペア変更でライン消去
        ラインをセットしていた通貨ペアに戻っても復元しない
    • pips指定:利確・損切、整数値でセット
    • トレーリングストップ:定幅pips、整数値でセット
    • 手動決済可能(MT4標準活用)
  • ブレークイーブン
    • ライン → 約定価格からのプラス価格(pips指定)に変更
    • Buy:価格 ≧ 約定価格 + 指定pips → ストップロスを約定値に移動
    • Sell:価格 ≦ 約定価格 - 指定pips → ストップロスを約定価格に移動
  • EA約定前停止
    • 約定前にこのラインをブレイクしたらEAを停止
    • 水平ラインのみ:水平ラインでなかったらアラート
  • EA稼働残り時間設定:分数を追加
    • EAが停止するまでの残り時間を指定
    • EA on ボタンクリック時点から指定した時間経過したらEA停止
  • EA稼働残り時間経過後、ポジションクローズする・しない選択追加
  • EA稼働残り時間設定後MT4再起動時に設定時間をオーバーしていた場合、EA停止と通知
  • 通貨ペア・マジックNo・メールタイトル変更時、EA条件リセット
  • 決済後の損益通知
    • アラートWindow・メール・プッシュ通知で損益通知
  • 約定時損益pips通知
    • アラートWindow、メール、プッシュ通知の情報に追加

パラメーター

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|パラメーター
  • アラートWindow
    • true:アラートWindow表示
    • false:表示しない
  • アラート
    • true:アラート鳴らす
    • false:鳴らさない
  • アラート音ファイル名
    • アラートの音ファイルをセット
    • アラートWindow = true の場合、アラートWindow音優先
  • メールタイトル
    • メール受信時のタイトル表示設定
  • メール
    • true:メール送信する
    • false:送信しない
  • プッシュ通知
    • true:プッシュ通知する
    • false:通知しない
  • EA稼働残り時間:整数0~
    • 整数で指定
      • マイナス数値:プログラム上は0として扱う
      • 設定例:1=1時間
    • EA onボタンクリック時点からセットした時間経過後にEA停止
    • 価格データ受信ごとに条件判断します。
      指定時間経過後、最初の価格データ受信時に条件を満足していたらEAを停止します。
  • EA稼働残り分:整数0~59
    • 整数で指定
      • 0~59を外れると0にセット
    • 上記稼働残り時間と合わせて経過時間を設定
    • 他は上記稼働時間と同
  • ―――――
  • マジックNo.:位置変更
    • このEAでエントリー・エグジットするポジションを指定
    • 他のEAとNo.区別必須
  • 決済選択方法:3つから選択
    • LINE(ライン)
    • pips(pips 指定)
    • Trailing Stop(トレーリングストップ)
  • 取引ロット数:取引するロット数をセット
  • ラインタッチでエントリー
    • true:価格が設定ラインにタッチしたらエントリー
    • false:価格が終値で設定ラインをブレイクしていたらエントリー
  • T/P ラインタッチ決済
    • true:価格が設定ラインにタッチしたら決済
    • false:価格が終値で設定ラインをブレイクしていたら決済
  • S/L ラインタッチ決済
    • true:価格が設定ラインにタッチしたら決済
    • false:価格が終値で設定ラインをブレイクしていたら決済
  • ロングエントリーライン名~EAエントリー前停止ライン
    • 各ラインの名前をセット
    • 同じ名前は不可
    • ブレークイーブンライン削除
  • ―――――
  • 損切 pips:決済方法選択=pips 指定時
    • 損切値(ストップロス値)をセット
    • 1以上の整数値をセット
    • 0:損切しない(エグジットしない)
  • 利確 pips :決済方法選択=pips 指定時
    • 利確値(テイクプロフィット値)をセット
    • 1以上の整数値をセット
    • 0:利確しない(エグジットしない)
  • トレーリングストップ pips:決済方法選択 = トレーリングストップ時
    • トレーリングストップ値をセット
    • 1以上の整数値をセット
    • 0:機能しない
  • ブレークイーブン実行 pips
    • ブレークイーブンを実行する約定価格との差pips を指定
      • Buy:OpenPrice + ここで指定する pips ≧ 価格でブレークイーブン実行
      • Sell:OpenPrice - ここで指定する pips ≦ 価格でブレークイーブン実行
    • 0:機能しない
  • <含み損益表示>
    • タイトル色:タイトル「含み損益」の文字色
    • タイトル背景色:タイトル「含み損益」の背景色
    • プラス色:含み損益プラス時の文字色
    • マイナス色:含み損益マイナス時の文字色
    • 背景色:含み損益値表示部の背景色
  • <Information LABEL>
    • 区分テキスト色:条件項目の文字色
    • 値テキスト色:条件値の文字色
  • <EA OnOff Caption BG color >
    • EA On Caption背景色:EA On時のパネルキャプション背景色
    • EA Off Caption背景色:EA Off時のパネルキャプション背景色

 (参考)パラメーターの保存と読み込み

パネルサイズ変更、表示文字変更

 チャート上下が狭くなると、パネルが最小化、元のサイズに戻しても条件が隠れることに対し、上下を狭く、水平方向を広くし、対処。でも、チャート上下サイズがパネルサイズより小さくなると前記現象は発生します。

 表示文字が大きなって重なる、という現象に対し、日本語使ってるからかも、と思い、半角英文字に変更。ご連絡者と同じ環境下ではないので、解決するかどうかは?

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|左:Ver. 1.09、右:Ver. 1.10
左:Ver. 1.09、右:Ver. 1.10
水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|上Ver. 1.09(最小化)、下:Ver. 1.10
Window表示:上下2面、上:Ver. 1.09、下:Ver. 1.10
水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|左:Ver. 1.09(項目隠れる)、右:Ver. 1.10
Window表示:上下2面、上:Ver. 1.09(項目、下:Ver. 1.10

使用例

 動画がわかりやすいと思います。

2通貨ペアでの使用例

 EAセット~BUY・SELL~LINE決済・pips決済・トレーリングストップ

エントリー前、EA停止

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|エントリー前EA停止1
エントリー前EA停止ラインセット
水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|エントリー前EA停止2
エントリー前EA停止実行

ブレークイーブン

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|ブレークイーブンセット
水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|ブレークイーブン実行後

タイマーストップ

 Timer STOP、Position CLOSE は、チェック入れた時点からカウントスタート。操作は次の通り。

1)タイマーセット:事例は5分

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|タイマーセット1
タイマーセット

2)エントリー確認:事例は SELL

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|タイマーセット2
タイマーセット:ポジション保有確認

3)タイマーEA停止、ポジションクローズ実行

水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|タイマーセット3
タイマーセット:EA停止、ポジションクローズ
水平ライン・トレンドラインタッチorブレイク確定エントリー・エグジットEA|タイマーセット4、通知
タイマーセット:通知

その他

 EA稼働残り時間・分をEA停止日時に変更するかもしれません。

コメント

  1. ヨシタカ より:

    HappyJiJi様

    hjEA_LineEntryExit111を利用させていただいています。
    素晴らしいツールを作成してくださり、本当にありがとうございます。

    可能であれば、1つ機能を追加していただけると助かります。
    ストップロスに達した時の「最大損失金額」を事前に設定できるようになりませんか。
    最大損失金額に合わせて、エントリー時に自動でロット数が計算されるように設定できるようにしていただけるとありがたいです。

    例えば、最大損失金額を1万円に設定すると、エントリー時にストップロスラインの距離に合わせてロット数が自動的で計算されるようにできないでしょうか。

    お手数ですがご検討いただけますと幸いです。どうぞよろしくお願いいたします。

    • HappyJiJi HappyJiJi より:

      ヨシタカさん、
      最大損失金額1万円、エントリー時にストップロスラインに合わせてロット数計算し、エントリーさせる、
      とご希望ですが、この部分他EAと複数使用している場合や他の方々の使用方法を考慮しますと実装は避けたいです。
      同様のご希望が増えてきましたら実装するか、別EAとして作成するか考えます。
      すぐにお役に立てず申し訳ございません。

      • ヨシタカ より:

        HappyJiJi様

        お忙しい中お返事いただきありがとうございます。
        了解いたしました。
        もし実装いただけるようでしたら
        よろしくお願いいたします。

  2. matuzo より:

    大変素晴らしいツール提供をありがとうございます。matuzoと申します。

    決済方法選択で「ライン+トレール」を検討して頂けないでしょうか。

    ブレイクアウト手法として取り入れたいのですが、ラインエントリーと同時に逆指値注文も設定され伸ばせるところはトレールで伸ばせればと考えております。

    • HappyJiJi HappyJiJi より:

      matuzo さん
      ご希望の仕様、
      ラインを+100pipsにおき、トレーリングストップは、20pipsから、という感じでしょうか?

      • matuzo より:

        そうです。ちなみに理想のイメージとしては、エントリーして利益が乗ってきたらトレールを開始、損益方向に動いたら損切ラインで決済のイメージです。また、トレールが伸びたまま最初にセットした利確ラインにタッチしたら自動決済と出来るといいです。

        • HappyJiJi HappyJiJi より:

          mituzo さん、
          了解しました。
          でも、すぐには対応できないです。
          使用している方優先でバグフィックス、改善など、対応させていただいていますが、対応が遅れてて更新の完成日がお約束できません。
          申し訳ございませんが、ご了承ください。

          • matuzo より:

            ご返事ありがとうございます。
            気長にお待ちしますので問題ありません。

      • matuzo より:

        すみません。追記ですが、エントリーと同時にSLラインで逆指値注文も同時発注する仕様の検討もお願い致します。現状はタッチしたら成行きで決済となりますが、スキャルピングで使用の場合はスリップが大きいためです。(特にゴールド)

  3. matuzo より:

    大変素晴らしいツールのご提供をして頂き、ありがとうございます。

    このツールは自分の裁量トレードツールで最も理想に近いと感じています。

    1点対応して頂けると非常に嬉しいのですが、決済方法選択で「ライン、ピプス、トレール」の3種類があると思いますが、「ライン+トレール」の機能を追加して頂けないでしょうか?

    スキャルピングで運用しているのですが、毎回エントリーを確認してから逆指値注文を入れる手間もあり、利益を伸ばせるところは伸ばしたいのでこの機能を追加して頂けると最高に嬉しいです。

  4. たぬま より:

    すみません。
    このEAで質問です。
    このEAのトレンドラインでタッチしたらエントリーでの質問です。
    1.ローソク足がトレンドラインでタッチしたらエントリー
    2.その後、ローソク足が決済まで行かずに再びトレンドラインへ戻る
    この場合はまだポジションが持った状態ですが…
    ラインへまたタッチされたので2つ目エントリーはされるのですか?

    通過ペアに対して持ってるポジションは1つだけにする事はできますか?

    • HappyJiJi HappyJiJi より:

      たぬまさん、
      お応えが遅くなって大変申し訳ございません。

      ご質問の『トレンドラインタッチエントリー後、再度タッチしたらエントリーするか?』
      ですが、当該EAの仕様は、保有するポジションは一つです。
      なので、ポジションを決済するまで新規ポジションは持たないはずです。

      もし、二つポジションを持つようでしたらバグなので、コメントください。

  5. はるやん より:

    初めまして,HappyJiJi さん、はるやんと申します。
    hjEA_LineEntryExit110を試用させていただきました。
    この様なEAを無償で提供してくださり、ありがとうございます。

    私の使い方としては、エントリは手動で決済だけhjEA_LineEntryExitの(トレンド)ラインタッチとして使いたかったのですが、以下の機能の修正が必要でした。
    (1) MagicNumber=0を指定すると、手動エントリのポジションに対してタッチ決済が正しく
      動作します。
      ただし、ポジションのロット数がEAのパラメタのロット数と合っていないとエラーを
      検出して決済されません。MagicNumber=0のときには、このチェックをはずしていただ
      けると助かります。
    (2) 手動でlongを2個以上エントリしているとき、tplongやsllongのタッチ決済では
      1個しか決済されないときがある。
      MagicNumber=0のときには、1回のタッチで対象とする全てのポジションを決済する様
      に修正いただければ幸いです。

    (3)更に追加機能として、EAパラメタのLot=0指定のときには、long/shortラインタッチで
      ポジションのエントリはせずに、メール通知だけする機能があればうれしいです。

    同じ様な使いかたが便利だと思われる方が多ければ、機能追加していただけるとありがたいののですが、過剰な期待やリクエストでしょうかね?
    もしよろしければ、対応いただければ感謝いたします。

    • HappyJiJi HappyJiJi より:

      はるやんさん、
      hjEA_LineEntryExit110 のご使用、ご提案、ありがとうございます。

      このEAは、エントリーとエグジットがセットになってます。
      このEAでエントリーしていない複数のポジションクローズも考慮していないので、何が起こるかは試した人しかわからないと思います。

      また、ご提案仕様を追加すると困る方が出てくることが予想されます。

      で、相談です。
      このEAの機能で、はるやんさんが使われている機能を教えてください。
      それに今回の仕様を含めて新規として作成するか、すでにあるEAをご紹介するかを考えたいです。
      すでにある、と言いましてもいろいろ自分の整理が追い付かないほど作り過ぎているので、紹介より作成が早いかもしれないのですが・・・

      以上、よろしくお願いします。

  6. junjun より:

    初めまして,HappyJiJi さん
    hjEA_LineEntryExit110をダウンロードさせていただきました.ありがとうございます.
    現在MQLでEAを作成する勉強をしています(趣味で).結構な年齢でプログラミングは全くの初心者なのでチンプンカンプンなのですが,本やネット上のコードを参考に簡単なものから作っています.
    hjEA_LineEntryExit110のような半自動のEAを作りたくて,トレンドラインブレイク&MAタッチでエントリーサインが出るようなインジケーターやEAを探していているうちにこのサイトに辿り着き,まさにこんなのを作りたかった!と感動しています.まだまだ私には手も届きませんが,このEA参考にどんなコードで書いているのかな〜?と勉強させていただきます.何年かかるかわかりませんが,いつかこんなEAを自分で作れるようになりたいです.今後ともよろしくお願いいたします.

    • HappyJiJi HappyJiJi より:

      junjun さん
      うれしいコメントをありがとうございます。
      ブログ開始当初、mq4ファイルを提供していたのですが、提供直後からの対応にとてもたくさんの時間を取られてしまい、途中からex4ファイルでの提供とさせていただきました。
      他の要件との時間配分がうまくできず、誠実に学びたいと思ってる方にはとても申し訳なかったです。

      EAに限らず。プログラミングは痴呆予防に効果があるような気がしています。
      どんな?って聞かれますと具体的な返答には困りますが・・・
      約4年ほど継続してきて一つ健康上の大きな問題が浮かび上がってきました。
      長時間のデスクワークによる筋力の低下、そこから健康問題が徐々に・・・
      これは気をつけてください。

      では、EAの作成、楽しみながら前進してください。

  7. しんしん より:

    毎回素晴らしいEAをご制作ありがとうございます
    痒い所に手が届くと言いますか
    感謝の気持ちで使用させて頂いてます

    唯一
    使用者側として一つご要望があるとしましたら

    「確定足の回数」を指定出来たら嬉しく思います

    ラインを
    2回目の確定足でエントリー
    3回目の確定足でエントリー
    などです

    騙しを回避するためです

    1回目のみの確定足でのエントリーだと「行って来い」も多いです

    確実に超えたことを根拠とするためにも確定足回数を数字で設定出来ますと
    ダウ理論も根拠とできるため、完璧かと思います

    ブレークイーブンラインも削除されたということなので
    代わりにラインやpipsではなく
    ローソク足の確定足回数に委ねることで
    ブレークイーブンの代わりも成しえれるのではないかと思いました
    ローソク足は絶対ですからね^^

    いつも本当にありがとうございます
    失礼致しました

    • HappyJiJi HappyJiJi より:

      しんしんさん、
      エントリー条件に確定足の回数を追加する、というご提案と受け取りました。
      単純に最初のライン越え確定足から2本目、3本目の確定足でエントリーでよろしいのですか?
      (確定足回数は数値で指定)
      何か追加条件はありませんか?

      上方向にブレイク確定足の次が陰線でラインより下で確定、その次の足もライン上方ブレイクが見えない状況下でのエントリー判断条件他、何か条件があれば教えてください。

      このEAの使用において、上位足トレンド方向判断など、EAエントリー前に必ず裁量判断が必要だと思って作成していますので、前記部分、なんとかいいアイディアがあるととてもうれしいです。

      私自身、放置EAで資産増は困難と思いつつ、放置してたら資産が増えてた・・・を期待し、合間にいろいろ考えてはいますが、まだ作成できていません。
      この辺のアイディア、多くの方々から届けばいいな、と思っています。