Engulfing CandleThis indicator highlights the most recent candle that engulfs the previous candle's high and low or closes beyond the previous open after taking out its high or low
Wskaźniki i strategie
Hurdle rateStocks beating BTC 50 > 200 Week EMA. The indicator is scanning the available stocks for equities that are beating BTC over mid term time frames.
Last Candle of Hour Highlighter (M1 + M5)Highlights the last candle of every hour on 1-minute (M1) and 5-minute (M5) charts, making it easier to spot session closes, breakouts, and end-of-hour price action at a glance.
Detailed Description / How to Use:
This indicator automatically detects the last candle of each hour and changes its colour for quick visual reference. It’s designed for traders who use short-term timeframes (M1, M5) and want a clean visual cue for hourly closes.
Features:
• Automatically detects M1 and M5 timeframes.
• Highlights the last candle of each hour with a customisable colour.
• Optional Bull/Bear mode: colour changes depending on candle direction.
• Simple and lightweight — does not affect chart performance.
Inputs / Settings:
1. Color by Bull/Bear – Toggle on to automatically colour the last candle green (bullish) or red (bearish) based on its close relative to the open.
2. Highlight Colour – Choose a single colour if Bull/Bear mode is off.
3. Bullish Colour – Choose the colour for bullish last candles.
4. Bearish Colour – Choose the colour for bearish last candles.
Usage Tips:
• Works best on 1-minute and 5-minute charts.
• Ideal for spotting end-of-hour reversals, breakout candles, and momentum shifts.
• Can be combined with other indicators like support/resistance or moving averages for more advanced strategies.
ALANI - Multi-Timeframe (MTF)An almost zero lag version of the LSMA (Least Squares Moving Average)
Gives instant linear regression of current price action.
This line works with the same rules as its "laggy" counterpart the LSMA:
When price crosses over it signals a bull trend.
When price crosses under it signals bear trend.
When price stays close or on the line sideways action is to be expected.
The direction of the line shows the direction of the trend.
Cluster Search This indicator highlights areas of unusually high trading volume compared to the recent average, helping to identify moments when strong activity enters the market.
Smart RR Lot (Forex) — RR + Lot auto (Final v6 Stable)//@version=6
indicator("Smart RR Lot (Forex) — RR + Lot auto (Final v6 Stable)", overlay=true, max_lines_count=12, max_labels_count=12)
// ===== Paramètres du compte =====
acc_currency = input.string("EUR", "Devise du compte", options= )
account_balance = input.float(6037.0, "Solde du compte", step=1.0)
risk_pct = input.float(1.0, "Risque par trade (%)", step=0.1, minval=0.01)
// ===== Niveaux à placer sur le graphique =====
entry_price = input.price(1.1000, "Entry (cliquer la pipette)")
sl_price = input.price(1.0990, "Stop Loss (cliquer la pipette)")
tp_price = input.price(1.1010, "Take Profit (cliquer la pipette)")
// ===== Taille du pip (Forex) =====
isJPYpair = str.contains(syminfo.ticker, "JPY")
pip_size = isJPYpair ? 0.01 : 0.0001
// ===== Valeur du pip (1 lot = 100 000 unités) =====
pip_value_quote = 100000.0 * pip_size
quote_ccy = syminfo.currency
// ===== Conversion QUOTE → devise du compte =====
f_rate(sym) =>
request.security(sym, "D", close, ignore_invalid_symbol=true)
f_conv_to_account(quote, acc) =>
acc_equals = quote == acc
if acc_equals
1.0
else
r1 = f_rate(acc + quote)
r2 = f_rate(quote + acc)
float res = na
if not na(r1)
res := 1.0 / r1
else if not na(r2)
res := r2
else
res := 1.0
res
quote_to_account = f_conv_to_account(quote_ccy, acc_currency)
pip_value_account = pip_value_quote * quote_to_account
// ===== Calcul RR & taille de lot =====
stop_dist_points = math.abs(entry_price - sl_price)
tp_dist_points = math.abs(tp_price - entry_price)
distance_pips = stop_dist_points / pip_size
rr = tp_dist_points / stop_dist_points
risk_amount = account_balance * (risk_pct * 0.01)
lot_size = distance_pips > 0 ? (risk_amount / (distance_pips * pip_value_account)) : na
lot_size_clamped = na(lot_size) ? na : math.max(lot_size, 0)
// ====== Lignes horizontales ======
var line lEntry = na
var line lSL = na
var line lTP = na
f_hline(line_id, float y, color colr) =>
var line newLine = na
if na(line_id)
newLine := line.new(bar_index - 1, y, bar_index, y, xloc=xloc.bar_index, extend=extend.right, color=colr, width=2)
else
line.set_xy1(line_id, bar_index - 1, y)
line.set_xy2(line_id, bar_index, y)
line.set_color(line_id, colr)
line.set_extend(line_id, extend.right)
newLine := line_id
newLine
colEntry = color.new(color.gray, 0)
colSL = color.new(color.red, 0)
colTP = color.new(color.teal, 0)
lEntry := f_hline(lEntry, entry_price, colEntry)
lSL := f_hline(lSL, sl_price, colSL)
lTP := f_hline(lTP, tp_price, colTP)
// ===== Labels d’informations =====
var label infoLbl = na
var label lblEntry = na
var label lblSL = na
var label lblTP = na
txtInfo = "RR = " + (na(rr) ? "—" : str.tostring(rr, "#.##")) +
" | Lot = " + (na(lot_size_clamped) ? "—" : str.tostring(lot_size_clamped, "#.##")) +
" (" + acc_currency + ") " +
"Risque " + str.tostring(risk_pct, "#.##") + "% = " + str.tostring(risk_amount, "#.##") + " " + acc_currency
midY = (entry_price + tp_price) * 0.5
if na(infoLbl)
infoLbl := label.new(bar_index, midY, txtInfo, xloc=xloc.bar_index, style=label.style_label_right, textcolor=color.white, color=color.new(color.black, 0))
else
label.set_x(infoLbl, bar_index)
label.set_y(infoLbl, midY)
label.set_text(infoLbl, txtInfo)
entryTxt = "ENTRY " + str.tostring(entry_price, format.price)
slTxt = "SL " + str.tostring(sl_price, format.price)
tpTxt = "TP " + str.tostring(tp_price, format.price)
if na(lblEntry)
lblEntry := label.new(bar_index, entry_price, entryTxt, xloc=xloc.bar_index, style=label.style_label_down, textcolor=color.white, color=color.new(colEntry, 0))
else
label.set_x(lblEntry, bar_index)
label.set_y(lblEntry, entry_price)
label.set_text(lblEntry, entryTxt)
if na(lblSL)
lblSL := label.new(bar_index, sl_price, slTxt, xloc=xloc.bar_index, style=label.style_label_down, textcolor=color.white, color=color.new(colSL, 0))
else
label.set_x(lblSL, bar_index)
label.set_y(lblSL, sl_price)
label.set_text(lblSL, slTxt)
if na(lblTP)
lblTP := label.new(bar_index, tp_price, tpTxt, xloc=xloc.bar_index, style=label.style_label_down, textcolor=color.white, color=color.new(colTP, 0))
else
label.set_x(lblTP, bar_index)
label.set_y(lblTP, tp_price)
label.set_text(lblTP, tpTxt)
5-Min EMA MACD RSI Scalping (MACD 5 Candles Confirm) - BVK 🔹 5-Min EMA MACD RSI Scalping Strategy – Full Description
The 5-Min EMA MACD RSI Scalping Strategy is a powerful intraday trading technique designed for quick trades on lower timeframes, mainly the 5-minute chart. It combines trend confirmation (EMA), momentum analysis (MACD), and overbought/oversold signals (RSI) to capture short, high-probability price moves in both bullish and bearish markets.
⚙️ Indicators Used:
Exponential Moving Averages (EMA)
EMA 9 – Fast-moving average for entry trigger.
EMA 21 – Medium-term average for trend confirmation.
When EMA 9 crosses above EMA 21 → Bullish bias.
When EMA 9 crosses below EMA 21 → Bearish bias.
MACD (12, 26, 9)
Confirms momentum and possible entry zones.
Bullish confirmation: MACD line crosses above signal line.
Bearish confirmation: MACD line crosses below signal line.
RSI (14-period)
Filters out false signals.
Buy zone: RSI rising above 40–50.
Sell zone: RSI falling below 60–50.
Avoid trades when RSI is near 70 (overbought) or 30 (oversold).
💡 Entry Rules:
Buy Setup (Long Trade):
EMA 9 crosses above EMA 21.
MACD line crosses above signal line (positive momentum).
RSI is above 50 but below 70 (confirming strength).
Enter trade at candle close.
Sell Setup (Short Trade):
EMA 9 crosses below EMA 21.
MACD line crosses below signal line.
RSI is below 50 but above 30 (confirming weakness).
Enter trade at candle close.
🎯 Exit Rules:
Take Profit: 1.5x to 2x of risk or near the opposite EMA crossover.
Stop Loss: Below/above recent swing low/high or 0.3–0.5% away from entry.
Optional trailing stop using EMA 9 for dynamic exits.
📊 Best Timeframes & Assets:
Works best on 5-minute charts.
Suitable for Forex, Indices, Cryptocurrency, and Stocks with good liquidity.
Avoid major news events or low-volume sessions.
⚠️ Tips for Best Results:
Trade only during high-volume market sessions (e.g., London/New York overlap).
Always confirm trend direction on higher timeframes (15m or 1H).
Avoid overtrading—wait for clear signal confluence (EMA + MACD + RSI).
🧠 Strategy Summary:
“EMA gives you the trend, MACD gives you momentum, and RSI keeps you disciplined.”
This strategy is simple yet effective for traders who prefer quick in-and-out trades within minutes, offering a structured approach to scalping with reduced emotional bias.
Enhanced Stochastic & RSI Oscillator by TitikSonaDESCRIPTION:
This indicator enhances the classic Stochastic RSI concept by implementing a multi-timeframe and multi-parameter approach to generate more reliable trading signals. Unlike simple indicator mashups, this tool is designed with layered confirmation logic that integrates four different Stochastic timeframes with dual RSI periods.
KEY FEATURES & CONCEPTS:
Multi-Timeframe Stochastic Analysis
Stochastic 1 (12,3,20): Short-term signals
Stochastic 2 (100,8,8): Long-term trend context
Stochastic 3 (14,3,3): Medium-term confirmation
Stochastic 4 (8,3,3): Ultra-short term movement detection
Dual RSI Confirmation System
RSI 26-period: Smooth signals for main trend identification
RSI 9-period: Fast reactions for precise entry timing
Intelligent Signal Logic
Signals are generated based on comprehensive conditions rather than single overbought/oversold levels, incorporating:
Multiple Stochastic convergence
Dual RSI filtering
Bullish/Bearish cross validation
Strength-based classification (Strong/Medium/Weak)
HOW IT WORKS:
The indicator analyzes convergence across four different Stochastic oscillators representing various timeframes. Signals are only generated when at least three of the four Stochastics show aligned conditions, filtered through dual RSI confirmation, and validated with appropriate crossovers.
USAGE GUIDE:
Strong Signals (High Probability): Bright green/red colors - for high-confidence entries with strict confirmation
Medium Signals (Balanced Approach): Standard colors - for normal trading with proper risk management
Weak Signals (Early Warning): Muted colors - as early alerts for potential movements requiring additional confirmation
COMPARATIVE ADVANTAGE:
Unlike similar indicators that simply combine two oscillators, our multi-timeframe approach reduces false signals by ensuring confirmation from various trading perspectives. The integrated strength classification logic helps traders align signals with their individual risk tolerance and trading style.
RISK DISCLAIMER:
Like all technical indicators, this tool does not guarantee profits. Past performance does not guarantee future results. Always employ proper risk management strategies and use additional analysis for confirmation. Trading financial instruments carries substantial risk of loss.
CUSTOMIZABLE PARAMETERS:
All Stochastic periods, RSI settings, and signal thresholds can be adjusted through input settings to accommodate various trading styles and timeframes.
EDUCATIONAL VALUE:
This indicator demonstrates the importance of multi-timeframe analysis and layered confirmation in technical analysis, providing educational insights into convergence trading strategies and oscillator synchronization techniques.
Triple SuperTrend + RSI + Fib BB + Vol Osc Strategy✅ Key Features Implemented:
Three SuperTrend Indicators with different opacities:
ST1: 10 period, 1.0 multiplier (solid)
ST2: 11 period, 2.0 multiplier (40% transparent)
ST3: 12 period, 3.0 multiplier (70% transparent)
Signal Logic (no repainting):
BUY: All 3 SuperTrends turn green + RSI(7) > 50
SELL: All 3 SuperTrends turn red + RSI(7) < 50
EXIT: Any SuperTrend changes color OR price touches Fib BB
Fibonacci Bollinger Bands (200 SMA ± 2.618 × StdDev):
Purple bands with subtle fill
Gray dashed middle line
Visual Elements:
Green "BUY" labels below bars
Red "SELL" labels above bars
Yellow circle "EXIT" labels at candle tops
Green/red background tint when all STs align
Info dashboard showing real-time status
Alert Conditions for BUY, SELL, and EXIT
Position Tracking ensures only one signal per condition change
📊 Usage:
Copy the entire code and paste it into TradingView's Pine Editor, then click "Add to Chart". The indicator will display all three SuperTrends, Fibonacci Bollinger Bands, and generate signals according to your exact specifications.
The dashboard in the top-right corner shows the current status of each SuperTrend, RSI value, and whether you're in a position!RetryLH
Metals vs DXY CorrelationThere's a growing interest in Gold and Metals in general - due to safe have demand - a lot of traders get blindsided by sudden consolidation and reversals while trading Gold or Silver. The key is to know that GC is closely related to DXY because large institutions and central banks hedge the two instruments. They are inversely correlated for the most part.
This indicator looks at price action applies Pearson correlation to find the strength in their "entanglement" and tells you if its is strongly, weakly or positively correlated.
It has helped me stay away from the markets when there's a strong inverse correlation because the price action can be very unpredictable.
Hopefully you find this useful.
Bollinger Band ToolkitBollinger Band Toolkit
An advanced, adaptive Bollinger Band system for traders who want more context, precision, and edge.
This indicator expands on the classic Bollinger Bands by combining statistical and volatility-based methods with modern divergence and squeeze detection tools. It helps identify volatility regimes, potential breakouts, and early momentum shifts — all within one clean overlay.
🔹 Core Features
1. Adaptive Bollinger Bands (σ + ATR)
Classic 20-period bands enhanced with an ATR-based volatility adjustment, making them more responsive to true market movement rather than just price variance.
Reduces “overreacting” during chop and avoids bands collapsing too tightly during trends.
2. %B & RSI Divergence Detection
🟢 Green dots: Positive %B divergence — price makes a lower low, but %B doesn’t confirm (bullish).
🔴 Red dots: Negative %B divergence — price makes a higher high, but %B doesn’t confirm (bearish).
✚ Red/green crosses: RSI divergence confirmation — momentum fails to confirm the price’s new extreme.
These signals highlight potential reversal or slowdown zones that are often invisible to the naked eye.
3. Bollinger Band Squeeze (with Volume Filter)
Yellow squares (■) show periods when Bollinger Bands are at their narrowest relative to recent history.
Volume confirmation ensures the squeeze only triggers when both volatility and participation contract.
Often marks the “calm before the storm” — breakout potential zones.
4. Multi-Timeframe Breakout Markers
Optionally displays breakouts from higher or lower timeframes using different colors/symbols.
Lets you see when a higher timeframe band break aligns with your current chart — a strong trend continuation signal.
5. Dual- and Triple-Band Visualization (±1σ, ±2σ, ±3σ)
Optional inner (±1σ) and outer (±3σ) bands provide a layered volatility map:
Price holding between ±1σ → stable range / mean-reverting behavior
Price riding near ±2σ → trending phase, sustained momentum
Price touching or exceeding ±3σ → volatility expansion or exhaustion zone
This triple-band layout visually distinguishes normal movement from statistical extremes, helping you read when the market is balanced, expanding, or approaching its limits.
⚙️ Inputs & Customization
Choose band type (SMA/EMA/SMMA/WMA/VWMA)
Adjust deviation multiplier (σ) and ATR multiplier
Toggle individual features (divergence dots, squeeze markers, inner bands, etc.)
Multi-timeframe and colour controls for advanced users
🧠 How to Use
Watch for squeeze markers followed by a breakout bar beyond ±2σ → volatility expansion signal.
Combine divergence dots with RSI or price structure to anticipate slowdowns or reversals.
Confirm direction using multi-timeframe breakouts and volume expansion.
💬 Why It Works
This toolkit transforms qualitative chart reading (tight bands, hidden divergence) into quantitative, testable conditions — giving you objective insights that can be backtested, coded, or simply trusted in live setups.
VECTOR CODE V3.20 betait use for measuring volume and direction for nasdaq futures. this is just a test don't use.
Daily H/L/M + Open + VWAP + BB + LRC + Session Bias (Robust)This is great indicator to create price action based strategy in all kind of charts including renko. All the line are non repainting and wont vanish even in high volatily in renko or in any other chart. Try it to make your own strategy.
Premarket Power Bar StrategyStep 1: Mark Your Levels Before the Open
When: Between 9:00–9:25 AM ET
Premarket High – the highest price before 9:30 AM
Premarket Low – the lowest price before 9:30 AM
Use extended hours view on your chart platform.
These levels act as magnets and turning points once the market opens. They form the foundation for your first trade of the day.
Step 2: Let Price Come to the Level
Do not chase early price action.
Wait for price to approach either the premarket high or low during regular market hours.
Look for a pause, hesitation, or test near the level.
This keeps you from overtrading and forces you to wait for structure to form.
Step 3: Watch for the Power Bar
A power bar is a large-bodied candle with strong momentum and little to no wick on the opposite side.
It should form directly at the premarket level—not near it, not after a breakout.
At the premarket low, a bullish power bar is your buy trigger.
At the premarket high, a bearish power bar signals a short opportunity.
No power bar? No trade. The level and the candle must come together to create the edge.
(BONUS: As you identify specific patterns, eg, double bottoms, double tops, etc. look for those patterns near the premarket high or low)
Step 4: Entry, Stop, and Target
Entry:
For longs: place your order just above the high of the bullish power bar
For shorts: enter just below the low of the bearish power bar
Stop:
Long trade: just under the low of the power bar
Short trade: just above the high of the power bar
Profit Target Options:
VWAP
Prior day’s close
Key support/resistance levels
Keep your trade logic mechanical and consistent.
Execution Guidelines
Only trade when price reacts at your marked level
Wait for the power bar to fully form before entering
Do not jump in early or chase candles that form away from your levels
Yesterday's ATR DrawerWith this ATR Drawer, you can easily see what yesterday's ATR was compared to today's High/Low , you don't have to draw it yourself, and if you want, it will also show you yesterday's ATR number in the corner.
When a new High/Low is created during the day, the lines automatically adapt . So if a new high is created, the lower ATR line will move up, and vice versa. Every day, it recalculates and redraws the lines to yesterday's ATR level.
You can add 1 line above and 1 line below yesterday's ATR, which will be at the percentage distance from yesterday's original ATR line. So basically this allows you to set the average range that is usually reached after the ATR is broken .
You can set:
- ATR length
- ATR line width
- Line color
- Show/hide yesterday's ATR
- Upper Avr. Range After ATR Exceeded (%)
- Lower Avr. Range After ATR Exceeded (%)
H1 ATR on all timeframesVisual aid that displays the value of the H1 ATR (standard setting: 14) across all timeframes.
Squeeze Weekday Frequency [CHE] Squeeze Weekday Frequency — Tracks historical frequency of low-volatility squeezes by weekday to inform timing of low-risk setups.
Summary
This indicator monitors periods of unusually low volatility, defined as when the average true range falls below a percentile threshold, and tallies their occurrences across each weekday. By aggregating these counts over the chart's history, it reveals patterns in squeeze frequency, helping traders avoid or target specific days for reduced noise. The approach uses persistent counters to ensure accurate daily tallies without duplicates, providing a robust view of weekday biases in volatility regimes.
Motivation: Why this design?
Traders often face inconsistent signal quality due to varying volatility patterns tied to the trading calendar, such as quieter mid-week sessions or busier Mondays. This indicator addresses that by binning low-volatility events into weekday buckets, allowing users to spot recurring low-activity days where trends may develop with less whipsaw. It focuses on historical aggregation rather than real-time alerts, emphasizing pattern recognition over prediction.
What’s different vs. standard approaches?
- Reference baseline: Traditional volatility trackers like simple moving averages of range or standalone Bollinger Band squeezes, which ignore temporal distribution.
- Architecture differences:
- Employs array-based persistent counters for each weekday to accumulate events without recounting.
- Includes duplicate prevention via day-key tracking to handle sparse data.
- Features on-demand sorting and conditional display modes for focused insights.
- Practical effect: Charts show a persistent table of ranked weekdays instead of transient plots, making it easier to glance at biases like higher squeezes on Fridays, which reduces the need for manual logging and highlights calendar-driven edges.
How it works (technical)
The indicator first computes the average true range over a specified lookback period to gauge recent volatility. It then ranks this value against its own history within a sliding window to identify squeezes when the rank drops below the threshold. Each bar's timestamp is resolved to a weekday using the selected timezone, and a unique day identifier is generated from the date components.
On detecting a squeeze and valid price data, it checks against a stored last-marked day for that weekday to avoid multiple counts per day. If it's a new occurrence, the corresponding weekday counter in an array increments. Total days and data-valid days are tracked separately for context.
At the chart's last bar, it sums all counters to compute shares, sorts weekdays by their squeeze proportions, and populates a table with the selected subset. The table alternates row colors and highlights the peak weekday. An info label above the final bar summarizes totals and the top day. Background shading applies a faint red to squeeze bars for visual confirmation. State persists via variable arrays initialized once, ensuring counts build incrementally without resets.
Parameter Guide
ATR Length — Sets the lookback for measuring average true range, influencing squeeze sensitivity to short-term swings. Default: 14. Trade-offs/Tips: Shorter values increase responsiveness but raise false positives in chop; longer smooths for stability, potentially missing early squeezes.
Percentile Window (bars) — Defines the history length for ranking the current ATR, balancing recent relevance with sample size. Default: 252. Trade-offs/Tips: Narrower windows adapt faster to regime shifts but amplify noise; wider ones stabilize ranks yet lag in fast markets—aim for 100-500 bars on daily charts.
Squeeze threshold (PR < x) — Determines the cutoff for low-volatility classification; lower values flag rarer, tighter squeezes. Default: 10.0. Trade-offs/Tips: Tighter thresholds (under 5) yield fewer but higher-quality signals, reducing clutter; looser (over 20) captures more events at the cost of relevance.
Timezone — Selects the reference for weekday assignment; exchange default aligns with asset's session. Default: Exchange. Trade-offs/Tips: Use custom for cross-market analysis, but verify alignment to avoid offset errors in global pairs.
Show — Toggles the results table visibility for quick on/off of the display. Default: true. Trade-offs/Tips: Disable in multi-indicator setups to save screen space; re-enable for periodic reviews.
Pos — Positions the table on the chart pane for optimal viewing. Default: Top Right. Trade-offs/Tips: Bottom options suit long-term charts; test placements to avoid overlapping price action.
Font — Adjusts text size in the table for readability at different zooms. Default: normal. Trade-offs/Tips: Smaller fonts fit more data but strain eyes on small screens; larger for presentations.
Dark — Applies a dark color scheme to the table for contrast against chart backgrounds. Default: true. Trade-offs/Tips: Toggle false for light themes; ensures legibility without manual recoloring.
Display — Filters table rows to show all, top three, or bottom three weekdays by squeeze share. Default: All. Trade-offs/Tips: Use "Top 3" for focus on high-frequency days in active trading; "All" for full audits.
Reading & Interpretation
Red-tinted backgrounds mark individual squeeze bars, indicating current low-volatility conditions. The table's summary row shows the highest squeeze count, its percentage of total events, and the associated weekday in teal. Detail rows list selected weekdays with their absolute counts, proportional shares, and a left arrow for the peak day—higher percentages signal days where squeezes cluster, suggesting potential for calmer trend development. The info label reports overall days observed, valid data days, and reiterates the top weekday with its count. Drifting counts toward zero on a weekday imply rarity, while elevated ones point to habitual low-activity sessions.
Practical Workflows & Combinations
- Trend following: Scan for squeezes on high-frequency weekdays as entry filters, confirming with higher highs or lower lows in the structure; pair with momentum oscillators to time breaks.
- Exits/Stops: On low-squeeze days, widen stops for breathing room, tightening them during peak squeeze periods to guard against false breaks—use the table's percentages as a regime proxy.
- Multi-asset/Multi-TF: Defaults work across forex and indices on hourly or daily frames; for stocks, adjust percentile window to 100 for shorter histories. Scale thresholds up by 5-10 points for high-vol assets like crypto to maintain signal sparsity.
Behavior, Constraints & Performance
- Repaint/confirmation: Counts update only on confirmed bars via day-key changes, with no future references—live bars may shade red tentatively but tallies finalize at session close.
- security()/HTF: Not used, so no higher-timeframe repaint risks; all computations stay in the chart's resolution.
- Resources: Relies on a fixed-size array of seven elements and small loops for sorting and table fills, capped at 5000 bars back—efficient for most charts but may slow on very long intraday histories.
- Known limits: Ignores weekends and holidays implicitly via data presence; early chart bars lack full percentile context, leading to initial undercounting; assumes continuous sessions, so gaps in data (e.g., news halts) skew totals.
Sensible Defaults & Quick Tuning
Start with the built-in values for broad-market daily charts: ATR at 14, window at 252, threshold at 10. For noisier environments, lower the threshold to 5 and shorten the window to 100 to prioritize rare squeezes. If too few events appear, raise the threshold to 15 and extend ATR to 20 for broader capture. To combat overcounting in sparse data, widen the window to 500 while keeping others stock—monitor the info label's data-days count before trusting patterns.
What this indicator is—and isn’t
This serves as a statistical overlay for spotting calendar-based volatility biases, aiding in session selection and filter design. It is not a standalone signal generator, predictive model, or risk manager—integrate it with price action, volume, and broader strategy rules for decisions.
Disclaimer
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
Best regards and happy trading
Chervolino
Moon Phases Long/Short StrategyThis is an experiment of Moon Phases, likely buy when full moon and sell when new moon with few changes, like it would buy a day ahead or sometimes sell a day post these events, with Stop loss and take profits, 50% profitable so sounds good to me
Long only good for bitcoin gold, both modes(L+S) better for stocks and alt coins
KP_EMA_Cross_signal KP_EMA_Cross_signal : This signal removes a lot of false signals and will help in day trading.
Cash Session Closing marker you can mark the cash session closing every day -1h us session time .. dont know why :)
Candle Range Theory Range FinderThe video below will explain how to use the indicator.
In a nutshell, it'll shows range candles after 2 strong closes below a prior day's low or above a prior day's high for a possible range candle to trade a reversal off of.
Red arrows are to be treated as a range where you may want to start to look for longs.
Green arrows show where a range where you may want to look for shorts.
Again, the video will make it clearer.
CustVolumeStudy - Stacked Buy/Sell + Sell% (top-right)Current Bar Sell + Stacked Buy/Sell. This indicator helps tell the story of momentum on the current bar. If the % is high then it is bearish. Low it is bullish.
Williams x Briese Hybrid CoT Index
After studying the below CoT (Commitments of Traders) books from ICT's recommended library, I learned that both Larry Williams and Stephen Briese use the same formula for their CoT Index:
COT Index = ((Current Net Position - Lowest Net Position) / (Highest Net Position - Lowest Net Position)) * 100 using a 3-Year lookback period.
Books:
Trade Stocks and Commodities with the Insiders: Secrets of the COT Report by Larry Williams
The Commitments of Traders Bible: How To Profit from Insider Market Intelligence by Stephen Briese
Williams and Briese differ in their plotting of the CoT Index formula in the following ways:
Williams uses a line plot, with thresholds at 25% & 75%
Briese uses a histogram plot, with thresholds at 5% & 90%
I decided to make a "hybrid" indicator of their CoT Index by using Larry Williams' classic line plot instead of a histogram, but with Briese's stricter thresholds of 5% and 95%.
The code is a bit of a remix of the "ICT Commitment of Traders°" indicator by " toodegrees " and is meant for use in a new pane below a Weekly Chart.
You can complement your usage of this indicator with another indicator I've published as shown in the chart above: Briese CoT Movement Index, which you can find on my scripts page. For proper usage, refer to The Commitments of Traders Bible and Trade Stocks and Commodities with the Insiders
As it is, this indicator incorporates the ±40 point "surge" from the Briese CoT Movement Index indicator in the form of labels that are visible above a below the 100% and 0% levels. The green labels at the top indicate buying surges >=40 while the black labels at the bottom indicate selling surges <=-40. If you hover over these labels, you'll see the tooltip for the value of the Movement Index. Again, if you complement this Williams x Briese Hybrid CoT Index with the Briese CoT Movement Index, you'll see the labels from the index align with the points on the histogram which exceed the ±40 levels.
NOTE: This indicator only works with futures contracts, such as on the symbols/codes for:
DX1
6E1
6A1
6B1
6N1
6C1
6S1
6J1
6M1
6Z1
SI1
GC1
PA1
PL1
HG1
BTC1
ETH1
ES1
NQ1
NIY1
CL1
NG1
HO1
RB1
ZB1
ZS1
LE1
HE1
Usage:
Open this indicator in a new pane on a Weekly chart which has one of the listed futures contracts open. It provides insight on the net commercial CoT position, indexed from 0-100%, based on Briese's or Williams' standard 3-year lookback period. Can be used in conjunction with the "Briese CoT Movement Index" which I've published separately. Refer to the books listed above for detailed insight on the theory behind these indicators.
Additional Note, October 14, 2025: Back when I published this indicator originally in July 2025, PineCoders delisted it because my description was in violation of the house rules. Fans of my "Briese CoT Movement Index" have been reaching out, and thus I've decided to republish this indicator, refining the description as much as possible.
Also, please be aware that the CFTC has posted a special announcement on their website: "October 1, 2025: During the shutdown of the federal government, Commitments of Traders Reports will not be published. When the federal government operations return to normal, CFTC will resume publication of the Commitments of Traders in chronological order."
Until the CFTC begins publishing the CoT reports again, the indicator will display data only up to late September 2025.