文系人間のためのシステムトレーダー養成所 システムトレードのためのエクセル講座 第一回 
--------

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
2009-04-28

システムトレードのためのエクセル講座 第一回 

皆さんこんにちわ。

メタトレーダー講義の翻訳のほうも一区切りつきましたので、エクセルの売買検証方法について取り上げていきたいと思います。

メタトレーダーと違ってエクセルでの売買検証はとても簡単です

まったく初心者の方でも、簡単なものならば、30分で売買検証できます

メタトレーダーには様々な関数やルールがありました。OrderSelect関数やint double 変数、配列、for OrderSend関数等など・・・。
やはり敷居は高いと思います。
しかしエクセルは敷居が低いです。
なぜなら、IF関数が使いこなせるようになるだけで売買検証することが可能だからです。

メタトレーダーやってみたけれどもよくわからなかったという方は、まずエクセルで売買検証をして売買検証の楽しさを味わってみるのはどうでしょうか。

ちなみに僕は最初メタトレーダーを挫折して、エクセルで売買検証をし、モチベーションをあげてまたメタトレーダーに挑戦したという経緯を持っています。

このコンテンツは初心者向けに、エクセルを全くいじったことがない方でも売買検証できるように作成していきたいと思います。いうなれば本サイトの初級編になりますが、上級者の方でもエクセルシートを使いこなせるようになることはメリットがあると思います。

売買検証はとても楽しいものですし、考えているよりも手軽にできることを伝えられれば幸いです。
それでは始めましょう。

          システムトレードのためのエクセル講座 
                       第一回
                    ヒゲ逆張りシステム

今回は早速、売買検証をやってみたいと思います。30分くらいでできると思いますので頑張りましょう。

ロジック 一定以上の髭が出現したら逆張り方向でエントリー、一定の期間保有したら決済。

簡易コード表
1, G10に =IF(AND(F10>C10,D10-F10>0.4),1,"") と打ち込む。
2, H10に IF(AND(F10<C10,F10-E10>0.4),1,"")と打ち込む。
3, I10に =IF(G10=1,C11-C12,0)と記述。
4, J10に =IF(H10=1,C12-C11,0)と記述。
5, K10に =I10+J10+K9と打ち込む。
6,G10を選択し、枠の右下にカーソルを合わせる。
7,黒の十字カーソルになっている状態でダブルクリック。
8,以下H10I10J10K10にも6,7,の手順を行う。



ステップ1 データ取得
売買検証をするためにはまず時系列データを取得する必要があります。

時系列データの取得方法は次回の講義に説明いたしますので、今回はこちらを右クリックで名前をつけてリンク先を保存を選びDLしてください。
ポンド円の1時間足の2008年4月7日2009年1月30日までの時系列データが入っています。

本来はエクセルファイルをアップロードしたかったのですが、FC2ブログではファイルの形式上アップロードできませんでした。

ですのでこのデータをエクセルにコピーして頂く必要があります。

まずDLしたテキストファイルを開いていただいたら
①Ctrl+Aを押す。   ファイルの内容が全て選択されます。
②Ctrl+Cを押してコピー指定をする。
③自身のエクセルを開きA9を指定してCtrl+Vで貼り付ける。
Excel1.png
以上でデータの取得は終了になります。

ステップ2 エントリー時のサインを出す。

エントリー条件は以下の二つです。
①ローソク足が陽線で一定幅以上の上ヒゲがでる。
②ローソク足が陰線で一定幅以上の下ヒゲがでる。

逆に言うと
・ローソク足が陰線で一定幅以上の上ヒゲがでた時
・ローソク足が陽線で一定幅以上の下ヒゲがでた時
では逆張りでなくなってしまうのでエントリーしません。

まずは①ローソク足が陽線で一定幅以上の上ヒゲがでる。から見ていきましょう。

エントリーサイン記述方法
1, G10を選択
2,=IF(AND(F10>C10,D10-F10>0.4),1,"")と打ち込む。
3,G10を選択し、枠の右下にカーソルを合わせる。白の十字カーソルから黒の十字カーソル変化する
 場所です。下の図をご覧ください。
4,黒の十字カーソルになっている状態でダブルクリック。
Excel2.png


解説
2,=IF(AND(F10>C10,D10-F10>0.4),1,"")
関数を説明した後で取り上げます。

4,黒の十時カーソルになっている状態でダブルクリック。
これを行うことで左隣にあるセルに対応した数だけ、相対的にコピーを実行してくれます。
相対的というのは、下の図を見て頂きたいのですが、例えばG11を見て頂くと、F11は青に、E11は紫に、C11は緑に囲われていますね。
その色で囲われている情報は、値としてエクセルに記憶されているのではなく、相対的なセルの位置として記憶されるわけです。
F11>C11というのは、F11の方がC11よりも大きいというよりも、
現在選択されているセル(G11)から一つ左の値(F11)の方が選択されているセル(G11)の4つ左の値(C11)よりも大きい
というようにエクセルは処理していると言えます。
このお陰で、コピーしていくとG11と同じ処理をどの場所でも行ってくれるという非常に便利なことができるのです。EXcel3.png
____________________________________________________________________________________________
関数解説
今回使用したエクセル関数 IF AND について解説したいと思います。

IF
記述例 =IF(論理式,[真の場合],[偽の場合])
IFの後に括弧でくくり、その後コンマを2回使うことで式を三つにわけます。その三つの式は以下のようになります。
1,論理式。  条件式の役割を果たす。
2,[真の場合] 論理式の条件が満たされていたら実行する式
3,[偽の場合] 論理式の条件が満たされていない時に実行する式。

メモ:IFの論理式内でのみ使用する関数に AND OR NOT の三つがあります。

具体例
A=論理式 B=真の場合 C=偽の場合
=IF(A,B,C)
もし論理式Aに当てはまればBの式を実行し、当てはまらなければCの式を実行します。

AND
記述例 =AND(論理式1,[論理式2],[論理式3],・・・)

ANDの後に括弧でくくり、その中でコンマで式を区切っていくことによってIF関数の論理式をいくつでも増やすことができます。IFの論理式の中でのみ使用し、ANDの括弧内に入っている全て論理式を満たしたときのみ[真の場合]の式を実行し、一つでも満たしていなければ[偽の場合]の式を実行します。

具体例
A=論理式 A'=論理式2 B=真の場合 C=偽の場合 
=IF(AND(A,A')B,C)
もし論理式Aと論理式A'両方を満たせばBの式を実行し、そうでなければCの式を実行します。
____________________________________________________________________________________________

以上のことをおさえて頂いたところでもう一度2,=IF(AND(F10>C10,D10-F10>0.4),1,"")をみてみましょう。
=IF(AND(F10>C10,D10-F10>0.4),1,"")
=IF(AND(   A  ,   A'     ),B ,C)

メモ:Aは論理式 A'は論理式2 Bは真の場合 Cは偽の場合
         
A F10>C10    終値のほうが始値よりも大きい→ローソク足は陽線
A' D10-F10>0.4  高値と終値の差が0.4円以上→上ヒゲの長さは0.4円以上。
B 1         エントリーサインは1とする
C ""        空欄を入力します。

ローソク足が陽線かつ高値と終値の差が0.4円以上ならエントリーサイン1を入力し、そうでないなら空欄を入力します。

メモ:""は文字を入力する際に使用する鍵括弧みたいなものです。"エントリーサインはでませんでし
   た"とすることもできます。 今回は何も""の中にいれていないので空欄が入力されることになり
   ます。


次に②ローソク足が陰線で一定幅以上の下ヒゲがでる。エントリーサインを記述しましょう。

エントリーサイン記述方法
1, H10を選択
2,IF(AND(F10<C10,F10-E10>0.4),1,"")と打ち込む。
3,G10を選択し、枠の右下にカーソルを合わせる。
4,黒の十字カーソルになっている状態でダブルクリック。

解説
先ほどと変わった場所はF10<C10と、F10-E1の2ヶ所です。
=IF(AND(F10<C10,F10-E10>0.4),1,"")
=IF(AND(   A  ,     A'      ),B ,C)
         
A F10>C10        終値のほうが始値よりも小さい→ローソク足は陰線。
A' F10-E10>0.4     終値と安値の差が0.4円以上→下ヒゲの長さは0.4円以上。
B 1              エントリーサインは1とする。
C ""             空欄を入力します。

ステップ3 イグジッドのサインを出す
ロジック: エントリーサインがでた次の始値でエントリーし、エントリーした次の始値で決済。

ケース1:エントリー条件①の時のイグジッド(売り手仕舞い)
ケース2:エントリー条件②の時のイグジッド(買い手仕舞い)

ケース1からみていきましょう。
イグジッドサイン記述方法
1, I10を選択
2,=IF(G10=1,C11-C12,0)と記述。
3,I10を選択し、枠の右下にカーソルを合わせる。
4,黒の十字カーソルになっている状態でダブルクリック。

解説
=IF(G10=1,C11-C12,0)
=IF( A  ,B     ,C)

メモ:Aは論理式 Bは真の場合 Cは偽の場合
         
A G10=1    ローソク足が陽線で一定幅以上の上ヒゲがでた時のエントリーサインを確認
B C11-C12  次の始値(C11)でエントリーし、またその次(1時間後)の始値(C12)で決済。逆張り
          なので売りからはいります。ですのでエントリー(C11)-一時間後の始値(C12)にな
          ります。
C 0       エントリーサインが出ていないのなら損益は発生しないので0を入力。


次にケース2です。
イグジッドサイン記述方法
1, J10を選択
2,=IF(H10=1,C12-C11,0)と記述。
3,I10を選択し、枠の右下にカーソルを合わせる。
4,黒の十字カーソルになっている状態でダブルクリック。

解説
=IF(H10=1,C12-C11,0)
=IF( A  ,B     ,C)

メモ:Aは論理式 Bは真の場合 Cは偽の場合
         
A H10=1    ローソク足が陰線で一定幅以上の下ヒゲがでた時のエントリーサインを確認。
B C12-C11  次の始値(C11)でエントリーし、またその次の始値(C12)で決済。今度は買いから
          入るので、一時間後の価格が上の時に利益が入るわけです。ですのでC12-C11に
          なります。
C 0       エントリーサインが出ていないのなら損益は発生しないので0を入力。

ステップ4   損益を計算
お疲れ様でした。ここでついに、苦労が報われるときがきました!損益を計算しましょう。

損益計算記述方法
1, K10を選択。
2,=I10+J10+K9と打ち込む。
3,K10を選択し、枠の右下にカーソルを合わせる。
4,黒の十字カーソルになっている状態でダブルクリック。

解説
=I10+J10+K9
I10   エントリー条件①の損益
J10   エントリー条件②の損益
K9    累計損益を保持

ステップ5 グラフ作成。
Kの列はそのまま損益曲線になります。いよいよグラフにして結果を見てみましょう。
1,K10を選択。
2,Ctrl+SHIFT+↓を押す。
3,挿入タブのグラフ、折れ線を選択(左上のもので良いと思います)
4,作成したグラフを右クリック。切り取りを選択
5,Sheet3を選択
6,好きな場所で右クリック貼り付けを選択。
EXcel7.png

結果はなんと、綺麗な右肩下がり!


ステップ6 調整
綺麗な右肩下がり→反対で売買すれば綺麗な右肩上がりになる。

ということで、逆張りではなくて、順張りでやってみましょう。反対売買にすればいいだけなので以下の手順になります。

1, I10を選択
2,=IF(G10=1,C11-C12,0)→=IF(G10=1,C12-C11,0)に変更。
3,I10を選択し、枠の右下にカーソルを合わせる。
4,黒の十字カーソルになっている状態でダブルクリック。  
5, J11を選択
6,=IF(H10=1,C12-C11,0)→=IF(H10=1,C11-C12,0)と記述。
7,I10を選択し、枠の右下にカーソルを合わせる。
8,黒の十字カーソルになっている状態でダブルクリック。
9,K10を選択し、枠の右下にカーソルを合わせる。
10,,黒の十字カーソルになっている状態でダブルクリック。
   
グラフを見てください。きれいな右肩上がりの直線になりましたね。
EXcel8.png


結論。ヒゲが出た時の逆張りは危険。一般的な常識とは反対の順張りの方が利益が出る。
    一般論はあてにならない。自分で検証してみることが大事。


どうもお疲れ様でした。いかがでしたでしょうか。
何か質問が御座いましたらお気軽にお聞きください。
次回は時系列データの取得法について述べていきたいと思います。
最後までお読み頂きありがとうございました。

押していただけると大変励みになります。ありがとうございます。 人気ブログランキングへ

theme : FXでシステムトレード
genre : 株式・投資・マネー

コメントの投稿

管理者にだけ表示を許可する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。