MERV: Market Entropy & Rhythm Visualizer [BullByte]The MERV (Market Entropy & Rhythm Visualizer) indicator analyzes market conditions by measuring entropy (randomness vs. trend), tradeability (volatility/momentum), and cyclical rhythm. It provides traders with an easy-to-read dashboard and oscillator to understand when markets are structured or choppy, and when trading conditions are optimal.
Purpose of the Indicator
MERV’s goal is to help traders identify different market regimes. It quantifies how structured or random recent price action is (entropy), how strong and volatile the movement is (tradeability), and whether a repeating cycle exists. By visualizing these together, MERV highlights trending vs. choppy environments and flags when conditions are favorable for entering trades. For example, a low entropy value means prices are following a clear trend line, whereas high entropy indicates a lot of noise or sideways action. The indicator’s combination of measures is original: it fuses statistical trend-fit (entropy), volatility trends (ATR and slope), and cycle analysis to give a comprehensive view of market behavior.
Why a Trader Should Use It
Traders often need to know when a market trend is reliable vs. when it is just noise. MERV helps in several ways: it shows when the market has a strong direction (low entropy, high tradeability) and when it’s ranging (high entropy). This can prevent entering trend-following strategies during choppy periods, or help catch breakouts early. The “Optimal Regime” marker (a star) highlights moments when entropy is very low and tradeability is very high, typically the best conditions for trend trades. By using MERV, a trader gains an empirical “go/no-go” signal based on price history, rather than guessing from price alone. It’s also adaptable: you can apply it to stocks, forex, crypto, etc., on any timeframe. For example, during a bullish phase of a stock, MERV will turn green (Trending Mode) and often show a star, signaling good follow-through. If the market later grinds sideways, MERV will shift to magenta (Choppy Mode), warning you that trend-following is now risky.
Why These Components Were Chosen
Market Entropy (via R²) : This measures how well recent prices fit a straight line. We compute a linear regression on the last len_entropy bars and calculate R². Entropy = 1 - R², so entropy is low when prices follow a trend (R² near 1) and high when price action is erratic (R² near 0). This single number captures trend strength vs noise.
Tradeability (ATR + Slope) : We combine two familiar measures: the Average True Range (ATR) (normalized by price) and the absolute slope of the regression line (scaled by ATR). Together they reflect how active and directional the market is. A high ATR or strong slope means big moves, making a trend more “tradeable.” We take a simple average of the normalized ATR and slope to get tradeability_raw. Then we convert it to a percentile rank over the lookback window so it’s stable between 0 and 1.
Percentile Ranks : To make entropy and tradeability values easy to interpret, we convert each to a 0–100 rank based on the past len_entropy periods. This turns raw metrics into a consistent scale. (For example, an entropy rank of 90 means current entropy is higher than 90% of recent values.) We then divide by 100 to plot them on a 0–1 scale.
Market Mode (Regime) : Based on those ranks, MERV classifies the market:
Trending (Green) : Low entropy rank (<40%) and high tradeability rank (>60%). This means the market is structurally trending with high activity.
Choppy (Magenta) : High entropy rank (>60%) and low tradeability rank (<40%). This is a mostly random, low-momentum market.
Neutral (Cyan) : All other cases. This covers mixed regimes not strongly trending or choppy.
The mode is shown as a colored bar at the bottom: green for trending, magenta for choppy, cyan for neutral.
Optimal Regime Signal : Separately, we mark an “optimal” condition when entropy_norm < 0.3 and tradeability > 0.7 (both normalized 0–1). When this is true, a ★ star appears on the bottom line. This star is colored white when truly optimal, gold when only tradeability is high (but entropy not quite low enough), and black when neither condition holds. This gives a quick visual cue for very favorable conditions.
What Makes MERV Stand Out
Holistic View : Unlike a single-oscillator, MERV combines trend, volatility, and cycle analysis in one tool. This multi-faceted approach is unique.
Visual Dashboard : The fixed on-chart dashboard (shown at your chosen corner) summarizes all metrics in bar/gauge form. Even a non-technical user can glance at it: more “█” blocks = a higher value, colors match the plots. This is more intuitive than raw numbers.
Adaptive Thresholds : Using percentile ranks means MERV auto-adjusts to each market’s character, rather than requiring fixed thresholds.
Cycle Insight : The rhythm plot adds information rarely found in indicators – it shows if there’s a repeating cycle (and its period in bars) and how strong it is. This can hint at natural bounce or reversal intervals.
Modern Look : The neon color scheme and glow effects make the lines easy to distinguish (blue/pink for entropy, green/orange for tradeability, etc.) and the filled area between them highlights when one dominates the other.
Recommended Timeframes
MERV can be applied to any timeframe, but it will be more reliable on higher timeframes. The default len_entropy = 50 and len_rhythm = 30 mean we use 30–50 bars of history, so on a daily chart that’s ~2–3 months of data; on a 1-hour chart it’s about 2–3 days. In practice:
Swing/Position traders might prefer Daily or 4H charts, where the calculations smooth out small noise. Entropy and cycles are more meaningful on longer trends.
Day trader s could use 15m or 1H charts if they adjust the inputs (e.g. shorter windows). This provides more sensitivity to intraday cycles.
Scalpers might find MERV too “slow” unless input lengths are set very low.
In summary, the indicator works anywhere, but the defaults are tuned for capturing medium-term trends. Users can adjust len_entropy and len_rhythm to match their chart’s volatility. The dashboard position can also be moved (top-left, bottom-right, etc.) so it doesn’t cover important chart areas.
How the Scoring/Logic Works (Step-by-Step)
Compute Entropy : A linear regression line is fit to the last len_entropy closes. We compute R² (goodness of fit). Entropy = 1 – R². So a strong straight-line trend gives low entropy; a flat/noisy set of points gives high entropy.
Compute Tradeability : We get ATR over len_entropy bars, normalize it by price (so it’s a fraction of price). We also calculate the regression slope (difference between the predicted close and last close). We scale |slope| by ATR to get a dimensionless measure. We average these (ATR% and slope%) to get tradeability_raw. This represents how big and directional price moves are.
Convert to Percentiles : Each new entropy and tradeability value is inserted into a rolling array of the last 50 values. We then compute the percentile rank of the current value in that array (0–100%) using a simple loop. This tells us where the current bar stands relative to history. We then divide by 100 to plot on .
Determine Modes and Signal : Based on these normalized metrics: if entropy < 0.4 and tradeability > 0.6 (40% and 60% thresholds), we set mode = Trending (1). If entropy > 0.6 and tradeability < 0.4, mode = Choppy (-1). Otherwise mode = Neutral (0). Separately, if entropy_norm < 0.3 and tradeability > 0.7, we set an optimal flag. These conditions trigger the colored mode bars and the star line.
Rhythm Detection : Every bar, if we have enough data, we take the last len_rhythm closes and compute the mean and standard deviation. Then for lags from 5 up to len_rhythm, we calculate a normalized autocorrelation coefficient. We track the lag that gives the maximum correlation (best match). This “best lag” divided by len_rhythm is plotted (a value between 0 and 1). Its color changes with the correlation strength. We also smooth the best correlation value over 5 bars to plot as “Cycle Strength” (also 0 to 1). This shows if there is a consistent cycle length in recent price action.
Heatmap (Optional) : The background color behind the oscillator panel can change with entropy. If “Neon Rainbow” style is on, low entropy is blue and high entropy is pink (via a custom color function), otherwise a classic green-to-red gradient can be used. This visually reinforces the entropy value.
Volume Regime (Dashboard Only) : We compute vol_norm = volume / sma(volume, len_entropy). If this is above 1.5, it’s considered high volume (neon orange); below 0.7 is low (blue); otherwise normal (green). The dashboard shows this as a bar gauge and percentage. This is for context only.
Oscillator Plot – How to Read It
The main panel (oscillator) has multiple colored lines on a 0–1 vertical scale, with horizontal markers at 0.2 (Low), 0.5 (Mid), and 0.8 (High). Here’s each element:
Entropy Line (Blue→Pink) : This line (and its glow) shows normalized entropy (0 = very low, 1 = very high). It is blue/green when entropy is low (strong trend) and pink/purple when entropy is high (choppy). A value near 0.0 (below 0.2 line) indicates a very well-defined trend. A value near 1.0 (above 0.8 line) means the market is very random. Watch for it dipping near 0: that suggests a strong trend has formed.
Tradeability Line (Green→Yellow) : This represents normalized tradeability. It is colored bright green when tradeability is low, transitioning to yellow as tradeability increases. Higher values (approaching 1) mean big moves and strong slopes. Typically in a market rally or crash, this line will rise. A crossing above ~0.7 often coincides with good trend strength.
Filled Area (Orange Shade) : The orange-ish fill between the entropy and tradeability lines highlights when one dominates the other. If the area is large, the two metrics diverge; if small, they are similar. This is mostly aesthetic but can catch the eye when the lines cross over or remain close.
Rhythm (Cycle) Line : This is plotted as (best_lag / len_rhythm). It indicates the relative period of the strongest cycle. For example, a value of 0.5 means the strongest cycle was about half the window length. The line’s color (green, orange, or pink) reflects how strong that cycle is (green = strong). If no clear cycle is found, this line may be flat or near zero.
Cycle Strength Line : Plotted on the same scale, this shows the autocorrelation strength (0–1). A high value (e.g. above 0.7, shown in green) means the cycle is very pronounced. Low values (pink) mean any cycle is weak and unreliable.
Mode Bars (Bottom) : Below the main oscillator, thick colored bars appear: a green bar means Trending Mode, magenta means Choppy Mode, and cyan means Neutral. These bars all have a fixed height (–0.1) and make it very easy to see the current regime.
Optimal Regime Line (Bottom) : Just below the mode bars is a thick horizontal line at –0.18. Its color indicates regime quality: White (★) means “Optimal Regime” (very low entropy and high tradeability). Gold (★) means not quite optimal (high tradeability but entropy not low enough). Black means neither condition. This star line quickly tells you when conditions are ideal (white star) or simply good (gold star).
Horizontal Guides : The dotted lines at 0.2 (Low), 0.5 (Mid), and 0.8 (High) serve as reference lines. For example, an entropy or tradeability reading above 0.8 is “High,” and below 0.2 is “Low,” as labeled on the chart. These help you gauge values at a glance.
Dashboard (Fixed Corner Panel)
MERV also includes a compact table (dashboard) that can be positioned in any corner. It summarizes key values each bar. Here is how to read its rows:
Entropy : Shows a bar of blocks (█ and ░). More █ blocks = higher entropy. It also gives a percentage (rounded). A full bar (10 blocks) with a high % means very chaotic market. The text is colored similarly (blue-green for low, pink for high).
Rhythm : Shows the best cycle period in bars (e.g. “15 bars”). If no calculation yet, it shows “n/a.” The text color matches the rhythm line.
Cycle Strength : Gives the cycle correlation as a percentage (smoothed, as shown on chart). Higher % (green) means a strong cycle.
Tradeability : Displays a 10-block gauge for tradeability. More blocks = more tradeable market. It also shows “gauge” text colored green→yellow accordingly.
Market Mode : Simply shows “Trending”, “Choppy”, or “Neutral” (cyan text) to match the mode bar color.
Volume Regime : Similar to tradeability, shows blocks for current volume vs. average. Above-average volume gives orange blocks, below-average gives blue blocks. A % value indicates current volume relative to average. This row helps see if volume is abnormally high or low.
Optimal Status (Large Row) : In bold, either “★ Optimal Regime” (white text) if the star condition is met, “★ High Tradeability” (gold text) if tradeability alone is high, or “— Not Optimal” (gray text) otherwise. This large row catches your eye when conditions are ripe.
In short, the dashboard turns the numeric state into an easy read: filled bars, colors, and text let you see current conditions without reading the plot. For instance, five blue blocks under Entropy and “25%” tells you entropy is low (good), and a row showing “Trending” in green confirms a trend state.
Real-Life Example
Example : Consider a daily chart of a trending stock (e.g. “AAPL, 1D”). During a strong uptrend, recent prices fit a clear upward line, so Entropy would be low (blue line near bottom, perhaps below the 0.2 line). Volatility and slope are high, so Tradeability is high (green-yellow line near top). In the dashboard, Entropy might show only 1–2 blocks (e.g. 10%) and Tradeability nearly full (e.g. 90%). The Market Mode bar turns green (Trending), and you might see a white ★ on the optimal line if conditions are very good. The Volume row might light orange if volume is above average during the rally. In contrast, imagine the same stock later in a tight range: Entropy will rise (pink line up, more blocks in dashboard), Tradeability falls (fewer blocks), and the Mode bar turns magenta (Choppy). No star appears in that case.
Consolidated Use Case : Suppose on XYZ stock the dashboard reads “Entropy: █░░░░░░░░ 20%”, “Tradeability: ██████████ 80%”, Mode = Trending (green), and “★ Optimal Regime.” This tells the trader that the market is in a strong, low-noise trend, and it might be a good time to follow the trend (with appropriate risk controls). If instead it reads “Entropy: ████████░░ 80%”, “Tradeability: ███▒▒▒▒▒▒ 30%”, Mode = Choppy (magenta), the trader knows the market is random and low-momentum—likely best to sit out until conditions improve.
Example: How It Looks in Action
Screenshot 1: Trending Market with High Tradeability (SOLUSD, 30m)
What it means:
The market is in a clear, strong trend with excellent conditions for trading. Both trend-following and active strategies are favored, supported by high tradeability and strong volume.
Screenshot 2: Optimal Regime, Strong Trend (ETHUSD, 1h)
What it means:
This is an ideal environment for trend trading. The market is highly organized, tradeability is excellent, and volume supports the move. This is when the indicator signals the highest probability for success.
Screenshot 3: Choppy Market with High Volume (BTC Perpetual, 5m)
What it means:
The market is highly random and choppy, despite a surge in volume. This is a high-risk, low-reward environment, avoid trend strategies, and be cautious even with mean-reversion or scalping.
Settings and Inputs
The script is fully open-source; here are key inputs the user can adjust:
Entropy Window (len_entropy) : Number of bars used for entropy and tradeability (default 50). Larger = smoother, more lag; smaller = more sensitivity.
Rhythm Window (len_rhythm ): Bars used for cycle detection (default 30). This limits the longest cycle we detect.
Dashboard Position : Choose any corner (Top Right default) so it doesn’t cover chart action.
Show Heatmap : Toggles the entropy background coloring on/off.
Heatmap Style : “Neon Rainbow” (colorful) or “Classic” (green→red).
Show Mode Bar : Turn the bottom mode bar on/off.
Show Dashboard : Turn the fixed table panel on/off.
Each setting has a tooltip explaining its effect. In the description we will mention typical settings (e.g. default window sizes) and that the user can move the dashboard corner as desired.
Oscillator Interpretation (Recap)
Lines : Blue/Pink = Entropy (low=trend, high=chop); Green/Yellow = Tradeability (low=quiet, high=volatile).
Fill : Orange tinted area between them (for visual emphasis).
Bars : Green=Trending, Magenta=Choppy, Cyan=Neutral (at bottom).
Star Line : White star = ideal conditions, Gold = good but not ideal.
Horizontal Guides : 0.2 and 0.8 lines mark low/high thresholds for each metric.
Using the chart, a coder or trader can see exactly what each output represents and make decisions accordingly.
Disclaimer
This indicator is provided as-is for educational and analytical purposes only. It does not guarantee any particular trading outcome. Past market patterns may not repeat in the future. Users should apply their own judgment and risk management; do not rely solely on this tool for trading decisions. Remember, TradingView scripts are tools for market analysis, not personalized financial advice. We encourage users to test and combine MERV with other analysis and to trade responsibly.
-BullByte
Cerca negli script per "蔚山现代vs川崎前锋"
✅ VMA Avg ATR + Days to Targets 🎯1) The trend filter: LazyBear VMA
You implement the well‑known “LazyBear” Variable Moving Average (VMA) from price directional movement (pdm/mdm).
Internally you:
Smooth positive/negative one‑bar moves (pdmS, mdmS),
Turn them into relative strengths (pdiS, mdiS),
Measure their difference/total (iS), and
Normalize that over a rolling window to get a scaling factor vI.
The VMA itself is then an adaptive EMA:
vma := (1 - k*vI) * vma + (k*vI) * close, where k = 1/vmaLen.
When vI is larger, VMA hugs price more; when smaller, it smooths more.
Coloring:
Green when vma > vma (rising),
Red when vma < vma (falling),
White when flat.
Candles are recolored to match.
Why this matters: The VMA color is your trend regime; everything else in the script keys off changes in this color.
2) What counts as a “valid” new trend?
A new trend is valid only when the previous bar was white and the current bar turns green or red:
validTrendStart := vmaColor != color.white and vmaColor == color.white.
When that happens, you start a trend segment:
Save entry price (startPrice = close) and baseline ATR (startATR = ATR(atrLen)).
Reset “extreme” trackers: extremeHigh = high, extremeLow = low.
Timestamp the start (trendStartTime = time).
Effect: You only study / trade transitions out of a flat VMA into a slope. This helps avoid chop and reduces false starts.
3) While the trend is active
On each new bar without a color change:
If green trend: update extremeHigh = max(extremeHigh, high).
If red trend: update extremeLow = min(extremeLow, low).
This tracks the best excursion from the entry during that single trend leg.
4) When the VMA color changes (trend ends)
When vmaColor flips (green→red or red→green), you close the prior segment only if it was a valid trend (started after white). Then you:
Compute how far price traveled in ATR units from the start:
Uptrend ended: (extremeHigh - startPrice) / startATR
Downtrend ended: (startPrice - extremeLow) / startATR
Add that result to a running sum and count for the direction:
totalUp / countUp, totalDown / countDown.
Target checks for the ended trend (no look‑ahead):
T1 uses the previous average ATR move before the just‑ended trend (prevAvgUp/prevAvgDown).
Up: t1Up = startPrice + prevAvgUp * startATR
Down: t1Down = startPrice - prevAvgDown * startATR
T2 is a fixed 6× ATR move from the start (up or down).
You increment hit counters and also accumulate time‑to‑hit (ms from trendStartTime) for any target that got reached during that ended leg.
If T1 wasn’t reached, it counts as a miss.
Immediately initialize the next potential trend segment with the current bar’s startPrice/startATR/extremes and set validTrendStart according to the “white → color” rule.
Important detail: Using prevAvgUp/Down to evaluate T1 for the just‑completed trend avoids look‑ahead bias. The current trend’s performance isn’t used to set its own T1.
5) Running statistics & targets (for the current live trend)
After closing/adding to totals:
avgUp = totalUp / countUp and avgDown = totalDown / countDown are the historical average ATR move per valid trend for each direction.
Current plotted targets (only visible while a valid trend is active and in that direction):
T1 Up: startPrice + avgUp * startATR
T2 Up: startPrice + 6 * startATR
T1 Down: startPrice - avgDown * startATR
T2 Down: startPrice - 6 * startATR
The entry line is also plotted at startPrice when a valid trend is live.
If there’s no history yet (e.g., first trend), avgUp/avgDown are na, so T1 is na until at least one valid trend has closed. T2 still shows (6× ATR).
6) Win rate & time metrics
Win % (per direction):
winUp = hitUpT1 / (hitUpT1 + missUp) and similarly for down.
(This is strictly based on T1 hits vs misses; T2 hits don’t affect Win% directly.)
Average days to hit T1/T2:
The script stores milliseconds from trend start to each target hit, then reports the average in days separately for Up/Down and for T1/T2.
7) The dashboard table (bottom‑right)
It shows, side‑by‑side for Up/Down:
Avg ATR: historical average ATR move per completed valid trend.
🎯 Target 1 / Target 2: the current trend’s price levels (T1 = avgATR×ATR; T2 = 6×ATR).
✅ Win %: T1 hit rate so far.
⏱ Days to T1/T2: average days (from valid trend start) for the targets that were reached.
8) Alerts
“New Trend Detected” when a valid trend starts (white → green/red).
Target hits for the active trend:
Uptrend: separate alerts for T1 and T2 (high >= target).
Downtrend: separate alerts for T1 and T2 (low <= target).
9) Inputs & defaults
vmaLen = 17: governs how adaptive/smooth the VMA is (larger = smoother, fewer trend flips).
atrLen = 14: ATR baseline for sizing targets and normalizing moves.
10) Practical read of the plots
When you see white → green: that bar is your valid entry (trend start).
An Entry Line appears at the start price.
Target lines appear only for the active direction. T1 scales with your historical average ATR move; T2 is a fixed stretch (6× ATR).
The table updates as more trends complete, refining:
The average ATR reach (which resets your T1 sizing),
The win rate to T1, and
The average days it typically takes to hit T1/T2.
Subtle points / edge cases
No look‑ahead: T1 for a finished trend is checked against the prior average (not including the trend itself).
First trends: Until at least one valid trend completes, T1 is na (no history). T2 still shows.
Only “valid” trends are counted: Segments must start after a white bar; flips that happen color→color without a white in between don’t start a new valid trend.
Time math: Uses bar timestamps in ms, converted to days; results reflect the chart’s timeframe/market session.
TL;DR
The VMA color defines the regime; entries only trigger when a flat (white) VMA turns green/red.
Each trend’s max excursion from entry is recorded in ATR units.
T1 for current trends = (historical average ATR move) × current ATR from entry; T2 = 6× ATR.
The table shows your evolving edge (avg ATR reach, T1 win%, and days to targets), and alerts fire on new trends and target hits.
If you want, I can add optional features like: per‑ticker persistence of stats, excluding very short trends, or making T2 a user input instead of a fixed 6× ATR.
Divergence Indicator with Multi-Length Pivot DetectionThis Pine Script, titled “Divergence Indicator with Multi-Length Pivot Detection”, tool that detects both regular and hidden divergences between price action and an oscillator (defaulting to close, but configurable). It features multi-length pivot logic, angle-based validation, no-cross filtering, and OB/OS region filtering, making it a robust and precise divergence engine. Below is a detailed breakdown:
⸻
🔧 Inputs and Configuration
• osc_src: Oscillator source (e.g. close, RSI, MACD).
• show_hidden: Toggles detection of hidden divergences.
• min_*_angle settings: Control the minimum angle thresholds (in degrees) for confirming valid divergences (ensures momentum is strong enough).
• validate_no_cross: Ensures oscillator and price slopes don’t “cross” the actual values (i.e. filters out invalid or messy trends).
• oversold_level, overbought_level: Used when use_ob_os_filter is enabled to require oscillator to be in OS/OB zones for regular divergence.
• min_div_length: Minimum distance in bars between previous and current pivot points.
⸻
🔁 Internal Engine Mechanics
1. Pivot Detection Engine (Phase 1: Historical Memory)
• For all combinations of left1 and right1 in the range :
• Records all valid pivot lows and pivot highs.
• Stores their:
• bar index
• price value
• oscillator value
This forms a “memory buffer” of past pivots that future price pivots are compared against.
2. Current Pivot Detection (Phase 2: Scanning)
• Loops through larger pivot configurations (left2 ∈ , right2 = 1) to detect new current pivots.
• For each new pivot, it compares against the historical pivots from phase 1.
⸻
📐 Slope and Angle Calculation
For each matching pivot pair (historical vs current):
• Price and Oscillator Slopes are calculated via linear regression, producing:
• price_angle
• osc_angle
• These are converted using math.atan() and math.todegrees() to get proper angular direction and intensity of trend.
⸻
🧠 Divergence Logic
✅ Bullish Divergence
• Regular Bullish: Price makes a lower low, oscillator makes a higher low.
• Hidden Bullish: Price makes a higher low, oscillator makes a lower low.
• Conditions:
• Must meet minimum angle thresholds.
• Optional: Must be in oversold region (osc_src < oversold_level).
• If validate_no_cross is enabled, linearly interpolated slope must not be violated.
✅ Bearish Divergence
• Regular Bearish: Price makes a higher high, oscillator makes a lower high.
• Hidden Bearish: Price makes a lower high, oscillator makes a higher high.
• Conditions mirror the bullish case (with polarity reversed).
⸻
🖍️ Visualization
• Draws colored lines between pivots for visual clarity:
• Green: Regular Bullish
• Lime: Hidden Bullish
• Red: Regular Bearish
• Maroon: Hidden Bearish
• Uses plotshape() to mark divergence bars:
• Triangle-up for bullish
• Triangle-down for bearish
The lines and shapes help quickly identify divergence zones with strong momentum structure.
⸻
🧪 Filtering Enhancements
• No Cross Slope Filter: Checks that oscillator and price values stay above/below their respective slope lines throughout the interval.
• OB/OS Filter: Restricts divergence signals to occur only in oversold/overbought conditions for regular divergences.
• Signal Thinning: Keeps line count to 100 using array.shift() and line.delete().
⸻
🧬 Design Philosophy
• Built to mimic institutional-grade divergence detection, avoiding common false positives.
• Uses adaptive pivots, rigorous angle validation, and noise filtering.
SMA 9 vs SMA 20 Highlight CrossoverHighlight in green the area in between the two SMA do that when the SMA cross above the SMA 20 periods the area is colored in green and when the SMA cross below the SMA 20 periods the area is colored in red
Ultimate Global Trading Hours📊 Global Markets Pro - Summary
What it does:
Shows real-time trading hours for 11 major stock markets worldwide
Displays countdown timers for when each market opens/closes
Includes Forex sessions and US extended hours (pre-market/after-hours)
Features advanced market sentiment analysis with Fear/Greed indicators
Key Features:
✅ Chronological market order (Sydney → Tokyo → London → NYSE, etc.)
✅ Customisable times for each market in HH:MM format
✅ Multi-factor sentiment (VIX, Bonds vs Stocks, Weekly trends, Volume)
✅ Clean interface with emoji indicators and colour coding
✅ Your timezone display with GMT+/- options
Perfect for:
Day traders tracking global market sessions
Swing traders gauging market sentiment
Anyone wanting to know when major markets are active
Result: One comprehensive dashboard showing when to trade and market mood across all time zones!
Elliott Wave Probability System Pro v2🎯 Major Improvements Made to Elliott Wave Script
Key Changes:
1. Advanced Trend Detection (Lines 55-82)
Uses 5 different methods to determine trend over last 75 bars:
Price position in range
Linear regression slope
Moving average alignment
Higher highs/lows pattern
Up vs down bar count
Combines all methods into a trendScore for accurate direction
2. Adaptive Target Direction
New input: adaptiveTargets (line 28) - can toggle on/off
When ON: Targets follow the 75-bar trend regardless of short-term indicators
When OFF: Works like original (based on current momentum)
3. Improved Target Calculation
Bullish targets use extensions from current price to recent high
Bearish targets use retracements from current price to recent low
More realistic price levels based on actual market structure
4. Enhanced Status Display
Added "Trend (75 bars)" row showing BULLISH/BEARISH/NEUTRAL
Helps you see why targets are pointing a certain direction
5. Better Probability Calculation
Base probability adjusts with trend strength (70% if strong trend, 50% if not)
Gradual probability decay with distance
Minimum 15% probability (more realistic than 10%)
New Features:
Trend-Based Alerts
Alerts when 75-bar trend changes from bullish to bearish (or vice versa)
Trend Weight in Scoring
Added trendWeight to the total score calculation
Makes signals more aligned with larger trend
Visual Improvements
Projection lines now show at 40% probability (was 50%)
Better visibility of likely targets
How It Works Now:
If last 75 bars show a downtrend , targets will be bearish (even if RSI is oversold)
If last 75 bars show an uptrend , targets will be bullish (even if RSI is overbought)
The probability adjusts based on trend strength
This solves the issue where the script was showing bullish targets in a clear downtrend. Now it properly reflects the dominant trend direction while still considering short-term indicators for probability calculations.
Volume vs Volatility Trend Signal1 is increasing volume decreasing volatility -1 is decreasing volume increasing volatility 0 is neither
Corys Buy and SellThe Cory’s Buy and Sell indicator is an advanced, all-in-one trading toolkit that combines dynamic trend detection, volatility breakout alerts, and visual EMA strength to help traders confidently identify high-probability buy and sell opportunities.
🔍 Key Features:
Adaptive Supertrend Engine
Powered by a modified Keltner Channel, this trend-following algorithm generates timely BUY 🚀 and SELL 😡 signals based on market momentum and volatility, with adjustable sensitivity and factor settings for full control.
EMA Energy Bands (Optional)
A cascade of 15 EMAs (from 9 to 51 periods) visually maps market energy. Colours shift from green (bullish) to red (bearish), showing short- to medium-term trend strength at a glance.
Trend Catcher Overlay
Highlights major shifts in trend using a fast/slow EMA crossover (10 vs 20 EMA). Bars are coloured to reflect bullish reversals for added confidence.
Pullback Signal Detection
Identifies bullish pullback opportunities when price reclaims key EMA levels after a crossover, marked with a green triangle for entry timing.
Built-in Range Detection System
Automatically highlights price consolidation zones using ATR-based logic. When price breaks above or below the detected range, the zone changes colour (green for breakout up, red for breakdown), helping traders spot breakout opportunities.
Smart Labels & Alerts
Instant BUY/SELL labels on the chart and built-in alert conditions make this indicator suitable for both discretionary and automated trading strategies.
⚙️ Customisable Inputs:
Sensitivity (for trend signals)
EMA Energy toggle
Keltner & ATR Lengths
Range Detection parameters and styling
Best For: Trend traders, breakout traders, and swing traders looking for a clean, powerful overlay that combines momentum, structure, and volatility in one tool.
Stochastic Z-Score [AlgoAlpha]🟠 OVERVIEW
This indicator is a custom-built oscillator called the Stochastic Z-Score , which blends a volatility-normalized Z-Score with stochastic principles and smooths it using a Hull Moving Average (HMA). It transforms raw price deviations into a normalized momentum structure, then processes that through a stochastic function to better identify extreme moves. A secondary long-term momentum component is also included using an ALMA smoother. The result is a responsive oscillator that reacts to sharp imbalances while remaining stable in sideways conditions. Colored histograms, dynamic oscillator bands, and reversal labels help users visually assess shifts in momentum and identify potential turning points.
🟠 CONCEPTS
The Z-Score is calculated by comparing price to its mean and dividing by its standard deviation—this normalizes movement and highlights how far current price has stretched from typical values. This Z-Score is then passed through a stochastic function, which further refines the signal into a bounded range for easier interpretation. To reduce noise, a Hull Moving Average is applied. A separate long-term trend filter based on the ALMA of the Z-Score helps determine broader context, filtering out short-term traps. Zones are mapped with thresholds at ±2 and ±2.5 to distinguish regular momentum from extreme exhaustion. The tool is built to adapt across timeframes and assets.
🟠 FEATURES
Z-Score histogram with gradient color to visualize deviation intensity (optional toggle).
Primary oscillator line (smoothed stochastic Z-Score) with adaptive coloring based on momentum direction.
Dynamic bands at ±2 and ±2.5 to represent regular vs extreme momentum zones.
Long-term momentum line (ALMA) with contextual coloring to separate trend phases.
Automatic reversal markers when short-term crosses occur at extremes with supporting long-term momentum.
Built-in alerts for oscillator direction changes, zero-line crosses, overbought/oversold entries, and trend confirmation.
🟠 USAGE
Use this script to track momentum shifts and identify potential reversal areas. When the oscillator is rising and crosses above the previous value—especially from deeply negative zones (below -2)—and the ALMA is also above zero, this suggests bullish reversal conditions. The opposite holds for bearish setups. Reversal labels ("▲" and "▼") appear only when both short- and long-term conditions align. The ±2 and ±2.5 thresholds act as momentum warning zones; values inside are typical trends, while those beyond suggest exhaustion or extremes. Adjust the length input to match the asset’s volatility. Enable the histogram to explore underlying raw Z-Score movements. Alerts can be configured to notify key changes in momentum or zone entries.
Synthetic VX3! & VX4! continuous /VX futuresTradingView is missing continuous 3rd and 4th month VIX (/VX) futures, so I decided to try to make a synthetic one that emulates what continuous maturity futures would look like. This is useful for backtesting/historical purposes as it enables traders to see how their further out VX contracts would've performed vs the front month contract.
The indicator pulls actual realtime data (if you subscribe to the CBOE data package) or 15 minute delayed data for the VIX spot (the actual non-tradeable VIX index), the continuous front month (VX1!), and the continuous second month (VX2!) continually rolled contracts. Then the indicator's script applies a formula to fairly closely estimate how 3rd and 4th month continuous contracts would've moved.
It uses an exponential mean‑reversion to a long‑run level formula using:
σ(T) = θ+(σ0−θ)e−kT
You can expect it to be off by ~5% or so (in times of backwardation it might be less accurate).
QTR Sector Fund Performance vs SPY - by LMAnalyzes various market sectors and compares the last several quarters to the performance of the SPY. The goal is to seek out the sectors that have underperformed for several quarters in the hopes that they would overperform in the next quarter.
Gold vs DXYThe 30-day rolling correlation between Gold (XAU/USD) and the US Dollar Index (DXY) shows how closely the two move together — or more often, in opposite directions — over the last 30 trading days. In most market environments, the relationship is pretty straightforward: when the dollar goes up, gold tends to go down, and vice versa. That’s because gold is priced in dollars, so a stronger dollar makes it more expensive for international buyers, which usually softens demand.
But it’s not always that simple. There are times when this inverse correlation breaks down. For example, if real yields (like the US 10-year yield minus inflation expectations) are rising, that can pressure gold even if the dollar is falling — because higher real returns elsewhere make gold less attractive. Another case is when other currencies, like the euro or yen, rally strongly on their own central bank decisions. This can pull DXY lower without necessarily signaling weakness in the U.S. economy — meaning gold might not benefit much.
There are also “risk-on” moments where investors rotate into equities or crypto, selling off both gold and the dollar in favor of yield or momentum. And during periods of crisis or uncertainty, both gold and the dollar can rise together as safe-haven assets, breaking the usual pattern entirely.
That’s why tracking the rolling correlation is helpful. It shows whether the historical relationship between gold and the dollar is still holding — or if we’re entering a different market regime. It’s not about predicting exact price moves, but about understanding the current backdrop. When gold and DXY are moving out of sync as expected, it can support your trade thesis. But when the correlation flattens or flips, it’s often a sign to dig deeper — macro forces may be shifting.
Binance Spot vs Perpetual Price index by BIGTAKER📌 Overview
This indicator calculates the premium (%) between Binance Perpetual Futures and Spot prices in real time and visualizes it as a column-style chart.
It automatically detects numeric prefixes in futures symbols—such as `1000PEPE`, `1MFLUX`, etc.—and applies the appropriate scaling factor to ensure accurate 1:1 price comparisons with corresponding spot pairs, without requiring manual configuration.
Rather than simply showing raw price differences, this tool highlights potential imbalances in supply and demand, helping to identify phases of market overheating or panic selling.
🔧 Component Breakdown
1. ✅ Auto Symbol Mapping & Prefix Scaling
Automatically identifies and processes common numeric prefixes (`1000`, `1M`, etc.) used in Binance perpetual futures symbols.
Example:
`1000PEPEUSDT.P` → Spot symbol: `PEPEUSDT`, Scaling factor: `1000`
This ensures precise alignment between futures and spot prices by adjusting the scale appropriately.
2. 📈 Premium Calculation Logic
Formula:
(Scaled Futures Price − Spot Price) / Spot Price × 100
Interpretation:
* Positive (+) → Futures are priced higher than spot: indicates possible long-side euphoria
* Negative (−) → Futures are priced lower than spot: indicates possible panic selling or oversold conditions
* Zero → Equilibrium between futures and spot pricing
3. 🎨 Visualization Style
* Rendered as column plots (bar chart) on each candle
* Color-coded based on premium polarity:
* 🟩 Positive premium: Light green (`#52ff7d`)
* 🟥 Negative premium: Light red (`#f56464`)
* ⬜ Neutral / NA: Gray
* A dashed horizontal line at 0% is included to indicate the neutral zone for quick visual reference
💡 Strategic Use Cases
| Market Behavior | Strategy / Interpretation |
| ----------------------------------------- | ------------------------------------------------------------------------ |
| 📈 Premium surging | Strong futures demand → Overheated longs (short setup) |
| 📉 Premium dropping | Aggressive selling in futures → Oversold signal (long setup) |
| 🔄 Near-zero premium | Balanced market → Wait and observe or reassess |
| 🧩 Combined with funding rate or OI delta | Enables multi-factor confirmation for short-term or mid-term signals |
🧠 Technical Advantages
* Fully automated scaling for prefixes like `1000`, `1M`, etc.
* Built-in error handling for inactive or missing symbols (`ignore_invalid_symbol=true`)
* Broad compatibility with Binance USDT Spot & Perpetual Futures markets
🔍 Target Use Cases & Examples
Compatible symbols:
`1000PEPEUSDT.P`, `DOGEUSDT.P`, `1MFLUXUSDT.P`, `ETHUSDT.P`, and most other Binance USDT-margined perpetual futures
Works seamlessly with:
* Binance Spot Market
* Binance Perpetual Futures Market
[Teyo69] T1 Wyckoff Aggressive A/D Setup📘 Overview
The T1 Wyckoff Aggressive A/D Setup is a dual-mode indicator that detects bullish accumulations and bearish distributions using core principles from the Wyckoff Method. It identifies price/volume behavior during Selling/Buying Climaxes, ARs, SOS/SOW, and triggers based on trend structure.
🔍 Features
✅ Automatic detection of:
Automatic Rally (AR)
Automatic Reaction (AR)
Sign of Strength (SOS) or Sign of Weakness (SOW)
🧠 Trend-sensitive logic with linear regression slope filters
⚙️ Configurable options for Reversal vs Trend Following mode
🎯 Smart structure timing filters using barssince() logic
🔊 Volume spike and wide-range candle detection
📊 Visual cues for bullish (green) and bearish (red) backgrounds
🛠 How to Use
Reversal Mode
Triggers early signals after a Climax + AR
Ideal for catching turning points during consolidations
Trend Following Mode
Requires Climax, AR, and confirmation (SOS or SOW)
Waits for structure confirmation before signaling
Use this when you want higher probability trades
⚙️ Configuration
Volume MA Length - Determines baseline volume to detect spikes
Wick % of Candle - Filters candles with long tails for SC/BC
Close Near Threshold - Ensures candles close near high/low
Breakout Lookback - Sets structure breakout level
Structure Threshold - Controls timing window for setups
Signal Option - Switch between Reversal or Trend Following mode
⚠️ Limitations
Doesn't confirm macro structure like full Wyckoff phase labeling (A–E)
May repaint on lower timeframes during volatile candles
Works best when combined with visual range recognition and market context
🧠 Advanced Tips
Use in confluence with:
Volume Profile ranges
Trendlines and supply/demand areas
Ideal timeframes: 8H to 1D for crypto and forex markets
Combine this with LPS/UTAD patterns for refined entries
📝 Notes
SC/AR/SOS = Bullish
BC/AR/SOW = Bearish
Trend coloring adapts background (green = rising slope, red = falling slope)
🛡️ Disclaimer
This tool is a market structure guide, not financial advice. Past behavior does not guarantee future performance. Always use proper risk management.
Multi Ranges Volume Distribution [LuxAlgo]The Multi Ranges Volume Distribution tool allows traders to see the volume distribution by price for three different timeframes simultaneously. Each distribution can report the total amount of accumulated volume or the accumulated buy/sell volume separately.
Levels are displayed at the top and bottom of each timeframe's range, as well as the POC or level with the most volume.
🔶 USAGE
By default, the tool displays daily, weekly, and monthly volume distributions, highlighting the accumulated volume within each row.
Each distribution shows the volume at each price, as well as three lines: the top and bottom prices, and the price at which the most volume was traded.
The reported accumulated volume can be useful for highlighting which price areas are of the most interest to traders, with the specific timeframe specifying whether this interest is long-term or short-term.
🔹 Timeframes & Rows
Traders can adjust the timeframe and the number of rows for each volume distribution.
This is useful for multi-timeframe analysis of volume at the same price levels, or for obtaining detailed data within the same timeframe.
The chart above shows three volume distributions with the same monthly timeframe but a different number of rows; each is more detailed than the previous one.
🔹 Total vs Buy & Sell Volume
Traders can choose to display either the total volume or the buy and sell volumes.
As we can see on the above chart, the background of each row uses a gradient that is a function of the delta between the buy and sell volumes.
This is useful to determine which areas attract buyers and sellers.
🔶 SETTINGS
Volume Display: Select between total volume and buy and sell volume.
Distance between each box: Adjust the spacing of the volume distributions.
Period A: Select a timeframe and the number of rows.
Period B: Select a timeframe and the number of rows.
Period C: Select a timeframe and the number of rows.
Turtle Trading System + ATR Trailing StopIndicator Description: Turtle ATR Trailing Stop
The **Turtle ATR Trailing Stop** is a technical indicator designed to enhance the classic Turtle Trading System by incorporating a dynamic trailing stop based on the Average True Range (ATR). This indicator is ideal for traders seeking to manage risk and lock in profits on both long and short positions in trending markets.
Key Features:
- Turtle Trading Levels: Calculates the 20-day highest high and lowest low to identify potential breakout points, a core principle of the Turtle Trading System.
- ATR-Based Trailing Stop: Utilizes a trailing stop that adjusts dynamically based on a multiple of the ATR (default multiplier: 2.0), providing a volatility-adjusted exit mechanism.
- Position Flexibility: Supports both long and short positions, with the trailing stop positioned below the highest price for long trades and above the lowest price for short trades.
- Smooth Updates: The trailing stop updates on each bar, ensuring a more responsive adjustment to price movements, rather than only on new highs or lows.
- Reset Mechanism: Automatically resets the trailing stop when the price deviates significantly (configurable threshold, default 0.1%), adapting to major trend reversals.
- Alerts: Includes customizable alerts that trigger when the price reaches the trailing stop level, notifying traders of potential exit points.
- Debugging Tools: Features an on-chart debug table displaying ATR, Close, Highest Price, Lowest Price, Potential Stop, and Trailing Stop values for real-time analysis.
How It Works:
- For **Long Positions**: The trailing stop starts below the initial close price (minus 2*ATR) and moves up as the highest price increases, locking in profits while trailing at a fixed ATR distance.
- For **Short Positions**: The trailing stop starts above the initial close price (plus 2*ATR) and moves down as the lowest price decreases, protecting against upward price movements.
- The stop resets if the price falls (for long) or rises (for short) beyond the set threshold, ensuring adaptability to new market conditions.
Customization:
- Period Settings: Adjust the length for highs/lows (default 20) and ATR period (default 14).
- ATR Multiplier: Modify the distance of the trailing stop (default 2.0).
- Reset Threshold: Fine-tune the percentage at which the stop resets (default 0.1%).
- Position Type: Switch between "Long" and "Short" modes via input settings.
Usage:
Apply this indicator to any chart in TradingView, set your preferred parameters, and monitor the trailing stop line (yellow) alongside the Turtle highs (red) and lows (blue). Use the debug table to validate calculations and set alerts to stay informed of stop triggers.
This indicator combines the trend-following strength of the Turtle System with a flexible, ATR-based stop-loss strategy, making it a powerful tool for both manual and automated trading strategies.
ShadowStats vs Official CPI YoY%This chart visualizes and compares the year-over-year (YoY) percentage change in the Consumer Price Index (CPI) as calculated by the U.S. government versus the alternative methodology used by ShadowStats, which reflects pre-1980 inflation measurement techniques. The red line represents ShadowStats' CPI YoY% estimates, while the blue line shows the official CPI YoY% reported by government sources. This side-by-side view highlights the divergence in reported inflation rates over time, particularly from the 1980s onward, offering a visual representation of how different calculation methods can lead to vastly different interpretations of inflation and purchasing power loss.
Universal ATR Grid from Entry Price with AlertsUniversal ATR Grid from Entry Price with Alerts
This Pine Script v6 indicator creates a dynamic price grid based on a user-defined entry price and ATR for selected instruments (SOLUSDT, XRPUSDT, DOGEUSDT, PEPEUSDT, WIFUSDT).
Users can customize the entry price, ATR, number of levels (up to 5), and step multiplier per instrument.
The grid shows long (green) and short (red) levels around the entry price (gray), with labels offset right.
Lines extend from labels to the current bar, updating dynamically.
Alerts trigger on breakouts of long, short, and entry levels. Instrument names can be modified in the script.
Trend Band Oscillator📌 Trend Band Oscillator
📄 Description
Trend Band Oscillator is a momentum-based trend indicator that calculates the spread between two EMAs and overlays it with a volatility filter using a standard deviation band. It helps traders visualize not only the trend direction but also the strength and stability of the trend.
📌 Features
🔹 EMA Spread Calculation: Measures the difference between a fast and slow EMA to quantify short-term vs mid-term trend dynamics.
🔹 Volatility Band Overlay: Applies an EMA of standard deviation to the spread to filter noise and highlight valid momentum shifts.
🔹 Color-Based Visualization: Positive spread values are shown in lime (bullish), negative values in fuchsia (bearish) for quick directional insight.
🔹 Upper/Lower Bands: Help detect potential overbought/oversold conditions or strong trend continuation.
🔹 Zero Line Reference: A horizontal baseline at zero helps identify trend reversals and neutral zones.
🛠️ How to Use
✅ Spread > 0: Indicates a bullish trend. Consider maintaining or entering long positions.
✅ Spread < 0: Indicates a bearish trend. Consider maintaining or entering short positions.
⚠️ Spread exceeds bands: May signal overextension or strong momentum; consider using with additional confirmation indicators.
🔄 Band convergence: Suggests weakening trend and potential transition to a ranging market.
Recommended timeframes: 1H, 4H, Daily
Suggested complementary indicators: RSI, MACD, OBV, SuperTrend
✅ TradingView House Rules Compliance
This script is open-source and published under Pine Script v5.
It does not repaint, spam alerts, or cause performance issues.
It is designed as an analytical aid only and should not be considered financial advice.
All calculations are transparent, and no external data sources or insecure functions are used.
====================================================================
📌 Trend Band Oscillator
📄 설명 (Description)
Trend Band Oscillator는 두 개의 EMA 간 스프레드(차이)를 기반으로 한 모멘텀 중심의 추세 오실레이터입니다. 여기에 표준편차 기반의 변동성 밴드를 적용하여, 추세의 방향뿐 아니라 강도와 안정성까지 시각적으로 분석할 수 있도록 설계되었습니다.
📌 주요 특징 (Features)
🔹 EMA 기반 스프레드 계산: Fast EMA와 Slow EMA의 차이를 활용해 시장 추세를 정량적으로 표현합니다.
🔹 표준편차 필터링: Spread에 대해 EMA 및 표준편차 기반의 밴드를 적용해 노이즈를 줄이고 유효한 추세를 강조합니다.
🔹 컬러 기반 시각화: 오실레이터 값이 양수일 경우 초록색, 음수일 경우 마젠타 색으로 추세 방향을 직관적으로 파악할 수 있습니다.
🔹 밴드 범위 시각화: 상·하위 밴드를 통해 스프레드의 평균 편차 범위를 보여주며, 추세의 강약과 포화 여부를 진단할 수 있습니다.
🔹 제로 라인 표시: 추세 전환 가능 지점을 시각적으로 확인할 수 있도록 중심선(0선)을 제공합니다.
🛠️ 사용법 (How to Use)
✅ 오실레이터가 0 이상 유지: 상승 추세 구간이며, 롱 포지션 유지 또는 진입 검토
✅ 오실레이터가 0 이하 유지: 하락 추세 구간이며, 숏 포지션 유지 또는 진입 검토
⚠️ 상·하위 밴드를 이탈: 일시적인 과매수/과매도 혹은 강한 추세 발현 가능성 있음 → 다른 보조지표와 함께 필터링 권장
🔄 밴드 수렴: 추세가 약해지고 있음을 나타냄 → 변동성 하락 또는 방향성 상실 가능성 있음
권장 적용 시간대: 1시간봉, 4시간봉, 일봉
보조 적용 지표: RSI, MACD, OBV, SuperTrend 등과 함께 사용 시 신호 필터링에 유리
✅ 트레이딩뷰 하우스룰 준수사항 (TV House Rules Compliance)
이 지표는 **무료 공개용(Open-Source)**이며, Pine Script Version 5로 작성되어 있습니다.
과도한 리페인트, 비정상적 반복 경고(alert spam), 실시간 성능 저하 등의 요소는 포함되어 있지 않습니다.
사용자는 본 지표를 투자 결정의 참고용 보조 도구로 활용해야 하며, 독립적인 매매 판단이 필요합니다.
데이터 소스 및 계산 방식은 완전히 공개되어 있으며, 외부 API나 보안 취약점을 유발하는 구성 요소는 없습니다.
Delta Volume BubblesDelta Volume Bubbles
Overview
The Delta Volume Bubbles indicator is an advanced order flow visualization tool that displays buying and selling pressure through dynamic bubble representations on your chart. Unlike traditional volume indicators that only show total volume, this indicator calculates the net delta volume (difference between buying and selling volume) and presents it as color-coded bubbles of varying sizes.
How It Works
Core Calculation Method
The indicator uses a sophisticated approach to estimate delta volume from standard OHLCV data:
1. Price Action Analysis: Analyzes the relationship between open, high, low, and close prices to determine market aggression
2. Body Ratio Calculation: body_ratio = |close - open| / (high - low)
3. Aggressive Factor: Applies multipliers based on price action:
- Strong moves (body_ratio > 0.7): 1.5x multiplier
- Moderate moves (body_ratio > 0.4): 1.2x multiplier
- Weak moves: 1.0x multiplier
4. Delta Volume Estimation:
- Buy Volume: price_change > 0 ? volume × aggressive_factor : 0
- Sell Volume: price_change < 0 ? volume × aggressive_factor : 0
- Net Delta: buy_volume - sell_volume
5. Delta Strength Normalization: delta_strength = |net_delta| / sma(volume, 20)
Percentile-Based Filtering
The indicator uses percentile filtering instead of fixed thresholds, making it adaptive to market conditions:
- Bubble Filter: Only shows bubbles when volume exceeds the specified percentile (default: 60%)
- Label Filter: Only displays numbers when volume exceeds a higher percentile (default: 90%)
- Dynamic Adaptation: Automatically adjusts to changing market volatility
Visual Elements
Bubble Sizes
- Tiny: Delta strength < 0.3
- Small: Delta strength 0.3 - 0.7
- Normal: Delta strength 0.7 - 1.2
- Large: Delta strength 1.2 - 2.0
- Huge: Delta strength > 2.0
Color Coding
- Aggressive Buy (Bright Green): Strong buying pressure with high body ratio
- Aggressive Sell (Bright Red): Strong selling pressure with high body ratio
- Passive Buy (Light Green): Moderate buying pressure
- Passive Sell (Light Red): Moderate selling pressure
Intensity Mode
Alternative coloring based on delta strength rather than flow direction:
- Gray: Low intensity (< 0.5)
- Blue: Medium intensity (0.5 - 1.0)
- Orange: High intensity (1.0 - 2.0)
- Red: Extreme intensity (> 2.0)
Parameters
Order Flow Settings
- Show Bubbles: Toggle bubble display on/off
- Bubble Volume %ile: Percentile threshold for bubble display (0-100%)
- Intensity Mode: Switch between flow-based and intensity-based coloring
Bubble Labels
- Show Numbers in Bubbles: Toggle numerical labels on/off
- Label Volume %ile: Higher percentile threshold for label display (0-100%)
Numbers are displayed in K-notation (e.g., 25000 → 25K, 1500000 → 1.5M) for better readability.
Ideal Usage Scenarios
Best Market Conditions
- High volume sessions: More accurate delta calculations
- Trending markets: Clear directional flow identification
- Breakout scenarios: Spot aggressive buying/selling at key levels
- Support/resistance testing: Identify accumulation vs distribution
Trading Applications
1. Entry Timing: Look for aggressive flow in your trade direction
2. Exit Signals: Watch for opposing aggressive flow
3. Trend Confirmation: Consistent flow direction confirms trends
4. Volume Climax: Huge bubbles may indicate exhaustion points
Optimization Tips
Parameter Adjustment
- Lower percentiles (40-60%): More bubbles, good for active markets
- Higher percentiles (70-90%): Fewer bubbles, focus on significant events
- Label percentile: Set 20-30% higher than bubble percentile for clarity
Visual Optimization
- Intensity mode: Better for identifying unusual volume spikes
- Flow mode: Better for directional bias analysis
- Label toggle: Turn off in crowded markets, on for key levels
Limitations
- Estimation-based: Uses approximation algorithms, not true order flow data
- Volume dependency: Requires accurate volume data to function properly
- Timeframe sensitivity: Works best on intraday timeframes with active volume
- Market hours: Most effective during high-volume trading sessions
Technical Notes
The indicator implements advanced Pine Script features including:
- Dynamic percentile calculations using ta.percentile_linear_interpolation()
- Conditional plotting with multiple size categories
- Custom number formatting functions
- Efficient label management to prevent display limits
This tool is designed for traders who want to understand the underlying buying and selling pressure beyond simple volume analysis, providing insights into market sentiment and potential turning points.
Position Size Calculator with Fees# Position Size Calculator with Portfolio Management - Manual
## Overview
The Position Size Calculator with Portfolio Management is an advanced Pine Script indicator designed to help traders calculate optimal position sizes based on their total portfolio value and risk management strategy. This tool automatically calculates your risk amount based on portfolio allocation percentages and determines the exact position size needed while accounting for trading fees.
## Key Features
- **Portfolio-Based Risk Management**: Calculates risk based on total portfolio value
- **Tiered Risk Allocation**: Separates trading allocation from total portfolio
- **Automatic Trade Direction Detection**: Determines long/short based on entry vs stop loss
- **Fee Integration**: Accounts for trading fees in position size calculations
- **Risk Factor Adjustment**: Allows scaling of position size up or down
- **Visual Display**: Shows all calculations in a clear, color-coded table
- **Automatic Risk Calculation**: No need to manually input risk amount
## Input Parameters
### Total Portfolio ($)
- **Purpose**: The total value of your investment portfolio
- **Default**: 0.0
- **Range**: Any positive value
- **Step**: 0.01
- **Example**: If your total portfolio is worth $100,000, enter 100000
### Trading Portfolio Allocation (%)
- **Purpose**: The percentage of your total portfolio allocated to active trading
- **Default**: 20.0%
- **Range**: 0.0% to 100.0%
- **Step**: 0.01
- **Example**: If you allocate 20% of your portfolio to trading, enter 20
### Risk from Trading (%)
- **Purpose**: The percentage of your trading allocation you're willing to risk per trade
- **Default**: 0.1%
- **Range**: Any positive value
- **Step**: 0.01
- **Example**: If you risk 0.1% of your trading allocation per trade, enter 0.1
### Entry Price ($)
- **Purpose**: The price at which you plan to enter the trade
- **Default**: 0.0
- **Range**: Any positive value
- **Step**: 0.01
### Stop Loss ($)
- **Purpose**: The price at which you will exit if the trade goes against you
- **Default**: 0.0
- **Range**: Any positive value
- **Step**: 0.01
### Risk Factor
- **Purpose**: A multiplier to scale your position size up or down
- **Default**: 1.0 (no scaling)
- **Range**: 0.0 to 10.0
- **Step**: 0.1
- **Examples**:
- 1.0 = Normal position size
- 2.0 = Double the position size
- 0.5 = Half the position size
### Fee (%)
- **Purpose**: The percentage fee charged per transaction
- **Default**: 0.01% (0.01)
- **Range**: 0.0% to 1.0%
- **Step**: 0.001
## How Risk Amount is Calculated
The script automatically calculates your risk amount using this formula:
```
Risk Amount = Total Portfolio × Trading Allocation (%) × Risk % ÷ 10,000
```
### Example Calculation:
- Total Portfolio: $100,000
- Trading Allocation: 20%
- Risk per Trade: 0.1%
**Risk Amount = $100,000 × 20 × 0.1 ÷ 10,000 = $20**
This means you would risk $20 per trade, which is 0.1% of your $20,000 trading allocation.
## Portfolio Structure Example
Let's say you have a $100,000 portfolio:
### Allocation Structure:
- **Total Portfolio**: $100,000
- **Trading Allocation (20%)**: $20,000
- **Long-term Investments (80%)**: $80,000
### Risk Management:
- **Risk per Trade (0.1% of trading)**: $20
- **Maximum trades at risk**: Could theoretically have 1,000 trades before risking entire trading allocation
## How Position Size is Calculated
### Trade Direction Detection
- **Long Trade**: Entry price > Stop loss price
- **Short Trade**: Entry price < Stop loss price
### Position Size Formulas
#### For Long Trades:
```
Position Size = -Risk Factor × Risk Amount / (Stop Loss × (1 - Fee) - Entry Price × (1 + Fee))
```
#### For Short Trades:
```
Position Size = -Risk Factor × Risk Amount / (Entry Price × (1 - Fee) - Stop Loss × (1 + Fee))
```
## Output Display
The indicator displays a comprehensive table with color-coded sections:
### Portfolio Information (Light Blue Background)
- **Portfolio (USD)**: Your total portfolio value
- **Trading Portfolio Allocation (%)**: Percentage allocated to trading
- **Risk as % of Trading**: Risk percentage per trade
### Trade Setup (Gray Background)
- **Entry Price**: Your specified entry price
- **Stop Loss**: Your specified stop loss price
- **Fee (%)**: Trading fee percentage
- **Risk Factor**: Position size multiplier
### Risk Analysis (Red Background)
- **Risk Amount**: Automatically calculated dollar risk
- **Effective Entry**: Actual entry cost including fees
- **Effective Exit**: Actual exit value including fees
- **Expected Loss**: Calculated loss if stop loss is hit
- **Deviation from Risk %**: Accuracy of risk calculation
### Final Result (Blue Background)
- **Position Size**: Number of shares/units to trade
## Usage Examples
### Example 1: Conservative Long Trade
- **Total Portfolio**: $50,000
- **Trading Allocation**: 15%
- **Risk per Trade**: 0.05%
- **Entry Price**: $25.00
- **Stop Loss**: $24.00
- **Risk Factor**: 1.0
- **Fee**: 0.01%
**Calculated Risk Amount**: $50,000 × 15% × 0.05% ÷ 100 = $3.75
### Example 2: Aggressive Short Trade
- **Total Portfolio**: $200,000
- **Trading Allocation**: 30%
- **Risk per Trade**: 0.2%
- **Entry Price**: $150.00
- **Stop Loss**: $155.00
- **Risk Factor**: 2.0
- **Fee**: 0.01%
**Calculated Risk Amount**: $200,000 × 30% × 0.2% ÷ 100 = $120
**Actual Risk**: $120 × 2.0 = $240 (due to risk factor)
## Color Coding System
- **Green/Red Header**: Trade direction (Long/Short)
- **Light Blue**: Portfolio management parameters
- **Gray**: Trade setup parameters
- **Red**: Risk-related calculations and results
- **Blue**: Final position size result
## Best Practices
### Portfolio Management
1. **Keep trading allocation reasonable** (typically 10-30% of total portfolio)
2. **Use conservative risk percentages** (0.05-0.2% per trade)
3. **Don't risk more than you can afford to lose**
### Risk Management
1. **Start with small risk factors** (1.0 or less) until comfortable
2. **Monitor your total exposure** across all open positions
3. **Adjust risk based on market conditions**
### Trade Execution
1. **Always validate calculations** before placing trades
2. **Account for slippage** in volatile markets
3. **Consider position size relative to liquidity**
## Risk Management Guidelines
### Conservative Approach
- Trading Allocation: 10-20%
- Risk per Trade: 0.05-0.1%
- Risk Factor: 0.5-1.0
### Moderate Approach
- Trading Allocation: 20-30%
- Risk per Trade: 0.1-0.15%
- Risk Factor: 1.0-1.5
### Aggressive Approach
- Trading Allocation: 30-40%
- Risk per Trade: 0.15-0.25%
- Risk Factor: 1.5-2.0
## Troubleshooting
### Common Issues
1. **Position Size shows 0**
- Verify all portfolio inputs are greater than 0
- Check that entry price differs from stop loss
- Ensure calculated risk amount is positive
2. **Very small position sizes**
- Increase risk percentage or risk factor
- Check if your risk amount is too small for the price difference
3. **Large risk deviation**
- Normal for very small positions
- Consider adjusting entry/stop loss levels
### Validation Checklist
- Total portfolio value is realistic
- Trading allocation percentage makes sense
- Risk percentage is conservative
- Entry and stop loss prices are valid
- Trade direction matches your intention
## Advanced Features
### Risk Factor Usage
- **Scaling up**: Use risk factors > 1.0 for high-confidence trades
- **Scaling down**: Use risk factors < 1.0 for uncertain trades
- **Never exceed**: Risk factors that would risk more than your comfort level
### Multiple Timeframe Analysis
- Use different risk factors for different timeframes
- Consider correlation between positions
- Adjust trading allocation based on market conditions
## Disclaimer
This tool is for educational and planning purposes only. Always verify calculations manually and consider market conditions, liquidity, and correlation between positions. The automated risk calculation assumes you're comfortable with the mathematical relationship between portfolio allocation and individual trade risk. Past performance doesn't guarantee future results, and all trading involves risk of loss.
Easy Position Size Calculator with Fees# Easy Position Size Calculator with Fees - Manual
## Overview
The Easy Position Size Calculator is a Pine Script indicator designed to help traders calculate the optimal position size for their trades while accounting for trading fees. This tool automatically determines whether you're planning a long or short position and calculates the exact position size needed to risk a specific dollar amount.
## Key Features
- **Automatic Trade Direction Detection**: Determines if you're going long or short based on entry price vs stop loss
- **Fee Integration**: Accounts for trading fees in position size calculations
- **Risk Management**: Calculates position size based on your specified risk amount
- **Risk Factor Adjustment**: Allows you to scale your position size up or down
- **Visual Display**: Shows all calculations in a clear, organized table
## Input Parameters
### Entry Price ($)
- **Purpose**: The price at which you plan to enter the trade
- **Default**: 0.0
- **Range**: Any positive value
- **Step**: 0.01
### Stop Loss ($)
- **Purpose**: The price at which you will exit the trade if it goes against you
- **Default**: 0.0
- **Range**: Any positive value
- **Step**: 0.01
### Risk ($)
- **Purpose**: The maximum dollar amount you're willing to lose on this trade
- **Default**: 0.0
- **Range**: Any positive value
- **Step**: 0.01
### Risk Factor
- **Purpose**: A multiplier to scale your position size up or down
- **Default**: 1.0 (no scaling)
- **Range**: 0.0 to 10.0
- **Step**: 0.1
- **Examples**:
- 1.0 = Normal position size
- 2.0 = Double the position size
- 0.5 = Half the position size
### Fee (%)
- **Purpose**: The percentage fee charged per transaction (buy/sell)
- **Default**: 0.01% (0.01)
- **Range**: 0.0% to 1.0%
- **Step**: 0.001
## How It Works
### Trade Direction Detection
The script automatically determines your trade direction:
- **Long Trade**: Entry price > Stop loss price
- **Short Trade**: Entry price < Stop loss price
### Position Size Calculation
#### For Long Trades:
```
Position Size = -Risk Factor × Risk Amount / (Stop Loss × (1 - Fee) - Entry Price × (1 + Fee))
```
#### For Short Trades:
```
Position Size = -Risk Factor × Risk Amount / (Entry Price × (1 - Fee) - Stop Loss × (1 + Fee))
```
### Fee Adjustment
The script accounts for fees on both entry and exit:
- **Long trades**: You pay fees when buying (entry) and selling (exit)
- **Short trades**: You pay fees when shorting (entry) and covering (exit)
## Output Display
The indicator displays a table with the following information:
### Trade Information
- **Trade Type**: Shows whether it's a LONG, SHORT, or INVALID trade
- **Entry Price**: Your specified entry price
- **Stop Loss**: Your specified stop loss price
- **Fee (%)**: The fee percentage being used
### Risk Parameters
- **Risk Amount**: The dollar amount you're willing to risk
- **Risk Factor**: The multiplier being applied
### Calculated Values
- **Effective Entry**: The actual cost per share including fees
- **Effective Exit**: The actual exit value per share including fees
- **Expected Loss**: The calculated loss if stop loss is hit
- **Deviation from Risk %**: Shows how close the expected loss is to your target risk
- **Position Size**: The number of shares/units to trade
## Usage Examples
### Example 1: Long Trade
- Entry Price: $100.00
- Stop Loss: $95.00
- Risk Amount: $500.00
- Risk Factor: 1.0
- Fee: 0.01%
**Result**: The script will calculate how many shares to buy so that if the stop loss is hit, you lose approximately $500 (accounting for fees). Position Size: 99.61152
### Example 2: Short Trade
- Entry Price: $50.00
- Stop Loss: $55.00
- Risk Amount: $300.00
- Risk Factor: 1.0
- Fee: 0.01%
**Result**: The script will calculate how many shares to short so that if the stop loss is hit, you lose approximately $300 (accounting for fees). Position Size: 59.87426
## Important Notes
### Validation Requirements
For the script to work properly, all of the following must be true:
- Entry price > 0
- Stop loss > 0
- Risk amount > 0
- Entry price ≠ Stop loss (to determine direction)
### Negative Position Sizes
The script may show negative position sizes, which is normal:
- **Negative values for long trades**: Represents shares to buy
- **Negative values for short trades**: Represents shares to short
### Risk Deviation
The "Deviation from Risk %" shows how closely the calculated position size matches your target risk. Small deviations are normal due to:
- Fee calculations
- Rounding
- Market precision
## Color Coding
The table uses color coding for easy identification:
- **Green**: Long trade information
- **Red**: Short trade information
- **Gray**: Invalid trade (when inputs are incorrect)
- **Blue**: Final position size
- **Red background**: Risk-related calculations
## Troubleshooting
### Common Issues
1. **Position Size shows 0**
- Check that all inputs are greater than 0
- Ensure entry price is different from stop loss
2. **Trade Type shows INVALID**
- Verify that entry price and stop loss are both positive
- Make sure entry price ≠ stop loss
3. **Large Risk Deviation**
- This is normal for very small position sizes
- Consider adjusting your risk amount or price levels
## Best Practices
1. **Always validate your inputs** before placing actual trades
2. **Double-check the trade direction** shown in the table
3. **Review the expected loss** to ensure it aligns with your risk management
4. **Consider the effective entry/exit prices** which include fees
5. **Use appropriate risk factors** - avoid extreme values that could lead to overexposure
## Disclaimer
This tool is for educational and planning purposes only. Always verify calculations manually and consider market conditions, liquidity, and other factors before placing actual trades. The script assumes that fees are charged on both entry and exit transactions.
Warrior Trading Momentum Strategy
# 🚀 Warrior Trading Momentum Strategy - Day Trading Excellence
## Strategy Overview
This comprehensive Pine Script strategy replicates the proven methodologies taught by Ross Cameron and the Warrior Trading community. Designed for active day traders, it identifies high-probability momentum setups with strict risk management protocols.
## 📈 Core Trading Setups
### 1. Gap and Go Trading
- **Primary Focus**: Stocks gapping up 2%+ with volume confirmation
- **Entry Logic**: Breakout above gap open with momentum validation
- **Volume Filter**: 2x average volume requirement for quality setups
### 2. ABCD Pattern Recognition
- **Pattern Detection**: Automated identification of classic ABCD reversal patterns
- **Validation**: A-B and C-D move relationship analysis
- **Entry Trigger**: D-point breakout with volume confirmation
### 3. VWAP Momentum Plays
- **Strategy**: Entries near VWAP with bounce confirmation
- **Distance Filter**: Configurable percentage distance for optimal entries
- **Direction Bias**: Above VWAP bullish momentum validation
### 4. Red to Green Reversals
- **Setup**: Reversal patterns after consecutive red candles
- **Confirmation**: Volume spike with bullish close required
- **Momentum**: Trend change validation with RSI support
### 5. Breakout Momentum
- **Logic**: Breakouts above recent highs with volume
- **Filters**: EMA20 and RSI confirmation for quality
- **Trend**: Established momentum direction validation
## ⚡ Key Features
### Smart Risk Management
- **Position Sizing**: Automatic calculation based on account risk percentage
- **Stop Loss**: 2 ATR-based stops for volatility adjustment
- **Take Profit**: Configurable risk-reward ratios (default 1:2)
- **Trailing Stops**: Profit protection with adjustable triggers
### Advanced Filtering System
- **Time Filters**: Market hours trading with lunch hour avoidance
- **Volume Confirmation**: Multi-timeframe volume analysis
- **Momentum Indicators**: RSI and moving average trend validation
- **Quality Control**: Multiple confirmation layers for signal accuracy
### PDT-Friendly Design
- **Trade Limiting**: Built-in daily trade counter for accounts under $25K
- **Selective Trading**: Priority scoring system for A+ setups only
- **Quality over Quantity**: Maximum 2-3 high-probability trades per day
## 🎯 Optimal Usage
### Best Timeframes
- **Primary**: 5-minute charts for entry timing
- **Secondary**: 1-minute for precise execution
- **Context**: Daily charts for gap analysis
### Ideal Market Conditions
- **Volatility**: High-volume, momentum-driven markets
- **Stocks**: Market cap $100M+, average volume 1M+ shares
- **Sectors**: Technology, biotech, growth stocks with news catalysts
### Account Requirements
- **Minimum**: $500+ for proper position sizing
- **Recommended**: $25K+ for unlimited day trading
- **Risk Tolerance**: Active day trading experience preferred
## 📊 Performance Optimization
### Entry Criteria (All Must Align)
1. ✅ Time filter (market hours, avoid lunch)
2. ✅ Volume spike (2x+ average volume)
3. ✅ Momentum confirmation (RSI 50-80)
4. ✅ Trend alignment (above EMA20)
5. ✅ Pattern completion (setup-specific)
### Risk Parameters
- **Maximum Risk**: 1-2% per trade
- **Position Size**: 25% of account maximum
- **Stop Loss**: 2 ATR below entry
- **Take Profit**: 2:1 risk-reward minimum
## 🔧 Customization Options
### Gap Trading Settings
- Minimum gap percentage threshold
- Volume multiplier requirements
- Gap validation criteria
### Pattern Recognition
- ABCD ratio parameters
- Swing point sensitivity
- Pattern completion filters
### Risk Management
- Risk-reward ratio adjustment
- Maximum daily trade limits
- Trailing stop trigger levels
### Time and Session Filters
- Trading session customization
- Lunch hour avoidance toggle
- Market condition filters
## ⚠️ Important Disclaimers
### Risk Warning
- **High Risk**: Day trading involves substantial risk of loss
- **Capital Requirements**: Only trade with risk capital
- **Experience**: Strategy requires active monitoring and experience
- **Market Conditions**: Performance varies with market volatility
### PDT Considerations
- **Day Trading Rules**: Accounts under $25K limited to 3 day trades per 5 days
- **Compliance**: Strategy includes trade counting for PDT compliance
- **Alternative**: Consider swing trading modifications for smaller accounts
### Backtesting vs Live Trading
- **Slippage**: Real trading involves execution delays and slippage
- **Commissions**: Factor in broker fees for accurate performance
- **Market Impact**: Large positions may affect fill prices
- **Psychological Factors**: Live trading involves emotional challenges
## 📚 Educational Value
This strategy serves as an excellent learning tool for understanding:
- Professional day trading methodologies
- Risk management principles
- Pattern recognition techniques
- Volume and momentum analysis
- Multi-timeframe analysis
## 🤝 Community and Support
Based on proven Warrior Trading methodologies with active community support. Strategy includes comprehensive plotting and information tables for educational purposes and trade analysis.
---
**Disclaimer**: This strategy is for educational purposes. Past performance does not guarantee future results. Always practice proper risk management and never risk more than you can afford to lose.
**Tags**: #DayTrading #Momentum #WarriorTrading #GapAndGo #ABCD #VWAP #PatternTrading #RiskManagement