Candle Range Theory (CRT) indicator📌 Indicator Name: Candle Range Theory (CRT) indicator
This indicator detects potential bullish and bearish reversal setups based on specific candlestick price action behavior. It is designed to highlight moments when the market may be rejecting extremes and preparing to reverse direction — but only after confirmation with the closing price.
🔍 How It Works:
Bullish Setup (Long Signal):
The previous candle is bearish (closes lower than it opens).
The current candle makes a lower low than the previous one.
The current candle closes above the previous candle’s close.
Bearish Setup (Short Signal):
The previous candle is bullish (closes higher than it opens).
The current candle makes a higher high than the previous one.
The current candle closes below the previous candle’s close.
Signals are only triggered after the bar is fully closed, to avoid premature entries.
🔔 The script includes alert conditions for both long and short setups so you can receive notifications instantly.
🎥 Inspiration:
The idea for this indicator came from the excellent educational content presented in this video:
"How to Read Candlesticks Like a Pro"
We highly recommend watching it to better understand the price action principles behind this signal.
Corak carta
EdgeXplorer - Dynamic Price ActionEdgeXplorer – Dynamic Price Action
Dynamic Price Action by EdgeXplorer is a high-precision structural framework that detects and maps market structure shifts, liquidity zones, and sweep events in real time. Built for traders who prioritize price behavior over indicators, this suite intelligently interprets swing pivots, volatility ranges, and institutional footprints to surface key decision-making zones on your chart.
Whether you trade Smart Money Concepts (SMC), classical price action, or hybrid strategies, Dynamic Price Action helps you visualize where price is reacting, where it’s hunting stops, and when structure is shifting — without the noise.
⸻
🔍 What Does Dynamic Price Action Do?
This indicator tracks three core elements:
1. Market Structure Shifts – Bullish and bearish swing breaks (BOS and MSS)
2. Liquidity Zones – Dynamic detection of potential buy-side and sell-side liquidity pools
3. Sweep Events – Real-time detection when liquidity is taken out (aka stop hunts or raids)
It also contains logic for Order Block detection, giving you a foundational structure for further Smart Money analysis (note: OB visuals are currently off by default but fully supported).
⸻
⚙️ How It Works – Technical Breakdown
1. Market Structure (BOS / MSS)
• Detects swing highs and lows using a 3-bar pivot system
• When a valid swing is confirmed:
• A BOS (Break of Structure) line is drawn for bullish shifts
• An MSS (Market Structure Shift) line is drawn for bearish transitions
• Lines are plotted with customizable styles and optional labels
2. Liquidity Detection
• Liquidity zones are marked based on:
• Recent confirmed swing highs or lows
• ATR-based range check (swing must exceed Liquidity Sensitivity threshold)
• Post-swing candle direction (bullish or bearish close)
• Sell-Side Liquidity = swing highs likely containing stop clusters
• Buy-Side Liquidity = swing lows likely containing stop clusters
• Each zone is tagged visually and stored for later sweep checks
3. Sweep Recognition
• If price breaches a previously tagged liquidity level:
• A “Sell Sweep” label appears above the former sell-side zone
• A “Buy Sweep” label appears below the former buy-side zone
• Zones are removed after being swept to reduce clutter
4. Order Block Logic (Optional)
• The script includes full logic to detect bullish/bearish order blocks based on:
• Body-based or wick-based structure (user preference)
• Candle volume criteria
• Visuals are turned off for now but can be easily re-enabled
⸻
📈 What You See on the Chart
Visual Element Meaning
Green BOS Line Bullish break of market structure (higher high)
Red MSS Line Bearish shift in structure (lower low)
“Sellside Liquidity” Label Area above a swing high likely to hold resting liquidity
“Buyside Liquidity” Label Area below a swing low likely to hold resting liquidity
“Sell Sweep” Label A stop hunt above a prior high
“Buy Sweep” Label A stop hunt below a prior low
All elements are dynamically drawn, adapting to price behavior with zero repainting.
⸻
📊 Inputs & Settings Explained
Market Structures
Setting Description
Enable Market Structures Toggle BOS/MSS logic
Detection Mode Conceptual filter: Short-Term, Mid-Term, Long-Term (doesn’t affect logic)
Show Labels Display BOS and MSS labels above/below structure
Line Style Choose between Solid, Dashed, or Dotted
Bullish/Bearish Colors Customize line and label appearance
Liquidity Zones
Setting Description
Liquidity Sensitivity How large a swing must be (ATR multiplier) to qualify as a liquidity point
Order Blocks
Setting Description
Use Candle Body If true, OB zones are based on open/close instead of high/low
⸻
🧠 How Traders Can Interpret Dynamic Price Action
Structure-Based Bias:
• BOS = bullish structure continuing → look for long setups
• MSS = bearish structure breaking down → caution for reversals
Liquidity Zones:
• Price nearing a Sellside Liquidity zone? Watch for sweep + rejection
• Price tapping Buyside Liquidity? Look for absorption or reversal
Sweep Events:
• A Buy Sweep can signal accumulation
• A Sell Sweep can mark distribution or a trap breakout
Use sweeps as confirmation, trap detection, or entry filters.
⸻
🧪 Strategy Use Cases
• 🔍 Smart Money Concepts (SMC): Combine BOS/MSS + sweeps for refined CHoCH entries
• 🔄 Reversal Traders: Wait for sweep + structure shift before entering against prior trend
• 📉 Trend Continuation: Use BOS + liquidity clears to confirm direction
• 🎯 Scalping: Sweep zones act as high-probability entry areas on LTFs
Estilo Pako Mejorado - Tendencia, Liquidez y ConfirmaciónThis indicator is designed to replicate the entry logic used in high-accuracy institutional-style trading, specifically inspired by strategies used on XAU/USD (gold) in 15-minute timeframes.
It generates high-probability trade signals based on the following key conditions:
Clear market trend: Identified using the 20 EMA and 50 EMA crossover (trend confirmation).
Liquidity sweep detection: Triggers when price takes out recent highs/lows (20-bar lookback), suggesting stop-hunt behavior.
Candle confirmation: Requires a bullish or bearish engulfing candle as price reverts after the sweep.
Optional visual features include:
Order Blocks (OB): Displays the last opposite candle before a strong market move.
Liquidity zones: Marks recent swing highs/lows where liquidity likely sits.
The indicator only plots entry signals when all three conditions are aligned, aiming to reduce false positives and improve trade precision.
Best used on:
XAU/USD or major FX pairs
15-minute timeframe
In trending markets with clean structure
You can combine this indicator with alerts or automation tools to build a semi-automated or fully automated trading system.
Silver Bull Flag Breakout AlertDescription:
This script detects a bullish breakout in Silver (XAGUSD) above $37.60, confirming a bull flag continuation pattern on the daily chart. It optionally plots a 21 EMA as a trailing stop and includes a customizable alert condition for trade execution or monitoring.
Features:
• Alerts on daily close above $37.60
• Optional trailing stop (21 EMA)
• Visual breakout marker
• Ideal for swing trades targeting $41–$45
First FVG📘 Indicator Description (English)
First FVG – NY Open is a TradingView indicator designed to automatically identify the first Fair Value Gap (FVG) that appears during the New York session, following the ICT (Inner Circle Trader) methodology.
It highlights institutional inefficiencies in price caused by imbalanced price action and helps traders spot high-probability entry zones, especially after the 9:30 AM EST (New York Open).
⚙️ How It Works
Session time: The indicator scans for FVGs starting at 9:32 AM (allowing 3 candles after the NY Open to form).
FVG Conditions:
Bullish FVG: When the high of 2 candles ago is lower than the low of the current candle and the middle candle is bullish.
Bearish FVG: When the low of 2 candles ago is higher than the high of the current candle and the middle candle is bearish.
Only the first FVG per session is drawn, as taught by ICT for setups like Judas Swing or NY Reversal models.
A colored box is drawn to represent the FVG zone.
A dotted horizontal line (CE) is drawn at the midpoint of the FVG box (Consequent Encroachment), a key level watched by smart money traders.
A dashed vertical line is drawn at 9:30 NY time to mark the open.
🧠 How to Use It
Wait for the NY Open (9:30 AM EST) – the indicator becomes active at 9:32 AM.
Watch for the first FVG box of the day. This is often a high-probability reaction zone.
Use the CE line (center of the FVG) as a reference for entries, rejections, or liquidity grabs.
Combine with market structure, PD Arrays, and liquidity concepts as taught by ICT for confluence.
The FVG box and CE line will extend forward for several candles for visual clarity.
🎛️ Customizable Settings
Session time (default: 09:32–16:00 NY)
FVG box color (up/down)
Text color
Max number of days to keep boxes on chart
Option to show or hide the 9:30 NY Open vertical line
F2D Highlighter + FTFC + Volume Spike + Dashboard🧪 Why F2D Works
It traps short sellers who expect a breakdown
When it reclaims prior ranges, buyers flood back in
Paired with timeframe continuity (green on higher timeframes), it increases the edge
💸 F2D in Options Trading
Ideal for Calls when:
You're near a key level (VWAP, support, inside week/day)
Volume surges on reclaim
You catch a 2D that flips into a 2U (strong reversal)
🔧 Strike selection: ATM or 1–2 strikes OTM
⏰ Expiration: Same day or next day (if late in the day)
💥 Targets: 30–50% profit, then trail or scale out
Opening Print Line (Customizable)📈 Opening Print Line (Customizable) is a simple yet powerful intraday tool that plots the opening price of the regular trading session (RTH) and keeps it visible across the entire chart—including during pre-market and extended hours.
💡 Key Features:
🕒 Configurable time zone selector (choose from Pacific, Mountain, Central, or Eastern)
🎯 Automatically detects and plots the 9:30 AM local opening price
🎨 Customizable line color
🏷️ Optional on-chart label with editable text
This indicator is especially useful for:
Identifying opening breakout or fade setups
Anchoring support/resistance levels to the session open
Building opening range strategies or scalp setups
🔧 Built with Pine Script v6. Fully compatible with stocks, ETFs, futures, or any instrument that follows a regular session open time.
⚠️ Note: The script assumes the regular trading session starts at 9:30 AM in the selected time zone. You can modify the time if using it for futures, crypto, or other markets.
Customized ATR Trailing Stop with Fixed ATR DisplayCustomized ATR Trailing Stop with Fixed ATR Display
Daily MAs IntradayThis script overlays up to 6 customizable daily moving averages on any intraday chart. It’s designed for traders who want to see higher-timeframe trend levels while operating on lower timeframes (e.g., 5m, 15m, 1h).
Each line is calculated from daily candle data and projected forward into your intraday chart. This makes it ideal for intraday traders who rely on daily MA levels for trend confirmation, support/resistance, or bounce setups.
Multi Indicator Version 2This Pine Script combines multiple technical indicators into one TradingView overlay: two EMAs (High/Low), Supertrend, VWAP with flexible anchoring (e.g., Session, Week, Earnings), previous day’s high/low for intraday analysis, and RSI-based visual cues. The Supertrend dynamically shades the background based on trend direction and generates alerts on trend changes. VWAP visibility can be toggled and is hidden on daily or higher timeframes if desired. RSI stars indicate overbought (above 70) and oversold (below 30) conditions. This comprehensive tool aids traders in identifying market trends, momentum, and key support/resistance levels for better decision-making.
CM SlingShot System (Customizable)//@version=5
indicator("CM SlingShot System (Customizable)", overlay=true, shorttitle="CM_SSS")
// ==== 📌 INPUT SETTINGS ====
group1 = "Entry Settings"
sae = input.bool(true, title="📍 Show Aggressive Entry (pullback)?", group=group1)
sce = input.bool(true, title="📍 Show Conservative Entry (confirmation)?", group=group1)
group2 = "Visual Settings"
st = input.bool(true, title="🔼 Show Trend Arrows (top/bottom)?", group=group2)
sl = input.bool(false, title="🅱🆂 Show 'B' & 'S' Letters Instead of Arrows", group=group2)
pa = input.bool(true, title="🡹🡻 Show Entry Arrows", group=group2)
group3 = "MA Settings"
fastLength = input.int(38, title="Fast EMA Period", group=group3)
slowLength = input.int(62, title="Slow EMA Period", group=group3)
timeframe = input.timeframe("D", title="Timeframe for EMAs", group=group3)
// ==== 📈 EMA CALCULATIONS ====
emaFast = request.security(syminfo.tickerid, timeframe, ta.ema(close, fastLength))
emaSlow = request.security(syminfo.tickerid, timeframe, ta.ema(close, slowLength))
col = emaFast > emaSlow ? color.lime : emaFast < emaSlow ? color.red : color.gray
// ==== ✅ SIGNAL CONDITIONS ====
pullbackUp = emaFast > emaSlow and close < emaFast
pullbackDn = emaFast < emaSlow and close > emaFast
entryUp = emaFast > emaSlow and close < emaFast and close > emaFast
entryDn = emaFast < emaSlow and close > emaFast and close < emaFast
// ==== 🌈 CHART PLOTS ====
plot(emaFast, title="Fast EMA", color=color.new(col, 0), linewidth=2)
plot(emaSlow, title="Slow EMA", color=color.new(col, 0), linewidth=4)
fill(plot(emaSlow, title="", color=color.new(col, 0)), plot(emaFast, title="", color=color.new(col, 0)), color=color.silver, transp=70)
// Highlight bars
barcolor(sae and (pullbackUp or pullbackDn) ? color.yellow : na)
barcolor(sce and (entryUp or entryDn) ? color.aqua : na)
// Trend arrows
upTrend = emaFast >= emaSlow
downTrend = emaFast < emaSlow
plotshape(st and upTrend, title="UpTrend", style=shape.triangleup, location=location.belowbar, color=color.green)
plotshape(st and downTrend, title="DownTrend", style=shape.triangledown, location=location.abovebar, color=color.red)
// Entry indicators
plotarrow(pa and entryUp ? 1 : na, colorup=color.green, offset=-1)
plotarrow(pa and entryDn ? -1 : na, colordown=color.red, offset=-1)
plotchar(sl and entryUp ? low - ta.tr : na, char="B", location=location.absolute, color=color.green)
plotchar(sl and entryDn ? high + ta.tr : na, char="S", location=location.absolute, color=color.red)
Multi-Coin Scanner (Part 4) · Bryce Style [BYBIT]ulls 15-minute OHLCV data for each symbol.
Flags bars that meet all of these conditions:
Price closes above the highest high of the previous len candles.
Current candle closes above its own open and above the previous candle’s high (bullish engulfing).
Volume ≥ 20-period SMA of volume (spike).
Candle body is at least bodyThreshold (30 %) of the candle’s total range.
When a bar qualifies, it places a red “💥” label and triggers an alert message (symbol breakout @ price).
RSI Pivot Markers + Breakout Alerts + Anchored VWAPMarks RSI high price with a dotted line and marks low Pivot and puts an anchored vwap to the last rsi low price.
GMMG BB50 and Signals with BTC Dominance & USD//@version=5
indicator("GMMG BB50 and Signals with BTC Dominance & USD", overlay=true)
// Define Bollinger Bands
length = 50
deviations = 0.2
basis = ta.sma(close, length)
dev = deviations * ta.stdev(close, length)
upperBand = basis + dev
lowerBand = basis - dev
// Plotting Bollinger Bands
plot(basis, color=color.blue, title="BB Basis")
p1 = plot(upperBand, color=color.blue, title="Upper Band")
p2 = plot(lowerBand, color=color.blue, title="Lower Band")
// Fill between the bands
fill(p1, p2, color=color.rgb(173, 216, 230, 90), title="BB Fill")
// Determine Bullish or Bearish conditions
bullish = close > upperBand
bearish = close < lowerBand
// Calculate RSI
rsiLength = 30
rsiValue = ta.rsi(close, rsiLength)
rsiAbove50 = rsiValue > 50
// Volume calculation
lookback = input(20, "Lookback Period", tooltip="The number of previous candles to check for volume")
highestVolume = ta.highest(volume, lookback)
currentVolume = volume
bullishVolumeCond = (currentVolume >= highestVolume) and (close >= open)
bearishVolumeCond = (currentVolume >= highestVolume) and (close < open)
// Volume Status
var string volumeStatusText = "Neutral"
var color volumeBgColor = color.new(color.white, 90)
if bullishVolumeCond
volumeStatusText := "Bullish Volume"
volumeBgColor := color.new(color.green, 80)
else if bearishVolumeCond
volumeStatusText := "Bearish Volume"
volumeBgColor := color.new(color.red, 80)
else
volumeStatusText := "Neutral"
volumeBgColor := color.new(color.white, 90)
// MACD calculation
= ta.macd(close, 12, 26, 9)
macdCrossAbove = ta.crossover(macdLine, signalLine)
macdCrossBelow = ta.crossunder(macdLine, signalLine)
var string macdStatusText = "Neutral"
var color macdBgColor = color.new(color.white, 90)
var string macdCrossoverStatus = "No Crossover"
if macdCrossAbove
macdStatusText := "MACD Bullish"
macdBgColor := color.new(color.green, 80)
macdCrossoverStatus := "Bullish Cross"
else if macdCrossBelow
macdStatusText := "MACD Bearish"
macdBgColor := color.new(color.red, 80)
macdCrossoverStatus := "Bearish Cross"
// Daily and 4H candles
= request.security(syminfo.tickerid, "D", )
isDailyBullish = dayClose > dayOpen
dailyCandleColor = isDailyBullish ? "Green" : "Red"
= request.security(syminfo.tickerid, "240", )
isHourlyBullish = hourClose > hourOpen
hourlyCandleColor = isHourlyBullish ? "Green" : "Red"
// Bitcoin Dominance and USD Index
btcDom = request.security("CRYPTOCAP:BTC.D", "D", close)
dxy = request.security("TVCD:DXY", "D", close)
plot(btcDom, title="BTC Dominance", color=color.orange)
plot(dxy, title="USD Index (DXY)", color=color.purple)
// Combined table setup and update will go here... (you can continue merging the remaining table code as needed)
Ex Highset the High that we want to set , such as 10 days, 20 days, 60 days, 120 days, 250 days, etc.
Dow Theory - Low timeframe Linear Regression Channel🔍 Dow Theory - Minor Trend: Linear Regression Channel for Low Timeframes
Catch Every Move. No Smoothing. No Delay. Pure Price Action.
This indicator redefines how you analyze minor trends on low timeframes by applying Dow Theory principles without relying on traditional smoothing techniques like moving averages. Instead, it maps trends using pure candle high and low points, capturing even the smallest structural shifts with surgical precision.
🧠 What Makes It Special?
Unlike traditional linear regression channels that smooth price across fixed windows (which often fail during high volatility or abrupt moves), this tool is built to react instantly, adapting to the true pulse of the market—the candle’s own highs and lows. The result: no lag, no distortion, and no compromise during fast, slow, wide, or tight market phases.
🧩 Core Functionalities:
Minor Trend Mapping: Automatically identifies and draws channels using candle-by-candle pivot detection (not swing highs/lows).
Adaptive Channel Drawing: Draws real-time parallel channels as soon as a valid trend structure is detected—uptrend, downtrend, or sideway range.
Break Detection Logic: Highlights when price breaks above or below the current channel to anticipate trend shifts.
Sideway Detection: Dynamically tracks contraction phases using overlapping pivot structures.
No Repainting: All lines are fixed and historical; what you see is what really happened.
Fully Customizable:
Change trendline colors for bullish, bearish, or sideway zones.
Adjustable line width and style (solid, dashed, dotted).
Toggle on/off channel lines for clarity.
💡 Why Use This?
If you’re tired of average-based indicators that get whipsawed in volatile markets, this is your surgical tool for clarity. Whether you’re scalping, building entry logic, or looking to automate setups—this indicator gives you the raw market structure in its cleanest, most responsive form.
ENJOY!
S&P500 Screener Logic with Market Cap (v6)The script uses indicators to show if a equity is good enough for investment
My scriptTrend gold signal Ema strategy
The system finds the best entries for a trade. Use in gold, all numbers have been customized for it.
Functional
T2 trend gold is the second version of my trading system. Be sure to check out the first part! This system gives a signal earlier.
Key signals
Buy -----> Blue triangle to buy
Sell -----> Red triangle to sell
Remarks
I personally tested this system on my own trading and it helps me find entries for deals. The main thing is, if consolidation has begun, turn off the system, because the trading range is small at this moment, use oscillators
MK FVG & Hidden Div & ConfirmIndicator Title
FVG Mitigation & Pattern Confirmation
Short Description
A tool for finding high-probability reversal points by identifying Candlestick Patterns that occur within significant Fair Value Gap (FVG) zones. Helps filter out noise and confirms entries with price action.
Long Description
Overview
This indicator is designed to assist Price Action and Smart Money Concepts (SMC) traders in finding significant reversal points. It combines the concept of Fair Value Gaps (FVGs)—areas of liquidity imbalance—with the formation of Candlestick Patterns to confirm the strength of a signal.
The core principle of the indicator is to "filter" candlestick patterns, giving special priority to those that form at the moment the price returns to mitigate an FVG zone. These are often highly effective reversal points.
Key Features
Automatic Fair Value Gap (FVG) Detection: Clearly draws Up FVG (blue) and Down FVG (orange) zones on the chart.
Displays Divergence (HD): When the price mitigates an FVG zone, the script checks for RSI Divergence. If found, it displays an "HD" label as an additional confirmation signal.
Identifies 4 Reversal Pattern Types:
3-Bar Engulfing Pattern
Dabel Pattern
4-Bar Flip Pattern
⭐ Core Feature: High-Quality Pattern Filtering:
Colored Labels (Green/Red/etc.): These are High-Probability signals. They appear only when a pattern forms within a specified window after an FVG has been mitigated.
Black Labels: These are Low-Probability signals that occur outside of an FVG zone (this display can be toggled off in the settings).
How to Use
Look for FVG Zones: Spot the orange (Down FVG) or blue (Up FVG) boxes drawn by the indicator.
Wait for Mitigation: Wait for the price to move back into and test that FVG zone.
Look for Confirmation:
The best signal: The appearance of a "colored" pattern label (not black) within the defined Mitigation Window (default 10 bars) after the price has entered the FVG zone.
Extra confluence: If an "HD" (Divergence) label appears at the same time, it adds significant reliability to that reversal point.
Consider the Risk: A black pattern label is a signal that occurred without any immediate relationship to an FVG. These setups carry higher risk and can be disabled in the settings to reduce chart noise.
Important Settings
Mitigation Window (X Bars): Defines the number of bars after an FVG mitigation to consider a "high-probability zone" for patterns to form.
Show Labels Outside Zone?: Toggles the visibility of the black (low-probability) pattern labels.
Show/Hide Patterns: You can independently enable or disable the display for each of the four pattern types.
Best For
Traders who use Price Action, Smart Money Concepts (SMC), or those who focus on Fair Value Gaps and finding high-probability trade entries.
gop 3 trong 1"This approach is designed to help traders be proactive. It focuses on identifying the footprints of 'sharks' (Smart Money) to understand institutional activity. It dynamically maps the market structure in real-time, and provides clear, proactive guidance using Fibo OTE (Optimal Trade Entry) zones for high-probability Price Action trading."
Gradient Candles + MACD + EMAs + WMA + EMA CrossGradient candles that change color based on MACD values selected under custom settings. Also display of the moving averages I use the most. EMA and MACD crosses can be displayed or turned off.
BTC 价格百分比差异柱状图Concept of Bitfinex Premium Indicator: Bitfinex has traditionally been seen as a gathering place for “smart money” (giant whales) in the crypto market, whereas Coinbase gathers more retail investors. The difference between the two BTC/USD spot prices (Bitfinex price - Coinbase price), the so-called “premium/discount”, is often used as a way to see where the whales are moving their money docs.coinkarma.co. When the Bitfinex price is higher than the Coinbase price (positive premium), it is usually an indication that the Bitfinex price is higher than the Coinbase price (positive premium). When the Bitfinex price is higher than Coinbase (positive premium), it usually means that the big players on Bitfinex are willing to buy bitcoin at a higher price than the rest of the market, reflecting a sign that the giant whales are sucking in money on the low side; on the other hand, when the Bitfinex price is lower than the Coinbase price (negative premium, i.e., a discount), it often means that the giant whales are selling at the high end of the market, and that bitcoin is relatively “cheap” on Bitfinex. Bitcoin is relatively “cheap” on Bitfinex, indicating an increase in selling pressure at the top docs.coinkarma.co.uk. Historical experience has shown that every major bottom in Bitcoin is almost always accompanied by a premium on Bitfinex relative to other exchanges (the giant whales quietly hoarded coins), and every major top is often preceded by a discount on Bitfinex (the giant whales quietly shipped out coins) docs.coinkarma.co.uk. Coinkarma.co. Therefore, studying the Bitfinex-Coinbase daily spread is expected to capture early signals of market trend reversals.
Example of user observation: In 2024, for example, between March 21 and October 28, Bitfinex continued to have a positive premium over Coinbase, which corresponded to a long period of consolidation at the high end of the bitcoin price and multiple declines, as the giant whale took advantage of the market downturn and continued to suck in funds to construct a bottom range. In early November (around November 5th), the Bitfinex price differential turned from positive to negative and continued to be at a discount, meaning the giant whales began to hand out chips on the way up. The Bitcoin price then entered a rapid upward cycle and topped out near December 16th - highly consistent with the giant whale's discounted shipment signal. This shows that changes in the Bitfinex-Coinbase spread can reflect the arrival of a market top or bottom area in advance.