忍者ブログ
EXCELを使ったバックテストの方法を紹介します。
[1] [2]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

今回紹介する取引ルールは7日間移動平均が14日間移動平均を上回ったら当日の始値で買い、逆に7日が14日を下回ったら当日の始値で決済すると同時に新規で売るというものです。
つまり、ゴールデンクロスで買い、デッドクロスで売るというものです。

この売買手法を2007年のドル円で検証し、どれくらいの利益が出るかを調べます。
ここまで出来るようになったら他の手法への応用が可能になると思います。
なお、エクセルの基本操作が出来る人を対象としています。
PR
まず初めに、今回サンプルとして使用するデータを準備して下さい。
データは2007年1月から6月のドル円を用います。
株式投資をしたいという人も、ちょっと我慢してドル円で練習して下さい。株にも応用出来るので心配いりません。
データはコチラです。

手順① 表示されたページの文字を全て選択し、コピーします。
手順② エクセルを起動します。
手順③ コピーしたデータを、エクセルの「A1」セルに貼り付けて下さい。この時点では変な区切りになっていますので、改善する必要があります。
まずA列全体を選択し、その状態でエクセルのメニューバーの「データ」をクリックし、「区切り位置」をクリックして下さい。
「カンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」にチェックを入れ、「次へ」を選択します。
「カンマ」「スペース」にチェックを入れて「完了」をクリックして下さい。
これで正しく表示されるようになったと思います。
もしダメなら
コチラを参考にして下さい。

以上でデータの取得は完了です。
最後に全てのセルを選択し、小数点以下2位までを表示させるよう、書式設定をしておいて下さい。

それでは移動平均を求めて行きましょう。
まずは7日間の方からです。
手順①セルF9に
=AVERAGE(E2:E8)
と入力します。
118.87
と表示されればOKです。

手順②
セルF9を、最後の行までコピーする。
これで6月末まで7日間移動平均が表示されました。

手順②今度は14日間の移動平均を求めます。
セルG16に
=AVERAGE(E2:E15)
と入力し、セルG16を最後の行までコピーします。
これで7日間、14日間の移動平均が表示されました。
それでは2つの移動平均をもとに、売買シグナルを表示させましょう。
手順①
セルH16に、
=IF(F16>G16,"買い","売り")
と入力します。
これは、「F16(7日移動平均)がG16(14日移動平均)を上回っていたら「買い」と表示させる。それ以外ならば「売り」と表示させる。」という意味です。
手順②
セルH16を最後の列までコピーします。

これで売買シグナルが表示されるようになりました。
しかしこれでは「売り」とか「買い」がたくさん表示されてて不都合です。
なので見やすくしたいと思います。

手順③
セルK1に「ポジション」と入力します。
手順④
セルK17に
=IF(H16=H17,"",H17)
と入力します。
これは「H16とH17が同じならば空白を、違っていたらH17を表示させる」という意味です。
そしてK17を最後の行までコピーします。
これで、売買のタイミングが分かるようになりました。
売買シグナルに応じて約定価格を表示させたいと思います。
手順①
セルⅠ31に
=IF(K31="買い",B31,"")
と入力します。
これは、「K31(ポジション)に「買い」と表示されていたらB31(当日の始値)を表示させる。「買い」じゃなければ何も表示させない。」という意味です。

手順②
今度はJ31に
=IF(K31="売り",B31,"")
と入力します。
これは、「K31(ポジション)が「売り」ならばB31(当日の始値)を表示させる。「売り」じゃなければ何も表示させない。」という意味です。

手順③
今入力したⅠ31とJ31を最後の行までコピーします。

これで売買のタイミングに応じて約定価格が表示されるようになりました。


忍者ブログ [PR]
カレンダー
04 2025/05 06
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
フリーエリア
最新コメント
最新トラックバック
プロフィール
HN:
No Name Ninja
性別:
非公開
バーコード
ブログ内検索
アーカイブ