English Русский 中文 Español Deutsch Português 한국어 Français Italiano Türkçe
テクニカル分析:何を分析するのか?

テクニカル分析:何を分析するのか?

MetaTrader 5トレーディング | 28 10月 2015, 12:58
557 0
Victor
Victor

はじめに

今やひじょうに簡単に通貨変動に関するトレーディングを始めることができます。コンピュータに MetaTrader (MT) をインストールし、ディーリングセンターでアカウントを開けばトレーディングを始めることができるのです。もちろんだれしも収益を上げるトレーディングをしたいと思っています。そしてトレーディング経験が世界中から寄せられ、手助けをしてくれます。

テクニカル分析についてもっとも人気のあるツールはインディケータという形で MetaTrader にインクルードされていますす。また一番人気の著者が著したこのトピックに関する出版物をインターネットで見つけることができます。

残念ながらテクニカル分析のもっとも尊敬されるグルの指導や推奨に忠実に従ったところでかならずしも望む結果を得られるとは限らないものです。それはなぜでしょうか?本稿はこの質問に対する答えは提供しません。が、何を分析するのかについて一緒に理解していきましょう。


何を分析するのか?

現在の金融マーケットはひじょうに繊細な生き物です。ほとんど世界の出来事すべてがそれにいくばくかの影響を与えます。大量の異なる要因が絶えずマーケットに影響を及ぼし、それがクオートの変動につながります。こういった常に変動する通貨クオートはマーケットのテクニカル分析をするあいだ、唯一で十分な調査対象なのです。

われわれのコンピュータが MetaTrader クライアント端末によってディールセンターにつながっているとします。この場合、クオートは個別の形で;独立したインディケーション(ティック)として端末にやってきます。サンプル周波数が初期シグナルのレンジ内で最大周波数より 2 倍以上高ければ、最初の連続したシグナルはそれのインディケーションによって復元可能であることはわかっています。この段階では初期連続シグナルを復元する必要がありません。ただしわれわれの場合、理論的に可能であれば、初期シグナルはサンプリング過程で歪められなかったことを意味します。

残念ながら、ティック形成時にサンプリングの可変周波数が使用されているのです。クオートのインディケーション(ティック)はおよそ0.5秒~数分の間隔で端末にやってきます。サンプリング周波数を変更するアルゴリズムはわかっていません。また、初期シグナルの範囲内の最大周波数も判りません。そういったすべてにより、サンプリング過程で生じる歪みを判定することができないのです。

量子化のこの方法は情報損失につながらず、初期連続シグナル(通貨のマーケットクオート)は大きく歪められないであろうとの仮定だけが残されています。この仮定とサンプリング周波数が 2 Hz に達することを考えると、初期シグナル範囲の上限が推定(おおよそ)値として取得されます。それは 1 Hzです。

サンプリング周波数が可変である場合、シグナル処理はひじょうに困難です。ただ実際には、端末に入ってくるティックによるマーケット分析はひじょうに稀です。ほとんどの人は M30 以上から始まるタイムフレームを用いる方を好みます。

MetaTrader ターミナルで「折れ線グラフ」モードを選択したら、サンプリングの固定間隔を持つインディケータのシーケンスを確認します。それは現タイムフレームの値に等しくなっています。細かな点はとばして、このシーケンスが端末にやってくるティックから形成されることについて考察します。

それから30分ごとに着信するシーケンスからインディケーション(ティック)を一つ選択すると、結果として 1/1800 Hz の固定されたサンプリング周波数を持つシーケンスを取得します。これは M30 タイムフレームに対するインディケータのシーケンスです。その他のタイムフレームのシーケンスも同じ方法で形成されます。インディケーションのシーケンスを形成するこの方法は事実上、選択されたタイムフレームの値に等しい間隔を持つ初期連続シグナルの量子化と明らかに同じです。

クオートの表現形式

図1 クオートの表現形式

上述からテクニカル分析の対象は、常に変化するマーケットクオートの流れであるという結論に至ります。その流れは離散化の可変周波数を持つインディケーション(ティック)および離散化の固定周波数を持つインディケーション(タイムフレーム)として個別の形式で利用可能なものです。そこで初期クオートのスペクトルは 0 Hz ~ 1 Hz の範囲内に収まります。

MetaTrader における最小タイムフレーム期間 M1 が1分であるため、われわれのモデルではインディケーションのシーケンスを形成するときのクオートの初期シグナルは周波数 1/60 Hz の離散化の影響を受けます。この周波数は初期シグナル(2 Hz)のスペクトル上限値の2倍よりも120倍低いものです。そのようなシグナル変換は必ず不可逆的なゆがみにつながります。図2はこのゆがみの性質を表しています。

スペクトルの重複
図2 スペクトルの重複

初期シグナルのスペクトルが図2 にあるようなもので、その上限が Fh に等しいとします。サンプリング周波数 Fd1 が Fh より大きければ、量子化の結果として取得される変化のシーケンスは重複なしのスペクトルを持ちます。そのようなシーケンスは初期シグナルの適切な離散を表しています。

サンプリング周波数を Fh の二倍より下げると、結果のシーケンスでスペクトルが重複します。また、初期連続シグナルと等しくなくなります。図2 は一例です。それはサンプリング周波数 Fd2 がわずかに Fh の2倍よりも低いときのものです。前に述べたように、 M1 タイムフレームに対するサンプリング周波数は許容周波数よりも120倍低いものとなっています。

そのように結果としてのシーケンスの低い周波数はスペクトラムが複数重複し、図2 で示される場合と比べてずっと大きなゆがみにつながります。より大きなタイムフレームに移動すると、サンプリング周波数はより低くなりゆがみレベルは高くなります。形式的には異なるタイムフレームのインディケーション シーケンスは初期クオートを正確に表示しないだけでなくお互い左右対称にはなりません。

タイムフレームと連携する異なるインディケータとシステムを使用する際は、クオートのゆがんだ表示を分析します。この場合、クオートのテクニカル分析は大幅に複雑で、ほとんどの場合、厳重な数学的手法を使用することは意味がなくなります。

たとえば、個別のフーリエ変換から取得される任意のタイムフレームのスペクトルは、クオートの初期シグナルのスペクトル推定にはなりません。それは周波数の変化に伴いそれ自身の上に繰り返し重なる初期クオートのスペクトルです。スペクトルの繰り返す重なり はまた結果としてのシーケンスにフラクタルなストラクチャを形成することにつながります。

初期クオートにもたらされるゆがみの定量は本稿の述べるところではないので、それが終了することを示すにとどめます。

初期シグナルとしてGBPUSD M5 クオートの変化の任意のシーケンス片を取ります。図3(グリーンの線)は低パスフィルターを用いてこのシグナルをフィルターにかけた結果を示しています。これは MetaTrader で使用される期間 45 の SMA フィルターの類似体です。

次は初期シーケンスから15 番目ごとの変化を選択し M75 タイムフレーム(MetaTrader 4 にはありません)に対するシーケンスを作成します。よって、初期シーケンスを薄くするサンプルを使用し、15 倍分サンプル周波数を減らしました。

図3(赤い線)は低パスフィルターを用いて取得したシグナルをフィルターにかけた結果を示しています。これは期間 3 の SMA の類似体です。周波数の減少に比例してフィルターにかける期間は減り、低パスフィルターから切り取る周波数が変わらないようにしました。

GBPUSD クオートのフィルター

図3 GBPUSD クオートのフィルター

離散化の周波数を減らす間シグナルがゆがまないと仮定すると、それをフィルターに通した結果は初期シグナルをフィルターにかけた類似体になるはずです。図3は明らかにシーケンス M5 と M75 を処理した結果として得られる曲線の間の差を示しています。おそらくそれはサンプル周波数を減らす際、スペクトルの重複が起こしたゆがみの影響であると思われます。

低パスフィルターを使用することはスペクトルの重複によって引き起こされるゆがみを判断するベストな方法ではないのでしょうが、提示されている例は、シンプルな分析方法を使用していたとしてもクオートの実際の変化に影響しうるということを示しています。

異なるタイムフレームのシーケンスを使用することは、クオートの可視化には便利です。ただしそれらを分析するのに数学的方法を用いるなら、大きなタイムフレームに切り替えることは処理されるインディケ―ションが減少することで計算量を減らすためにほかなりません。

計算ボリュームが考慮されなければ、大きなタイムフレームへの切り替えは、初期シグナルをさらにゆがめるだけです。理論的には、最適なバリアントは端末にやってくるティックによるクオートの分析です。ティック履歴があるなら、補間(たとえばスプライン)を利用すると、固定サンプリング周波数のシーケンスに切り替え、かなり高い周波数のシーケンスを選択することができるかもしれません。

クオートのゆがみという観点からそのような情報がなければ、分析のためには小さいタイムフレーム M1 のシーケンスを使用するのがよいでしょう。必要であれば、このシーケンスのサンプリング周波数を減らすことができますが、それをする前に離散化の新しい周波数の半分より高い周波数を抑制する必要があります。

クオート分析の結果である前述のゆがみの効果程度は、分析に使用されるアルゴリズムの感受性に強く依存します。このゆがみが取得される結果に大きく影響しない場合もあります。ただし、計算結果を正確に解釈するためにその存在を覚えておく必要があります。

スペクトルの重なりに関連するゆがみに注目すべく、仮定は上の論で受け入れられています。実際、MetaTrader におけるデジタル処理の厳密な数学的手法の使用を妨げる要因は数多くあります。クオートのインディケーション差、スキップされたバー、MetaTraderで使用される時系列の形成方法、それはそのティック時刻がインディケーション形成時刻に対応していない場合、チック値をインディケーション値として受け入れます。

クライアント端末においてクオートを表現することに関連する疑問がもう一つ別にあります。それに注意をしていただきたいと思います。今までろうそく足を表示するモードについては言及しませんでした。

ろうそく足の分析には多くの作業が費やされています。ろうそく足の形状やろうそく足同士の組合せを基にクオートの振る舞いを予測する異なる手法が考察されています。こういった手法の効果を疑うことはしませんが、それを確認します。任意のタイムフレームにおいて«安値» と «高値» の値の数学的分析を行おうとするとき何に直面するでしょうか。

そしてご存じのように«安値» と «高値»は選択されるタイムフレーム期間内のクオートの最低値および最大値です。いつこういった値に到達するかは判りません。«安値» と «高値»は時間軸との明確なバインドを持ちません。ただ一つ判っているのは、クオートがどこかしら選択したタイムフレーム内でそういった値に到達した、ということです。この«安値» と «高値»双方は離散化の可変期間を伴う変化のシーケンスです。それはゼロから選択したタイムフレームまでの範囲で乱数値を取ります。

シグナルのデジタル処理の数学手法という視点から、そのような«安値» と «高値»の表現は時間関数として、ひじょうに風変りなものです。もちろんこれらシーケンスを処理するのに標準的アルゴリズムを使うのは自由です。ただ取得した結果をどのように解釈するのでしょうか?たとえば、そのようなシグナルをフィルターにかけるとき、シンプルな最初のオーダーの低パスフィルターを切り捨てる周波数はなにでしょうか?

無作為に変化するサンプリング周波数を持つシーケンス形式で表される関数と連携するためには、おそらく数学的手法が必要となります。また、固定サンプリング周波数を持つシーケンス向けに作成されるアルゴリズムを適用することはおそらく«安値» と «高値»を分析するとき取得される結果を不確かなものに導くでしょう。«安値» と «高値»のシーケンスの数学的分析に基づくクオートの動向を予測するのに用心が必要なのはこのためです。

クオートがろうそく足の形で表されるとき、おのおのはただの«安値» と «高値»ではなく、«始値» と «終値»でもあるのです。すべてが一緒になってろうそく足を形成するのです。タイムフレーム間隔においてろうそく足で行われるクオート表現がどの程度明白なものか確認します。 

ろうそく足の形成
図4 ろうそく足の形成

図4は同じろうそく足を形成する結果となった、3つのまったく異なるシーケンスを示しています。ご覧のように、ろうそく足の形状からはクオートの変動は判断できません。また«安値» と «高値»は時間とバインドしていません。

そのような例は無限にあります。ろうそく足としてのクオート表現はクオートの動向を素早く目で見て推測するには便利でしょう。が、ろうそく足のヒゲを形成する«安値» と «高値»の変化は実際数学的分析には有用ではありません。«始値» と «終値»の変化はまだ少しばかりましです。ただし、ここでこれらシーケンスのスタートとして取られる時刻は不確かです。

たとえば、«始値» として分析期間の最初にくるティックの値を取ります。タイムフレームの期間内にティックがなければ、ろうそく足はまったく形成されません。また、«始値» と «終値»を使用するとき、スペクトルの重複に関連したエラーを忘れてはなりません。

そこで結論です。クオートの数学的分析のためのベストな方法は最小タイムフレームから取られる«終値»のシーケンスを使用することです。その他の変化は«安値»、«高値»、«始値»です。それはろうそく足からのものでおそらく何も新しい情報はもたらしません。

クオート分析には«終値»の代わりに現在バーの«始値»の合計の半分を使ってみることができます。それは2で割られます。そのような方法で«始値» と «終値»のインディケーションが始まる瞬間の不確実性からの影響を減らし、より正確にタイムフレームの開始時刻を決めることができるでしょう。


おわりに

本稿で述べているクオート表現法は広範囲にわたっています。それは MetaTraderでのみ使用されるのではなく他のプラットフォームでも使用されるものです。同じタイムフレーム、バー、ろうそく足は新しい MetaTrader 5 でも観測可能です。そのようなクオートの表現は従来的であると言えます。おそらくそこにはなんらかのメリットがありますが、一般的には、ユーザーに提示されるクオートは数学的分析にとっては歪んだものです

計算処理の発達によりテクニカル分析に対してより複雑な数学的アルゴリズムの使用が可能となっています。また、そういうアルゴリズムは精度の違いにひじょうに敏感なことが多いものです。関数の外挿アルゴリズムが良い例です。それらすべてにもかかわらず、インディケータの技術的ドキュメンテーションではタイムフレームを切り替える際に出現するであろう不正確さについての警告はされていません。

本稿の主な目的はテクニカルインディケータとトレードシステムの開発者に、ゆがんだ表現を用いてマーケットクオートの動向分析を行う際、影響が取るに足らないなものでない限り、分析結果のそのゆがみの影響に配慮が必要であるという事実に注意を引くことです。

MetaQuotes Ltdによってロシア語から翻訳されました。
元の記事: https://www.mql5.com/ru/articles/173

MQL5およびMQL4で自動売買ロボットを注文する方法 MQL5およびMQL4で自動売買ロボットを注文する方法
「フリーランス」は、MQL4/MQL5自動売買ロボットとテクニカルインディケーターを発注できる最大のフリーランスサービスです。何百人ものプロの開発者がいつでもMetaTrader4/5ターミナル用のカスタム取引アプリケーションを開発できます。
テクニカル分析:どのように分析するのか? テクニカル分析:どのように分析するのか?
本稿ではインディケータ、マルチタイムフレームインディケータの再作成および日本式ろうそく足を使用するクオート表示に関する著者の意見を簡潔に述べます。本稿はプログラムの特定部分には言及せzす、一般的特徴を述べるものです。
インターネットを介して端末間でデータ交換をするためのWinInet.dll利用 インターネットを介して端末間でデータ交換をするためのWinInet.dll利用
本稿は HTTP リクエストを介することでインターネットに連携する原理、および仲介サーバーを用いた端末間でのデータ交換について述べます。MQL5 環境でインターネットリソースと連携するためのMqlNet ライブラリクラスについて述べます。異なる仲介会社からの価格をモニターし、ターミナルを終了 することなく他のトレーダーとメッセージ交換をし、インターネットで情報検索をする。これらは例に過ぎませんが、本稿で検討します。
MQL5 ウィザードで独自の Expert Advisor を作成する MQL5 ウィザードで独自の Expert Advisor を作成する
売買ロボットを作成するのにプログラム言語の知識はもはや必須条件ではなくなっています。以前であれば、独自のトレーディングストラテジーを実装するのにプログラム技能がないことは避けがたい障害でしたが、 MQL5 「ウィザード」の登場により状況は根本的に変化しました。トレーダー初心者はプログラム経験がないことを心配しなくてよくなります。 Expert Advisor コードを作成することができる新しい「ウィザード」を使えば、プログラム経験は必要ないのです。