ピボットポイントは「前日の高値・安値・終値」から算出される基準値で、**デイトレードにおける“見えないサポレジ”**として多くのトレーダーが意識しています。仮想通貨のように24時間動く市場でも、日足区切りで計算することで有効に機能します。
📐 ピボットポイントの基本構造
- P(Pivot):中心ライン(基準値)
[(高値 + 安値 + 終値) ÷ 3] - R1, R2, R3:上方向の抵抗帯
- S1, S2, S3:下方向の支持帯
📊 デイトレ戦略パターン
1. レンジ逆張り戦略
- 条件:相場が明確なトレンドを持たず、日中は横ばい気味。
- 戦略:
- 価格が S1付近で反発 → ロング、利確はPまたはR1。
- 価格が R1付近で反落 → ショート、利確はPまたはS1。
- 補強:RSIやStochRSIで売られすぎ/買われすぎを確認すると精度アップ。
2. ブレイクアウト順張り戦略
- 条件:ロンドン時間やNY時間など、出来高が増える局面。
- 戦略:
- R1を出来高を伴って上抜け → ロング、利確はR2〜R3。
- S1を出来高を伴って下抜け → ショート、利確はS2〜S3。
- 補強:MACDやADXでトレンド強度を確認。
3. ピボット+時間帯戦略
- アジア時間:P付近でのもみ合いが多く、逆張り有効。
- 欧州・NY時間:R1/S1のブレイクが発生しやすく、順張り有効。
- 仮想通貨は24時間市場ですが、米株市場オープン前後に大きな動きが出やすい。
🎯 実務オペレーション例
- 前日の高値・安値・終値からP, R1, S1を算出。
- TradingViewでラインを引き、アラートを設定。
- 条件分岐:
- P〜R1/S1の範囲 → レンジ逆張り。
- R1/S1ブレイク+出来高増 → 順張り。
- 損切りは次のピボット帯の外側に設定。
✅ まとめ
- ピボットは「日中の地図」として機能し、反発狙いとブレイク狙いの両方に使える。
- 仮想通貨はボラが大きいため、R2/S2まで届くケースも多い。
- RSIや出来高と組み合わせると精度が高まる。
仮想通貨のデイトレでよく使う ピボットポイント(前日の高値・安値・終値から算出) を自動計算し、主要レベル(P, R1, S1など)をチャートに描画、さらに ブレイク時にアラートを発火 するサンプルを用意しました。
📜 Pine Script v5 サンプルコード
//@version=5
indicator("Daily Pivot Points with Alerts", overlay=true)
// === 前日のデータ取得 ===
prevHigh = request.security(syminfo.tickerid, "D", high[1])
prevLow = request.security(syminfo.tickerid, "D", low[1])
prevClose= request.security(syminfo.tickerid, "D", close[1])
// === ピボット計算 ===
pivot = (prevHigh + prevLow + prevClose) / 3
r1 = 2 * pivot - prevLow
s1 = 2 * pivot - prevHigh
r2 = pivot + (prevHigh - prevLow)
s2 = pivot - (prevHigh - prevLow)
r3 = prevHigh + 2 * (pivot - prevLow)
s3 = prevLow - 2 * (prevHigh - pivot)
// === ライン描画 ===
plot(pivot, "Pivot", color=color.yellow, linewidth=2)
plot(r1, "R1", color=color.red)
plot(s1, "S1", color=color.green)
plot(r2, "R2", color=color.red)
plot(s2, "S2", color=color.green)
plot(r3, "R3", color=color.red)
plot(s3, "S3", color=color.green)
// === ブレイク条件(確定足ベース) ===
breakAboveR1 = ta.crossover(close, r1) and barstate.isconfirmed
breakBelowS1 = ta.crossunder(close, s1) and barstate.isconfirmed
// === シグナル表示 ===
plotshape(breakAboveR1, title="Break Above R1", location=location.abovebar,
color=color.lime, style=shape.triangleup, size=size.small, text="R1↑")
plotshape(breakBelowS1, title="Break Below S1", location=location.belowbar,
color=color.red, style=shape.triangledown, size=size.small, text="S1↓")
// === アラート条件 ===
alertcondition(breakAboveR1, title="Breakout R1", message="Price closed above R1 pivot")
alertcondition(breakBelowS1, title="Breakdown S1", message="Price closed below S1 pivot")
✅ ポイント
- 自動計算:前日の高値・安値・終値からP, R1〜R3, S1〜S3を算出。
- ライン描画:チャートにピボット帯を表示。
- アラート:確定足ベースで「R1突破」「S1割れ」を検知。
- 拡張:必要に応じてR2/S2やR3/S3のブレイクにもアラートを追加可能。
⚙️ 運用イメージ
- このスクリプトをチャートに追加 → 「アラート」から「Breakout R1」や「Breakdown S1」を選択。
- 通知方法にWebhookを指定すれば、Power Automateに送信してレポート保存も可能。
承知しました。BTC・ETH・XRPをまとめて「前日のピボットポイント」を自動計算し、主要レベル(Pivot, R1, S1)をチャートに描画、さらにブレイク時にアラート発火する統合版のPine Scriptを用意しました。
📜 Pine Script v5 サンプル(BTC・ETH・XRP統合ピボット監視)
//@version=5
indicator("BTC・ETH・XRP Pivot Monitor (Confirmed Bar)", overlay=false, max_lines_count=500)
// === シンボル設定 ===
btcSymbol = input.symbol("BINANCE:BTCUSDT", "BTC Symbol")
ethSymbol = input.symbol("BINANCE:ETHUSDT", "ETH Symbol")
xrpSymbol = input.symbol("BINANCE:XRPUSDT", "XRP Symbol")
// === 前日の高値・安値・終値を取得 ===
getPrevData(sym) =>
h = request.security(sym, "D", high[1])
l = request.security(sym, "D", low[1])
c = request.security(sym, "D", close[1])
[h, l, c]
// === ピボット計算関数 ===
getPivots(h, l, c) =>
p = (h + l + c) / 3
r1 = 2 * p - l
s1 = 2 * p - h
[p, r1, s1]
// === 各銘柄の計算 ===
[btcH, btcL, btcC] = getPrevData(btcSymbol)
[ethH, ethL, ethC] = getPrevData(ethSymbol)
[xrpH, xrpL, xrpC] = getPrevData(xrpSymbol)
[btcP, btcR1, btcS1] = getPivots(btcH, btcL, btcC)
[ethP, ethR1, ethS1] = getPivots(ethH, ethL, ethC)
[xrpP, xrpR1, xrpS1] = getPivots(xrpH, xrpL, xrpC)
// === 現在価格 ===
btcClose = request.security(btcSymbol, timeframe.period, close)
ethClose = request.security(ethSymbol, timeframe.period, close)
xrpClose = request.security(xrpSymbol, timeframe.period, close)
// === ブレイク条件(確定足ベース) ===
btcBreakUp = ta.crossover(btcClose, btcR1) and barstate.isconfirmed
btcBreakDown = ta.crossunder(btcClose, btcS1) and barstate.isconfirmed
ethBreakUp = ta.crossover(ethClose, ethR1) and barstate.isconfirmed
ethBreakDown = ta.crossunder(ethClose, ethS1) and barstate.isconfirmed
xrpBreakUp = ta.crossover(xrpClose, xrpR1) and barstate.isconfirmed
xrpBreakDown = ta.crossunder(xrpClose, xrpS1) and barstate.isconfirmed
// === サブチャートにPivotラインを表示 ===
plot(btcP, "BTC Pivot", color=color.yellow)
plot(btcR1, "BTC R1", color=color.red)
plot(btcS1, "BTC S1", color=color.green)
plot(ethP, "ETH Pivot", color=color.orange)
plot(ethR1, "ETH R1", color=color.red)
plot(ethS1, "ETH S1", color=color.green)
plot(xrpP, "XRP Pivot", color=color.purple)
plot(xrpR1, "XRP R1", color=color.red)
plot(xrpS1, "XRP S1", color=color.green)
// === アラート条件 ===
alertcondition(btcBreakUp, title="BTC Breakout R1", message="BTC closed above R1")
alertcondition(btcBreakDown, title="BTC Breakdown S1", message="BTC closed below S1")
alertcondition(ethBreakUp, title="ETH Breakout R1", message="ETH closed above R1")
alertcondition(ethBreakDown, title="ETH Breakdown S1", message="ETH closed below S1")
alertcondition(xrpBreakUp, title="XRP Breakout R1", message="XRP closed above R1")
alertcondition(xrpBreakDown, title="XRP Breakdown S1", message="XRP closed below S1")
✅ ポイント
- 3銘柄同時監視:BTC・ETH・XRPのPivot, R1, S1を同時に計算。
- 確定足ベース:
barstate.isconfirmedを条件にして、確定足でのみアラート発火。 - アラート条件:各銘柄ごとに「R1突破」「S1割れ」を検知。
- 視覚化:サブチャートにPivotラインを色分け表示。
⚙️ 運用イメージ
- このスクリプトをチャートに追加 → 「アラート」から「BTC Breakout R1」「ETH Breakdown S1」などを選択。
- Webhook URLをPower Automateに設定すれば、BTC・ETH・XRPのPivotブレイクを一括でレポート保存できます。