📊 TradingView → EA変換 #TradingView #EA #売買条件 #インジケーター #プロンプト #言語化

TradingViewのインジケーターをAIに伝わる"売買条件"に変換する技術

読了 約13分

あなたが本当に作りたいEAは何ですか?

前回の記事で、AIに1回頼むだけで移動平均線+RSIのEAが作れることを体験しました。

でもあなたが本当に作りたいのは「移動平均線+RSIのEA」じゃないですよね。

あなたが普段TradingViewで使ってるあのインジケーター。「この形になったら買い」と感覚でやってるあのトレード。それをEAにしたいはずです。

問題は 「AIにどう伝えるか」

この記事では、TradingViewのインジケーターをAIが理解できる「売買条件」に変換する方法を3つのパターンに分けて解説します。


インジケーターを「言語化」するとは

あなたがチャートを見て「ここで買おう」と思った時、頭の中では何が起きていますか?

例えばこんな感じではないでしょうか:

「RSIが下がってきて…このへんで反転しそう…ローソク足も陽線になったし…よし、買い!」

この感覚を、AIは理解できません。AIが理解できるのはこういう表現です:

「RSI(14期間)が30を下回った後、再び30を上回った足の始値で買いエントリー」

つまり**「言語化」**とは、以下の3つを明確にすることです:

  • どの数値が(RSI、移動平均線の値、ラインの位置…)
  • どうなったら(○○を超えた、クロスした、○○以下になった…)
  • 何をする(買い、売り、決済)

「言語化」のコツ: あなたのトレードを、電話越しに初心者に説明するとしたら何と言いますか? チャートが見えない相手に、言葉だけで「今買って」と伝えるには? その説明がそのまま「売買条件」になります。


3つのパターンを見極める

インジケーターの「言語化」には3つのパターンがあります。自分のインジがどれに当たるかで、アプローチが変わります。

パターン対象難易度
A: AIが知ってるインジRSI, MACD, BB, SMA等簡単
B: 知ってるインジの組み合わせ複数条件のフィルター普通
C: AIが知らないインジTVカスタムインジやや難

パターンA: AIが知ってるインジ(一番簡単)

RSI、MACD、ボリンジャーバンド、移動平均線、ストキャスティクス、ATR、CCI、一目均衡表…

これらはAI(ChatGPT/Claude)が最初から知っています。「売買条件」を日本語で書くだけでOKです。

例: MACDを使った売買条件の書き方

❌ ダメな例(感覚的すぎる):
「MACDがいい感じにクロスしたら買い」

❌ まだ足りない例(曖昧):
「MACDがクロスしたら買い」

✅ OKな例(AIに伝わる):
「MACD(短期12, 長期26, シグナル9)のメインラインが
 シグナルラインを下から上に抜けた(ゴールデンクロス)足の
 次の足の始値で買いエントリー。
 メインラインがシグナルラインを上から下に抜けた場合は決済。」

⚠️ 「クロスした」だけでは足りません。

  • どの足で判定するか(現在の足?確定した足?)
  • エントリーはいつ?(クロスした瞬間?次の足の始値?)
  • 決済条件は?(反対シグナル?固定pips?)

ここが曖昧だとAIが「解釈」して勝手に決めます。意図と違うEAができる最大の原因です。

パターンAのプロンプトテンプレート

あなたはMQL4のエキスパートです。
以下の売買条件でMT4のEAを作成してください。

## 使用インジケーター
- [インジケーター名](パラメータ: [期間等])

## 買いエントリー条件
- [具体的な条件を日本語で記述]
- [複数条件がある場合は箇条書きで]

## 売りエントリー条件
- [具体的な条件]

## 決済条件
- ストップロス: [○○] pips
- テイクプロフィット: [○○] pips
- [その他の決済条件があれば]

## その他
- 1つの通貨ペアにつき同時に1ポジションまで
- マジックナンバーで自身のポジションを識別
- 日本語コメント付き

パターンB: AIが知ってるインジの「組み合わせ」

個別のインジはAIが知ってるけど、「この2つの条件が同時に揃った時だけ」 というフィルター条件を使いたい場合。

実はこれが一番よくあるケースです。多くのトレーダーは複数のインジを見て総合的に判断していますよね。

例: ボリンジャーバンド + RSI + ローソク足パターン

あなたの頭の中:

「ボリバンの下限にタッチして、RSIも売られすぎで、陽線のピンバーが出たら買い」

これを言語化するとこうなります:

買いエントリー条件(すべて満たした場合):
1. 直前の足の安値がボリンジャーバンド(20期間, 2σ)の
   下限バンドを下回った
2. RSI(14期間)が35以下
3. 直前の足が陽線かつ、下ヒゲが実体の2倍以上
   (ピンバーの定義)

売りエントリー条件(すべて満たした場合):
1. 直前の足の高値がボリンジャーバンド上限バンドを上回った
2. RSI(14期間)が65以上
3. 直前の足が陰線かつ、上ヒゲが実体の2倍以上

「組み合わせ」を書く時のコツ:

  • 条件は 「すべて満たした場合(AND)」「いずれかを満たした場合(OR)」 かを明記する
  • 各条件の判定タイミングを揃える(「直前の確定足」で統一するのが安全)
  • 条件が3つ以上になると成立しにくくなる。まず2条件で作って、後から追加する方がデバッグしやすい

パターンBのプロンプトテンプレート

あなたはMQL4のエキスパートです。
以下の売買条件でMT4のEAを作成してください。

## 使用インジケーター
- [インジ1](パラメータ: ○○)
- [インジ2](パラメータ: ○○)
- [ローソク足パターン等あれば]

## 買いエントリー条件(すべて満たした場合)
1. [インジ1の条件]
2. [インジ2の条件]
3. [その他の条件]

## 売りエントリー条件(すべて満たした場合)
1. [インジ1の条件]
2. [インジ2の条件]
3. [その他の条件]

## 決済条件
- ストップロス: [○○] pips
- テイクプロフィット: [○○] pips
- [トレーリングストップ等あれば]

## フィルター条件(任意)
- [時間帯制限、トレンドフィルター等あれば]

## その他
- 1つの通貨ペアにつき同時に1ポジションまで
- マジックナンバーで自身のポジションを識別
- 日本語コメント付き

パターンC: AIが知らないインジ(計算ロジックの橋渡し)

TradingViewにはコミュニティが作った何万ものカスタムインジケーターがあります。当然、AIはその大半を知りません。

この場合、あなたが**「橋渡し」**になってAIにインジの計算ロジックを教える必要があります。

⚠️ パターンCの最大の落とし穴:

「このインジの売買シグナルでEAを作って」と一発で頼むこと

AIが知らないインジの場合、1回のプロンプトで全部やろうとするとほぼ確実に壊れたコードが出てきます

必ず2段階に分けてください。

2段階アプローチ

ステップ1: インジケーターの「計算ロジック」をMQL4に移植する(まだ売買ロジックは入れない → インジとして正しく描画されることを確認)

ステップ2: そのインジの値を使った「売買条件」を追加する(ステップ1のコードを渡して「このインジの値を使って売買するEAにして」と頼む)

ステップ1: 計算ロジックを伝える3つの方法

方法説明
① インジ説明文を使う多くのインジには作者が計算方法を書いています。それをコピーしてAIに渡す
② Pine Scriptのソースを読み解くTradingViewで「ソースコード」を開き、計算部分をAIに説明させる
③ 数式を直接伝える学術論文やブログで計算式が公開されている場合、数式をそのままAIに渡す

②がおすすめです。 まずAIに「このPine Scriptが何を計算しているか日本語で説明して」と聞き、その説明をもとにMQL4への移植を頼みます。

ステップ1のプロンプトテンプレート(Pine Scriptから移植)

あなたはMQL4とPine Scriptの両方に精通したプログラマーです。

以下のTradingView用Pine Scriptのインジケーターを
MQL4のカスタムインジケーター(.mq4)として移植してください。

【インジケーター名】: [名前]
【元のPine Scriptの計算部分】:
(※コード全体ではなく、計算ロジックの核心部分のみ貼る)

```pine
[Pine Scriptの該当部分をここに貼る]

【MQL4での要件】:

  • カスタムインジケーターとして実装(EAではない)
  • メインのラインをバッファ0に描画
  • [シグナルラインがあれば]バッファ1に描画
  • パラメータは外部変数にする
  • 日本語コメント付き

まず「インジケーターとして正しく動くコード」だけを 出力してください。売買ロジックはまだ入れないでください。


### ステップ2のプロンプトテンプレート

```text
先ほど作成した[インジケーター名]のMQL4コードを
EAに組み込んでください。

【先ほどのインジコード】:
[ステップ1で生成されたコードを貼る]

【売買条件】:
## 買いエントリー
- [このインジの値がどうなったら買い]

## 売りエントリー
- [このインジの値がどうなったら売り]

## 決済条件
- ストップロス: [○○] pips
- テイクプロフィット: [○○] pips

インジケーターの計算ロジックをEA内に統合し、
OnTick()内で売買判定を行う形にしてください。

実例: 一目均衡表の「雲抜け」をEA化する

パターンBの実例として、一目均衡表の雲抜けを言語化してみましょう。

「雲抜けで買い」だけではAIには伝わりません。

ダメな言語化

❌ 「一目の雲を抜けたら買い」

→ 何が雲を抜ける?ローソク足?転換線?
→ 「抜けた」は終値ベース?ヒゲも含む?
→ 上抜け?下抜け?

良い言語化


使用インジケーター: 一目均衡表(転換線9, 基準線26, 先行スパン52)

買いエントリー条件(すべて満たす):
1. 直前の確定足の終値が、先行スパンA・先行スパンBの
   両方を上回っている(雲の上にいる)
2. 2本前の確定足の終値は、先行スパンAまたは先行スパンBの
   いずれかを下回っていた(雲の中か下にいた)
3. 転換線が基準線を上回っている

→ つまり「雲を下から上に抜けた足の次でエントリー、
   ただし転換線>基準線のフィルター付き」

「一目均衡表」はAIが知っているインジ(パターンA)ですが、雲抜けの条件を正確に伝えるにはパターンBの「複数条件の組み合わせ」テクニックが必要です。知っているインジでも条件が複雑ならパターンBのテンプレートを使いましょう。


よくある失敗と対処法

AIに売買条件を伝える時の「あるある」を先にお伝えしておきます。

失敗1: 「クロス」の定義が曖昧

❌ 「ゴールデンクロスで買い」
→ AIは「現在の足でクロスした瞬間」と解釈することがある。
  すると1ティックごとにシグナルが出て大量発注になる。

✅ 「直前の確定足で短期MAが長期MAの下にあり、
   現在の確定足で短期MAが長期MAの上にある場合」
→ 確定足ベースにすることで、1シグナル1回だけになる。

失敗2: 決済条件を書き忘れる

❌ 「RSIが30以下で買い」だけ書いて決済条件なし
→ AIが「永遠にポジションを持ち続けるEA」を作る。
  もしくはAIが勝手に決済条件を決める。

✅ 決済条件は必ず明記する:
  ・ストップロス / テイクプロフィット
  ・反対シグナルで決済
  ・時間経過で決済(○本後に強制決済)
  のいずれか(または組み合わせ)

失敗3: パターンCで一発全部頼む

❌ 「このPine Scriptの内容でEAを作って」とPineコード全文を貼る
→ AIが翻訳ミスしてもどこが間違ってるか分からない。

✅ ステップ1でインジだけ移植 → 動作確認
  → ステップ2で売買ロジック追加
  1つずつ確認しながら進める。

失敗4: インジの「値の意味」を理解せずに条件を書く

❌ MACDの値が「正の数→買い、負の数→売り」と思い込む
→ MACDの値はヒストグラムか、メインラインか、
  シグナルラインかで意味が全く違う。

✅ まず「このインジの各ラインは何を表してる?」を
  AIに聞いてから売買条件を考える。
  プロンプト例:
  「[インジ名]の各ラインの意味と、
   一般的な売買シグナルを教えてください」

言語化チェックリスト

売買条件を書き終えたら、AIに渡す前にこのチェックリストで確認してください。

  • どのインジケーターの、どの値(ライン)を使うか明記したか
  • パラメータ(期間等)の数値を指定したか
  • 「以上/以下」「超える/下回る」を正確に書いたか
  • 判定タイミング(確定足?現在の足?)を指定したか
  • エントリーのタイミング(シグナル足?次の足の始値?)を指定したか
  • 複数条件の場合「すべて満たす(AND)」か「いずれか(OR)」か明記したか
  • 決済条件(SL/TP/反対シグナル)を忘れていないか
  • 同時ポジション数の上限を指定したか

次のステップ

この記事で学んだこと:

  • インジケーターを「言語化」する考え方
  • 3つのパターン(A: 既知のインジ、B: 組み合わせ、C: 未知のインジ)
  • それぞれのプロンプトテンプレート
  • よくある失敗と対処法

次は、実際に具体的なインジケーターでこの「言語化」を実践してみましょう。

おすすめの次の記事

「まだどんなインジを使うか決めてない」という方は、TradingViewでいろんなインジケーターを試してみてください。無料でも十分な数のインジケーターが使えます。


⚠️ 免責事項: 本記事で紹介する手法は教育目的です。EA化したインジケーターが利益を保証するものではありません。バックテスト結果は過去のデータに基づくものであり、将来の結果を保証するものではありません。EAの運用は必ずデモ口座で十分にテストした上で、自己責任で行ってください。

共有:

関連記事

#TradingView #EA #売買条件 #インジケーター #プロンプト #言語化

🎯 このEAを動かすにはMT4/MT5対応のFX口座が必要です

4つの質問に答えるだけで、あなたに最適な国内FX業者がわかります。

あなたに合った業者を診断する →
目次を表示