CQGネタ(Level関数)

  • 投稿日:
  • by
  • カテゴリ:

20050512GapWeek.gif

セミナーで提供しているGapWeekマクロは、30分足ベースに1週間の上値/下値抵抗線を引くことができる。

GapWeekは本来イントラデイチャート向けに設計したものだが、日足チャートに設定すると、その日の最後の値でラインが引かれる。

2004年8月日本株ライブ掲示板で活躍中のよん様は、エントリー前の確認でこれを使われている。GapWeekのラインを実直に使うとハイローバンド・ギャッププレイのエントリー銘柄が限られてきてしまうので、参考程度に見ているようだ。最初の頃の投稿を見てみるとGapWeekのラインを引いているので、この頃は常に引いていたのかもしれない。

注)すみません、間違っていました。使っていたのはPeakBdyで、パラメータを minmax=0 に設定。チャートは次のようになりますね。以前の情報がそのまま頭に残っていました..

20050512PeakBdy.gif

 

次のチャートには、CQGの組み込み関数である、”Level” をPriod5で設定してみた。Level関数はPriodで指定した期間の高値や安値を設定することができる。つまり、n日高値というのを表示できる。

20050512Level5.gif

 

更に、ローソク足本体で引いたのは次のチャート。PriceにUser Valuesのdtn.CndlMaxおよびdtn.CndlMinを設定している。

20050512Level5-2.gif

 

ちょっと使いにくいので、Custom Studiesで1行マクロを書いて表示を1本分遅らせてみる。Level関数にはMAのようなOffsetパラメータが存在しないが、マクロで簡単に実現できる。

20050512Level5-3.gif

 

で、このチャートのラインだがSwing Scanイメージでは次のようなアイコンを表示している。

20050512SwingScanImage.gif

どれに対応しているかは、容易に想像できると思う。

 

CQGは、こういったことを容易に記述できる、シンプルでパワフルなFormula機能が用意されている。

プログラムは難しいというイメージでしり込みされる方が多いのだけど、試してみるとBasicより遥かに簡単。というよりこんな機能も無いの?というところもあるし、ドキュメントに書かれていないじゃないという機能もある。

Let's try FORMULA !

参考)最近私がよく使うundocumentedなFORMULAに := 式がある。

例えばローソク足本体の高値を取得するには次のように記述する。式の終わりはセミコロン(;)で区切る。

ch:=max(Open(@),Close(@));

変数chはインラインマクロのように振舞うので、その後の式で参照すると式をシンプルにすることができる。この機能はCQG社よりサンプル式を頂いてから使い始めた。CQGは奥が深い。