FX自動売買 -売買ロジック修正-
kapiparaです。
前回に(4日前?)に引き続き移動平均線を用いた売買ロジックを作っていきます。
再掲↓
----------------------------------------------------------------------
【売買シグナル】
移動平均(5)と移動平均(20)と移動平均(40)が足の短い順かその逆順になったときに買、売を行う。
【ロスカット条件】
移動平均(20)を常にストップロスに指定。
【プロフィット条件】
なし
【バックテスト条件】
USDJPY5分
スプレッド6
tickstoryで生成
2017/1/1~2017/4/1の4か月
初期資金150000JPY
----------------------------------------------------------------------
再掲結果↓
では、まずは移動平均線が収斂しているときに売買しないようロジックを追加します。
以下の条件を追加するだけです。
iMA_dist_SM = MathAbs(iMA_short - iMA_middle);
if(iMA_dist_SM > iMA_threshold_SM)
iMA_dist_SM_flag = 1;
結果↓
余計な取引が減り、取引数が激減しました。
波形としては似ていますが、かなり健全になってきました。
詳細結果↓
テストバー数 18697
モデルティック数 6769870
モデリング品質 n/a
不整合チャートエラー 0
初期証拠金 150000.00
スプレッド 6
純益 -115579.89
総利益 754426.83
総損失 -870006.72
プロフィットファクタ 0.87
期待利得 -109.35
絶対ドローダウン 117070.89
最大ドローダウン 215381.89 (86.74%)
相対ドローダウン 86.74% (215381.89)
総取引数 1057
売りポジション(勝率%) 619 (22.94%)
買いポジション(勝率%) 438 (25.80%)
勝率(%) 255 (24.12%)
負率 (%) 802 (75.88%)
最大
勝トレード 40432.00
敗トレード -12792.00
平均
勝トレード 2958.54
敗トレード -1084.80
最大
連勝(金額) 5 (9130.00)
連敗(金額) 29 (-12196.00)
最大
連勝(トレード数) 40432.00 (1)
連敗(トレード数) -29655.00 (15)
平均
連勝 1
連敗 4
次に負けトレードの損失制御を行います。
一回の負けで約10%の金額を持っていかれていることが上記の結果からわかるためです。
原因はストップロスが固定幅ではなく中期移動平均にしているためです。
損失を抑え込む手法として、まずは単純にストップロスを固定値にしてみます。
変更した箇所は以下の通り↓
middle ⇒ 中期移動平均線の値
Bid - STOP_threshold - SL_threshold BUYSTOPの値-固定値
あとはtrailing stopを同じく固定値に変更
今日加えた3要素をチューニング
①短期・中期移動平均間の距離
②ストップロスの幅
③トレイリングストップの幅
結果↓
テストバー数 18697
モデルティック数 6769870
モデリング品質 n/a
不整合チャートエラー 0
初期証拠金 150000.00
スプレッド 6
純益 42013.93
総利益 427142.00
総損失 -385128.06
プロフィットファクタ 1.11
期待利得 136.85
絶対ドローダウン 22942.00
最大ドローダウン 45655.00 (26.43%)
相対ドローダウン 26.43% (45655.00)
総取引数 307
売りポジション(勝率%) 0 (0.00%)
買いポジション(勝率%) 307 (38.11%)
勝率(%) 117 (38.11%)
負率 (%) 190 (61.89%)
最大
勝トレード 21402.00
敗トレード -4400.00
平均
勝トレード 3650.79
敗トレード -2026.99
最大
連勝(金額) 6 (28575.00)
連敗(金額) 11 (-20519.00)
最大
連勝(トレード数) 28575.00 (6)
連敗(トレード数) -20519.00 (11)
平均
連勝 2
連敗 3
一応利益が出るようになりました。
ただ4か月で約30%ですし、安定もしていないので実用性は低いですね。
そして売りポジションがなくなってしまいました。
なにかバグっていますね...
バグの修正から次回実施します。
以上。