Trading With Colors7 hours ago
Hello friends. This is simply a moving average ribbon, per se. The values for the colored ribbon can have their length calculated to fit their chosen resolution on the current one. This solved problems for me, but it was my own solution. Maybe I'll learn something new from sharing this.
To everybody else who is learning as well, this script essentially serves to introduce other time-frame moving averages. This intends to helps traders find the scope of relevance and not get lost in the current time-frame.
Besides the colored moving averages (2 sets, different resolutions, great zoomed in our out), I included optional check-boxes to allow comparison of sets of moving averages at will, so that the most important to the individual trader can be compared and selected specifically.
I kept the default options set to keep it clean. It likely won't be the only indicator on one's chart, so it's naturally best to reduce indicator noise from one, as to not subtract from the benefit of the other indicators.
I integrated tons of acquired knowledge into this, so I hope somebody finds a missing piece to their collection or a solution to a coding problem within. I also hope this provides a new insight and helps others on their path to financial freedom.
Best wishes.
PS: I left some old code in comments in case it helps to understand the evolution of my code. I'll update this again once it works on the Daily. You might figure it out before I do, in wish case, do share :)
스크립트에서 "daily"에 대해 찾기
Linear Regression Pearson's R - Trend Channel StrategyThis script takes advantage of the Pearson's R attribute of the data set you provide.
Pearson's R attempts to find how correlated data is with a potential pattern. If the number is negative the correlation is upwards . If it's positive the correlation is downwards . Pearson's R can only be a number between -1 and 1. It should be impossible to ever reach -1 or 1 as that would be a perfect correlation.
This particular strategy involves using linear regression and Pearson's R to keep recalculating steps back from the current position until the Pearson's R reaches the desired amount. For example, in my experience I have found that 0.85 for as a buy point is very good as it means the trend is very reliable and solid. When the market tends to be bullish it tends to do so longer then when it's bearish.
Likewise when a downtrend is more real, I found that 0.71 for the negative Pearson's R value is ideal and gives the best results.
These can all be changed in the settings section (with the gear icon) next to when you set your results.
This strategy is really fun/useful to watch if you have the replay bar mode enabled for TradingView. This script supports this and all you have to do is go into the settings and enable realtime mode . Doing this you can actually see the trend lines change in realtime and comes in very handy for seeing long term reversals as you will see the Pearson's R value start to go down or up indicating the path it's going on.
WARNING: This script is very intensive on the processing power of your machine. If you find that it's to slow you may have to go into the settings of the script and adjust the 'step by' parameter so that it calculates a little faster. It won't be as accurate but it will be good enough. I feel I've optimized it with it's current setting as an example of what you want to aim for.
If there are any questions do no hesitate to message or ask me. I love feedback on the community for new features and ideas!
This works best with with XBTUSD on the 4 hourly chart . It does not seem to work well if you go below hourly or go above daily.
GBTC/BTC MACDGBTC created BTC's leading indicator theory.
GBTC / BTC (market capitalization) MACD is calculated.
It seems to be good to see more than daily.
GBTCはBTCの先行指標説を信じて作成しました。
GBTC/BTC(時価総額)のMACDを計算しています。
日足以上で見るのが良いと思われます。
ft.se.zero_crossingTurns zero crossings into a simple long/short signal (-1,0,1). Can be added to any suitable third party indicator. Example shows how the extractor can be used to analyse the performance of WolfPack ID on the daily.
Note: this script is part of FalkorTools, a suite of composable tools to build and analyse strategies on trading view.
Traded Range & True ATRBlack line = Trade Range from the last X periods.
Red Line = 61.8% of black line value.
Green bar = The current trade period range.
Default Value = 21 (21 days = I business month)
Generally speaking, a stock moves approximately the same value daily. Knowing the approximate value it likes to stay within calms the nerves when you see retracement of price occuring.
IE. Price average = 1.00 in a day. It move .75 within first hour then retraces in the opposite direction. There are still hours left in the trade day, so it is trading in its value range in order to not over extend itself.
This differs in calculation from the Wells Wilder version as it smooths out jumps and only examines the ranges between high and low.
A good rule of thumb is.
Stop Loss = Entry Price +/- (ATR * 1.5)
Take Profit = (1) Entry Price +/- ATR - 50% exit (Set Trailing Stop @ Entry Value), (2) Entry Price +/- ATR * 2 (50% of remaining).
Parabolic SAR Strategy w/ EMA AlertsLong green arrow.
Short red arrow.
White bars = no trade zone.
Updating trailing stop daily.
Bitcoin Stock to Flow Multiple (fixed)This is a fixed version of the original script by yomofoV:
I fixed the variable assignments and added switching of timeframes over indicator inputs.
To switch timeframes click on the indicator, open its settings and switch the timeframe to either monthly, weekly or daily.
Multi Timeframe EMAs (Fib@MWD)plot fibonacci EMAs 21,55,233 on the timeframes monthly, weekly and daily.
Multi Timeframe EMAs (Round@MWD)plot round number EMAs 20,50,200 on the timeframes monthly, weekly and daily.
RSI Multi Time Frame - Spot Panic Sell Moments and profit!Union of three RSI indicators: 1h, 4h and daily. In order to show 1h RSI, you have to set it as active time frame on the chart.
Purpose: spot "triple oversold" moments, where all the three RSI are under the threshold, which is 30 by default but editable.
Target Market: Cryptocurrencies. Didn't try it on other ones, may work as well. Fits Crypto well as, by experience, I can tell it usually doesn't stay oversold for long.
When the market panics and triple oversold occurs, the spot is highlighted by a green vertical bar on the indicator.
The indicator highlights triple overbought conditions as well (usually indicating strong FOMO), but I usually don't use it as a signal.
I suggest to edit the oversold threshold in order to make it fit the coin you're studying, minimizing false positives.
Special thanks to Heavy91, a Discord user, for inspiring me in this indicator.
Any editing proposal is welcome!
I reposted this script, as the first time I wrote it in Italian. Sorry for that.
Percent Difference Between VWAP and Price MTFShows the difference between vwap and price in percent.
You can can choose between multiple timeframe vwap. Default is normal daily.
The levels on the indicator can be changed to whatever you want to.
In the chart above we can see eurusd reverting up at 3% below monthly vwap, after the brexit dip, It then turns down again at 1% from monthly and lastly it turns up again at 2% from monthly.
Script is a small modification of this:
Camarilla Pivot Plays (Lite) [BruzX]█ OVERVIEW
This indicator implements the Camarilla Pivot Points levels and a system for suggesting particular plays. It only 3rd, 4th, and 6th levels, as these are the only ones used by the system. It also optionally shows the Central Pivot Range, which is in fact between S2 and R2. In total, there are 12 possible plays, grouped into two groups of six. The algorithm evaluates in real-time which plays fulfil their precondition and shows the candidate plays. The user must then decide if and when to take the play.
█ CREDITS
The Camarilla pivot plays are defined in a strategy developed by Thor Young, and the whole system is explained in his book "A Complete Day Trading System". This description is self-sufficient for effective use.
█ FEATURES
Display the 3rd, 4th and 6th Camarilla pivot levels
Works for stocks, futures, indices, forex and crypto
Automatically switches between RTH and ETH data based on criteria defined by the system.
Option to force RTH/ETH data and force a close price to be used in the calculation.
Preconditions for the plays can be toggled on/off
Works correctly on both RTH and ETH charts
Well-documented options tooltips
Well-documented and high-quality open-source code for those who are interested
█ HOW TO USE
The defaults work well; at a minimum, just add the indicator and watch the plays being called. For US futures, you will probably want to chat the "Timezone for sessions" to New York and the regular session times to 09:30 - 16:00. The following diagram shows its key features.
By default, the indicator draws plays 1 days back; this can be changed up to 20 days. The labels can be shifted left/right using the "label offset" option to avoid overlapping with other labels in this indicator or those of another indicator.
An information box at the top-right of the chart shows:
The data currently in use for the main pivots. This can switch in the pre-market if the H/L range exceeds the previous day's H/L, and if it does, you will see that switch at the time that it happens
Whether the current day's pivots are in a higher or lower range compared to the previous day's.
The width of the pivots compared to the previous day
The current candidate plays fulfilling preconditions. You then need to watch the price action to decide whether to take the play.
The resistance pivots are all drawn in the same colour (red by default), as are the support pivots (green by default). You can change the resistance and support colours, but it is not possible to have different colours for different levels of the same kind.
█ CONCEPTS
The indicator is focused around daily Camarilla pivots and evaluates the preconditions for 12 possible plays: 6 when in a higher range, 6 when in a lower range. The plays are labelled by two letters—the first indicates the range, the second indicates the play—as shown in this diagram:
The pivots can be calculated using only RTH (Regular Trading Hours) data, or ETH (Extended Trading Hours) data, which includes the pre-market and post-market. The indicator implements logic to automatically choose the correct data, based on the rules defined by the strategy. This is user-overridable. With the default options, ETH will be used when the H/L range in the previous day's post-market or current day's pre-market exceeds that of the previous day's regular market. In auto mode, the chosen pivots are considered the main pivots for that day and are the ones used for play evaluation. The "other" pivots can also be shown—"other" here meaning using ETH data when the main pivots use RTH data, and vice versa.
The plays must fulfil a set of preconditions. There are preconditions for valid region and range, price sweeps into levels, correct pivot width, opening position, price action, and whether neutral range plays and premarket plays are enabled. When all the preconditions are fulfilled, the play will be shown as a candidate.
█ NOTE FOR FUTURES
Futures don't officially have a pre-market or post-market like equities. Let's take ES on CME as an example. It trades from 18:00 ET Sunday to 17:00 Friday (ET), with a daily pause between 17:00 and 18:00 ET. However, most of the trading activity is done between 09:30 and 16:00, which you can tell from the volume spikes at those times, and this coincides with NYSE/NASDAQ regular hours. So we define a pseudo-pre-market from 18:00 the previous day to 09:30 on the current day, then a pseudo-regular market from 08:30 to 16:00, then a pseudo-post-market from 16:00 to 17:00. The indicator then works exactly the same as with equities—all the options behave the same, just with different session times defined for the pre-, regular, and post-market, with "RTH" meaning just the regular market and "ETH" meaning all three.
█ LIMITATIONS
The pivots are very close to those shown in DAS Trader Pro. They are not to-the-cent exact, but within a few cents. The reasons are:
TradingView provides free real-time data from CBOE One, not full exchange data (you can pay for this though, and it's not expensive), and
the close/high/low are taken from the intraday timeframe you are currently viewing, not daily data—which are very close, but often not exactly the same. For example, the high on the daily timeframe may differ slightly from the daily high you'll see on an intraday timeframe.
Despite these caveats, occasionally large spikes will be seem in one platform and not the other (even with paid data), or the spikes will reach significantly difference prices. Where these spikes create the daily high or low, this can cause significantly different pivots levels. The more traded the stock is, the less the difference tends to be. Highly traded stocks are usually within a few cents (but even they occasionally have large differences in spikes). There is nothing that can be done about this.
The 6th Camarilla level does not have a standard definition and may not match the level shown on other platforms. It does match the definition used by DAS Trader Pro.
Replay mode for stocks does not work correctly. This is due to some important Pine Script variables provided by the TradingView platform and used by the script not being assigned correct values in replay mode. Futures do not use these variables, so they should work in replay mode.
The indicator is an intraday indicator (despite also being able to show weekly and monthly pivots on an intraday chart). It deactivates on a daily timeframe and higher. Sub-minute timeframes are also not supported.
The indicator was developed and tested for US/European stocks, US futures and EURUSD forex and BTCUSD. It should work as intended for stocks and futures in different countries, and for all forex and crypto, but this is tested as much as the security it was developed for.
█ DISCLAIMER
This indicator is provided for information only and should not be used in isolation without a good understand of the system and without considering other factors. You should not take trades using real money based solely on what this indicator says. Any trades you take are entirely at your own risk.
VWMA Series (Dynamic) mtf - Dual Gradient Colored"VWMA Series (Dynamic) mtf - Dual Gradient Colored" is a multi-timeframe (MTF) Volume-Weighted Moving Average (VWMA) ribbon indicator that plots up to 60 sequential VWMAs with arithmetic progression periods (e.g., 1, 4, 7, 10…). Each VWMA line is dual-gradient colored: Base hue = Greenish (#2dd204) if close > VWMA (bullish), Magenta (#ff00c8) if close < VWMA (bearish)
Brightness gradient = fades from base → white as period increases (short → long-term)
Uses daily resolution by default (timeframe="D"), making it ideal for higher-timeframe trend filtering on lower charts.Key FeaturesFeature
Description
Dynamic Periods
Start + i × Increment → e.g., 1, 4, 7, 10… up to 60 terms
Dual Coloring
Bull/Bear + Gradient (short = vivid, long = pale)
MTF Ready
Plots daily VWMAs on any lower timeframe (1H, 15M, etc.)
No Lag on Long Sets
Predefined "best setups" eliminate repainting/lag
Transparency Control
Adjustable line opacity for clean visuals
Scalable
Up to 60 VWMAs (max iterations)
Recommended Setups (No Lag)Type
Example Sequence (Start, Inc, Iter)
Long-Term Trend
1, 3, 30 → 1, 4, 7 … 88
93, 3, 30 → 93, 96 … 180
372, 6, 30 → 372, 378 … 546
Short-Term Momentum
1, 1, 30 → 1, 2, 3 … 30
94, 2, 30 → 94, 96 … 152
1272, 5, 30 → 1272, 1277 … 1417
Key Use CasesUse Case
How to Use
1. Multi-Timeframe Trend Alignment
On 1H chart, use 1, 3, 30 daily VWMAs → price above all green lines = strong uptrend
2. Dynamic Support/Resistance
Cluster of long-term pale VWMAs = major S/R zone
3. Early Trend Change Detection
Short-term vivid lines flip from red → green before longer ones = early bullish signal
4. Ribbon Compression/Expansion
Tight bundle → consolidation; fanning out → trend acceleration
5. Mean Reversion Entries
Price far from long-term VWMA cluster + short-term reversal = pullback trade
6. Volume-Weighted Fair Value
Long-period VWMAs reflect true average price paid over weeks/months
Visual Summary
Price ↑
████ ← Short VWMA (vivid green = close > VWMA)
███
██
█
. . . fading to white
█
██
███
████ ← Long VWMA (pale = institutional average)
Green lines = price above VWMA (bullish bias)
Magenta lines = price below VWMA (bearish bias)
Gradient = shorter (left) → brighter; longer (right) → whiter
Ribbon thickness = trend strength (wide = strong, narrow = weak)
Best For Swing traders using daily trend on intraday charts
Volume-based strategies (VWMA > SMA)
Clean, colorful trend visualization without clutter
Institutional fair value anchoring via long-period VWMAs
Pro Tip:
Use Start=1, Increment=3, Iterations=30 on a 4H chart with timeframe="D" → perfect daily trend filter with zero lag and beautiful gradient flow.
Serenity Model VIPI — by yuu_iuHere’s a concise, practical English guide for Serenity Model VIPI (Author: yuu_iu). It covers what it is, how to set it up for daily trading, how to tune it, and how we guarantee non-repainting.
Serenity Model VIPI — User Guide (Daily Close, Non‑Repainting)
Credits
- Author: yuu_iu
- Producer: yuu_iu
- Platform: TradingView (Pine Script v5)
1) What it is
Serenity Model VIPI is a multi‑module, context‑aware trading model that fuses signals from:
- Entry modules: VCP, Flow, Momentum, Mean Reversion, Breakout
- Exit/risk modules: Contrarian, Breakout Sell, Volume Delta Sell, Peak Detector, Overbought Exit, Profit‑Take
- Context/memory: Learns per Ticker/Sector/Market Regime and adjusts weights/aggression
- Learning engine: Runs short “fake trades” to learn safely before scaling real trades
It produces a weighted, context‑adjusted score and a final decision: BUY, SELL, TAKE_PROFIT, or WAIT.
2) How it works (high level)
- Each module computes a score per bar.
- A fusion layer combines module scores using accuracy and base weights, then adjusts by:
- Market regime (Bull/Bear/Sideways) and optional higher‑timeframe (HTF) bias
- Risk control neuron
- Context memory (ticker/sector/regime)
- Optional LLM mode can override marginal cases if context supports it.
- Final decision is taken at bar close only (no intrabar repaint).
3) Non‑repainting guarantee (Daily)
- Close‑only execution: All key actions use barstate.isconfirmed, so signals/entries/exits only finalize after the daily candle closes.
- No lookahead on HTF data: request.security() reads prior‑bar values (series ) for HTF close/EMA/RSI.
- Alerts at bar close: Alerts are fired once per bar close to prevent mid‑bar changes.
What this means: Once the daily bar closes, the decision and alert won’t be repainted.
4) Setup (TradingView)
- Paste the Pine v5 code into Pine Editor, click Add to chart.
- Timeframe: 1D (Daily).
- Optional: enable a date window for training/backtest
- Enable Custom Date Filter: ON
- Set Start Date / End Date
- Create alert (non‑repainting)
- Condition: AI TRADE Signal
- Options: Once Per Bar Close
- Webhook (optional): Paste your URL into “System Webhook URL (for AI events)”
- Watch the UI
- On‑chart markers: AI BUY / AI SELL / AI TAKE PROFIT
- Right‑side table: Trades, Win Rate, Avg Profit, module accuracies, memory source, HTF trend, etc.
- “AI Thoughts” label: brief reasoning and debug lines.
5) Daily trading workflow
- The model evaluates at daily close and may:
- Enter long (BUY) when buy votes + total score exceed thresholds, after context/risk checks
- Exit via trailing stop, hard stop, TAKE_PROFIT, or SELL decision
- Learning mode:
- Triggers short “fake trades” every N bars (default 3) and measures outcome after 5 bars
- Improves module accuracies and adjusts aggression once stable (min fake win% threshold)
- Memory application:
- When you change tickers, the model tries to apply Ticker or Sector memory for the current market regime to pre‑bias module weights/aggression.
6) Tuning (what to adjust and why)
Core controls
- Base Aggression Level (default 1.0): Higher = more trades and stronger decisions; start conservative on Daily (1.0–1.2).
- Learning Speed Multiplier (default 3): Faster adaptation after fake/real trades; too high can overreact.
- Min Fake Win Rate to Exit Learning (%) (default 10–20%): Raises the bar before trusting more real trades.
- Fake Trade Every N Bars (default 3): Frequency of learning attempts.
- Learning Threshold Win Rate (default 0.4): Governs when the learner should keep learning.
- Hard Stop Loss (%) (default 5–8%): Global emergency stop.
Multi‑Timeframe (MTF)
- Enable Multi‑Timeframe Confirmation: ON (recommended for Daily)
- HTF Trend Source: HOSE:VNINDEX for VN equities (or CURRENT_SYMBOL if you prefer)
- HTF Timeframe: D or 240 (for a strong bias)
- MTF Weight Adjustment: 0.2–0.4 (0.3 default is balanced)
Module toggles and base weights
- In strong uptrends: increase VCP, Momentum, Breakout (0.2–0.3 typical)
- In sideways low‑vol regimes: raise MeanRev (0.2–0.3)
- For exits/defense: Contrarian, Peak, Overbought Exit, Profit‑Take (0.1–0.2 each)
- Keep Flow on as a volume‑quality filter (≈0.2)
Memory and control
- Enable Shared Memory Across Tickers: ON to share learning
- Enable Sector‑Based Knowledge Transfer: ON to inherit sector tendencies
- Manual Reset Learning: Use sparingly to reset module accuracies if regime changes drastically
Risk management
- Hard Stop Loss (%): 5–8% typical on Daily
- Trailing Stop: ATR‑ and volatility‑adaptive; tightens faster in Bear/High‑Vol regimes
- Max hold bars: Shorter in Bear or Sideways High‑Vol to cut risk
Alerts and webhook
- Use AI TRADE Signal with Once Per Bar Close
- Webhook payload is JSON, including event type, symbol, time, win rates, equity, aggression, etc.
7) Recommended Daily preset (VN equities)
- MTF: Enable, Source: HOSE:VNINDEX, TF: D, Weight Adj: 0.3
- Aggression: 1.1
- Learning Speed: 3
- Min Fake Win Rate to Exit Learning: 15%
- Hard SL: 6%
- Base Weights:
- VCP 0.25, Momentum 0.25, Breakout 0.15, Flow 0.20
- MeanRev 0.20 (raise in sideways)
- Contrarian/Peak/Overbought/Profit‑Take: 0.10–0.20
- Leave other defaults as is, then fine‑tune by symbol/sector.
8) Reading the UI
- Table highlights: Real Trades, Win Rate, Avg Profit, Fake Actions/Win%, VCP Acc, Aggression, Equity, Score, Status (LEARNING/TRADING/REFLECTION), Last Real, Consec Loss, Best/Worst Trade, Pattern Score, Memory Source, Current Sector, AI Health, HTF Trend, Scheduler, Memory Loaded, Fake Active.
- Shapes: AI BUY (below bar), AI SELL/TAKE PROFIT (above bar)
- “AI Thoughts”: module contributions, context notes, debug lines
9) Troubleshooting
- No trades?
- Ensure timeframe is 1D and the date filter covers the chart range
- Check Scheduler Cooldown (3 bars default) and that barstate.isconfirmed (only at close)
- If MTF is ON and HTF is bearish, buy bias is reduced; relax MTF Weight Adjustment or module weights
- Too many/too few trades?
- Lower/raise Base Aggression Level
- Adjust base weights on key modules (raise entry modules to be more active; raise exit/defense modules to be more selective)
- Learning doesn’t end?
- Increase Min Fake Win Rate to Exit Learning only after it’s consistently stable; otherwise lower it or reduce Fake Trade Every N Bars
10) Important notes
- The strategy is non‑repainting at bar close by design (confirmed bars + HTF series + close‑only alerts).
- Backtest fills may differ from live fills due to slippage and broker rules; this is normal for all TradingView strategies.
- Always validate settings across multiple symbols and regimes before going live.
If you want, I can bundle this guide into a README section in your Pine code and add a small on‑chart signature (Author/Producer: yuu_iu) in the top‑right corner.
VWAP & Band Cross Strategy v6 - AdvancedThese are a few updates made to the original script. The daily take profit and stop loss functions correctly for 1 contract but because of the pyramiding input even if not used you'll need to multiply the values by the number of contracts to keep consistent results. I have been unable to correct that function. Let me know if you test the script and have any recommendations for improvement. If trading an actual account I do recommend setting hard daily limits with your provider because there is still slippage from the original exit alerts even with the daily stop loss in place.
1. Real-Time Execution & Hard PnL Limits (The Focus)
The most critical changes were implemented to ensure the daily profit and loss limits act as hard, real-time barriers instead of waiting for the candle to close.
• Intrabar Tick Execution: The parameter calc_on_every_tick=true was added to the strategy() declaration. This forces the entire script to re-evaluate its logic on every single price update (tick), enabling immediate action.
• Real-Time PnL Tracking: The PnL calculation was updated to track the total_daily_pnl by summing the realized profit/loss (from closed trades) and the unrealized profit/loss (strategy.openprofit) on every tick.
• Immediate Closure: The script now checks the total_daily_pnl against the user-defined limits (daily_take_profit_value, daily_stop_loss_value) and immediately executes strategy.close_all() the moment the threshold is breached, preventing further trading.
• Combined Risk Enforcement: The user-defined "Max Intraday Risk ($)" and the "Daily Stop Loss (Value)" are compared, and the script enforces the tighter of the two limits.
2. Visibility and External Alerting
To address the unavoidable issue of slippage (which causes price overshoot in fast markets even with tick execution), dedicated alert mechanisms were added.
• Dedicated Alert Condition: An alertcondition named DAILY PNL LIMIT REACHED was added. This allows you to set up a TradingView alert that triggers the instant the daily_limit_reached variable turns true, giving you the fastest possible notification.
• Visual Marker: A large red triangle (\u25b2) is plotted on the chart using plotchar at the exact moment the daily limit condition is met, providing a clear visual confirmation of the trigger bar.
3. Strategy Features and Input Flexibility
Several user-requested features were integrated to make the strategy more robust and customizable.
• Trailing Stop / Breakeven (TSL/BE): A new exit option, Fixed Ticks + TSL, was added, allowing you to set a fixed profit target while also deploying a trailing stop or breakeven level based on points/ticks gained.
• Multiple Exit Types: The exit strategy was expanded to include logic for several types: Fixed Ticks, ATR-based, Capped ATR-based, VWAP Cross, and Price/Band Crosses.
• Pyramiding Control: An input Max Pyramiding Entries was introduced to control how many positions the strategy can have open at the same time.
• Confirmation Logic Toggle: Added an input to choose how multiple confirmation indicators (RSI, SMMA, MACD) are combined: "AND" (all must be true) or "OR" (at least one must be true).
• Indicator Confirmations: Logic for three external indicators—RSI, SMMA (EMA), and MACD—was fully integrated to act as optional filters for entry.
• VWAP Reset Anchors: Logic was corrected to properly reset the VWAP calculation based on the selected period ("Daily", "Weekly", or "Session") by using Pine Script v6's required anchor series.
Trading Day Filters: Inputs were added to select which specific days of the week the strategy is allowed to trade.
Cumulative Delta Volume MTFCumulative Delta Volume MTF (CDV_MTF)
Within volume analytics, “delta (buy − sell)” often acts as a leading indicator for price.
This indicator is a cumulative delta tailored for day trading.
It differs from conventional cumulative delta in two key ways:
Daily Reset
If heavy buying hits into the prior day’s close, a standard cumulative delta “carries” that momentum into the next day’s open. You can then misread direction—selling may actually be dominant, but yesterday’s residue still pushes the delta positive. With Daily Reset, accumulation uses only the current day’s delta, giving you a more reliable, open-to-close read for intraday decision-making.
Timeframe Selection (MTF)
You might chart 30s/15s candles to capture micro structure, while wanting the cumulative delta on 5-minute to judge the broader flow. With Timeframe (MTF), you can view a lower-timeframe chart and a higher-timeframe delta in one pane.
Overview
MTF aggregation: choose the delta’s computation timeframe via Timeframe (empty = chart) (empty = chart timeframe).
Daily Reset: toggle on/off to accumulate strictly within the current session/day.
Display: Candle or Line (Candle supports Heikin Ashi), with Bull/Bear background shading.
Overlays: up to two SMA and two EMA lines.
Panel: plotted in a sub-window (overlay=false).
Example Use Cases
At the open: turn Daily Reset = ON to see the pure, same-day buy/sell build-up.
Entry on lower TF, bias from higher TF: chart at 30s, set Timeframe = 5 to reduce noise and false signals.
Quick read of momentum: Candle + HA + background shading for intuitive direction; confirm with SMA/EMA slope or crosses.
Key Parameters
Timeframe (empty = chart): timeframe used to compute cumulative delta.
Enable Daily Reset: resets accumulation when the trading day changes.
Style: Candle / Line; Heikin Ashi toggle for Candle mode.
SMA/EMA 1 & 2: individual length and color settings.
Background: customize Bull and Bear background colors.
How to Read
Distance from zero: positive build = buy-side dominance; negative = sell-side dominance.
Slope × MAs: use CDV slope and MA direction/crossovers for momentum and potential turns.
Reset vs. non-reset:
ON → isolates intraday net flow.
OFF → tracks multi-day accumulation/dispersion.
Notes & Caveats
The delta here is a heuristic derived from candle body/wick proportions—it is not true bid/ask tape.
MTF updates are based on the selected timeframe’s bar closes; values can fluctuate intrabar.
Date logic follows the symbol’s exchange timezone.
Renders in a separate pane.
Suggested Defaults
Timeframe = 5 (or 15) / Daily Reset = ON
Style = Candle + Heikin Ashi = ON
EMA(50/200) to frame trend context
For the first decisions after the open—and for scalps/day trades throughout the session—MTF × Daily Reset helps you lock onto the flow that actually matters, right now.
==========================
Cumulative Delta Volume MTF(CDV_MTF)
出来高の中でも“デルタ(買い−売り)”は株価の先行指標になりやすい。
本インジケーターはデイトレードに特化した累積デルタです。
通常の累積デルタと異なるポイントは2つ。
デイリーリセット機能
前日の大引けで大きな買いが入ると、通常の累積デルタはその勢いを翌日の寄りにも“持ち越し”ます。実際は売り圧が強いのに、前日の残渣に引っ張られて方向を誤ることがある。デイリーリセットを使えば当日分だけで累積するため、寄り直後からの判断基準として信頼度が上がります。
タイムフレーム指定(MTF)機能
たとえばチャートは30秒足/15秒足で細部の動きを追い、累積デルタは5分足で“大きな流れ”を確認したい──そんなニーズに対応。**一画面で“下位足の値動き × 上位足のフロー”**を同時に把握できます。
概要
MTF対応:Timeframe で集計足を指定(空欄=チャート足)
デイリーリセット:当日分のみで累積(オン/オフ切替)
表示:Candle/Line(CandleはHA切替可)、背景をBull/Bearで自動塗り分け
補助線:SMA/EMA(各2本)を重ね描き
表示先:サブウィンドウ(overlay=false)
使い方の例
寄りのフロー判定:デイリーリセット=オンで、寄り直後の純粋な買い/売りの積み上がりを確認
下位足のエントリー × 上位足のバイアス:チャート=30秒、Timeframe=5分で騙しを減らす
勢いの視認:Candle+HA+背景色で直感的に上げ下げを把握、SMA/EMAの傾きで補強
主なパラメータ
Timeframe (empty = chart):累積に使う時間足
デイリーリセットを有効にする:日付切替で累積をリセット
Style:Candle / Line、Heikin Ashi切替
SMA/EMA 1・2:期間・色を個別設定
背景色:Bull背景 / Bear背景 を任意のトーンに
読み取りのコツ
ゼロからの乖離:+側へ積み上がるほど買い優位、−側は売り優位
傾き×MA:CDVの傾きと移動平均の方向/クロスで転換やモメンタムを推測
日内/日跨ぎの切替:デイリーリセット=オンで日内の純流入出、オフで期間全体の偏り
仕様・注意
本デルタはローソクのボディ/ヒゲ比率から近似したヒューリスティックで、実際のBid/Ask集計とは異なります。
MTFは指定足の確定ベースで更新されます。
日付判定はシンボルの取引所タイムゾーン準拠。
推奨初期セット
Timeframe=5(または15)/デイリーリセット=有効
Style=Candle+HA=有効
EMA(50/200)で流れの比較
寄りの一手、そしてスキャル/デイの判断材料に。MTF×デイリーリセットで、“効いているフロー”を最短距離で捉えます。
Power RSI Segment Runner [CHE] Power RSI Segment Runner — Tracks RSI momentum across higher timeframe segments to detect directional switches for trend confirmation.
Summary
This indicator calculates a running Relative Strength Index adapted to segments defined by changes in a higher timeframe, such as daily closes, providing a smoothed view of momentum within each period. It distinguishes between completed segments, which fix the final RSI value, and ongoing ones, which update in real time with an exponential moving average filter. Directional switches between bullish and bearish momentum trigger visual alerts, including overlay lines and emojis, while a compact table displays current trend strength as a progress bar. This segmented approach reduces noise from intra-period fluctuations, offering clearer signals for trend persistence compared to standard RSI on lower timeframes.
Motivation: Why this design?
Standard RSI often generates erratic signals in choppy markets due to constant recalculation over fixed lookback periods, leading to false reversals that mislead traders during range-bound or volatile phases. By resetting the RSI accumulation at higher timeframe boundaries, this indicator aligns momentum assessment with broader market cycles, capturing sustained directional bias more reliably. It addresses the gap between short-term noise and long-term trends, helping users filter entries without over-relying on absolute overbought or oversold thresholds.
What’s different vs. standard approaches?
- Baseline Reference: Diverges from the classic Wilder RSI, which uses a fixed-length exponential moving average of gains and losses across all bars.
- Architecture Differences:
- Segments momentum resets at higher timeframe changes, isolating calculations per period instead of continuous history.
- Employs persistent sums for ups and downs within segments, with on-the-fly RSI derivation and EMA smoothing.
- Integrates switch detection logic that clears prior visuals on reversal, preventing clutter from outdated alerts.
- Adds overlay projections like horizontal price lines and dynamic percent change trackers for immediate trade context.
- Practical Effect: Charts show discrete RSI endpoints for past segments alongside a curved running trace, making momentum evolution visually intuitive. Switches appear as clean, extendable overlays, reducing alert fatigue and highlighting only confirmed directional shifts, which aids in avoiding whipsaws during minor pullbacks.
How it works (technical)
The indicator begins by detecting changes in the specified higher timeframe, such as a new daily bar, to define segment boundaries. At each boundary, it finalizes the prior segment's RSI by summing positive and negative price changes over that period and derives the value from the ratio of those sums, then applies an exponential moving average for smoothing. Within the active segment, it accumulates ongoing ups and downs from price changes relative to the source, recalculating the running RSI similarly and smoothing it with the same EMA length.
Points for the running RSI are collected into an array starting from the segment's onset, forming a curved polyline once sufficient bars accumulate. Comparisons between the running RSI and the last completed segment's value determine the current direction as long, short, or neutral, with switches triggering deletions of old visuals and creation of new ones: a label at the RSI pane, a vertical dashed line across the RSI range, an emoji positioned via ATR offset on the price chart, a solid horizontal line at the switch price, a dashed line tracking current close, and a midpoint label for percent change from the switch.
Initialization occurs on the first bar by resetting accumulators, and visualization gates behind a minimum bar count since the segment start to avoid early instability. The trend strength table builds vertically with filled cells proportional to the rounded RSI value, colored by direction. All drawing objects update or extend on subsequent bars to reflect live progress.
Parameter Guide
EMA Length — Controls the smoothing applied to the running RSI; higher values increase lag but reduce noise. Default: 10. Trade-offs: Shorter settings heighten sensitivity for fast markets but risk more false switches; longer ones suit trending conditions for stability.
Source — Selects the price data for change calculations, typically close for standard momentum. Default: close. Trade-offs: Open or high/low may emphasize gaps, altering segment intensity.
Segment Timeframe — Defines the higher timeframe for segment resets, like daily for intraday charts. Default: D. Trade-offs: Shorter frames create more frequent but shorter segments; longer ones align with major cycles but delay resets.
Overbought Level — Sets the upper threshold for potential overbought conditions (currently unused in visuals). Default: 70. Trade-offs: Adjust for asset volatility; higher values delay bearish warnings.
Oversold Level — Sets the lower threshold for potential oversold conditions (currently unused in visuals). Default: 30. Trade-offs: Lower values permit deeper dips before signaling bullish potential.
Show Completed Label — Toggles labels at segment ends displaying final RSI. Default: true. Trade-offs: Enables historical review but can crowd charts on dense timeframes.
Plot Running Segment — Enables the curved polyline for live RSI trace. Default: true. Trade-offs: Visualizes intra-segment flow; disable for cleaner panes.
Running RSI as Label — Displays current running RSI as a forward-projected label on the last bar. Default: false. Trade-offs: Useful for quick reads; may overlap in tight scales.
Show Switch Label — Activates RSI pane labels on directional switches. Default: true. Trade-offs: Provides context; omit to minimize pane clutter.
Show Switch Line (RSI) — Draws vertical dashed lines across the RSI range at switches. Default: true. Trade-offs: Marks reversal bars clearly; extends both ways for reference.
Show Solid Overlay Line — Projects a horizontal line from switch price forward. Default: true. Trade-offs: Acts as dynamic support/resistance; wider lines enhance visibility.
Show Dashed Overlay Line — Tracks a dashed line from switch to current close. Default: true. Trade-offs: Shows price deviation; thinner for subtlety.
Show Percent Change Label — Midpoint label tracking percent move from switch. Default: true. Trade-offs: Quantifies progress; centers dynamically.
Show Trend Strength Table — Displays right-side table with direction header and RSI bar. Default: true. Trade-offs: Instant strength gauge; fixed position avoids overlap.
Activate Visualization After N Bars — Delays signals until this many bars into a segment. Default: 3. Trade-offs: Filters immature readings; higher values miss early momentum.
Segment End Label — Color for completed RSI labels. Default: 7E57C2. Trade-offs: Purple tones for finality.
Running RSI — Color for polyline and running elements. Default: yellow. Trade-offs: Bright for live tracking.
Long — Color for bullish switch visuals. Default: green. Trade-offs: Standard for uptrends.
Short — Color for bearish switch visuals. Default: red. Trade-offs: Standard for downtrends.
Solid Line Width — Thickness of horizontal overlay line. Default: 2. Trade-offs: Bolder for emphasis on key levels.
Dashed Line Width — Thickness of tracking and vertical lines. Default: 1. Trade-offs: Finer to avoid dominance.
Reading & Interpretation
Completed segment RSIs appear as static points or labels in purple, indicating the fixed momentum at period close—values drifting toward the upper half suggest building strength, while lower half implies weakness. The yellow curved polyline traces the live smoothed RSI within the current segment, rising for accumulating gains and falling for losses. Directional labels and lines in green or red flag switches: green for running momentum exceeding the prior segment's, signaling potential uptrend continuation; red for the opposite.
The right table's header colors green for long, red for short, or gray for neutral/wait, with filled purple bars scaling from bottom (low RSI) to top (high), topped by the numeric value. Overlay elements project from switch bars: the solid green/red line as a price anchor, dashed tracker showing pullback extent, and percent label quantifying deviation—positive for alignment with direction, negative for counter-moves. Emojis (up arrow for long, down for short) float above/below price via ATR spacing for quick chart scans.
Practical Workflows & Combinations
- Trend Following: Enter long on green switch confirmation after a higher high in structure; filter with table strength above midpoint for conviction. Pair with volume surge for added weight.
- Exits/Stops: Trail stops to the solid overlay line on pullbacks; exit if percent change reverses beyond 2 percent against direction. Use wait bars to confirm without chasing.
- Multi-Asset/Multi-TF: Defaults suit forex/stocks on 1H-4H with daily segments; for crypto, shorten EMA to 5 for volatility. Scale segment TF to weekly for daily charts across indices.
- Combinations: Overlay on EMA clouds for confluence—switch aligning with cloud break strengthens signal. Add volatility filters like ATR bands to debounce in low-volume regimes.
Behavior, Constraints & Performance
Signals confirm on bar close within segments, with running polyline updating live but gated by minimum bars to prevent flicker. Higher timeframe changes may introduce minor repaints on timeframe switches, mitigated by relying on confirmed HTF closes rather than intrabar peeks. Resource limits cap at 500 labels/lines and 50 polylines, pruning old objects on switches to stay efficient; no explicit loops, but array growth ties to segment length—suitable for up to 500-bar histories without lag.
Known limits include delayed visualization in short segments and insensitivity to overbought/oversold levels, as thresholds are inputted but not actively visualized. Gaps in source data reset accumulators prematurely, potentially skewing early RSI.
Sensible Defaults & Quick Tuning
Start with EMA length 10, daily segments, and 3-bar wait for balanced responsiveness on hourly charts. For excessive switches in ranging markets, increase wait bars to 5 or EMA to 14 to dampen noise. If signals lag in trends, drop EMA to 5 and use 1H segments. For stable assets like indices, widen to weekly segments; tune colors for dark/light themes without altering logic.
What this indicator is—and isn’t
This tool serves as a momentum visualization and switch detector layered over price action, aiding trend identification and confirmation in segmented contexts. It is not a standalone trading system, predictive model, or risk calculator—always integrate with broader analysis, position sizing, and stop-loss discipline. View it as an enhancement for discretionary setups, not automated alerts without validation.
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
Luxy BIG beautiful Dynamic ORBThis is an advanced Opening Range Breakout (ORB) indicator that tracks price breakouts from the first 5, 15, 30, and 60 minutes of the trading session. It provides complete trade management including entry signals, stop-loss placement, take-profit targets, and position sizing calculations.
The ORB strategy is based on the concept that the opening range of a trading session often acts as support/resistance, and breakouts from this range tend to lead to significant moves.
What Makes This Different?
Most ORB indicators simply draw horizontal lines and leave you to figure out the rest. This indicator goes several steps further:
Multi-Stage Tracking
Instead of just one ORB timeframe, this tracks FOUR simultaneously (5min, 15min, 30min, 60min). Each stage builds on the previous one, giving you multiple trading opportunities throughout the session.
Active Trade Management
When a breakout occurs, the indicator automatically calculates and displays entry price, stop-loss, and multiple take-profit targets. These lines extend forward and update in real-time until the trade completes.
Cycle Detection
Unlike indicators that only show the first breakout, this tracks the complete cycle: Breakout → Retest → Re-breakout. You can see when price returns to test the ORB level after breaking out (potential re-entry).
Failed Breakout Warning
If price breaks out but quickly returns inside the range (within a few bars), the label changes to "FAILED BREAK" - warning you to exit or avoid the trade.
Position Sizing Calculator
Built-in risk management that tells you exactly how many shares to buy based on your account size and risk tolerance. No more guessing or manual calculations.
Advanced Filtering
Optional filters for volume confirmation, trend alignment, and Fair Value Gaps (FVG) to reduce false signals and improve win rate.
Core Features Explained
### 1. Multi-Stage ORB Levels
The indicator builds four separate Opening Range levels:
ORB 5 - First 5 minutes (fastest signals, most volatile)
ORB 15 - First 15 minutes (balanced, most popular)
ORB 30 - First 30 minutes (slower, more reliable)
ORB 60 - First 60 minutes (slowest, most confirmed)
Each level is drawn as a horizontal range on your chart. As time progresses, the ranges expand to include more price action. You can enable or disable any stage and assign custom colors to each.
How it works: During the opening minutes, the indicator tracks the highest high and lowest low. Once the time period completes, those levels become your ORB high and low for that stage.
### 2. Breakout Detection
When price closes outside the ORB range, a label appears:
BREAK UP (green label above price) - Price closed above ORB High
BREAK DOWN (red label below price) - Price closed below ORB Low
The label shows which ORB stage triggered (ORB5, ORB15, etc.) and the cycle number if tracking multiple breakouts.
Important: Signals appear on bar close only - no repainting. What you see is what you get.
### 3. Retest Detection
After price breaks out and moves away, if it returns to test the ORB level, a "RETEST" label appears (orange). This indicates:
The original breakout level is now acting as support/resistance
Potential re-entry opportunity if you missed the first breakout
Confirmation that the level is significant
The indicator requires price to move a minimum distance away before considering it a valid retest (configurable in settings).
### 4. Failed Breakout Detection
If price breaks out but returns inside the ORB range within a few bars (before the breakout is "committed"), the original label changes to "FAILED BREAK" in orange.
This warns you:
The breakout lacked conviction
Consider exiting if already in the trade
Wait for better setup
Committed Breakout: The indicator tracks how many bars price stays outside the range. Only after staying outside for the minimum number of bars does it become a committed breakout that can be retested.
### 5. TP/SL Lines (Trade Management)
When a breakout occurs, colored horizontal lines appear showing:
Entry Line (cyan for long, orange for short) - Your entry price (the ORB level)
Stop Loss Line (red) - Where to exit if trade goes against you
TP1, TP2, TP3 Lines (same color as entry) - Profit targets at 1R, 2R, 3R
These lines extend forward as new bars form, making it easy to track your trade. When a target is hit, the line turns green and the label shows a checkmark.
Lines freeze (stop updating) when:
Stop loss is hit
The final enabled take-profit is hit
End of trading session (optional setting)
### 6. Position Sizing Dashboard
The dashboard (bottom-left corner by default) shows real-time information:
Current ORB stage and range size
Breakout status (Inside Range / Break Up / Break Down)
Volume confirmation (if filter enabled)
Trend alignment (if filter enabled)
Entry and Stop Loss prices
All enabled Take Profit levels with percentages
Risk/Reward ratio
Position sizing: Max shares to buy and total risk amount
Position Sizing Example:
If your account is $25,000 and you risk 1% per trade ($250), and the distance from entry to stop loss is $0.50, the calculator shows you can buy 500 shares (250 / 0.50 = 500).
### 7. FVG Filter (Fair Value Gap)
Fair Value Gaps are price inefficiencies - gaps left by strong momentum where one candle's high doesn't overlap with a previous candle's low (or vice versa).
When enabled, this filter:
Detects bullish and bearish FVGs
Draws semi-transparent boxes around these gaps
Only allows breakout signals if there's an FVG near the breakout level
Why this helps: FVGs indicate institutional activity. Breakouts through FVGs tend to be stronger and more reliable.
Proximity setting: Controls how close the FVG must be to the ORB level. 2.0x means the breakout can be within 2 times the FVG size - a reasonable default.
### 8. Volume & Trend Filters
Volume Filter:
Requires current volume to be above average (customizable multiplier). High volume breakouts are more likely to sustain.
Set minimum multiplier (e.g., 1.5x = 50% above average)
Set "strong volume" multiplier (e.g., 2.5x) that bypasses other filters
Dashboard shows current volume ratio
Trend Filter:
Only shows breakouts aligned with a higher timeframe trend. Choose from:
VWAP - Price above/below volume-weighted average
EMA - Price above/below exponential moving average
SuperTrend - ATR-based trend indicator
Combined modes (VWAP+EMA, VWAP+SuperTrend) for stricter filtering
### 9. Pullback Filter (Advanced)
Purpose:
Waits for price to pull back slightly after initial breakout before confirming the signal.
This reduces false breakouts from immediate reversals.
How it works:
- After breakout is detected, indicator waits for a small pullback (default 2%)
- Once pullback occurs AND price breaks out again, signal is confirmed
- If no pullback within timeout period (5 bars), signal is issued anyway
Settings:
Enable Pullback Filter: Turn this filter on/off
Pullback %: How much price must pull back (2% is balanced)
Timeout (bars): Max bars to wait for pullback (5 is standard)
When to use:
- Choppy markets with many fake breakouts
- When you want higher quality signals
- Combine with Volume filter for maximum confirmation
Trade-off:
- Better signal quality
- May miss some valid fast moves
- Slight entry delay
How to Use This Indicator
### For Beginners - Simple Setup
Add the indicator to your chart (5-minute or 15-minute timeframe recommended)
Leave all default settings - they work well for most stocks
Watch for BREAK UP or BREAK DOWN labels to appear
Check the dashboard for entry, stop loss, and targets
Use the position sizing to determine how many shares to buy
Basic Trading Plan:
Wait for a clear breakout label
Enter at the ORB level (or next candle open if you're late)
Place stop loss where the red line indicates
Take profit at TP1 (50% of position) and TP2 (remaining 50%)
### For Advanced Traders - Customized Setup
Choose which ORB stages to track (you might only want ORB15 and ORB30)
Enable filters: Volume (stocks) or Trend (trending markets)
Enable FVG filter for institutional confirmation
Set "Track Cycles" mode to catch retests and re-breakouts
Customize stop loss method (ATR for volatile stocks, ORB% for stable ones)
Adjust risk per trade and account size for accurate position sizing
Advanced Strategy Example:
Enable ORB15 only (disable others for cleaner chart)
Turn on Volume filter at 1.5x with Strong at 2.5x
Enable Trend filter using VWAP
Set Signal Mode to "Track Cycles" with Max 3 cycles
Wait for aligned breakouts (Volume + Trend + Direction)
Enter on retest if you missed the initial break
### Timeframe Recommendations
5-minute chart: Scalping, very active trading, crypto
15-minute chart: Day trading, balanced approach (most popular)
30-minute chart: Swing entries, less screen time
60-minute chart: Position trading, longer holds
The indicator works on any intraday timeframe, but ORB is fundamentally a day trading strategy. Daily charts don't make sense for ORB.
DEFAULT CONFIGURATION
ON by Default:
• All 4 ORB stages (5/15/30/60)
• Breakout Detection
• Retest Labels
• All TP levels (1/1.5/2/3)
• TP/SL Lines (Detailed mode)
• Dashboard (Bottom Left, Dark theme)
• Position Size Calculator
OFF by Default (Optional Filters):
• FVG Filter
• Pullback Filter
• Volume Filter
• Trend Filter
• HTF Bias Check
• Alerts
Recommended for Beginners:
• Leave all defaults
• Session Mode: Auto-Detect
• Signal Mode: Track Cycles
• Stop Method: ATR
• Add Volume Filter if trading stocks
Recommended for Advanced:
• Enable ORB15 + ORB30 only (disable 5 & 60)
• Enable: Volume + Trend + FVG
• Signal Mode: Track Cycles, Max 3
• Stop Method: ATR or Safer
• Enable HTF Daily bias check
## Settings Guide
The settings are organized into logical groups. Here's what each section controls:
### ORB COLORS Section
Show Edge Labels: Display "ORB 5", "ORB 15" labels at the right edge of the levels
Background: Fill the area between ORB high/low with color
Transparency: How see-through the background is (95% is nearly invisible)
Enable ORB 5/15/30/60: Turn each stage on or off individually
Colors: Assign colors to each ORB stage for easy identification
### SESSION SETTINGS Section
Session Mode: Choose trading session (Auto-Detect works for most instruments)
Custom Session Hours: Define your own hours if needed (format: HHMM-HHMM)
Auto-Detect uses the instrument's natural hours (stocks use exchange hours, crypto uses 24/7).
### BREAKOUT DETECTION Section
Enable Breakout Detection: Master switch for signals
Show Retest Labels: Display retest signals
Label Size: Visual size for all labels (Small recommended)
Enable FVG Filter: Require Fair Value Gap confirmation
Show FVG Boxes: Display the gap boxes on chart
Signal Mode: "First Only" = one signal per direction per day, "Track Cycles" = multiple signals
Max Cycles: How many breakout-retest cycles to track (6 is balanced)
Breakout Buffer: Extra distance required beyond ORB level (0.1-0.2% recommended)
Min Distance for Retest: How far price must move away before retest is valid (2% recommended)
Min Bars Outside ORB: Bars price must stay outside for committed breakout (2 is balanced)
### TARGETS & RISK Section
Enable Targets & Stop-Loss: Calculate and show trade management
TP1/TP2/TP3 checkboxes: Select which profit targets to display
Stop Method: How to calculate stop loss placement
- ATR: Based on volatility (best for most cases)
- ORB %: Fixed % of ORB range
- Swing: Recent swing high/low
- Safer: Widest of all methods
ATR Length & Multiplier: Controls ATR stop distance (14 period, 1.5x is standard)
ORB Stop %: Percentage beyond ORB for stop (20% is balanced)
Swing Bars: Lookback period for swing high/low (3 is recent)
### TP/SL LINES Section
Show TP/SL Lines: Display horizontal lines on chart
Label Format: "Short" = minimal text, "Detailed" = shows prices
Freeze Lines at EOD: Stop extending lines at session close
### DASHBOARD Section
Show Info Panel: Display the metrics dashboard
Theme: Dark or Light colors
Position: Where to place dashboard on chart
Toggle rows: Show/hide specific information rows
Calculate Position Size: Enable the position sizing calculator
Risk Mode: Risk fixed $ amount or % of account
Account Size: Your total trading capital
Risk %: Percentage to risk per trade (0.5-1% recommended)
### VOLUME FILTER Section
Enable Volume Filter: Require volume confirmation
MA Length: Average period (20 is standard)
Min Volume: Required multiplier (1.5x = 50% above average)
Strong Volume: Multiplier that bypasses other filters (2.5x)
### TREND FILTER Section
Enable Trend Filter: Require trend alignment
Trend Mode: Method to determine trend (VWAP is simple and effective)
Custom EMA Length: If using EMA mode (50 for swing, 20 for day trading)
SuperTrend settings: Period and Multiplier if using SuperTrend mode
### HIGHER TIMEFRAME Section
Check Daily Trend: Display higher timeframe bias in dashboard
Timeframe: What TF to check (D = daily, recommended)
Method: Price vs MA (stable) or Candle Direction (reactive)
MA Period: EMA length for Price vs MA method (20 is balanced)
Min Strength %: Minimum strength threshold for HTF bias to be considered
- For "Price vs MA": Minimum distance (%) from moving average
- For "Candle Direction": Minimum candle body size (%)
- 0.5% is balanced - increase for stricter filtering
- Lower values = more signals, higher values = only strong trends
### ALERTS Section
Enable Alerts: Master switch (must be ON to use any alerts)
Breakout Alerts: Notify on ORB breakouts
Retest Alerts: Notify when price retests after breakout
Failed Break Alerts: Notify on failed breakouts
Stage Complete Alerts: Notify when each ORB stage finishes forming
After enabling desired alert types, click "Create Alert" button, select this indicator, choose "Any alert() function call".
## Tips & Best Practices
### General Trading Tips
ORB works best on liquid instruments (stocks with good volume, major crypto pairs)
First hour of the session is most important - that's when ORB is forming
Breakouts WITH the trend have higher success rates - use the trend filter
Failed breakouts are common - use the "Min Bars Outside" setting to filter weak moves
Not every day produces good ORB setups - be patient and selective
### Position Sizing Best Practices
Never risk more than 1-2% of your account on a single trade
Use the built-in calculator - don't guess your position size
Update your account size monthly as it grows
Smaller accounts: use $ Amount mode for simplicity
Larger accounts: use % of Account mode for scaling
### Take Profit Strategy
Most traders use: 50% at TP1, 50% at TP2
Aggressive: Hold through TP1 for TP2 or TP3
Conservative: Full exit at TP1 (1:1 risk/reward)
After TP1 hits, consider moving stop to breakeven
TP3 rarely hits - only on strong trending days
### Filter Combinations
Maximum Quality: Volume + Trend + FVG (fewest signals, highest quality)
Balanced: Volume + Trend (good quality, reasonable frequency)
Active Trading: No filters or Volume only (many signals, lower quality)
Trending Markets: Trend filter essential (indices, crypto)
Range-Bound: Volume + FVG (avoid trend filter)
### Common Mistakes to Avoid
Chasing breakouts - wait for the bar to close, don't FOMO into wicks
Ignoring the stop loss - always use it, move it manually if needed
Over-leveraging - the calculator shows MAX shares, you can buy less
Trading every signal - quality > quantity, use filters
Not tracking results - keep a journal to see what works for YOU
## Pros and Cons
### Advantages
Complete all-in-one solution - from signal to position sizing
Multiple timeframes tracked simultaneously
Visual clarity - easy to see what's happening
Cycle tracking catches opportunities others miss
Built-in risk management eliminates guesswork
Customizable filters for different trading styles
No repainting - what you see is locked in
Works across multiple markets (stocks, forex, crypto)
### Limitations
Intraday strategy only - doesn't work on daily charts
Requires active monitoring during first 1-2 hours of session
Not suitable for after-hours or extended sessions by default
Can produce many signals in choppy markets (use filters)
Dashboard can be overwhelming for complete beginners
Performance depends on market conditions (trends vs ranges)
Requires understanding of risk management concepts
### Best For
Day traders who can watch the first 1-2 hours of market open
Traders who want systematic entry/exit rules
Those learning proper position sizing and risk management
Active traders comfortable with multiple signals per day
Anyone trading liquid instruments with clear sessions
### Not Ideal For
Swing traders holding multi-day positions
Set-and-forget / passive investors
Traders who can't watch market open
Complete beginners unfamiliar with trading concepts
Low volume / illiquid instruments
## Frequently Asked Questions
Q: Why are no signals appearing?
A: Check that you're on an intraday timeframe (5min, 15min, etc.) and that the current time is within your session hours. Also verify that "Enable Breakout Detection" is ON and at least one ORB stage is enabled. If using filters, they might be blocking signals - try disabling them temporarily.
Q: What's the best ORB stage to use?
A: ORB15 (15 minutes) is most popular and balanced. ORB5 gives faster signals but more noise. ORB30 and ORB60 are slower but more reliable. Many traders use ORB15 + ORB30 together.
Q: Should I enable all the filters?
A: Start with no filters to see all signals. If too many false signals, add Volume filter first (stocks) or Trend filter (trending markets). FVG filter is most restrictive - use for maximum quality but fewer signals.
Q: How do I know which stop loss method to use?
A: ATR works for most cases - it adapts to volatility. Use ORB% if you want predictable stop placement. Swing is for respecting chart structure. Safer gives you the most room but largest risk.
Q: Can I use this for swing trading?
A: Not really - ORB is fundamentally an intraday strategy. The ranges reset each day. For swing trading, look at weekly support/resistance or moving averages instead.
Q: Why do TP/SL lines disappear sometimes?
A: Lines freeze (stop extending) when: stop loss is hit, the last enabled take-profit is hit, or end of session arrives (if "Freeze at EOD" is enabled). This is intentional - the trade is complete.
Q: What's the difference between "First Only" and "Track Cycles"?
A: "First Only" shows one breakout UP and one DOWN per day maximum - clean but might miss opportunities. "Track Cycles" shows breakout-retest-rebreak sequences - more signals but busier chart.
Q: Is position sizing accurate for options/forex?
A: The calculator is designed for shares (stocks). For options, ignore the share count and use the risk amount. For forex, you'll need to adapt the lot size calculation manually.
Q: How much capital do I need to use this?
A: The indicator works for any account size, but practical day trading typically requires $25,000 in the US due to Pattern Day Trader rules. Adjust the "Account Size" setting to match your capital.
Q: Can I backtest this strategy?
A: This is an indicator, not a strategy script, so it doesn't have built-in backtesting. You can visually review historical signals or code a strategy script using similar logic.
Q: Why does the dashboard show different entry price than the breakout label?
A: If you're looking at an old breakout, the ORB levels may have changed when the next stage completed. The dashboard always shows the CURRENT active range and trade setup.
Q: What's a good win rate to expect?
A: ORB strategies typically see 40-60% win rate depending on market conditions and filters used. The strategy relies on positive risk/reward ratios (2:1 or better) to be profitable even with moderate win rates.
Q: Does this work on crypto?
A: Yes, but crypto trades 24/7 so you need to define what "session start" means. Use Session Mode = Custom and set your preferred daily reset time (e.g., 0000-2359 UTC).
## Credits & Transparency
### Development
This indicator was developed with the assistance of AI technology to implement complex ORB trading logic.
The strategy concept, feature specifications, and trading logic were designed by the publisher. The implementation leverages modern development tools to ensure:
Clean, efficient, and maintainable code
Comprehensive error handling and input validation
Detailed documentation and user guidance
Performance optimization
### Trading Concepts
This indicator implements several public domain trading concepts:
Opening Range Breakout (ORB): Trading strategy popularized by Toby Crabel, Mark Fisher and many more talanted traders.
Fair Value Gap (FVG): Price imbalance concept from ICT methodology
SuperTrend: ATR-based trend indicator using public formula
Risk/Reward Ratio: Standard risk management principle
All mathematical formulas and technical concepts used are in the public domain.
### Pine Script
Uses standard TradingView built-in functions:
ta.ema(), ta.atr(), ta.vwap(), ta.highest(), ta.lowest(), request.security()
No external libraries or proprietary code from other authors.
## Disclaimer
This indicator is provided for educational and informational purposes only. It is not financial advice.
Trading involves substantial risk of loss and is not suitable for every investor. Past performance shown in examples is not indicative of future results.
The indicator provides signals and calculations, but trading decisions are solely your responsibility. Always:
Test strategies on paper before using real money
Never risk more than you can afford to lose
Understand that all trading involves risk
Consider seeking advice from a licensed financial advisor
The publisher makes no guarantees regarding accuracy, profitability, or performance. Use at your own risk.
---
Version: 3.0
Pine Script Version: v6
Last Updated: October 2024
For support, questions, or suggestions, please comment below or send a private message.
---
Happy trading, and remember: consistent risk management beats perfect entry timing every time.
VWAP & Band Cross Strategy v6VWAP & Band Cross Strategy v6: Script Summary
This Pine Script implements a highly flexible, multi-layered trading strategy centered around the Volume Weighted Average Price (VWAP) and its associated Standard Deviation Bands.
The strategy is designed to test various entry/exit models based on how the price interacts with the central VWAP line and the upper/lower volatility bands, with extensive risk management and confirmation filters.
1. Core Mechanics (VWAP & Bands)
VWAP Calculation: Calculates the VWAP based on a user-defined source (default is the close price).
Standard Deviation Bands: Creates upper and lower bands by calculating the standard deviation of the price (over 20 periods by default) and multiplying it by a user-defined Multiplier (default is 2.0). These bands dynamically expand and contract with volatility.
Plotting: The script clearly plots the VWAP (purple), the Upper Band (green), and the Lower Band (red), with a colored fill between the bands.
2. Entry Triggers
The core entry logic is based on a single, user-selected cross event between the price and the VWAP/Bands. The user can choose from six predefined entry types:
Entry Type Category
Entry Trigger (Long)
Entry Trigger (Short)
Mean Reversion
Price crosses over the Lower Band.
Price crosses under the Upper Band.
Trend Following
Price crosses over the Upper Band (Breakout).
Price crosses under the Lower Band (Breakout).
VWAP Cross
Price crosses over the VWAP.
Price crosses under the VWAP.
3. Filters and Confirmation
Trades are only executed if they pass a series of optional filters, making the strategy highly customizable:
Technical Confirmation (Optional): Users can enable and configure up to three additional indicators that must align with the trade direction:
RSI: Price must be Oversold (for Long) or Overbought (for Short).
SMMA: Price must be above the SMMA (for Long) or below (for Short).
MACD: MACD line must cross the Signal line and the Histogram must be positive/negative.
Time and Day Filters: Trades are restricted to a defined Entry Start/End Hour/Minute window, and only execute on user-selected Trading Days of the week.
Trade Direction: Can be toggled to execute Long Only, Short Only, or Both.
4. Advanced Risk Management (Daily Limits)
The strategy incorporates robust daily limits that reset at a configured Daily Reset Hour/Minute:
Daily Profit/Loss Limits: If the running total of Realized PnL (closed trades) + Unrealized PnL (open position) exceeds a user-defined Daily Take Profit (in Ticks) or falls below the Daily Stop Loss (in Ticks), the strategy locks out new trades and immediately closes any open position.
Max Daily Trades: Prevents the strategy from entering more than a specified number of trades per day.
5. Exit Logic
The strategy exit is also highly configurable via the Exit Type setting:
Fixed Ticks / ATR / Capped ATR: If one of these is selected, the script calculates a static Stop Loss and Take Profit level upon entry, using either fixed tick values or dynamic values based on the Average True Range (ATR), which are then executed using Pine Script's strategy.exit function.
Cross Exits (VWAP/Bands): If selected, the position is closed when the price crosses the VWAP or a specific band in the opposite direction.
End-of-Day Close: An unconditional exit that closes all open positions at a user-defined Close All Hour/Minute, regardless of profit/loss or limit status, preventing positions from being held overnight.
Buy And Hold Performance Screener - [JTCAPITAL]Buy And Hold Performance Screener – is a script designed to track and display multi-asset “buy and hold” performance curves and performance statistics over defined timeframes for selected symbols. It doesn’t attempt to time entries or exits; rather, it shows what would happen if one simply bought the asset at the defined start date and held it.
The indicator works by calculating in the following steps:
Start Date Definition
The script begins by reading an input for the start date. This defines the bar from which the equity curves begin.
Symbol Definitions & Close Price Retrieval
The script allows the user to specify up to ten tickers. For each ticker it uses request.security() on the “1D” timeframe to retrieve the daily close price of that symbol.
Plot Enable Inputs
For each ticker there is an input boolean controlling whether the equity curve for that ticker should be plotted.
Asset Name Cleaning
The helper function clean_name(string asset) => … takes the asset string (e.g., “CRYPTO:SOLUSD”) and manipulates it (via string splitting and replacements) to derive a cleaned short name (e.g., “SOL”). This name is used for visuals (labels, table headers).
Equity Curve Calculation (“HODL”)
The helper function f_HODL(closez) defines a variable equity that assumes a starting equity of 1 unit at the start date and then multiplies by the ratio of each bar’s close to the prior bar’s close: i.e. daily compounding of returns.
Performance Metrics Calculation
The helper function f_performance(closez) calculates, for each symbol’s close series, the percentage change of the current close relative to its close 30 days ago, 90 days ago, 180 days ago, 1 year ago (365 days), 2 years ago (730 days) and 3 years ago (1095 days).
Equity Curve Plots
For each ticker, if the corresponding plot input is true, the script assigns a plotted variable equal to the equity curve value. Its then drawing each selected equity curve on the chart, each in a distinct color.
Table Construction
If the plottable input is true, the script constructs a table and populates it with rows and column corresponding to the assigned tickers and the set 6 timeframes used for display.
Buy and Sell Conditions:
Since this is strictly a “buy-and-hold” performance screener, there are no explicit buy or sell signals generated or plotted. The script assumes: buy at the defined start_date, hold continuously to present. There are no filters, no exit logic, no take-profit or stop-loss. The benefit of this approach is to provide a clean benchmark of how selected assets would have performed if one simply adopted a passive “buy & hold” approach from a given start date.
Features and Parameters:
start_date (input.time) : Defines the date from which performance and equity curves begin.
ticker1 … ticker10 (input.symbol) : User-selectable asset symbols to include in the screener.
plot1 … plot10 (input.bool) : Boolean flags to enable/disable plotting of each asset’s equity curve.
plottable (input.bool) : Flag to enable/disable drawing the performance table.
Colored plotting + Labels for identifying each asset curve on the chart.
Specifications:
Here is a detailed breakdown of every calculation/variable/function used in the script and what each part means:
start_date
This is defined via input.time(timestamp("1 Jan 2025"), title = "Start Date"). It allows the user to pick a specific calendar date from which the equity curves and performance calculations will start.
ticker1 … ticker10
These inputs allow the user to select up to ten different assets (symbols) to monitor. The script uses each of these to fetch daily close prices.
plot1 … plot10
Boolean inputs controlling which of the ten asset equity curves are plotted. If plotX is true, the equity curve for ticker X will be visible; otherwise it will be not plotted. This gives the user flexibility to include or exclude specific assets on the chart.
Returns the cleaned asset short name.
This provides friendly text labels like “BTC”, “ETH”, “SOL”, etc., instead of full symbol codes.
The choice of distinct colours for each asset helps differentiate curves visually when multiple assets are overlaid.
Colour definitions
Variables color1…color10 are explicitly defined via color.rgb(r,g,b) to give each asset a unique colour (e.g., red, orange, yellow, green, cyan, blue, purple, pink, etc.).
What are the benefits of combining these calculations?
By computing equity curves for multiple assets from the same start date and overlaying them, you can visualise comparative performance of different assets under a uniform “buy & hold” assumption.
The performance table adds multi-horizon returns (30 D, 90 D, 180 D, 1 Y, 2 Y, 3 Y) which helps the user see both short-term and longer-term performance without having to manually compute returns.
The use of daily close data via request.security(..., "1D") removes dependency on the chart’s timeframe, thereby standardising the comparison across assets.
The equity curve and table together provide both visual (curve) and numerical (table) summaries of performance, making it easier to spot trends, divergences, and cross-asset comparisons at a glance.
Because it uses compounding (equity := equity * (closez / closez )), the curves reflect the real growth of a 1-unit investment held over time, rather than only simple returns.
The labelling of curves and the color-coding make the multi-asset overlay easier to interpret.
Using a clean start date ensures that all curves begin at the same point (1 unit at start_date), making relative performance intuitive.
Because of this, the script is useful as a benchmarking tool: rather than trying to pick entries or exit points, you can simply compare “what if I had held these assets since Jan 1 2025” (or your chosen date), and see which assets out-/under-performed in that period. It helps an investor or trader evaluate the long-term benefits of passive vs. active management, or of allocation decisions.
Please note:
The script assumes continuous daily data and does not account for dividends, fees, slippage, or tax implications.
It does not attempt to optimise timing or provide trading signals.
Returns prior to the start date are ignored (equity only begins once time >= start_date).
For newly listed assets with fewer than 365 or 730 or 1095 days of history, the longer-horizon returns may return na or misleading values.
Because it uses request.security() without specifying lookahead, and on “1D” timeframe, it complies with standard usage but you should verify there is no look-ahead bias in your particular setup.
ENJOY!






















