【ChatGPTプログラム作成】FXでMACDとCCIのオシレーターを組み合わせた逆張りロジック作ってみた

MACDとCCIの組み合わせ
※本ページはプロモーションが含まれています

MACDとCCIは、トレンド追跡によく使われるテクニカル指標ですが、これらを逆張りに使うこともできます。逆張り戦略は、一般的にトレンドに反する方向にトレードを行い、市場が過剰に買われたり売られたりしているときに利益を得ることを目的としています。この記事では、MACDとCCIを使った逆張り戦略について探求していきます。

また、どれだけ通用するのか、Trading ViewのPineScriptでプログラムをChatGPTを使って作ってみました。

目次

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

以下の記事で詳しく解説しました。組み合わせ次第で、逆張り判定できそうです。

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

今回はMACDとCCIの組み合わせでプログラム作成

まず、いきなりMT4のMQL4を作るのは時間もかかるし、稼げるか稼げないかもわからないので、失敗したときの労力がもったいない。

まずは、Trading ViewのPineScriptでロジックを組んで、バックテストしてみることにしました。

PineScriptはバックテストが超高速なんです。これでアルゴリズムを煮詰めてから、MQ4でインジ作成っていう流れが遠回りに見えて近道かと思います。

ChatGPTで基本形を作成

作成はゼロから作ると時間がかかるので、ChatGPTで原型を作ってみました。ChatGPTは、アメリカのAIで、チャット形式の質問に投げかけると、色々な事が出来てしまいます。

今回はこんな質問してみました。

ChatGPTに質問した内容

ChatGPTを使ってプログラム作成の際はコツがあって、ふんわりと質問を投げかけると、ふんわりとした答えしか返ってきません。細かく書いて答えを狭く導くと、自分が望む結果が返ってきます。

ChatGPTが提案したソースコード

おどろきました。めちゃ使えます。

保存するとエラーがでました。PineScriptのバージョン4と5で書き方が、大幅に変更したのですが、バージョン4と5のコードが混在していました。ChatGPTでプログラムに使うには、修正できる技術力は必要です。

修正したソースコード

いつもはLINEの友達にしか公開していませんが、今回は修正したソースコードを書いてみますね。

//@version=5
strategy("MACD and CCI Strategy", overlay=true)

// MACDの設定
fast_length = input(title="Fast Length",defval=12)
slow_length = input(title="Slow Length", defval=26)
src = input(title="Source", defval=close)
signal_length = input(title="Signal Length", defval=9)

[macdLine, signalLine, _] = ta.macd(src, fast_length, slow_length, signal_length)

// CCIの設定
cci_length = input(title="CCI Length", defval=14)
cci_threshold = input(title="CCI Threshold", defval=100)

hlc = (high + low + close) / 3
cci = ta.cci(hlc, cci_length)

// エントリーシグナル
longSignal = ta.crossover(macdLine, signalLine) and cci < -cci_threshold
shortSignal = ta.crossunder(macdLine, signalLine) and cci > cci_threshold

// トレードの実行
if (longSignal)
    strategy.entry("Buy", strategy.long)
if (shortSignal)
    strategy.entry("Sell", strategy.short)

// クローズの実行
strategy.exit("Exit", "Buy", limit=close + 20)
strategy.exit("Exit", "Sell", limit=close - 20)

ソースの解説

このプログラムでは、まずMACDとCCIの設定を行っています。MACDは、12期間EMAと26期間EMAの差分に対するシグナル線の9期間EMAを使用しています。CCIでは、14期間のCCIを計算し、閾値として100を設定しています。

次に、エントリーシグナルを設定しています。ロングポジションを取る条件は、MACDのシグナル線がMACD線を上回り、CCIが-100を下回ることです。ショートポジションを取る条件は、MACDのシグナル線がMACD線を下回り、CCIが100を上回ることです。

最後に、トレードの実行とクローズの実行を設定しています。トレードは、エントリーシグナルが出たときに直ちに実行されます。クローズは、20pipsの利益を確保するリミットオーダーとして実行されます。

バックテストした結果

パラメーター設定値は、とりあえずは、AIが指定したものをそのまま使ってみました。

CCIとMACDの組み合わせの逆張り

ドル円で5分足、0.1ロット、期間は今年2023年でのバックテスト結果です。驚くべきことに、いきなり右肩上がりのグラフ。取引回数が少ないので、調整は必要ですが、最初から利益が出るコードが出てくるとは夢にも思わなかったのでびっくりです。

パラメーターの調整

パラメーターを調整して利益率高くなるようイジってみました。トレード回数が6倍に増えて、利益も倍になりました。

MACDとCCIのバックテスト改良版

これが出来るのがTradingViewの良いところです。同じ事をMQL4(MT4)のバックテストで行うと何時間もかかってしまいます。

調整した内容

LINEお友達限定で、調整したパラメーターの設定値をお伝えしてます。記事末より、お友達登録できます。

あわせて読みたい
保護中: 【LINEお友達限定】MACDとCCIのパラメーターおすすめ設定 この記事はパスワードで保護されています

結論

MACDとCCIの組み合わせの逆張りは、パラメーターの設定値次第だけど使える!。あとは、損切りラインをどこで設定するかで、最大ドローダウンの大幅な下落部分を避けれますね。

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

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

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

友だち追加

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

この記事を書いた人

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

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

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

コメント

コメントする

目次