FXでRSIとストキャスティクスで逆張りトレードプログラムを作ってバックテストしてみた

※本ページはプロモーションが含まれています

RSIとストキャスティクスは、テクニカル分析において広く使用されている指標の1つです。これらの指標は、相場が過剰買いまたは過剰売りの状態にあるかどうかを判断するために使用されます。

本記事では、このアプローチを採用し、RSIとストキャスティクスを組み合わせて逆張り戦略を検証しました。バックテストを行い、戦略の勝率、リターン、リスクなどのパフォーマンスを評価しました。結果から、この戦略がどのように機能するかについて詳しく説明します。

目次

逆張りで有効なオシレーターの組み合わせ

RSIとストキャスなど、有効的なオシレーターの組み合わせは、こちらに過去に記事を書きました。

あわせて読みたい
FXの逆張りトレードにおすすめのオシレーターの組み合わせ(RSI、MACDなど)と手法 FXの逆張りの手法には、様々な指標を用いることができますが、FXではオシレーターと呼ばれる指標がよく使われます。 オシレーターとは、相場の過熱感を示す指標であり、...

RSIとストキャスティクスの組み合わせで売買戦略

戦略について

RSI(Relative Strength Index)とストキャスティクス(Stochastic Oscillator)は、テクニカル分析において広く使用されている指標です。これらの指標は、相場が過剰買いまたは過剰売りの状態にあるかどうかを判断するために使用されます。

一般的なアプローチは、相場が過剰買いの状態にある場合には売り、過剰売りの状態にある場合には買いという逆張り戦略をとることです。

エントリータイミングは買いシグナルはRSIが20未満であり、Stochasticsが上昇している場合。売りシグナルはストキャスティクスが80を超え、下降している場合は売りのシグナルが生成されます。

ChatGPTで基本形を作成

ゼロから作ると時間がかかるので、ChatGPTで原型を作って改良してみました。

ChatGPTに質問した内容

こんな感じでChaGPTに詳しく尋ねると、細かいコードで吐き出してくれます。

ChatGPTが出したソースコード

ChatGPTは完璧ではないので、エラーはめっちゃ出ます。修正する技術は必要になります。以下のコードは修正したので、そのまま貼り付けても動きます。ご参考ください。

ソースコード

RSIの期間、売られすぎと買われすぎのレベル、ストキャスティクスの期間、売られすぎと買われすぎのレベル、そしてターゲット利益を入力パラメータとして受け取ります。また、ストラテジー関数を使用して、売りエントリーと買いエントリーを行い、20pipsでクローズするように設定しています。

//@version=5
strategy("RSI and Stochastic Oscillator Strategy")

// RSIのパラメータ
rsi_length = input(14,title="RSI Length")
rsi_overbought = input(70,title="RSI Overbought")
rsi_oversold = input(30,title="RSI Oversold")

// ストキャスティクスのパラメータ
stoch_length = input(14,title="Stochastic Length")
stoch_overbought = input(80,title="Stochastic Overbought")
stoch_oversold = input(20,title="Stochastic Oversold")

// 20pipsのターゲット利益
target_profit = input(20,title="Target Profit")

// RSIを計算する
rsi_value = ta.rsi(close, rsi_length)

// ストキャスティクスを計算する
k = ta.sma(ta.stoch(close, high, low, stoch_length), 3)
d = ta.sma(k, 3)

// 売りエントリーの条件
sell_condition = rsi_value > rsi_overbought and k > stoch_overbought and d > stoch_overbought

// 買いエントリーの条件
buy_condition = rsi_value < rsi_oversold and k < stoch_oversold and d < stoch_oversold

// エントリーとクローズの処理
if sell_condition
    strategy.entry("Sell", strategy.short)
    strategy.exit("Sell Exit", "Sell", profit=target_profit)
if buy_condition
    strategy.entry("Buy", strategy.long)
    strategy.exit("Buy Exit", "Buy", profit=target_profit)

バックテストした結果

ドル円、5分足、0.1ロットで、初期設定値での結果です。グラフだけみると、かなり酷いようにみえて、勝率は90%。

トレード回数は453回もやって勝率90%なので、これは結果はマイナスですが、かなり煮詰めればいい感じになりそうな予感です。

初期設定でのパラメーター

設定値はAIが指定した内容です。そのまま使いました。

パラメーターを調整した結果

面白い結果になりました。なんと、プロフィットファクター10.1

他の逆張りの組み合わせの中で、ダントツで良い数字かも。1回あたりの利益は低いんですが、右肩上がりに地味に利益が増えるような感じになりました。

めっちゃ使える組み合わせだと思います。

利益が出たパラメーターの設定値

パスワードは、LINEお友達になった方にお伝えしています。記事の一番下からお友達登録していただくと、すぐにパスワードがわかります。

https://elite-collections.com/【line友達限定】rsiとストキャスティクスの組み合わ

まとめ

RSIとストキャスティクスの組み合わせの逆張りですが、バックテストした限りでは通常のパラメーターでは無理ですね。

でも、調整すれば、スキャルピングっぽくなって、これはいい感じで勝負できるのかもという予感です。

矢野テックのトレード結果やプログラム使った予測について

パスワードされた記事は、LINEでお友達になってくれた方に公開しています。

また、今ならお友達には矢野テック自作のMT4用のインジケーターをプレゼント中です。

友だち追加

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

仮想通貨botや、MT4のEA開発、インジケーターなどを作ってます。このブログではFXの基礎的な知識から検証のまとめなどを書いていきたいと思ってます。

プログラムや手法のご質問は各記事のコメント欄からお願いします。

なお、トレードの結果などはLINEでお友達になった方に報告してます。ぜひなってください

コメント

コメントする

目次