Half Trend MTF
- インディケータ
-
Evgenii Sutulov
I build trading indicators, strategies, and dashboards that don't repaint.
Seven years doing this. MetaTrader 4, MetaTrader 5, TradingView.
Closed bars only. What you see is what happened.
The bar being formed never changes a published value. - バージョン: 1.3
Half Trend MTF は、市場に奪われるまで自らの水準を保ち、奪われた瞬間に反対側へ切り替わる階段状のトレンドラインを描きます。その周囲には ATR チャネルが置かれます。
支える判断はひとつで、しかも率直に言い切れます。ラインは現在どちら側でトレンドが保たれているかを示し、反転はそれが変わった瞬間を示し、チャネルは現在のボラティリティが価格にどれだけの余地を与えているか、つまりその反転が効いてくるまでの幅を示します。
ラインが動くのは直近 N 本の高値安値がラインに逆らって動いたときだけなので、もみ合いで移動平均のようにさまよいません。じっと止まっていて、そのあと切り替わります。
チャートに表示されるもの
トレンドの色で描かれ、反転の足でも途切れない Half Trend ライン。上昇局面ではひとつのプロット、下降局面では別のプロットになり、切り替わる場所でつながっています。ATR チャネルは上下二本のバンドで、ラインからの距離は ATR の半分の倍数、各バンドはそれぞれの色の細い線です。その間には二つの淡い塗りつぶしがあり、ラインの上は強気の色、下は弱気の色なので、価格がチャネルのどちら半分にあるかが一目で読み取れます。そして反転した足に付く BUY と SELL の矢印。描画はすべて価格ウィンドウ内で行われます。
パネル
価格チャート上のキャンバスパネルで、ドラッグ、折りたたみ、クローズができます。有効な時間足と、実際に使われている振幅(amplitude)を表示します。直前に確定した足の結果、すなわち BUY 反転、SELL 反転、反転なしのいずれかを示します。そして画面上の数値がプロパティ画面のものかパネルのものか、いくつ変更されたかも示します。
その下には、パネルから動かせる設定が現在値とともに並びます。歯車は三つのタブからなるシートを開きます。
Values タブは、時間足、振幅、形成中の足のシグナルを表示するかどうか、チャネルの偏差、ATR 期間を扱います。各行にステッパー、値域、一文の説明が付き、プロパティ画面の数値と異なる項目がいくつあるかを示すカウンターと、すべてを元に戻すボタンがひとつあります。
Alerts タブは、マスタースイッチ、イベント別スイッチ、各チャネル、分単位のクールダウン、テストアラートを扱います。Styles タブは、配色、ラインと ATR チャネルと矢印を描画するかどうか、それぞれ独立したスイッチを持つ二つのチャネル塗りつぶし、線の太さ、矢印の大きさを扱い、変えるのは見た目だけで、再計算を起こすことはありません。
配色は三種類。ダーク、ライト、そして赤と緑ではなく青とオレンジを用いる色覚に配慮した配色です。パネルに関するすべて、シート上で変更したあらゆる値を含めて、チャートごとに保存され、時間足の変更やターミナルの再起動を越えて残ります。インターフェースは英語です。
アラート
初期状態では鳴りません。イベントは三つ。BUY 反転、SELL 反転、そして Half Trend ラインへのタッチで、最後のものは反転ではなく押し目・戻りのイベントです。
チャネルはポップアップウィンドウ、サウンド、モバイル端末へのプッシュ通知、電子メール。イベント別およびチャネル別のスイッチと、既定で 2 時間のクールダウンがあります。
アラートは直前に確定した足で発火します。既定でオフのアラートがさらに二つあり、形成中の足で、確定までの指定秒数以内に鳴ります。これらを早期と呼ぶのは、足の途中で成立した反転が取り消されうるからです。Telegram はこの製品には含まれません。
形成中の足のシグナル
他よりも重みのあるスイッチがひとつあり、入力パラメーターにも Values タブにも置かれています。まだ確定していない足にバッファーと矢印を許可するかどうかです。
オンのとき、これが出荷時の設定ですが、市場が反転した瞬間にそれが見えます。ただし足が確定する前に反転が取り消され、矢印が消えることもあります。オフのときは、形成中の足には一切何も書き込まれません。いかなる再描画も起こらず、そのかわりすべてのシグナルは構造上一本遅れて届きます。
どちらの挙動も正当です。製品は利用者に代わって選ばず、いま自分がどちらで動いているかも隠しません。パネルと設定名の両方がそれを示します。
マルチタイムフレーム
Timeframe 設定は上位時間足で計算し、その結果をここに描画します。読み取るのは確定した上位足だけです。チャートの各足には、その足自身の終値時点までにすでに確定していた最新の上位足が対応するため、反転は上位足と同時に確定する足の上に置かれ、リアルタイムでは知り得なかったものは何も描かれません。
他系列はバックグラウンドで構築されます。最初の読み取りは空で返ることがあり、インジケーターは再試行し、ダウンロード待ちなのか本当に履歴が不足しているのかをパネルが伝えます。足が足りないことを理由に初期化が失敗することはありません。
EA からの読み取り
バッファーは十六本あり、すべて iCustom と CopyBuffer で読み取れます。バッファー 0 の Buy は、BUY 反転の足では矢印の価格を、それ以外では EMPTY_VALUE を持ち、描画されません。バッファー 1 の Sell は SELL 反転について同様です。バッファー 2 から 5 は二つのチャネル塗りつぶしに属し、描画のための仕組みであって読み取る対象ではありません。バッファー 6 の Half Trend Up は上昇局面のトレンドライン、バッファー 7 の Half Trend Down は下降局面の同じラインで、反転の足では両方に値が入り、それが描画ラインを途切れさせません。バッファー 8 の ATR High はチャネルの上バンド、バッファー 9 の ATR Low は下バンドです。バッファー 10 の BuyMark とバッファー 11 の SellMark は、バッファー 0 と 1 の描画用コピーです。バッファー 12 の Signal は BUY 反転で +1、SELL 反転で -1、反転がなければ 0 になります。バッファー 13 の Override は、パネルから変更された設定の数を数えます。バッファー 14 はラインを一本の途切れない系列として持ち、バッファー 15 はトレンドそのもので、上昇中は 0、下降中は 1 です。どちらのラインバッファーが空かから方向を推測する必要は、ストラテジー側にはもうありません。
バッファー 0 と 1 は契約にあたります。決して描画されず、Styles タブが何を指定していても毎回埋められ、データウィンドウにも現れます。矢印を非表示にしても、ストラテジーがシグナルを失うことはありません。
iCustom で生成したインスタンスは読み取り専用で、常に渡したパラメーターを使います。バッファー 13 により、チャート上のインスタンスが手で変更された数値で動いていることをストラテジー側から検出できます。
出自
本製品は TradingView で everget が公開した「HalfTrend」の移植であり、そのスクリプト自体もより古い MT4 インジケーターの移植です。アルゴリズムは定番のもので、出自は MT4 にあります。TradingView のスクリプトは公開されており、そのため数式にもとづく移植が許容されます。この実装は行単位の翻訳ではなく、数式から再構成したものです。
製品名が Half Trend MTF であるのは、Half Trend が手法の名前だからであり、その著作者性を主張するためではありません。オリジナルの著作はその著者のものです。
正直な限界
形成中の足のシグナルがオンのとき、これが出荷時の設定ですが、現在の足の矢印はその足が確定する前に消えることがあります。この設定をオフにすれば、形成中の足には何も書き込まれません。確定した足はどちらのモードでも変化しません。
階段状のトレンドラインは、設計上どうしても遅れて切り替わります。もみ合いでは何度も切り替わり、そのどれもがラインの本物の反転であると同時に不出来なトレードになります。そもそもトレンドが存在するかどうかを判定する仕組みは、ここにはありません。
ATR チャネルはボラティリティを表すものです。目標値でも損切り水準でもなく、価格がどこへ向かうかについての主張でもありません。
振幅、チャネルの偏差、ATR 期間はいずれも反転の位置を動かします。二つの設定は二通りの矢印を生み、そのどちらかが正解というわけではありません。
ここでは、収益額も勝率もバックテスト結果も主張していません。

