「FX専業トレーダー生活」のブログに次のように書いてあります・・・
システムトレードは儲からない、バックテストなど意味がない(現実とかけ離れすぎ)。
そもそも、人の「裁量」部分があるから、ゴールドマンサックスもモルガンもシティも億単位の報酬払ってディーラー雇っている。
更に、トレードのやり方を教えるってのは、少なからず「自分の裁量」によるところがあって、単にバックテストをしただけで結果なんて出ない。
おっしゃる通り!
でも、アベノミクスですら勝てなかった私には、これしか無いのです。
インターネットで「システムトレード 手法」で検索すると、FX関連が8割近くヒットする。
その中で「FXで8億円稼いだ主婦、池辺雪子さんのトレード手法」が比較的簡単そうだったので、バックテストしてみた。
池辺雪子さんの短期と長期のRSIを使った手法
池辺さんは自身が売買を行う根拠の8~9割はテクニカル分析によるとの事です。
【買いルール】
- 短期RSI(13日)が大きく下がり長期RSI(42日)と20ポイント以上乖離した場合
【手仕舞いルール】
記載がないので、終値が次の場合に翌日の寄り付きか当日の終値で売却します(独自ルール)。
- 10%利益で売り
- -15%損失で売り
ソースコード
毎回ソースコードを載せているけど、基本的に変更部分はBuyCondメソッドだけなので、全てを載せる必要ってないよね・・・。
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
require "TIlib" if !$__INIT__ $budget = 1000000 // 予算 $RSI_short = RSI_new(13, 0) $RSI_long = RSI_new(42, 0) $__INIT__ = 1 else RSI_next($RSI_short) RSI_next($RSI_long) end def BuyCond if ! Close return end rsi_short = RSI_value($RSI_short) rsi_long = RSI_value($RSI_long) if ! (rsi_short && rsi_long) return end return 20 <= rsi_long - rsi_short end def SellCond if ! Close return end return Close >= 1.10*$buy || Close <= 0.85*$buy end def Num(price) num = $budget/price if num >= 1000 num = (num/1000)*1000 elsif num >= 100 num = (num/100)*100 elsif num == 0 num = 1 end return num end def Main() if ! $wait // 同日の売買禁止 //持ってないとき、かつBuyCondのとき、買う if ! $hold && BuyCond if {1}Open //翌日の始値で $hold = Num({1}Open) if $hold >= 1 $buy = {1}Open //買う {1}Buy(Open, $hold) end elsif Close //翌日の始値がないとき $hold = Num(Close) if $hold >= 1 $buy = Close //便宜上終値で買う Buy(Close, $hold) end end //持っているとき、かつSellCondのとき、売る elsif $hold && SellCond if {1}Open {1}Sell(Open, $hold) else //始値なし Sell(Close, $hold) // 終値で売る end $hold = 0 //持分を0にリセット $wait = 1 end else $wait = $wait - 1 end end Main() |
バックテスト結果
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 32 33 34 35 36 37 38 39 |
株価データ: 日足 銘柄リスト: 日経平均構成銘柄 10/01/05~29/05/02における成績です。 ---------------------------------------- 全トレード数 11692 勝ちトレード数(勝率) 7492(64.08%) 負けトレード数(負率) 4200(35.92%) 全トレード平均利率 2.14% 勝ちトレード平均利率 12.58% 負けトレード平均損率 -16.50% 勝ちトレード最大利率 920.69% 負けトレード最大損率 -65.78% 全トレード平均期間 64.38 勝ちトレード平均期間 60.20 負けトレード平均期間 71.83 ---------------------------------------- 必要資金 \119,095,900 最大ポジション(簿価) \173,533,800 最大ポジション(時価) \177,122,000 純利益 \207,538,600 勝ちトレード総利益 \789,263,200 負けトレード総損失 -\581,724,600 全トレード平均利益 \17,750 勝ちトレード平均利益 \105,348 負けトレード平均損失 -\138,506 勝ちトレード最大利益 \7,536,000 負けトレード最大損失 -\528,900 プロフィットファクター 1.36 最大ドローダウン(簿価) -\64,554,200 最大ドローダウン(時価) -\69,524,360 ---------------------------------------- 現在進行中のトレード数 189 |
トレード数が多いです。
利率、プロフィットファクターは平凡値です。
利益曲線は次のとおりです。
2007年(平成19年)~2013年(平成25年)がマイナスって・・・日経平均株価そのものです。
株ではあまり役に立たない手法かもしれません。