FXシステムトレードの作り方 TOP > :02FXシステムトレード中級編 >
標準偏差を使ったストップを考える1改訂版
無料で差し上げます!
システムトレードの作り方エクセルファイル
・MACDのトレンド判定、RSIの作り方
・ストキャスティクスの作り方
・ボラティリティストップの作り方
・トレイリングストップの作り方
※標準偏差を使ったストップについて掲載しましたが、ご指摘を受け、データ計算方法を大幅に変更させていただきました。
シュウ様 心より感謝致します!!
今回は、統計学の標準偏差を使ったストップについて考えてみようと思う。
標準偏差とは、価格が平均からどの程度散らばっているのかを表す値のことである。
自然界の分布をグラフにすると、平均付近のデータが多く、平均から離れると急激にデータが少なくなり釣り鐘のような形になる。これを正規分布という。
正規分布の場合、-1σ から +1σ の間に全体の68.23%が分布し、-2σ から +2σ の間に全体の95.44%が分布している。
標準偏差を使ったストップとは、市場価格が上のグラフのような正規分布になると仮定し、標準偏差の数値から日々のノイズの外側にストップを置こうとするものである。
では、市場心理が強くはたらく市場価格に、自然界のような正規分布が成立するのだろうか?
もし成立しないのならどんな形の分布になるのだろうか???
疑問に思ったので確かめてみようと思う。
1.四本値を用意する
今回は USD/JPN の2004年5月19日から2008年3月21日のデータを用意した。
2.HV(変動率)を計算する
・F1にHVと入力する
・F3に「=(E3-E2)/E2」と入力する
これは、(今日の終値 - 昨日の終値) ÷ 昨日の終値 を計算している
Fの数式をデータのある最終行までコピーする
3.データ区間を作成する
価格データの分布をみるためのデータ区間を作成する
・HV(F)の最大値を求める(I1)
=MAX(F3:F1001)
・HV(F)の最小値を求める(I2)
=MIN(F3:F1001)
・HV(F)のデータの数を数える(I3)
=COUNT(F3:F1001)
・データ数のルートを計算する(I4)
=I3^(1/2)
・最大値と最小値の差を計算する(I5)
=I1-I2
・データ区間の幅を計算する(I6)
=I5/I4
・最初のデータ区間のを計算する(I8)
=I2-0.01%/2
・次のデータ区間を計算する(I9)
=I8+I$6
I9の数式を最大値が超えるまで下へコピーする。
4.ヒストグラムで分析する
[データ]→[データ分析]→[ヒストグラム]を選択する
小さなウインドウが開くので、入力範囲にHV(F)を、データ区間に作成したデータ区間(I)を指定する
OKを押すと新規ワークシートに頻度が集計される
集計された頻度をグラフにしたものが下の図である。
標準偏差を使ったストップの考え方2改訂版
前回 USD/JPN の価格変動が正規分布するのかということを検証するために、ヒストグラムでデータ分析してみた。その結果、中央値 -0.011%を中心に正規分布近い分布になっていることがわかった。
USD/JPN
USD/JPN だけでは分かりにくいので、ユーロ/JPN と 日経平均先物225についてもヒストグラムを作成してみた。
EUR/JPN
日経225先物
次に、全体に占める割合について比較してみる。
正規分布と比較すると、-1σ~1σ について日経225について5%以上の差が発生しているが、他の2銘柄は3%以内の差である。
また、-2σ~2σについては、どれも2%以下の差であり誤差の範囲内と考えられるかな。。。
こうして見ると上記3銘柄はどれもゼロに近い中央値を中心に極めて正規分布に近い分布になっているといえるだろう。
次回は、標準偏差を使ったストップを検証してみようと思う。
標準偏差を使ったストップの作り方改訂版
今回は、「移動平均クロスを使ったシステムトレード」の損切り部分を標準偏差を使ったストップに変更してみようと思う。
標準偏差を使ったストップのルールは下記の通り
買いの時、約定価格 - (約定価格 × 2標準偏差)を損切りラインとし、
売りの時、約定価格 + (約定価格 × 2標準偏差)を損切りラインとする。
移動平均クロスのトレンド判定で作成したエクセルファイルを使って、その続きから説明することとする。
I シグナル
トレンド判定がはじめて反転する日に(例ではI48)
=IF(L48="",IF(AND(H47<>H48,H48="上昇"),"buy",IF(AND(H47<>H48,H48="下降"),"sell","")),"")
ポジションLが空白の時、前日と当日のトレンド判定Hが違いかつ、当日が上昇ならbuy、前日と当日のトレンド判定Hが違いかつ当日が下降ならsell、それ以外は空白
J 約定価格
シグナルがはじめて点灯した次の日に(例ではJ49)
=IF(OR(R48<>"",V48<>""),"",IF(I48="sell",B49,IF(I48="buy",B49,J48)))
損切りシグナルRが空白じゃない、または利食シグナルVが空白じゃない場合は空白、シグナルIがsellなら始値、シグナルIがbuyなら始値、それ以外は前日の約定価格J
K 日数
シグナルがはじめて点灯した次の日(例ではK49)
=IF(J49="","",IF(J49<>J48,1,K48+1))
約定価格Jが空白なら空白、当日の約定価格Jが前日の約定価格Jと違うなら1、同じなら前日の日数K+1
L ポジション
L49
=IF(K49="","",IF(I48<>"",I48,L48))
日数Kは空白なら空白、前日のシグナルIが空白じゃないなら、前日のシグナル、空白なら前日ンおポジションL
M 最悪含損
M2に10000
M49
=IF(L49="sell",(J49-C49)*M$2,IF(L49="buy",(D49-J49)*M$2,""))
ポジションLがsellなら(約定価格J - 高値) × 1万通貨、ポジションLがbuyなら(安値 - 約定価格J) × 1万通貨、それ以外は空白
N HV
N3
=(E3-E2)/E2
(当日の終値 - 前日の終値) ÷ 前日の終値
O 標準偏差
O27
=STDEV(N3:N27)
過去25日間の標準偏差
P 損切価格
P49
=IF(AND(K49=1,L49="sell"),J49*(1+O49*2),IF(AND(K49=1,L49="buy"),J49*(1-O49*2),IF(K49="","",P48)))
日数Kが1、かつポジションLがsellなら、約定価格 × (1 + 標準偏差O × 2)、日数Kが1、かつポジションLがbuyなら、約定価格 × (1 - 標準偏差O × 2)、日数Kが空白なら空白、それ以外なら前日の損切り価格
Q損切り額
Q49
=IF(L49="sell",(J49-P49)*M$2,IF(L49="buy",(P49-J49)*M$2,""))
ポジションLがsellなら、(約定価格J - 損切価格P) × 1万通貨、ポジションLがbuyなら、(損切価格P - 約定価格J) × 1万通貨、それ以外は空白
R 損切シグナル
R49
=IF(M49<Q49,"損切り","")
最悪含損より損切価格が大きいなら損切り、それ以外は空白
S 含み損益
S49
=IF(L49="sell",(J49-E49)*M$2,IF(L49="buy",(E49-J49)*M$2,""))
ポジションLがsellなら、(約定価格J - 終値) × 1万通貨、ポジションLがbuyなら、(終値 - 約定価格J) × 1万通貨、それ以外は空白
T 利食価格
T2に3%
T49
=IF(K49="","",IF(AND(K49=1,L49="sell"),J49*(1-T$2),IF(AND(K49=1,L49="buy"),J49*(1+T$2),T48)))
日数Kが空白なら空白、日数Kが1かつ、ポジションLがsellなら、約定価格J × (1 - 3%)、日数Kが1かつ、ポジションLがbuyなら、約定価格J × (1 + 3%)、それ以外は前日の利食い価格
U 利食い額
U49
=IF(L49="sell",(J49-T49)*M$2,IF(L49="buy",(T49-J49)*M$2,""))
ポジションLがsellなら、(約定価格J - 利食価格T) × 1万通貨、ポジションLがbuyなら、(利食い価格T - 約定価格J) × 1万通貨、それ以外は空白
V利食シグナル
V49
=IF(AND(R49="",L49<>"",S49>U49),"利食い","")
損切りシグナルが空白かつ、ポジションLが空白じゃなく、含み損益が利食い額より大きい場合、利食い、それ以外は空白
W損益
W2に手数料1050
W49
=IF(R49="損切り",Q49-$W$2,IF(V49="利食い",U49-W$2,""))
損切りシグナルRが損切りなら、損切り額 - 手数料、利食いシグナルVが利食いなら、利食い額 - 手数料、それ以外は空白
これ以降の説明については、以前にも説明しているのでここではしない。
標準偏差を使ったストップの評価については下記の通り
累積損益の推移は下記の通り
次は、利食いの役割へどうぞ!
ExcelVBAで自作する売買システム自動大量製造マシン
テキストの目的
・ExcelとVBAでシステム構築ツールを作れるようになること
・付属のExcelブックを使えるようになること
9種類のトレンドフォロー系のエントリー戦略
5種類のイグジット戦略
ドリームゲートFX 4つのシステムで安定運用
ドリームゲートFXの成績
・ 1月 318pips
・ 2月 272pips
・ 3月 83pips
・ 4月 -26pips
・ 5月 552pips
・ 6月 155pips

