フラルのFXシステムトレード研究室

FXで機械学習トレードを実行中

MT4 の記事一覧

MT4用:尖度インジケータ

2013.04.06 (Sat)
MT4用:尖度インジケータ

130406i.png


日々の収支報告に時々、「苦手相場」だとか書いています。
何を見ているかと言えば、主に尖度です。
値動き幅のヒストグラムを見たときに、
どれだけ正規分布からかけ離れてるかを見ているわけです。

相場がランダムウォークであれば、尖度は0です。
(3と言う設定のもありまうが、ここでは0のタイプです)
しかし、いろいろ調べてみればわかるとおり、
相場は正規分布していません。


130406d.png
とある市場のKurtosis = 27.4593
データ数 = 12036
(R統計で分析しました。)
メモ:Rで尖度を求めるには、パッケージ e1071 にある kurtosis()関数が使えます。


この尖度をどう使うかが問題なのですが、
今回は、尖度を用いたエントリーの話ではなく、
運用モデルの状況把握についてのお話にしたいと思います。


フラルのシステムは、尖度が出たときに儲かって、
尖度が出ないときに損をする傾向にあります。
(一般的に考えると、これはトレンドフォローになります。)

運用した結果、成績が悪いとします。(最近、悪いです...おいといて...)
このとき悪かった期間の尖度を調べます。
もし尖度が低かったりすれば、たまたま尖度が低かったので
成績も悪かったとなります。
一方、尖度が高いにもかかわらず、成績が悪いとすれば、
システムの異常や、運用ミス、相場の性格変化など、
運用チェックや、根本的な戦術見直しが必要と判断するわけです。
(実際には感情が入ってとても難しい...。)

※尖度が低いときに機能するモデルを運用しているならば
※逆の使い方になります。


さて、そんな目的で、時々この調査をするのですが、
エクセルにデータを貼り付けて、Kurt()関数で様子を見る手作業をやっていました。
MT4のインジケータで尖度が出るやつが欲しいなということになりました。
そしてネットで探してみたところ、
3分で見つけられなかったので、作ってみることにしました。
(もっと探せばあると思うけど、自分で作ってみたかっただけかも。
後述のフィルターモードもやってみたかったし。)

MT4(MetaTrader4)用のインジケータを作りましたので、
興味のあるかたは使ってやってください。
↓ダウンロード
FraleKurtosis130406a.zip


もちろん、十分なテストをしたわけではありませんので、
間違いがあっても、許してください。
(あくまでも自己責任で。)
ミスがあったらご指摘くださると、助かります。


おまけ:
個人的な興味でフィルターモードをつけました。
尖度を計算する前に、最大値と最小値を入力から除外して計算するモードです。
興味のある方は、KurtosisPeriod1とKurtosisPeriod2の期間を同じにして
FilterModeを片方だけONして違いを見てみてください。
(フィルターモードの意味するところは自分で考えてね~)


オプション設定:
KurtosisPeriod1 期間設定その1(赤色用)
KurtosisPeriod2 期間設定その2(緑色用)
ExcelMode マイクロソフトExcelのKurt()関数と数字をあわせる場合true
FilterMode1 フィルターモードその1(赤色用)
FilterMode2 フィルターモードその2(緑色用)


スポンサーサイト
 | HOME |