自分がprotraを使って何をしてるのか分からなくなってきました・・・。
何をやっても似た利益曲線にしかなりません。
偽物の聖杯でもよいので見つけたいところですが・・・。
ぶっちゃけランダムに購入しても似たような曲線になるのでは?
と思いバックテストしてみました。
完全にランダムに買ってみる
書く必要もない手法です。
【買いルール】
- 0.0以上1.0未満の浮動小数点の乱数を返して0.96以上であれば翌日の寄り付きで購入
【手仕舞いルール】
- 高値が買値+2%を越えた
- 取引営業日10日経過した
0.96という閾値は、トレード数を2万~3万回程度にするためです。
ソースコード
Random()メソッドを使って実現しています。
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 |
require "TIlib" require "Nehori" if !$__INIT__ $BUDGET = 1000000 // 予算 $MHP = 10 // max holding period (business day) $set = 0 $__INIT__ = 1 else end def BuyCond //買い条件 if ! Close return end return 0.96 <= Random() end def SellCond //売り条件 if ! High return end if 1.02*$buy > High //高値が買値+2%を越えた return 1 end end Main() |
Nehori.pt はこちらに記載しています。
バックテスト結果
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/12における成績です。 ---------------------------------------- 全トレード数 30211 勝ちトレード数(勝率) 11967(39.61%) 負けトレード数(負率) 18244(60.39%) 全トレード平均利率 0.24% 勝ちトレード平均利率 4.92% 負けトレード平均損率 -2.84% 勝ちトレード最大利率 134.00% 負けトレード最大損率 -32.87% 全トレード平均期間 8.02 勝ちトレード平均期間 11.62 負けトレード平均期間 5.66 ---------------------------------------- 必要資金 \48,876,990 最大ポジション(簿価) \67,494,190 最大ポジション(時価) \78,593,900 純利益 \61,409,240 勝ちトレード総利益 \496,423,900 負けトレード総損失 -\435,014,700 全トレード平均利益 \2,033 勝ちトレード平均利益 \41,483 負けトレード平均損失 -\23,844 勝ちトレード最大利益 \1,340,000 負けトレード最大損失 -\297,000 プロフィットファクター 1.14 最大ドローダウン(簿価) -\30,714,050 最大ドローダウン(時価) -\31,710,220 ---------------------------------------- 現在進行中のトレード数 47 |
負けトレードが6割を越えてます。
でも、プロフィットファクターが1.14なので、トータルで勝ち越しです。
利益曲線は次のとおりです。
あれ?
何度か見たことがある曲線です・・・。
ランダムに買っても同じような利益曲線を描くようです・・。
売るタイミングが大事なようです。
まとめ
この値を基準として、システムトレードでこれ以上の結果を出す必要がありそうです。
何よりランダムに買っても売るルールを徹底すれば、トータルで勝ち越し・・・・
という結果は、
手仕舞いルール通りの売買が一番大事
という事ですね・・・。