裁量手法をAIに伝えるための「言語化シート」— 穴埋めでプロンプト完成
「自分の手法をEA化したいけど、AIに何をどう伝えればいいかわからない」
これはAIでEA開発を始めた人が最初にぶつかる壁です。裁量トレードの判断は「経験」「直感」「チャートの雰囲気」で成り立っています。それをAIが動ける形に変換するのが**「言語化」**という作業です。
この記事の言語化シートを埋めるだけで、そのままAIに渡せるプロンプトが完成します。
「何をどう伝えればいい?」が最初の壁
AIに「RSIで逆張りするEAを作って」と伝えても、曖昧すぎてAIは正確なEAを作れません。
- RSIの期間は?
- どの数値で買いで、どの数値で売り?
- 決済はどの条件で?
- 損切りは何pips?
これらをすべて数値と条件で指定する必要があります。しかし、裁量トレーダーはこれらを「なんとなくの感覚」でやっていることが多く、「条件は?」と聞かれると答えに詰まります。
言語化シートは、この「なんとなく」を「具体的な数値と条件」に変換するためのワークシートです。
なぜ言語化が必要なのか
AIは「なんとなくいい感じの時に買う」では動けません。
AIが理解できない表現の例:
- 「トレンドが出ている時に買う」
- 「ボラが高い時は避ける」
- 「いい感じの押し目で買う」
AIが理解できる表現の例:
- 「SMA200より価格が上にあり、かつRSI(14)が40以下から上昇した時に買う」
- 「ATR(14)が直近20日平均の1.5倍を超えている時はエントリーしない」
- 「直近の安値から3pip以上反発した時に買う」
感覚的な表現を「インジケーター名+数値+条件」の形式に変換することが言語化の核心です。
言語化シート① エントリー条件
以下の空欄を埋めてください。
【エントリー条件シート】
■ 基本設定
使用する通貨ペア:___________
判断する時間足:___________(例:H1、H4、D1)
■ 買いエントリーの条件
必須条件(メイン): ___________ が ___________ になった時
追加条件(フィルター1): ___________ が ___________ の時のみ
追加条件(フィルター2): ___________ が ___________ の時のみ
■ 売りエントリーの条件
必須条件(メイン): ___________ が ___________ になった時
追加条件(フィルター1): ___________ が ___________ の時のみ
追加条件(フィルター2): ___________ が ___________ の時のみ
■ エントリーしない条件(あれば)
例:金曜17時以降はエントリーしない、スプレッドが広い時は入らない等
___________________________________________
記入のコツ: 条件は最大3つまでに絞ってください。4つ以上になると取引回数が激減し、バックテストで統計的な意味をなさなくなります。
言語化シート② 決済条件
【決済条件シート】
■ 利確条件
固定pips利確: ___________ pips で利確
インジケーター条件: ___________ が ___________ になったら利確
上記のどちらか早い方で利確: はい / いいえ
■ 損切り条件
固定pips損切り: ___________ pips で損切り
インジケーター条件: ___________ が ___________ になったら損切り
直近高値/安値を抜けたら損切り: はい / いいえ
■ トレーリングストップ
使う / 使わない
使う場合 → ___________ pips 動いたら追随
■ 時間制限
___________ 時間後に強制決済する / しない
💡 INFO 損切りは必ず設定してください。損切りなしのEAは、大きな相場変動で口座を吹き飛ばすリスクがあります。「損切りなし」で裁量トレードをやっている人も、EA化する時は損切りを追加しましょう。
言語化シート③ 資金管理
【資金管理シート】
■ ロット数
固定ロット: ___________ ロット
口座残高の ___________% をリスクとして設定(自動計算)
■ ポジション管理
同時に持てるポジション数: 最大 ___________ 個
同一通貨ペアでの同時ポジション: 最大 ___________ 個
■ 1日のトレード回数制限
___________ 回まで / 制限なし
あいまい表現 → 具体的条件 変換ヘルプ10選
裁量トレーダーがよく使う表現と、AIに伝えられる条件への変換例です。
| あいまい表現 | 具体的条件への変換例 |
|---|---|
| 「トレンドが出ている時」 | SMA(200)より価格が上(上昇トレンド)/ 下(下降トレンド)。またはADX > 25 |
| 「押し目で買う」 | 上昇トレンド中にRSIが50以下に下がった時。または移動平均線(20)に価格が触れた時 |
| 「ボラティリティが高い時」 | ATR(14) > 直近20日平均のATRの1.5倍 |
| 「ボラティリティが低い時(レンジ)」 | ボリンジャーバンド幅が狭い(上限−下限 < ○○pips)。またはADX < 20 |
| 「勢いがある時」 | MACDヒストグラムが増加中。またはRSIが50を超えて上昇中 |
| 「上値が重い時」 | 直近3本のローソク足の高値が切り下がっている |
| 「売られすぎ」 | RSI(14) < 30。またはストキャスティクス(14,3,3) < 20 |
| 「買われすぎ」 | RSI(14) > 70。またはストキャスティクス(14,3,3) > 80 |
| 「転換サイン」 | MACDゴールデンクロス/デッドクロス。またはRSIが30を上抜け/70を下抜け |
| 「横ばい相場を避ける」 | ADX < 20の時はエントリーしない |
記入例:RSI逆張り+移動平均線フィルター
実際に記入した場合の例を見てみましょう。
エントリー条件(記入済み):
- 使用通貨ペア:USD/JPY
- 時間足:H1
- 買い必須条件:RSI(14)が30を下回った後、30を上抜けた時
- 買いフィルター:SMA(200)より価格が上にある時のみ
- 売り必須条件:RSI(14)が70を上回った後、70を下抜けた時
- 売りフィルター:SMA(200)より価格が下にある時のみ
決済条件(記入済み):
- 利確:50pips
- 損切り:30pips
- トレーリングストップ:なし
資金管理(記入済み):
- ロット:固定0.1ロット
- 最大ポジション:1個
シートをAIに渡すプロンプトテンプレート
シートが埋まったら、以下のテンプレートに当てはめてAIに渡します。
MT4で動くMQL4のEAを作ってください。
【基本設定】
通貨ペア:(記入した通貨ペア)
時間足:(記入した時間足)
【買いエントリー条件】
- メイン条件:(シートの内容)
- フィルター条件:(シートの内容)
【売りエントリー条件】
- メイン条件:(シートの内容)
- フィルター条件:(シートの内容)
【決済条件】
- 利確:(シートの内容)
- 損切り:(シートの内容)
【資金管理】
- ロット:(シートの内容)
- 最大ポジション数:(シートの内容)
【必須技術仕様】
- シグナル判定は必ずClose[1](確定バー)を使用すること
- Use iRSI(), iMA(), iMACD() with correct parameters for MT4
- Use OrderSend() with correct 9 parameters for MT4 Build 600+
- マジックナンバーを設定すること(例:12345)
- 日本語コメント付きで、コードは省略せず全文を出力してください
✅ TIP 「必須技術仕様」の部分は毎回そのままコピペしてください。先読みバグやOrderSendのエラーを最初から防ぐための指示です。この数行を入れるだけでコード品質が大幅に上がります。
まとめ
言語化シートの使い方をまとめます。
- シートを埋める:感覚的なトレード判断を数値と条件に変換
- 変換ヘルプを参照:「なんとなく」という表現が出てきたら変換表を使う
- プロンプトに当てはめる:テンプレートに沿ってAIに渡す
- 動かして修正する:最初から完璧でなくていい。バックテスト結果を見ながら条件を調整
言語化できれば、EA化の8割は終わったようなものです。最初は条件が曖昧でも、AIに渡して動かしてみることで「これじゃない」という気づきが生まれ、条件が洗練されていきます。
コピーして使えるシートのまとめ
【言語化シート完全版】
■ 基本設定
通貨ペア:___________
時間足:___________
■ 買いエントリー
メイン条件:___________ が ___________ になった時
フィルター1:___________ が ___________ の時のみ
フィルター2:___________ が ___________ の時のみ
■ 売りエントリー
メイン条件:___________ が ___________ になった時
フィルター1:___________ が ___________ の時のみ
フィルター2:___________ が ___________ の時のみ
■ エントリーしない条件:___________
■ 利確:___________ pips / ___________ の条件で
■ 損切り:___________ pips / ___________ の条件で
■ トレーリングストップ:使う(___ pips)/ 使わない
■ 時間制限:___________ 時間で強制決済 / なし
■ ロット:固定 ___________ / 口座残高の ___%
■ 最大ポジション数:___________
関連記事
本記事で紹介するEA・手法は教育目的で作成されたものです。実際の取引で利益を保証するものではありません。EAの運用は必ずデモ口座で十分にテストした上で、自己責任で行ってください。FX取引にはリスクが伴います。
次のステップ
まずデモで動作確認 → OKなら本番運用、が安全です。
デモ口座でEAを回す手順関連記事
if (signal && riskOk) { executeEA(); }
for (const tf of [M5, M15, H1]) {
score += checkTrend(tf);
}
return score >= threshold;
【完全初心者向け】TradingViewの使い方入門 ― まずは裁量トレードを体験しよう
トレード未経験者向けにTradingViewの基本操作を画像付きで解説。チャートの見方、移動平均線の設定、ペーパートレードのやり方まで、ゼロから始める手順をまとめました。
if (signal && riskOk) { executeEA(); }
for (const tf of [M5, M15, H1]) {
score += checkTrend(tf);
}
return score >= threshold;
AIへのプロンプト、日本語と英語どっちがいい?実際に比べてみた
MQL4生成AIのプロンプトは日本語と英語どちらが精度が高いか?ChatGPTとClaudeで同じロジックを比較検証した結果を公開します。
if (signal && riskOk) { executeEA(); }
for (const tf of [M5, M15, H1]) {
score += checkTrend(tf);
}
return score >= threshold;
MQL4エラーをAIで直すデバッグプロンプト集【コピペ用テンプレ付き】
AIが生成したMQL4コードのエラーをパターン別に分類し、AIに修正させるためのプロンプトテンプレートをまとめました。コンパイルエラーから動作不良まで対応。
if (signal && riskOk) { executeEA(); }
for (const tf of [M5, M15, H1]) {
score += checkTrend(tf);
}
return score >= threshold;
EA開発のAIツール選び — チャット型とCLI型、何が違うのか
ChatGPT・Codex・Claude CodeをEA開発の観点で整理。チャット型はどれも大差なし、本格開発にはCLI型が有利な理由を解説。
