合成バー - 値の視覚情報を表示する新次元

Rustem Bigeev | 1 12月, 2015

はじめに

バーテクニカル分析において、アクティブトレーダーのほとんどが古典的なバーかローソク足チャートを使っています。これらはプロットされた時点にもとづくので期間によって違いがあることはよく知られています。言い換えれば、1つの古典的タイムバーやローソク足は、ある期間の値の変動範囲を反映するものなのです。これらは共通の4つの基本となる値を持ちます。始値と高値、安値、終値です。

古典的なバーチャートは、とてもポピュラーなものですが、ある1つの拭いようのない欠点を持つという事実があるからこそ、研究が進みました。この欠点は、チャート上でトレードシグナルが最終バーの完成によっておこなわれるトレードシステムを使っていると、とても良く分かります。


合成バー

急で強い値動きがある期間では、値がすでにモメンタムステージを通過し、”早く車に飛び乗れ”と、トレーダーにチャンスがあると言わんばかりにトレードシグナルが頻繁におこってしまいます。

ほとんどの場合、これはとてもリスクのあるシグナルです。初動の値動き方向へさらに伸びていく可能性よりも、値が戻る可能性を無視できないからです。このようなシグナルが出現した典型的な例を以下に示します。トレードシグナルの出現条件は、移動平均線の交差の組み合わせになっています。


図1. タイムバーチャートにおける移動平均線の交差

この問題は過去に練行足、カギ足、ポイント&フィギュア・チャートなどの値表示法の開発・実行によって解決されました。

これらのすべてのチャートは1つのパラメータに基づいています - 表示されているボックスの高さか、固定した値動きです。しかし、これらは幅広い支持を得られていません。グッドタイミングでシグナルを発信してくれる利点を持つにも関わらず、いくらか別の性質の欠点をいくつか持っているからです。

第1に、これらのチャートをよく知られた人気のテクニカル分析インディケーターと一緒に利用することはとても難しいからです。第2に、これらは古典的バーチャートの見え方とはとても違っており、とても特有なものだからです。別の値表示スタイルに慣れる必要があるという問題が起きてしまったのでした。

こう言ったことから、固定のボックスチャート(練行足、カギ足、ポイント&フィギュアチャート)と古典バーチャートの長所を組み合わせた値表示方法の開発を決心しました。それは合成バーと呼ばれました。

合成バーの背景となった原則は、古典バーのような時間要素ではなく、値動きという要素です。これは、値が動き始めるまでチャートには1つの合成バーしかなく、強い値動きだと1分間隔で1本より多くたくさんのバーが生まれるという意味です。

言い換えれば、この表示法は時間に縛られず、そのため合成チャートのタイムスケールは役割をなさないと言えます。そのうえ、生成した合成バーは古典バーとその形が少しの違いしかなく、一緒にMetaTrader 4のどのインディケーターとも使用することができます。

これらのバーは通常のタイムバーとほとんど同じで、すべて同じ高さを持ち少しの違いしかありません。下図は先に示した図と同じチャートセクションを、合成バーのみを使って表したものです。



図2合成バーチャートにおける移動平均線の交差


どのように合成バーをプロットするのでしょうか?始める前に、メインとなるただ1つのパラメータをセットします。バーの高さ(小数値)です。それから特別にデザインされたインディケーターが全てのティックを保存、分析を始めます。


合成バー プロット アルゴリズム

合成バーをプロットする過程を一緒にみていきましょう。最初のバーから始めます。最初のティックは始値として保存されます。次のティックは、新値が始値のレベルより高いか低いかによって、高値か安値になるでしょう。

新値が前の高値・安値の最大・最小値をブレイクすることによって。高値・安値がさらに更新されます。次の値が特定のバー高さ値より大きな高値・安値の違いを作ると、バーはクローズし新たなバーが形成され始めます。このバー特有のものはその終値が常に高値か安値に一致するというものです。

このインディケーターは、スタンダード・MetaTrader 4ターミナル・パッケージに含まれているピリオド・コンバーターというスクリプトの原理に基づいて開発されました。インディケーターのコードは添付ファイルにあります。


インディケーターを使ってみよう

このインディケーターは標準のインディケーターに比べて使い方がいくらか複雑です。インディケーターは最初にカスタムインディケーターのフォルダに格納しましょう。それから取引する通貨ペアの1分足チャートをオープンし、インディケーター"synbar.mq4"を稼働させます。



図3データ準備

インディケーターが1分足バーのヒストリーを処理すると、9分足の新しいチャートを生成します。メインメニューから"ファイル - オフラインチャート"を開き、"Instrument Symbol"のM9を選択し"開く"をクリックします。


図4合成バーチャートの開き方

通常はこのチャートを使います。1分足と9分足のチャートがデスクトップに開かれています。


図5合成バーを使ってプロットしたユーロドルチャート

このチャートに全種類のインディケーターを加えることができます。ラインを描画したり、文字記号を置いたりできます。ただこのチャートではエキスパートアドバイザーは機能しないという制限だけがあります。

しかしこの制限はエキスパートアドバイザー関数にスクリプトを加えることで解除できました。スクリプトは奇妙にもこのチャートで正確に機能します。残念ながら、本稿では9分足のスクリプトについては網羅せず、現時点ではそれらに取り組むことはしません。

インディケーターの正確な稼働を確かなものにするため、DLLインポートを許可してください。


図6エキスパートアドバイザーの設定


インディケーターにはたった2つのパラメーターしかありません。最初の1つ、最も需要なものはバー高さです。

チャートタイプはExtBarHeightで設定したバー高さによって変わることは明らかでしょう。これはトレードシステム・シグナルのパフォーマンスにも大きく影響するでしょう。バー高さは、実際、追加パラメータで、様々なケースで唯一必要なのものになりえます。


図7ユーロチャート 日足



図8ユーロチャート 合成バー


まとめ

一般的なトレードシグナルが時間に縛られる問題は、合成バーを利用することで避けることがでます。そして古典的バーが完成する前にトレードシグナルを受信する機会を得ることができるのです。さらに、これらのチャートは"よりなめらか"に見えます。ひどくふざけた動きもありません。以下に注意点を述べます。

欠点もあります。もしマーケットが"爆発"し、合成バーの高さよりずっと大きなギャップを作ったならば、チャートは事後に作られてしまいます。これはつまり以下を意味します。

ヒント - マーケットがギャップを生んだ時はトレードしてはいけません。