Pine Script v5 — TradingView

BTC / ETH Accumulation Scanner

Multi-signal indicator for identifying mid-to-long term crypto buying opportunities

File: btc_eth_accumulation.pine Platform: TradingView (Pine Script v5) Recommended TF: Daily (1D) · Weekly (1W) Created: April 2026

Overview

This indicator uses a scoring system — five independent technical conditions each worth one point. When the score meets or exceeds your threshold, it plots a green ACC label on the chart, highlights the bar, and fires a TradingView alert.

Designed for accumulation, not short-term trading. The goal is to identify periods where multiple indicators simultaneously suggest an asset is undervalued relative to its trend, allowing you to build a position over time.

Best Assets Apply to BTCUSDT or ETHUSDT on Binance, Coinbase, or any major exchange feed in TradingView. Works on BTCUSD / ETHUSD spot pairs as well.

The Five Signals

# Condition Default Setting Rationale
C1 RSI Oversold RSI(14) < 40 Momentum is beaten down. On a weekly chart, RSI < 40 has historically marked major Bitcoin accumulation zones (e.g., 2018–19, 2022 bear market bottom).
C2 Below 200 EMA Close < EMA(200) Price is trading at a discount to the long-term trend. Institutional buyers often accumulate in this zone. The 200 EMA is the most-watched long-term level on crypto.
C3 MACD Bullish Cross MACD(12,26,9) crossover Short-term momentum is beginning to turn positive. The MACD line crossing above the signal line on a daily chart suggests early trend reversal.
C4 Lower Bollinger Band Touch Close ≤ BB(20, 2.0) lower Price is statistically stretched to the downside relative to its recent 20-period range. Often precedes mean-reversion bounces.
C5 Golden Cross EMA(50) crosses above EMA(200) Lagging but historically high-confidence signal that a new bull cycle is beginning. Rare — when this fires alongside other signals it is a strong confirmation.

Score Interpretation

1Very Weak
Watch Only
2Weak
Monitor
3Moderate
Starter Position
4Strong
Add to Position
5Max Conviction
Full Accumulation
Recommended Default: Min Score = 3 Three conditions aligning simultaneously on a daily or weekly chart is a meaningful confluence. Raise to 4 for rarer, higher-conviction entries with fewer false positives.
Dollar-Cost Averaging Approach Rather than placing a single large order on a score=3 signal, consider sizing your entries proportionally to the score: small at 3, medium at 4, larger at 5. This manages risk across multiple potential accumulation zones.

Configurable Parameters

ParameterDefaultRangeNotes
RSI Length147–21Standard; lower = more reactive
RSI Oversold Threshold4020–55Lower = stricter; 30 for deep bear markets only
Fast EMA50Used for Golden Cross calculation
Slow EMA200Primary long-term trend reference
MACD Fast / Slow / Signal12 / 26 / 9Industry standard settings
BB Length2020-period standard deviation basis
BB StdDev Multiplier2.02.0 = ~95% of price action contained within bands
Min Score to Trigger31–5The alert threshold — most important setting

TradingView Setup — Step by Step

Manual Input Required — No API Push Available TradingView does not provide a public API for uploading or pushing Pine Scripts programmatically. The script must be pasted manually into the Pine Script Editor. This is a TradingView platform limitation, not a tooling limitation. The steps below take under 2 minutes.

Loading the Script

  1. Open TradingView in your browser and navigate to a chart for BTCUSDT or ETHUSDT.
  2. Set your chart to Daily (1D) or Weekly (1W) timeframe using the toolbar at the top.
  3. Click Pine Script Editor at the bottom of the screen (or press Alt+P).
  4. Select all existing placeholder code in the editor (Ctrl+A) and delete it.
  5. Open the file btc_eth_accumulation.pine in any text editor, select all (Ctrl+A), and copy (Ctrl+C).
  6. Paste (Ctrl+V) the script into the TradingView Pine Editor.
  7. Click "Add to chart" (the button to the right of "Save"). The indicator will appear on your chart immediately.

Setting Up the Alert

  1. On the chart, find the indicator label (top-left of the chart pane). Hover over it and click the three-dot menu (···).
  2. Select "Add alert on BTC/ETH Accumulation Scanner..."
  3. In the alert dialog, the condition will auto-populate as Accumulation Signal.
  4. Set Trigger to: Once Per Bar Close (recommended — avoids intra-bar noise).
  5. Choose your notification method: App notification, Email, or Webhook.
  6. The alert message is pre-formatted — it will include ticker, score, RSI, price, and timestamp.
  7. Click Create. Repeat for the second asset (BTC and ETH separately).
Pro Tip: Run Two Separate Chart Tabs Open one tab for BTCUSDT and one for ETHUSDT, each with the indicator applied and an alert set. TradingView will notify you regardless of which tab is active.

Timeframe Guidance

TimeframeSignal FrequencyBest ForRecommended Min Score
Weekly (1W) Very rare (a few times per year) Long-term accumulation, macro bottom identification 2–3
Daily (1D) Occasional (several times per cycle) Mid-term entries, building a position during corrections 3
4H / 1H Frequent (not recommended for this strategy) Short-term — not appropriate for accumulation N/A

Risk Considerations

Suggested Position Sizing Framework Example for a $10,000 crypto allocation budget: Score 3 = deploy 20% ($2,000) · Score 4 = deploy 35% ($3,500) · Score 5 = deploy 45% ($4,500). Adjust percentages to your own risk tolerance.

Alert Message Format

When the alert fires, the notification will contain:

🟢 BTCUSDT ACCUMULATION SIGNAL Score: 3/5 (threshold: 3) Price: 82450.00 RSI: 37.4 Timeframe: 1D Time: 2026-04-17T14:00:00Z

Quick Reference Card

TaskAction
Load scriptPine Editor → Ctrl+A → Paste → Add to chart
Set alertIndicator ··· menu → Add alert → Once Per Bar Close → Create
Change sensitivityIndicator ⚙️ Settings → Min Score to Trigger (1–5)
Apply to ETHOpen ETHUSDT chart → repeat paste and alert steps
Best timeframeDaily (1D) or Weekly (1W)
Dashboard locationTop-right of chart — shows live signal status table