manie's blog

@cz500c

三尊(ヘッドアンドショルダー)について

面白そうだったので。

 

三尊天井 - Wikipedia

 

中指(fractalsインジケータ)で高値と安値をピックアップして序列を確認すれば見つかります。でも見つかっただけで仕掛けるとだいたい失敗です。実際に何度も失敗しました。なぜなら「誰でも知っている」から。

 

三部構成

  • 高校生の範囲で見つける…だが意味が無い
  • 三尊の渦中にいるトレーダーは何を考えているか
  • 発見するのは簡単だが単に使ってはいけない

 

高等学校で習う範囲でやるなら「極大と極小」だ。ググれば答えは見つかる。

極大値,極小値(極値)

 

微分して表を埋めてゼロと斜め矢印のところが極大と極小。要するに二次微分値がゼロになるところを探す。ところが株価だとうまくいかない。

 

なぜか。

 

株価は離散関数だ。連続関数ではない。連続ではないから微分(微小時間の前後で差分を取ること)が出来ない。人間に極大と極小が見えているのは離散関数を連続関数とみなしているからだ。

 

おそらく前日の株価と当日の株価が「見えない線で繋がっている」と見なしている。例えば移動平均線(MovingAverage)がその実装である。では1分足の300本移動平均なのか。1時間足の25本移動平均なのか。これは要求仕様である。

 

ツイートの図が日足チャートで破線が10円刻みだとしよう。レンジは170円だ。終値ベースで株価を書き出してみる。

 

12月1日,12月2日,12月3日,12月4日,12月5日,12月6日,12月7日,12月8日,12月9日,12月10日,12月11日,12月12日,12月13日,12月14日,12月15日,12月16日,12月17日,12月18日,12月19日,12月20日,12月21日,12月22日,12月23日,12月24日,12月25日,12月26日,12月27日,12月28日,12月29日,12月30日,12月31日,1月1日,1月2日,1月3日,1月4日,1月5日,1月6日,1月7日,1月8日,1月9日,1月10日,1月11日,1月12日,1月13日,1月14日,1月15日,1月16日,1月17日,1月18日,1月19日,1月20日,1月21日,1月22日,1月23日,1月24日,1月25日,1月26日,1月27日,1月28日,1月29日,1月30日,1月31日,2月1日
1085,1085,1073,1060,1060,1100,1089,1078,1082,1057,1041,1047,1018,1047,1037,1052,1058,1057,1052,1054,1058,1081,1090,1121,1093,1089,1093,1094,1077,1085,1096,1100,1120,1110,1107,1135,1136,1121,1102,1090,1100,1081,1067,1081,1083,1093,1088,1075,1069,1081,1082,1075,1080,1097,1086,1075,1052,1050,1022,1025,1041,1038,1065

 

折れ線グラフで確認。

f:id:manie:20141203113458p:plain

 

3日移動平均線と9日移動平均線を引く。エクセルでsumれば簡単。

f:id:manie:20141203115733p:plain

 

3日MAでは山と谷が多すぎるが9日MAだとやや少ない感じだ。

9日MAで極大と極小を求めてみる。

 

株価終値と9日MA微分のグラフを作成。(微分は当日終値-前日終値で近似)

緑色の9日MA微分は右軸を参照。

f:id:manie:20141203211001p:plain

緑線がゼロをまたぐところに注目する。

株価と9日MAの山谷が合致したのが赤丸。見つけられなかったのが黄丸。

f:id:manie:20141203211915p:plain

黄丸が見つからなかったのは「9日MAの山と谷ではない」からだ。

また「ゼロにタッチして戻る」ところは山谷山とか谷山谷になる。短期的なレンジ相場と見ることが出来る。

 

極大と極小の考え方でできるのはここまでだ。大きな問題を発見出来る。

  • グラフの右端で移動平均(そして微分値)が消失する
  • 山と谷を発見出来るMAの日数調整が必要

 

移動平均値の定義から言って「あぁ、ここが高値だったのか」と分かるのは4日後だ。4日遅れの空売りで利益が出るほど甘くない。

 

トレーダーにとってチャートの右端でMAが消失するのが最悪だ。だが移動平均線はあらゆるチャートソフトで右端まである。

 

なぜか。

 

トレーダーがいつもみているMAは「意図的に右にずらされている」のだ。ほとんどの人は気付いていない。当たり前のことなのになぜか気付かない。

 

高校生が作る移動平均

f:id:manie:20141203115733p:plain

トレーダーが使う移動平均。同じものを右にずらしただけ。計算方法も同じ。

f:id:manie:20141203213424p:plain

MAがどれほど「虚構」なのかよくわかる。「機能する」など詭弁だ。チャートと合致するMAを後から見つけているだけだ。

 

ではどうするのか。トレーダーはどうやって三尊を定義して「使って」いるのか。どんな秘密があるのか。

 

秘密はない。

 

数日のスイングトレードを狙って順張り買いから三尊を発見して売りに転じるまでの私の考えを紙芝居で示す。

 

あらすじ

  • セットアップで買いを決断しタイミングを探す(後述)
  • 買いを入れる
  • 損切り利食いをする
  • 三尊が出現し、セットアップの買い根拠が崩れる
  • 売りタイミングを探す
  • ……

 

最初に私は買いタイミングを探している。すると株価は重要な局面に差し掛かる。

f:id:manie:20141203220449p:plain

高値を更新出来ずにもたもたしているが、もし高値を更新したら「本格的な上昇」になるのではないかと考える。高値更新タイミングで「買い」を入れるために待つ。

 

買った。損切りレジスタンスラインを越えた日の安値を割った時点だ。

f:id:manie:20141203231728p:plain

 

その後、株価は下落。損切りとなる。

f:id:manie:20141203231914p:plain

 

だがまだ買いのタイミングを探している。

 

暫定安値を割り込むようなら「買おうとする行動」の否定となる。まだ買ってはいけない。反発を待つ。

f:id:manie:20141204003611p:plain

 

来た。反発だ。買いを入れる。損切りは前日の安値だ。

f:id:manie:20141204003746p:plain

 

下落により損切り。まだ買い目線だがかなりギリギリのエリア。

f:id:manie:20141204003900p:plain

暫定安値を割り込んだ。もう「買い目線」ではなくなる。上昇か下降かのトレンドを見極める行動に切り替わる。

f:id:manie:20141204004024p:plain

だから反発しても買わない。いまはレンジをどちらに抜けるかを見極める時期。

f:id:manie:20141204004239p:plain

しばらく様子を見ていたら暫定安値を大きく割り込んだ。これは「売り戦略」のサインだ。タイミングを待つ必要がある。あるいは打診売り(ちょとだけ売る)を行う。

f:id:manie:20141204004423p:plain

 

売り戦略を決断したサポートラインがレジスタンスになる時がチャンスだ。いまは本格的に売る時ではない。いずれ株価が上昇して失速するところで売りを入れれば良い。

 

反発だ。しばらく反発上昇が続くのを待ってから下落に乗るチャンスを待つ。

f:id:manie:20141204004621p:plain

大きく反発してきた。チャートはここで終了している。

f:id:manie:20141204005122p:plain

この後、かつてサポートラインだったものがレジスタンスラインに変化して下落するのが教科書通りだ。うまく乗れればかなりの利益になる。が、なかなかそうはならないだろう。レジスタンスラインとなるはずの価格を超えて上昇するようなら「様子見」に戻る。

 

ではセットアップとして「買い戦略」だった根拠はなぜか。三尊を「使う」定義からである。

 

三尊はトレーダーのトレード期間より長い視野で相場を観測した時の「転換を示すチャートパターン」である。だからチャートパターンを発見するだけでなく「すでに(トレーダーから見て)長期の上昇トレンドが継続している」必要がある。私は順張りなので「買い」なのである。

 

私はたまたま上昇トレンドを中指(fractals)で定義しているトレーダーである。中指の序列が旧高値<新高値であり旧安値<新安値であれば上昇トレンドである。三尊は中指の序列が崩れることそのものである。

 

そして三尊は高値圏で出現するのが望ましい。高値圏に無い三尊は転換ではないので買いから空売りへの戦略変更はしない。高値圏に無い三尊は「上昇トレンド中の様子見時期」にするために使っている。ダマシ三尊だった場合にエントリーするとサンプルのようにひたすらやられまくるからである。

 

以上がセットアップである。

 

 

では機械的に三尊を見つけるにはどうすればいいのだろうか。システムトレード用にプログラムは組めるのだろうか。

 

インジケータとしてはfractalsを使えば良い。そんなに難しいものではないので自作することも可能だろう。重要なのは山と谷を見つけるための期間である。数日のスイングトレーダーが5分足に三尊を見つけても無視である。またデイトレーダーは週足に三尊が出現しても無視である。サンプリング定理から言えば主なトレード期間の2倍ぐらいで設定すべきであろう。

 

うまく中指を見つけたら序列を調べれば三尊を発見出来る。高値中指と安値中指の序列が逆になったところが三尊である。

 

EAを作ったり売買ルールに組み込む場合は2つの留意点がある。

  • 上昇トレンドの終盤の高値圏で出現していること
  • 出現してすぐに仕掛けないこと

 

上昇トレンドの定義はトレーダーによって異なる。また高値圏での転換サインもさまざまものがある。オシレータのダイバージェンスグランビルの法則などが有名である。

 

すぐに仕掛けないのも重要である。三尊はダブルトップの発展形であるから「直近安値を割り込んだら売る」を繰り返すとレンジ相場に入った場合に全敗してしまう。しかも高値圏であるために上昇トレンドが継続する場合すらある。打診売買で利益がでても所詮は打診程度の利益しか生まない。

 

実際にプログラムする場合はインジケータで発見出来ない中指をどうやって定義するかにかかってくるはずだ。右端にある今日の株価が中指となるのかならないかを決定することと仕掛けるか様子を見るかが同じ結論になる。

 

私は直前に現れた高値中指と安値中指を考慮して仕掛けを決めている。あまり複雑にしても「迷うだけで意味が無い」と考えている。