Signal Pilot
🟢 初級 • レッスン4/82

あなたのインジケーターは嘘をついています(リペイント問題)

読了時間 約12分 • インジケーターの実際と、その確かめ方
Signal Pilot
プロ向けトレーディング教育
0%
順調に進んでいます。
読み進めるとこのレッスンが完了になります

🎯 学べること

このレッスンを終えると、次のことができるようになります:

  • インジケーターのリペイントを検証する(足の確定前にシグナルをスクリーンショットし、確定後に照合する)
  • どのTradingViewインジケーターがリペイントするかを見分ける(個人向けの8割以上が該当します)
  • リペイントしないツールだけを使う(SignalPilotのインジケーターはいずれもリペイントしません)
  • どのインジケーターであれ、信用する前に実データで2〜4週間のウォークフォワード検証を行う
パート1:リペイントという悪夢

📉 ケーススタディ:リペイントするインジケーターでジェイクが1万4,700ドルを失った顛末

-$14,700
損失合計
91.5%
リペイント率
71% → 34%
勝率の急落
+74%
是正後の立て直し

トレーダー: ジェイク・モリソン(複数の事例を合成した例)、26歳、元マーケティングアナリスト(口座3万2,000ドル)

戦略: TradingViewのインジケーター「Ultimate Reversal Pro」(ダウンロード4万7,000件、★4.8)

致命的な欠陥: インジケーターがリペイントしていた。足の確定後にシグナルが動いたり消えたりしていた

📊 「完璧な」backtestと現実(クリックで展開)
Backtest(2024年1月)
勝率71.4%
プロフィットファクター3.2
3.8:1 R:R
リターン+247%
実弾(2024年2〜4月)
勝率34.2%
プロフィットファクター0.58
0.92:1 R:R
リターン-45.9%

転機(2024年4月8日): ジェイクは実際のシグナルをスクリーンショットし、足の確定後に見比べました。

  • 9時38分 買い: 5,186のシグナル → 足の確定後:5,179へ移動(7ポイント下!)• 680ドルの損失
  • 10時52分 売り: 5,194のシグナル → 足の確定後: 跡形もなく消えた! • 520ドルの損失
  • 13時15分 買い: 5,201のシグナル → 足の確定後:5,196へ移動(5ポイント下)• 440ドルの損失
  • 14時43分 売り: 5,209のシグナル → 足の確定後:5,213へ移動(4ポイント上)• 380ドルの損失

調べて分かったこと: 47件中43件のシグナルが動いていました(リペイント率91.5%)。コードを確認したところ、 request.security()lookahead=barmerge.lookahead_off.

立て直し(2024年5〜8月): 決定的な動きをするインジケーターへ変更。90トレード、勝率58.9%、利益1万2,820ドル。口座は1万7,300ドル → 3万100ドル(+74.1%)。

ジェイクの助言: 「私は幽霊を相手にトレードして1万4,700ドルを失いました。足の確定後に動くシグナルのことです。どのインジケーターも検証してください。実際にスクリーンショットを取り、足の確定後に見比べるのです。backtestがあまりに完璧に見えるなら(勝率7割超、 <10%のDD)、まずリペイントを疑ってください。本物の優位性の勝率は55〜65%です。決して信用せず、必ず確かめてください」

ケーススタディの問題:ジェイクはインジケーター「Ultimate Reversal Pro」でbacktestを行い、目を見張る結果を得ました。勝率71.4%、プロフィットファクター3.2、リターン+247%です。3万2,000ドルで実弾に移りましたが、10週間で1万4,700ドル(-45.9%)を失い、勝率はわずか34.2%でした。彼の致命的な誤りは何でしょうか。

A)リスクを抑えるために、もっと小さいポジションサイズにすべきだった
B)相場環境が変わったので、インジケーターが効かなくなった
C)インジケーターがリペイントしていた。実際に見えていたシグナルが足の確定後に動いたり消えたりしていたため、「完璧な」backtestのシグナルはリアルタイムには存在しなかった(リペイント率91.5%)
D)トレードの回数が多すぎた。エントリーをもっと絞るべきだった

正解:C。 ジェイクのインジケーターはbacktestで勝率71.4%を示していましたが、シグナルの91.5%が足の確定後に動くか消えていました。彼は「幽霊をトレード」していたのです。リペイントのおかげで完璧に見えていただけのエントリーでした。対処法は、実際のシグナルをスクリーンショットで検証すること。backtestがあまりに完璧に見えるなら(勝率7割超)、まずリペイントを疑ってください。本物の優位性の勝率は55〜65%程度です。

パート2:決定的な動きをするインジケーター

「決定的」とはどういうことか(そしてなぜ効くのか)

実情はこうです。インジケーターの多くは、リペイントを知らない愛好家が作っています。もっと悪いのは、 知っていて 気にも留めない詐欺まがいの作り手です。

SignalPilotは違う考え方をとっています。

💡 Signal Pilotの約束

SignalPilotのインジケーターはいずれも、厳格な決定性のルールに従います。

  • 未来のデータを使わない: HTFの取得はすべて lookahead_off[1] オフセット
  • シグナルは動かない: いったん表示されたシグナルは 決して 動きも消えもしません
  • 確定した足だけ: シグナルは足の確定を待ちます(足の途中の小細工はありません)
  • 公開されていて検証できる: コードは第三者が検証できる形で公開されています

言い換えると: 実際に見えたものが、そのまま履歴にも残ります。小細工はありません。嘘もありません。

❌ リペイントするインジケーター

Backtest: 期待値3.2R、プロフィットファクター2.8

実弾では: 期待値-0.8R、プロフィットファクター0.6

問題: 足の確定後にシグナルが変わる

結果: 数か月を無駄にし、口座を飛ばす

✓ 決定的な動きをするインジケーター

Backtest: 期待値1.8R、プロフィットファクター1.6

実弾では: 期待値1.7R、プロフィットファクター1.5

誠実さ: シグナルは決して変わらない

結果: 安定して機能する優位性

注目してください。決定的なインジケーターのほうがbacktestの期待値は 低い のです。誠実だからこそです。未来のデータでごまかしません。

では実弾では。そちらでは きちんと機能します.

リペイントの実例:前と後

リペイントを現場で捕まえると、実際にはこう見えます。

例1:インジケーター「SuperTrend Reversal」(TradingView、ダウンロード12万件)

時刻 実際に見えていたもの(足の途中) 履歴に残っているもの(足の確定後)
10時45分 5,186ドルで買いシグナル(緑の矢印) シグナルが5,179ドルへ移動(7ポイント!)
11時22分 5,194ドルで売りシグナル(赤の矢印) シグナルが跡形もなく消えた!
14時15分 5,201ドルで買いシグナル シグナルが5,196ドルへ移動(5ポイント下)

例2:インジケーター「AI Prediction Zones」(TradingView、ダウンロード8万5,000件)

12時04分(足の途中):
SPYの519.00〜519.50ドルに「サポート帯」を表示(緑の網かけ)
インジケーターのラベル:「反発の確度が高い帯 — 精度78%」

12時05分(足の確定後):
サポート帯が518.20〜518.70ドルへ移動(80セント下!)
いまや実際の安値にぴたりと重なっている
→ これがリペイントです。帯は安値を、起きたあとで「予測」しました。

リアルタイムでの影響:
サポートだと思って519.00ドルで買った → 価格は518.20ドルまで下落
1株あたり0.80ドルの損失、500株で-400ドル
インジケーターはいま、サポートを「本来あるべきだった」518.20ドルに表示している
→ 履歴では完璧に見え、実際には役に立たないということです

例3:インジケーター「Smart Money Divergence」(有料、199ドル)

実際のシグナル(13時30分): 「強気ダイバージェンス検出 — 価格は安値切り下げ、インジケーターは安値切り上げ」

足の確定後(13時31分): ダイバージェンスの線が3本前へ移り、角度も変わっている

影響: そのダイバージェンスを見て13時30分に買いで入った → 価格は下げ続けた → 620ドルの損失

いまチャートの履歴に見えるもの: ダイバージェンスは3本前から始まっていた(あとから見れば完璧なタイミング)

パート3:検証の手順

信用せず、必ず確かめる

実際のお金を賭ける前に、どのインジケーターでも検証できる手順です。

✅ インジケーター検証チェックリスト

どのインジケーターでも、トレードに使う前に:

  1. 目視での検証: シグナルを3〜5件その場で見て、足の確定後に動くかを確かめる
  2. リプレイでの検証: バーリプレイで、その場のシグナルと履歴のシグナルを見比べる
  3. アラートでの検証: アラートを設定し、20件以上を記録して履歴と照合する
  4. コードの確認(可能なら): 探すべきもの: request.security() 危険信号

合格の条件: すべての検証でシグナルが一致していること。

ひとつでも不合格なら → 使わない → ほかのインジケーターを探す

リペイントしやすい、避けるべきインジケーター

リペイントしやすいインジケーターの種類と具体名です。使っているものがあれば、すぐ検証してください。

インジケーターの種類または名称 なぜリペイントするか 見分け方
ジグザグ系 価格が動くたびに転換点を計算し直す。履歴では「完璧」な波の検出になる 足の確定後に転換点が動くかを確認する
上位足(HTF)の取得で lookahead_off リアルタイムには存在しない未来のHTFデータを使っている コードの確認:次を検索する request.security()lookahead=barmerge.lookahead_off
「AI・機械学習による予測」系 多くは足の途中のデータや先読みを使って「予測」を表示している バーリプレイで検証:予測は動きの前に出るか、後に出るか
ダイバージェンス系(ほとんど) 新しい足ができるたびにダイバージェンスの線を引き直す 線をスクリーンショットし、角度や位置が変わるかを確認する
サポート・レジスタンス帯(可変) 直近の値動きにぴたりと合うように帯が調整される アラートで検証:帯の境界にアラートを置き、動かないことを確かめる

危険信号: あるインジケーターのbacktestが勝率75%超を示していて、しかも <10%のdrawdownなら、ほぼ間違いなくリペイントしています。本物の誠実な優位性は、現実的なdrawdown(15〜30%)を伴って勝率55〜65%になります。backtestでの完璧さは、実弾での詐欺です。

バーリプレイでリペイントを見抜く手順

TradingViewのバーリプレイは、リペイントするインジケーターを捕まえるのに最も有効な機能のひとつです。使い方は次のとおりです。

バーリプレイ検証の手順:

  1. チャートにインジケーターを表示する: 流動性の高い銘柄(SPY、ES、AAPL)を5分足か15分足で使います
  2. バーリプレイモードに入る: バーリプレイのボタンを押します(棒グラフつきの再生ボタンのような形です)
  3. 3日前まで巻き戻す: 20〜30件のシグナルを検証できるだけの履歴が確保できます
  4. 1本ずつ先へ進める: 足ができていく途中でシグナルが出るタイミングを見ます
  5. シグナルの出た時点を記録する: 買いシグナルは価格が上がる前に出ますか、それとも後ですか
  6. チャートの履歴と見比べる: リプレイを抜けて、同じ時間帯を見ます
  7. 食い違いを探す: シグナルは同じ位置にありますか。それとも動きましたか

検証結果の例(「Ultimate Reversal Pro」のバーリプレイ):

リプレイモード(1本ずつ先へ進める):
10時15分:シグナルなし
10時30分:シグナルなし
10時45分:価格が520ドル → 518ドルへ下落 → 519ドルで買いシグナルが出現
11時00分:価格が522ドルまで上昇(シグナルは機能した!)

履歴のチャート表示(同じ時間帯):
10時15分:520ドルに買いシグナル(シグナルが動いた!)
本来のシグナル:リプレイでは519ドル
履歴のシグナル:チャート表示では520ドル
→ 差:シグナルは1ポイント動き、安値を完璧に「予測」した形になっている

判定: リペイントを確認
シグナルは足ができていく途中、519ドルに出ていた
履歴のチャートでは520ドルに移っている(より早く、より有利な位置に見える)
これは先読みです。結果を知ってからシグナルを調整しています

🚨 本音を言えば

手間が増えるように感じます。実際そのとおりです。ですが、そうしない場合を考えてください。

2時間かけて検証する → 数か月分の損失と精神的な消耗を避けられます。

検証を飛ばす → 口座を飛ばす → なぜトレードは「無理」なのかと悩む。

選ぶのはあなたです。

コード確認の詳細:Pine Scriptの危険信号

インジケーターがソースコードを公開していれば(TradingViewのオープンソース)、リペイントの有無を確認できます。探すべきパターンは次のとおりです。

危険信号 その1: request.security()lookahead_off

// ❌ リペイントするコード(未来のHTFデータを使っている)
htf_close = request.security(syminfo.tickerid, "60", close)

// ✅ リペイントしないコード(HTFの足の確定を待つ)
htf_close = request.security(syminfo.tickerid, "60", close, lookahead=barmerge.lookahead_off)

// さらに良い書き方:[1]のオフセットを足して、確定済みのHTFの足を使う
htf_close = request.security(syminfo.tickerid, "60", close[1], lookahead=barmerge.lookahead_off)

危険信号 その2:現在の足のデータを使った計算で、次を使っていない barstate.isconfirmed

// ❌ リペイントするコード(足の途中でシグナルが変わりうる)
signal = close > ema_20 and rsi > 50
plotshape(signal, style=shape.triangleup, color=color.green)

// ✅ リペイントしないコード(足が確定したときだけ描画する)
signal = close > ema_20 and rsi > 50
plotshape(barstate.isconfirmed and signal, style=shape.triangleup, color=color.green)

危険信号 その3:転換点の計算がやり直される

// ❌ リペイントするコード(新しい足ができるたびに転換点の位置が変わる)
pivot_high = ta.pivothigh(high, 5, 5)  // 5本前まで遡り、5本先まで見る
// 問題:転換点の確定に未来の5本が必要 → 仕組み上どうしてもリペイントする

// ✅ より良い方針(確定した足を使い、動かない波の検出にする)
// Signal Pilotの方針:5本が確定してから初めて波を検出する
// 先読みはしない。シグナルは遅れるが、そのぶん誠実である

コツ: Pine Scriptが読めなくても、目視とリプレイの検証で構いません。それだけでリペイントするインジケーターの95%以上は見抜けます。コードが読めるなら、こちらが最速です。これらのパターンを検索すれば30秒で見抜けます。

🎓 要点

  • インジケーターの6〜9割はリペイントする — トレードに使う前に、すべて検証してください
  • リペイント=見せかけの優位性 — backtestは完璧、実弾では惨憺たる結果
  • 検証は4つの方法で — 目視、リプレイ、アラート、コードの確認
  • 決定的なコードであることが効く — 通常、足の確定後にシグナルが変わることはありません
  • SignalPilotはそれを約束します — 未来のデータなし、小細工なし、嘘なし
  • トレードの前に検証を — 2時間の検証が、数か月分の損失を防ぎます
⚡ 明日からできること(クリックで展開)

抱え込みすぎないこと。まずはこの3つから:

  1. インジケーターをひとつスクリーンショットで検証する — 実際のシグナルを3枚撮り、10分後に確認してください
  2. アラートをひとつ設定する — 主に使うインジケーターにアラートを設定し、足の確定後に合っているか確かめてください
  3. 記録する — 「インジケーター:[名称]。検証:スクリーンショット。結果:シグナルは動いた/動かなかった」

この方法で3つ検証すれば、どれが嘘をついているか分かります。嘘つきはすぐ外してください。

練習課題

🎯 リペイント検出の練習

課題:いま使っているインジケーターを検証する

実際のお金を賭ける前に、使っているインジケーターをすべてリペイントの観点で検証してください。

  1. 目視での検証: シグナルを3件スクリーンショットします。10分待ちます。更新します。動いたり消えたりしましたか。
  2. リプレイでの検証: TradingViewのリプレイモードを使い、先へ進めます。シグナルは動きの前に出ますか、後に出ますか。
  3. アラートでの検証: 実際のシグナルにアラートを設定します。1時間後にチャートを見ます。そのアラートはまだ有効ですか。
  4. Backtestと実弾の比較: 20トレードを練習売買で行います。期待値をbacktestと比べます。差が大きい=リペイントの可能性が高い
  5. 分かったことを記録してください。合格したインジケーターはどれで、不合格はどれでしたか。
  6. リペイントするインジケーターは、すべてすぐチャートから外してください

目的: トレードに使うインジケーターが決定的であることを必ず確かめてください。リペイントしないと証明できないなら、するものとして扱ってください。

理解度チェック

🎮 かんたん確認(気楽にどうぞ)

あるインジケーターのbacktestでは期待値2.8R。実弾では期待値-0.5R。最も考えられる原因は何でしょうか。

A)相場環境が変わった
B)インジケーターがリペイントする(足の確定後にシグナルが変わった)
C)backtestingにもっとデータが必要だ
D)執行が下手だった
正解です。 backtestと実弾の差が極端に大きい(利益から損失へ)場合、リペイントの可能性が非常に高いといえます。そのインジケーターは、実際には存在しなかった完璧なシグナルを履歴に見せていたのです。

インジケーターがリペイントするかは、どう検証しますか。

A)backtestの結果を見れば十分だ
B)シグナルをその場でスクリーンショットし、足の確定を待って動いていないか確かめる
C)インジケーターの説明文を読む
D)ダウンロード数を見る
正解です。 目視での検証がいちばん確かです。足の途中でシグナルをスクリーンショットし、足が確定してから確認します。動いたり消えたりしていれば、そのインジケーターはリペイントします。

ジェイクの最大の誤りは何でしたか。

A)backtestが足りなかった
B)リペイントするインジケーターを信用した。シグナルの91.5%が足の確定後に動いていた
C)ロットが大きすぎた
D)時間足の選び方を誤った
正解です。 ジェイクのインジケーターは、実際には存在しなかった完璧なシグナルをbacktestに見せていました。91.5%が足の確定後に動き、backtestで71%だった勝率は実弾で34%になりました。

ここまで読んだなら、数か月、いや数年分の苦労を避けたことになります。多くのトレーダーはこれを学ばないままです。あなたはいま学びました。

関連レッスン
中級 #32

backtestingの現実

backtestでのリペイントを避ける — 先読みバイアスとカーブフィッティングを検証する

レッスンを読む →
初級 #3

プライスアクションは死んだ

遅れて出るprice actionのシグナルではなく、リペイントしないorder flowを使う

レッスンを読む →
初級 #5

RSIの行き過ぎ

RSIの本来の働きと、「買われすぎ」が売りを意味しない理由を学びます

レッスンを読む →

⏭️ 次回

レッスン5:RSIの行き過ぎは反転シグナルではない

上昇トレンドでRSIが70を超えたとき、しばしば買いの候補になる理由と、地合いがすべてを決める理由を学びます。

教育目的のみ。 トレードには重大な損失リスクが伴います。過去の実績は将来の結果を保証するものではありません。

💬 ディスカッション (コメント0件)

0/1000

コメントを読み込んでいます…

← 前のレッスン 次のレッスン →

Signal Pilotで取引を始めますか。

学んだ内容を、プロ向けのインジケーターとリアルタイムの市場分析ツールで実際に使ってみてください。

Signal Pilotに戻る →
教育目的のみ。 トレードには重大な損失リスクが伴います。金融助言ではありません。過去の実績は将来の結果を保証するものではありません。