システムトレード用の開発ツールです。エクセルのVBAを駆使して最高のパフォーマンスを目指します。基本は無料
3点チャージ投資法は、明地文男氏が考案した投資法で、以下の3つの売買シグナルが重なった時点で売買しようというものです。これをセルレーダーにて表現します。
発動条件は以下になっています。
1.26日移動平均線乖離率が-15%以下で買い、+15%以上で売り
2.RSI14日が25%以下で買い、70%以上で売り
3.ボリュームレシオ(VR)25日が70%以下で買い、250%以上で売り
では、始めます。
1.乖離率は、指標→オシレータ系→乖離率を選択します。基準日数を26日に変更し、「実行」を押します。乖離率の計算式はメインページに直接導入されるので、グラフ領域の2以上の場所に来るように、調整します。調整の仕方は、指標をグラフに反映させるで確認してください。グラフ2は出来高関係に使うので、グラフ3領域のAF列がいいかと思います。
2.RSIです。指標→オシレーター系→RSIを選択します。基準日数はデフォルトの14日にし、「実行」します。これは別シートに表示されます。別シートとグラフ領域の関連づけは、、指標をグラフに反映させるを参考にしてください。グラフ3領域のAI列にしました。
3.のボリュームレシオです。指標→オシレーター系→ボリュームレシオを選択し、基準日数を25日に変更します。グラフ2領域のZ列にしました。
注意:先頭行とは、株価の始まりの2002/02/07日が34行目ということです。
4.今回はそれぞれに条件があります。まず、26日乖離率は-15%以下で買い、+15%以上で売りが発動されます。26日乖離率はAF列に表示されているので、買いシグナルの先頭の34列目関数式は、
AF34<-15
「AF34の値が-15以下なら」になります。また、売りの場合のシグナルは、
AF34>15
「AF34の値が15以上ならば」となります。
しかしながら、これだと日数が15日に固定されて使い勝手が悪いので、15日を「変数化」できるように改造します。グリーン色の領域が「自由領域」となっています。この領域を利用して、15日を変数化します。まず、自分で分かるように何の数字なのかをAJ2に記入します。「買い乖離率」とでもします。そのすぐ下のAJ3は「売り乖離率」と記入します。そして、こんどは「買い乖離率」のすぐとなりのAL2に「-15」と記入しておきます。同じように「売り乖離率」のとなりのAL3に「15」と記入します。
こうしておけば、
AF34<AL$2
「AF34の値がAL2の値以下ならば」と変数化できて、AL2の数字を変化させるだけで、すべての値が再計算しやすくなり、色々な応用がききます。
同じ要領で、売りの場合は、
AF34>AL$3
「AF34の値がAL3以下ならば」になります。ここまでの動きをビデオでまとめてます。確認してください。
RSIとVRも同じような要領で処理していきます。RSIの場合は25%以下で買い、70%以上で売りなので、
AI34<25
で買いシグナル。
AI34>70
で売りシグナルになりますが、乖離率と同様に「変数化」処理します。
AI34<AL$4
で買いシグナル。
AI34>AL$5
で売りシグナルです。VRも同じ用に処理します。買いは70%以下、売りは250%以上ですが変数化して、買いは、
Z34<AL$6
売りは、
Z34>AL$7
になります。
ここまが用意の段階です。いよいよ実際に「買い」「売り」のシグナルが出るように今説明したそれぞれを1つのかたまりの数式にまとめます。まず、指標→その他補助指標→基本的な売買式を選択し、「基本の売買式」を選択します。この関数式はいわゆる入れ子の役割をします。
買いの計算式の先頭BG34に、
=IF($C34>AO$9,IF(AND($BF33=0),"買い",""),"")
買いの手仕舞い1の先頭BH34に、
=IF($C34>AO$9,IF(AND($BF33=1),"手仕舞い",""),"")
売りの計算式の先頭BU34に、
=IF($C34>AO$9,IF(AND($BT33=0),"売り",""),"")
売りの手仕舞い1の先頭BV34に、
=IF($C34>AO$9,IF(AND($BT33=1),"手仕舞い",""),"")
と自動記入されます。その中AND以下の()部分。それぞれ赤くなっている部分に注目してください。この部分にそれぞれのシグナルに対応する式を順番に入れていけば売買式はそれぞれの売買式は完成します。
買いも売りも同じ作業の繰り返しなので、「買い」のみで説明していきます。まず、3点チャージの発動条件ですが、分かりやすいように日本語で考えてみます。
「もし、対応する値が、26日乖離率の値が-15%以下で、且つ、14日RSIの値が25%以下で、且つ、25日VRが70%以下」ならば、買いです。これをエクセル関数で表すと、
AF34<AL$2,AI34<AL$4,Z34<AL$6
になります。これを買いの入れ子である、
=IF($C34>AO$9,IF(AND($BF33=0),"買い",""),"")
の赤の部分の$BF33=0以下に入れます。
=IF($C34>AO$9,IF(AND($BF33=0,AF34<AL$2,AI34<AL$4,Z34<AL$6),"買い",""),"")
これで3点チャージ法の「買い」のシグナルは完成です。手仕舞いの場合は、「もし、対応する値が、26日乖離率の値が15%以上で、且つ、14日RSIの値が70%以上で、且つ、25日VRが250%以上」ならば、手仕舞いです。これをエクセル関数で表すと、
=IF($C34>AO$9,IF(AND($BF33=1,AF34>AL$3,AI34>AL$5,Z34>AL$7 ),"手仕舞い",""),"")
になります。これで買いのシグナルは完成しました。ここまでの作業をビデオで確認してください。

投稿者 システムトレーダー壱式 : 2009年02月18日 13:35
このエントリーのトラックバックURL:
http://systemtrader.info/cgi/mt/mt-tb.cgi/121