Wskaźnik

RSI Divergence + EMA Trend FilterDescription:
Divergence is one of the most discussed concepts in technical analysis and one of the most misapplied. The core idea is simple: when price makes a new high but the RSI makes a lower high, momentum is weakening even as price advances. That disconnect between price action and momentum is what divergence measures — and it often precedes reversals before price itself confirms the change in direction.
This strategy formalizes that concept into a rule-based, backtestable system with two components: RSI divergence detection and an EMA trend filter that determines which divergences to act on.
What divergence actually measures
RSI measures the speed and magnitude of price changes. When price reaches a new swing high but RSI fails to reach a correspondingly higher reading, it means the buying pressure behind the new high was weaker than the buying pressure behind the previous high. The market got to a higher price but required less momentum to do it — which suggests the move is losing conviction. Bearish divergence (price higher, RSI lower) signals potential exhaustion in an uptrend. Bullish divergence (price lower, RSI higher) signals potential exhaustion in a downtrend.
Important: divergence is a momentum signal, not a reversal guarantee. Price can continue making new highs with weakening RSI for a significant period before actually reversing. This is why divergence signals work best when combined with a trend filter that identifies the broader market context.
The EMA filter
The 200 EMA defines the dominant trend regime. Bearish divergence signals — where momentum is weakening on the upside — are only acted on when price is below the 200 EMA, meaning the broader trend is already bearish and divergence represents a potential resumption of that trend after a counter-trend bounce. Bullish divergence signals are only acted on when price is above the 200 EMA, where they represent potential continuations of the dominant uptrend after a pullback with improving momentum.
This filter deliberately reduces the total number of signals. Many valid divergences occur against the dominant trend and produce short-lived reversals that reverse again quickly. By requiring trend alignment, the strategy trades fewer setups but acts on the ones with a higher probability of following through.
How divergence is detected
The strategy identifies swing highs and swing lows using a lookback period — the number of bars on each side of a pivot that must be lower (for a high) or higher (for a low) to qualify as a genuine swing point. When two consecutive swing highs show price making a higher high but RSI making a lower high, bearish divergence is flagged. When two consecutive swing lows show price making a lower low but RSI making a higher low, bullish divergence is flagged.
The lookback length is the most important input to tune. A shorter lookback detects more swing points and generates more signals, but many will be minor pivots in the context of noise. A longer lookback requires more significant swing points and generates fewer, higher-quality signals. On daily charts, a lookback of 5 works well. On lower timeframes, 3 to 4 is more appropriate.
Exits
Positions exit at an ATR-based stop-loss and a fixed ATR-based take-profit. The stop is placed beyond the swing point that generated the divergence signal — for a bearish divergence, the stop sits above the swing high; for a bullish divergence, below the swing low. This is intentional: if price breaks through the very level that defined the divergence, the signal is invalidated regardless of what RSI was doing. The take-profit is set at 2x ATR to maintain a positive reward-to-risk ratio across the system.
What to evaluate in backtesting
Look at the signal distribution across different market environments. Divergence strategies tend to perform differently in trending versus ranging markets — in strong trending environments, bearish divergences against the dominant trend will produce many false signals even with the EMA filter. Look at whether the EMA filter is doing real work by temporarily disabling it and comparing signal quality. Check average trade duration — divergence signals that take too long to play out often give back open profit before the take-profit level is reached.
This is not a high-frequency strategy. On daily charts with a 5-bar lookback, signals may appear only a few times per month on a given instrument. That frequency is appropriate — divergence setups require specific conditions to form and should not be forced.
Shared for educational purposes and discussion. This is not investment advice. Backtest on your own instruments and timeframes before drawing conclusions about expected performance. Strategia

Intrabar Volume Profile [Order Flow]A volume profile answers one question: at which prices did the volume actually trade? The answer depends entirely on how you distribute each bar's volume across price. Intrabar Volume Profile does it by reading the lower-timeframe intrabars inside every chart bar and placing each intrabar's volume across its own high-low range — so a peak forms at the prices where the volume actually traded, and the Point of Control lands where trading concentrated. It also estimates the buy/sell split from intrabar direction, tells you on the chart that it is an estimate, and hides it when the resolution is too low to mean anything. It is an observation tool, not a signal service.
HOW IT WORKS
A chart bar only gives you one volume number for a whole price range. To place that volume at prices, you have to know where inside the bar it traded — and that is what the lower timeframe provides. The tool requests the intrabars of each chart bar and works from them.
Intrabar distribution — each intrabar's volume is spread across its own high-low range, proportionally to how much of each profile row that range covers. A 5-minute bar that only moved between 108 and 110 puts its volume at 108-110, not across the whole bar range. Rows are tick-aligned: the row height is a number of the symbol's minimum price ticks, and the row count follows the price range.
Buy/sell estimate — the intrabars this tool reads carry price and volume, but no bid/ask, so a true buy/sell split cannot be built from them. What can be done is an estimate: an intrabar that closes above its open counts to the buy side, below its open to the sell side. An intrabar that closes exactly at its open is neutral and is never forced onto a side.
Resolution gate — the estimate only carries information if there are enough intrabars per bar. Below roughly four intrabars per bar the split collapses toward simply restating the candle's direction, so the tool stops colouring by side, falls back to total volume, and says so on the chart.
Point of Control and Value Area — the POC is the row with the most total volume. The Value Area expands outward from the POC until it covers your chosen share of the range's volume (default 70%), giving VAH and VAL. Both are computed on total volume, so they stay valid whether or not the split is shown.
Display modes — Buy/Sell colours each row by its dominant side (length stays total volume). Total draws plain volume by price with no buy/sell claim at all. Delta draws the net buy-minus-sell imbalance. Optional shading makes strongly one-sided rows more saturated.
The profile is drawn in the right margin, to the right of the last bar and growing left, so it does not sit on top of the candles.
When the tool hits a limit, it says so instead of quietly degrading. A single factual line appears when — and only when — something applies: the split is unavailable at this resolution, the volume is tick volume, the range was capped by the lower-timeframe budget (with how many bars are actually covered), the row size was raised to fit a wide range, or there is no usable volume data. When nothing applies, there is no note on your chart.
The intrabars of each chart bar in the range are requested from a lower timeframe
Every intrabar's volume is distributed across the rows its own high-low range covers; direction (close vs open) assigns it to the buy or sell side, with doji intrabars left neutral
Rows, POC and Value Area are drawn from the accumulated totals; anything the tool cannot do at this resolution or data quality is stated on the chart rather than approximated silently
HOW TO READ
Long rows are prices that absorbed a lot of volume; short rows are prices the market passed through. The Point of Control is the single price row that traded the most.
The Value Area marks where the bulk of the volume changed hands — a common reference for the range the market accepted versus the edges it rejected.
Colour in Buy/Sell mode shows which side the estimate leans at that price, and the shading shows how one-sided it is. It describes what the intrabars did — it is not a forecast and not a buy or sell instruction.
Delta mode shows only the net imbalance per row, so balanced prices shrink toward nothing and one-sided prices stand out.
If you want no estimate at all in the picture, use Total mode: it is plain volume by price and makes no claim about who was buying.
The profile describes the data in the range you are looking at. In Visible Range mode it recomputes as you scroll or zoom; use Fixed Lookback if you want it pinned to the last N bars regardless of the view.
INPUTS
Range mode / Lookback bars — Visible Range follows what you are viewing; Fixed Lookback holds the last N bars.
Lower timeframe (Auto / Manual) — Auto picks a lower timeframe from the chart timeframe; Manual lets you set it. More intrabars per bar means a finer distribution and a more meaningful split.
Ticks per row — the row height, in the symbol's minimum price ticks. The row count follows the range; if the range is too wide for the chosen row size, the size is raised to fit and the chart says so.
Bar mode — Buy/Sell, Total, or Delta.
Value Area % / Show POC / Show VAH-VAL — the Value Area share and which levels to draw.
Profile width (% of chart) / Gap from price — the size of the profile and its distance from the last candle; reduce the width if it runs off the right edge.
Colours / Shade by imbalance strength — buy, sell, neutral, POC and Value Area colours; shading scales saturation with how one-sided a row is.
NOTES & LIMITS
This is an observation tool, not a forecast. The buy/sell split is an estimate derived from intrabar direction, not exchange bid/ask: the lower-timeframe intrabars this tool reads carry price and volume, not bid/ask, so a true split cannot be built from them; the tool says this on the chart when the split is shown, drops it when the resolution is too low to be meaningful, and leaves doji intrabars neutral rather than guessing a side. Everything rests on the volume feed underneath it: on instruments with genuine traded volume (futures, crypto) it is at its most reliable, while on forex and CFDs the volume is tick volume (the number of price updates, not contracts traded), so the readings there are looser — the chart tells you when that is the case. On a symbol with no usable volume, nothing is drawn and the reason is stated. The range depends on how far the lower-timeframe data reaches: if the requested range cannot be covered, it is not quietly shortened — the chart reports how many bars are actually included. POC, Value Area and row colour are a factual summary of what traded, not buy or sell instructions, and none of them says whether price will turn or continue. The profile describes the range you are viewing: in Visible Range mode it recomputes when you scroll or zoom, which is how a visible-range tool works; Fixed Lookback keeps it on the last N bars. Contributions from closed bars do not change once the range is set, the profile is drawn at the latest bar, and the lower-timeframe request reads completed intrabars and does not leak the future. No profit, win-rate, or guarantee claim. Open-source under CC BY-NC-SA 4.0 — non-commercial use, attribution to ElisTools required for reuse or derivatives. TradingView (Pine v6) only. Wskaźnik

Wskaźnik

Wskaźnik

Session Kill Zone Volume Map [StrixEDGE]Session Kill Zone Volume Map
A session-aware overlay that maps institutional kill zones — London, New York, and Asia — directly onto your chart with volume-weighted session boxes, Opening Range Breakout levels, and a unified analytics dashboard. Built to give intraday traders immediate visual context on where volume clusters, how sessions develop relative to their historical norms, and when a confirmed breakout is underway.
🔍 What This Indicator Does
The indicator automatically detects the three major forex/futures sessions based on UTC time and draws color-coded session boxes whose fill intensity scales dynamically with real-time volume. High-volume sessions appear visually heavier; low-volume sessions fade into the background. This gives you an instant read on whether today's session is running hotter or cooler than average — without checking a single number.
On top of each session, it tracks the Opening Range (first 15, 30, or 60 minutes) and plots ORB-High and ORB-Low levels as dashed reference lines extending through the session. When price breaks an ORB level with volume confirmation, a directional marker (▲ or ▼) prints on the chart and an alert fires.
▲
▼
A single unified dashboard panel consolidates everything: live session volume, percentage distribution with a visual bar, historical average range, ORB win rate, and session sample count — all in one clean table.
⚡ Key Features
Session Auto-Detection
London (08:00–17:00 UTC)
New York (13:00–22:00 UTC)
Asia (00:00–09:00 UTC)
are detected automatically. All session start and end times are fully customizable down to the minute, so you can adjust for DST shifts or align to your broker's server time.
Volume-Weighted Session Boxes
Each session box fills with the session's assigned color at a transparency that adjusts in real time based on cumulative volume relative to the historical session average. A session running at 2× its normal volume will render noticeably more vivid than one at 0.5×. The base transparency is user-controlled.
Opening Range Breakout (ORB) Levels
The indicator captures the high and low of the first N minutes of each session (configurable: 15 / 30 / 60 min) and draws them as horizontal reference lines. These extend through the rest of the session, serving as the breakout thresholds traders watch for directional continuation.
Volume-Confirmed Breakout Signals
When price closes beyond an ORB level and the breakout bar's volume exceeds the 20-period SMA × a user-defined multiplier (default 1.5×), a directional triangle prints on the chart. No volume confirmation = no signal. This filters out low-conviction breaks.
Unified Session Dashboard
A single professional table displays all session data at a glance:
- Live session volume (absolute + percentage share)
- Volume distribution bar per session
- Historical average session range over your chosen lookback
- ORB win rate (percentage of confirmed breakouts that held direction through session close)
- Session sample count
Table position, text size, and visibility are all input-controlled.
Session High/Low Break Alerts
Separate alert conditions fire when price crosses the previous session's high or low with volume confirmation, giving you an additional layer of inter-session breakout detection.
9 Alert Conditions
Individual bull/bear ORB break alerts per session, a unified "any ORB break" alert, and session high/low break alerts — all configurable in TradingView's alert manager.
⚙️ Inputs & Settings
| Group | Setting | Description |
|---|---|---|
| Session Times | Start/End Hour & Minute | Full control over each session's UTC boundaries |
| ORB Settings | Period (15/30/60 min) | Opening range duration |
| ORB Settings | Line Style / Width | Visual style of ORB levels |
| Display | Show/Hide Sessions | Toggle individual session boxes |
| Display | Base Box Transparency | Controls how transparent session boxes are at normal volume |
| Display | Dashboard Position | Table corner placement |
| Display | Dashboard Text Size | Tiny / Small / Normal / Large |
| Display | Stats Lookback | Number of past sessions for avg range and ORB win rate |
| Alerts | Volume Confirm Multiplier | How far above SMA(20) breakout volume must be |
| Colors | Session & Breakout Colors | Full color customization per session and direction |
📖 How To Use
Session Context
Load on a 5m–1H chart. The session boxes immediately frame where London, New York, and Asia operated. The fill intensity tells you which session carried the most conviction — use that to weight your analysis toward the active kill zone.
ORB Strategy
After the opening range completes, the ORB-H and ORB-L lines become your breakout thresholds. A volume-confirmed break (▲/▼ marker) signals directional intent. Traders often look for price to retest the broken ORB level as support/resistance before committing to a continuation trade.
▲
▼
Dashboard Read
Check the Vol % column to see which session is dominating flow. The ORB WR column tells you how reliable ORB breakouts have been historically for each session on the current instrument — if London shows 85% and Asia shows 50%, that's actionable edge for session selection.
Alerts
Set up any of the 9 alert conditions to get notified without watching the chart. Combine the unified "Any ORB Break" alert with a mobile notification for hands-free monitoring.
📋 Notes
- Designed for intraday timeframes (15m and below recommended for ORB accuracy). A warning displays if loaded on Daily or higher.
- During the London/NY overlap window (13:00–17:00 UTC by default), volume is attributed to both sessions. The percentage distribution shows relative contribution, not mutually exclusive slices.
- ORB win rate is a binary metric: did price close beyond the broken ORB level at session end? It does not measure how far price traveled.
- The volume gradient uses transparency modulation, not a multi-stop color gradient, due to Pine Script rendering constraints.
- Works on any instrument with volume data (forex via tick volume, futures, crypto, equities). Wskaźnik

RONBO USA Market Open PRO v1.0.0The RONBO USA Market Open indicator automatically marks the official opening of the U.S. stock market at 09:30 AM New York time (Eastern Time) with a vertical line on your chart.
The indicator automatically handles Daylight Saving Time (DST) and works correctly for traders anywhere in the world, regardless of their local timezone. Whether you are trading from New York, London, Amsterdam, Tokyo or Sydney, the market open will always be displayed at the correct moment.
Features
✔ Marks the official U.S. market open (09:30 ET)
✔ Automatic Daylight Saving Time (DST) adjustment
✔ Works worldwide in every local timezone
✔ Customizable line color, style and thickness
✔ Clean, lightweight and fast
✔ Perfect for price action, liquidity and opening range analysis
Recommended Timeframes
For the most accurate results, this indicator is designed to be used on intraday charts up to and including the 1-hour timeframe.
Recommended:
1 Minute
3 Minutes
5 Minutes
15 Minutes
30 Minutes
45 Minutes
1 Hour
Why not higher timeframes?
On timeframes above 1 Hour (such as 2H, 4H, Daily or Weekly), there is no candle that starts exactly at 09:30 ET. As a result, TradingView cannot place the vertical line precisely at the official market opening.
For this reason, the indicator is optimized for 1-hour charts and lower, where the market open can be Wskaźnik

RONBO USA Market Open PRO v1.0The RONBO USA Market Open indicator automatically marks the official opening of the U.S. stock market at 09:30 AM New York time (Eastern Time) with a vertical line on your chart.
The indicator automatically handles Daylight Saving Time (DST) and works correctly for traders anywhere in the world, regardless of their local timezone. Whether you are trading from New York, London, Amsterdam, Tokyo or Sydney, the market open will always be displayed at the correct moment.
Features
✔ Marks the official U.S. market open (09:30 ET)
✔ Automatic Daylight Saving Time (DST) adjustment
✔ Works worldwide in every local timezone
✔ Customizable line color, style and thickness
✔ Clean, lightweight and fast
✔ Perfect for price action, liquidity and opening range analysis
Recommended Timeframes
For the most accurate results, this indicator is designed to be used on intraday charts up to and including the 1-hour timeframe.
Recommended:
1 Minute
3 Minutes
5 Minutes
15 Minutes
30 Minutes
45 Minutes
1 Hour
Why not higher timeframes?
On timeframes above 1 Hour (such as 2H, 4H, Daily or Weekly), there is no candle that starts exactly at 09:30 ET. As a result, TradingView cannot place the vertical line precisely at the official market opening.
For this reason, the indicator is optimized for 1-hour charts and lower, where the market open can be Wskaźnik

Wskaźnik

Squeeze Momentum ProSqueeze Momentum Pro (SQZP) — Squeeze-Release Momentum Signals with a Full Trade-Management Shell
█ OVERVIEW
This indicator is built on LazyBear's Squeeze Momentum Indicator as its signal engine, rebuilt into a complete "signal → trade plan → performance tracking" tool. Instead of only displaying squeeze states, it turns each squeeze release into an actionable signal with a defined direction, stop-loss, and three take-profit levels — and it continuously tracks the historical performance of every signal, so you can verify for yourself whether this signal has merit on your instrument and timeframe.
█ SIGNAL LOGIC
Entry signal = squeeze-release bar + momentum direction confirmation:
• Squeeze: Bollinger Bands contract fully inside the Keltner Channel — volatility compression, energy building up.
• Release: the bar where the squeeze ends (sqzOn → off), confirmed on close.
• Direction: determined by the linreg momentum value — long when > 0, short when < 0.
• Optional quality conditions: Minimum Squeeze Bars (the squeeze must last N consecutive bars before release, filtering out shallow compressions) and Momentum Strengthening (the release bar's momentum must be stronger than the previous bar's, matching the "bright" histogram state of the original).
Changes and extensions relative to LazyBear's original:
1. The original only plots a momentum histogram and squeeze dots. This script turns the release bar into a tradable event, and adds the two quality conditions above.
2. Complete exit plan: SL anchored at entry price by ATR multiple; TP1/TP2/TP3 defined in R-multiples (multiples of the actual per-trade risk), with a one-third scale-out settlement model.
3. Trade card: the latest signal's entry, stop, and three targets displayed directly on the chart, with risk-amount conversion.
4. Performance panel: automatic tracking of win rate, profit factor, expectancy (in R), max drawdown, and an equity curve across all historical signals.
5. Edge diagnostics row: MFE/MAE and post-signal N-bar drift (with long/short breakdown and a non-overlapping sampling mode), for testing whether the entry itself carries directional information.
6. Optional filters (ADX / RSI / Volume, OFF by default) and a session filter, for running your own conditional hypothesis tests.
█ HOW TO USE
1. Add to chart. Orange dots along the bottom mark an active squeeze; a long/short marker appears on the release bar.
2. Check the trade card (top right) for the full price plan of the latest signal (entry / SL / TP1-3).
3. Open the stats panel and inspect the historical expectancy of this signal on your symbol and timeframe — if expectancy is negative or the sample is too small, do not trade it there.
4. Built-in Buy / Sell alert conditions are available for creating alerts.
The default parameters (BB 1.5×20, KC 2.0×20, min squeeze 3 bars, momentum strengthening ON, SL 3.0×ATR, TP at 2/3.5/6 R) reflect the author's offline testing preference on crypto 1H charts. Treat them as a starting point only and re-validate on your own market and timeframe. Note: a BB multiplier of 1.5 reproduces the actual behavior of LazyBear's original; the textbook 2.0 definition can be restored via the input.
█ IMPORTANT DISCLAIMERS
• The built-in performance statistics do NOT include commissions or slippage and are therefore systematically optimistic. They are intended for relative signal-quality comparison only and are not a promise of profitability.
• Historical statistics do not predict future results. Extended losing streaks can occur in any period — manage your own risk.
• This indicator is for educational and research purposes only and does not constitute investment advice.
Credits: the signal engine is derived from LazyBear's Squeeze Momentum Indicator — thanks for the open-source contribution.
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
Squeeze Momentum Pro(SQZP)— 擠壓釋放動量訊號 + 完整交易管理外殼
█ 這是什麼
本指標以 LazyBear 的 Squeeze Momentum Indicator 為訊號引擎基礎,重建為一套完整的「訊號 → 進出場計畫 → 績效追蹤」工具。它不只畫出擠壓狀態,而是在每次擠壓釋放時給出明確的進場方向、停損價、三段停利價,並持續統計所有歷史訊號的表現,讓你能自行檢驗這個訊號在你的商品與週期上是否有效。
█ 訊號邏輯
進場訊號 = 擠壓釋放棒 + 動量方向確認:
• 擠壓(Squeeze):Bollinger Bands 完全收進 Keltner Channel 內,代表波動壓縮、能量累積。
• 釋放(Release):擠壓狀態解除的那根 K 棒(sqzOn → off),於收盤確認進場。
• 方向:以 linreg 動量值判定 — 動量 > 0 做多、< 0 做空。
• 可選強化條件:最少擠壓棒數(釋放前需連續擠壓 N 棒,過濾淺層壓縮)、動量需增強(釋放棒動量須比前一棒更強,對齊原版直方圖的「亮色」狀態)。
相對 LazyBear 原版的修改與擴充:
1. 原版只顯示動量直方圖與擠壓點,本指標將「釋放棒」事件化為可交易訊號,並加上最少擠壓棒數與動量增強兩個品質條件。
2. 完整出場計畫:SL 以 ATR 倍數錨定進場價,TP1/TP2/TP3 以 R 倍數(實際風險的倍數)設定,支援三等分分批出場模型。
3. 交易卡:圖上直接顯示最新訊號的進場價、停損價、三段停利價與風險金額換算。
4. 績效統計表:自動追蹤所有歷史訊號的勝率、獲利因子、期望值(R)、最大回撤與資金曲線。
5. Edge 診斷列:MFE/MAE、訊號後 N 棒漂移(含多空分解、非重疊取樣模式),用於檢驗訊號本身是否含方向資訊。
6. 可選濾網(ADX / RSI / 量能,預設關閉)與 Session 時段過濾,供使用者自行做條件化檢定。
█ 使用方式
1. 掛上圖表後,圖下緣橘點表示擠壓進行中;出現多/空標記即為釋放訊號。
2. 看右上角交易卡取得該筆訊號的完整價位計畫(進場/SL/TP1-3)。
3. 打開統計表,觀察此商品此週期的歷史訊號期望值——期望值為負或樣本太少,就不要用在這個市場。
4. 內建 Buy / Sell 警報條件,可直接建立 Alert。
預設參數(BB 1.5×20、KC 2.0×20、最少擠壓 3 棒、動量需增強、SL 3.0×ATR、TP 2/3.5/6 R)為作者在加密貨幣 1H 週期上離線檢驗後的偏好配置,僅供起點參考,不同商品與週期請自行重新檢驗。註:BB 乘數 1.5 對應 LazyBear 原版的實際行為;正統 2.0 定義亦可透過參數還原。
█ 重要聲明
• 指標內建的績效統計未計入手續費與滑價,數字系統性偏樂觀,僅供訊號品質的相對比較,不構成任何獲利承諾。
• 歷史統計不代表未來表現。任何時期都可能出現連續虧損的區間,請自行做風險管理。
• 本指標為教育與研究用途,不構成投資建議。
致謝:訊號引擎源自 LazyBear 的 Squeeze Momentum Indicator,感謝其開源貢獻。 Wskaźnik

Strong Prop Challenge Sim | ProjectSyndicateStrong Challenge Sim answers the one question every prop-firm trader pays to find out the hard way: with the edge you actually have, what are the odds you pass — and what kills you when you don't. Instead of a single pass/fail formula, it runs thousands of complete evaluations trade-by-trade and day-by-day, enforcing your firm's real rule set the way the firm enforces it: profit target, daily loss limit, maximum drawdown, minimum days, deadline, and consistency. Every simulated run is counted into exactly one outcome — passed, killed by the daily limit, killed by max drawdown, voided by the consistency rule, or out of time — so the buckets always sum to 100% and no losing run is hidden. The result is drawn as real equity curves on a real balance axis in its own pane, ranked on a two-panel dashboard, priced out in expected value, and audited against a pre-flight checklist — so you can see how the challenge behaves on your numbers before you pay a fee.
🎲 Monte-Carlo Core — the core idea, expressed as a lifecycle: EDGE ▸ TRADES ▸ DAYS ▸ RULES ▸ VERDICT. Your edge is defined per trade — win rate, reward:risk, average loss in R, risk basis and size, trades per day. The engine plays that edge forward one trade at a time, accumulates each day, and after every single trade it checks the rule stack in the same order a firm's risk system does: has equity touched the maximum-drawdown floor, has the day's loss breached the daily limit, has the profit target been reached, and have the minimum trading days been served. The drawdown floor itself is modelled three ways — Static from your starting balance, Trailing from the equity peak, or Trailing → locks once the floor reaches your starting balance — because that single rule changes the answer more than almost anything else. Phase 1, Phase 2, or both back-to-back. A deterministic seed makes every result reproducible; change it to draw a different sample.
📈 Equity Simulator — the whole point is to watch the runs, so the indicator lives in its own pane on a true balance axis rather than fighting your price scale. Up to eight complete simulated challenges are drawn as full equity curves, stretched across an adjustable width, each coloured by how it actually ended: green passed, orange died on the daily loss limit, red blew the maximum drawdown, blue passed the target but was voided by the consistency rule, grey ran out of time. Every curve prints its ending balance and outcome at its right edge, and the Target, Start, and Max-DD reference lines are labelled with their real money values — so you read the balances directly instead of guessing at the scale.
🧮 Edge Analytics — the deterministic maths behind the simulation, stated plainly: expectancy per trade in R and as a percentage of equity, theoretical profit factor, break-even win rate, your margin above or below it, the Kelly-optimal risk with a verdict on the risk you actually chose (conservative / aggressive / OVER-BET), and the estimated number of trades to reach target alongside the average the simulation really needed. If the edge is negative, this is where it shows up first — no number of simulations fixes maths that doesn't work.
⚙️ Execution Reality — the section most calculators pretend doesn't exist, and the reason backtests flatter you. Two costs are modelled explicitly. Spread and slippage are charged on every single trade in R, shrinking every winner and deepening every loser, because clean mid-price backtesting overstates performance. Execution Rate captures the gap between the strategy and the operator: the share of setups you actually take by the rules, with the remainder taken as marginal, late, off-rule entries at a degraded win rate. The panel then shows your Backtest WR → Real WR and the exact R your edge loses to costs and execution. Improving execution is frequently worth more than optimising the strategy.
🧠 Loss-Streak Anchor — the psychological instrument. The engine records the longest run of consecutive losers in every simulation and reports the typical and worst streak you should expect, then converts the worst one into what it actually costs as a percentage of your account. This is the number that stops you revenge-trading on loss four when your own data says six is normal — and it is also a hard risk test: if your worst plausible streak costs more than the maximum drawdown, the challenge is unsurvivable at that risk size no matter how good the headline pass probability looks.
💰 Challenge Economics — a challenge is a purchase, so it gets priced like one. Enter the fee, whether it's refunded on first payout, your profit split, the profit you expect per payout cycle, and how many cycles you realistically expect to collect. The panel returns the expected number of attempts to pass, the total fees you should expect to spend getting there, your expected payouts, the net expected value of the whole venture, and the ROI on fees — flagged +EV or −EV. A 99% pass probability and a −EV verdict can coexist; this is where you find out.
📅 Profit Calendar — a day-by-day heat map of one sample run, up to thirty trading days, green for up days and red for down days with the intensity scaled to the size of the move and the P/L printed in each cell, plus that run's final outcome. It turns an abstract probability into a story you can read: where the drawdown hit, which day carried the account, and whether one outsized day is quietly setting up a consistency-rule violation.
⚖️ Rule-Profile Comparison — your identical edge run against six different rule sets side by side, showing target, daily limit, maximum drawdown and the resulting pass probability, with your own rules marked. Profiles are labelled by their actual numbers and drawdown type rather than by brand, because firm terms change and the rules are what the maths responds to. The same trader can be comfortably profitable under one rule set and mathematically doomed under another — this makes that visible before you choose.
🔥 Sensitivity Grid — an optional 5×5 heat grid re-running the simulation across a range of win rates and reward:risk ratios around your inputs, colour-graded by pass probability with your base case marked. It shows how fragile or robust your pass odds are: whether you sit on a plateau where a small slip still passes, or on a cliff edge where two points of win rate is the difference between funded and refunded.
✅ Readiness Checklist — the pre-flight audit, scored out of eight, every box ✓ before you pay: the edge is positive after costs, the sample behind your numbers is at least 100 trades, risk sits at or below half-Kelly, pass probability clears 50%, the worst loss streak is survivable inside the maximum drawdown, spread and slippage are actually modelled, execution rate is at least 85%, and the average drawdown per run stays inside the limit. Each item shows the value it was judged on, so a ✗ tells you exactly what to fix.
📊 Two-Panel Dashboard — the read-out is split into two panels so it fits on a normal screen. Panel A — Results carries the verdict with a pass-probability bar and a plain-language rating, the full failure breakdown by cause, time to pass as median / fastest 10% / average / slowest 10% with the average ending balance and net P/L, the loss-streak anchor, day extremes (average up day, average down day, gain/loss ratio, best and worst day), and your setup summary. Panel B — Edge & Economics carries edge analytics, execution reality, challenge economics, and the readiness checklist. Both panels, the calendar, the comparison and the grid can each be placed in any of nine screen slots at three text sizes, so nothing overlaps whatever else you run.
🎚️ Discipline & Behaviour Controls — rules you impose on yourself, tested rather than assumed. A daily profit lock stops the day after +X R; a circuit breaker stops it after −Y R. Tilt / revenge sizing models the classic killer: after a chosen number of consecutive losses, risk is multiplied — switch it on and watch the daily-loss failure rate climb. The consistency rule caps how much of total profit a single day may carry and voids passes that breach it, exactly as firms do. Variable R randomises win and loss sizes around your averages for extra realism.
🔔 Alerts — fires on a positive edge (expectancy above 0R after costs) and on a negative edge, the latter being the one that matters: it means the challenge maths does not work at your current inputs, regardless of how the curves happen to look.
🔧 Fully Customizable — every component is exposed: account size, currency symbol and phase; both profit targets, daily and maximum drawdown, drawdown type, minimum days, deadline, and the consistency rule with its threshold; win rate, reward:risk, average loss in R, risk basis (current equity / starting balance / fixed amount), risk size, trades per day, and the sample size behind your numbers; spread and slippage in R, execution rate, off-rule win rate, and tilt with its trigger and multiplier; the profit lock and circuit breaker; fee, refund, split, payout percentage and payout count; simulation count, seed, and R randomisation; curve count, curve width, reference lines and balance labels; and every panel, module, position and text size.
🎯 Why this is different — a pass-probability calculator gives you one number from a formula and stops. This runs the entire evaluation thousands of times under the firm's real rule stack, tells you not just whether you pass but precisely what kills you when you don't, charges you for spread and for the trades you don't take properly, hands you the loss streak you must be able to sit through, prices the attempt in expected value rather than hope, checks your readiness against eight objective boxes, and draws the whole thing as honest equity curves where every stop-out is counted. It is built to talk you out of a bad challenge, not into one.
🚀 Where to use it — the simulator is symbol- and timeframe-agnostic: it models your trading edge and your firm's rules, not the chart it sits on, so you can leave it on any instrument on any timeframe and the answer is the same. Load the chart you actually intend to trade for context, feed it the win rate and reward:risk from your own backtest or journal on that market, and set the rule inputs to your specific target firm — different firms' rules produce materially different answers from the identical edge.
🎯 How to use it
Enter your firm's rules exactly — target, daily limit, maximum drawdown, and above all the correct drawdown type, since Static, Trailing and Trailing → Lock are not interchangeable.
Enter your real edge from a real sample — win rate, reward:risk, average loss in R, risk per trade and trades per day — and set the sample size honestly. Under 100 trades, the checklist will flag your numbers as statistically meaningless, and it is right.
Set the execution reality before you believe anything — put your true spread and slippage in R, and set your execution rate to what you actually achieve, not what you intend. Watch Backtest WR → Real WR.
Read the verdict, then read why runs fail — the failure breakdown tells you what to fix. Daily-limit failures mean size or tilt; max-drawdown failures mean the edge or the risk; timeouts mean the target is out of reach in the time allowed.
Check the loss-streak anchor and the checklist before the pass probability — a 99% pass probability with an unsurvivable worst streak is a tail risk, not a green light.
Price it in Panel B — if the net expected value is negative, the challenge is a bad purchase however good the odds look.
Tune risk with the Kelly verdict and the sensitivity grid, and re-check the calendar for consistency-rule exposure if your firm enforces one.
⚠️ Important — this is a planning and decision-support tool, not a trading system, and it makes no performance guarantees. Every output is a probabilistic estimate derived entirely from the inputs you provide: the simulation cannot know your real edge, and garbage in is garbage out with three decimal places. Real markets are not independent coin flips — they cluster, trend, gap and change regime, while the model assumes each trade is an independent draw from your stated win rate, so treat the results as the mathematical shape of your challenge rather than a forecast of it. Pass probability is the headline and the least useful number on its own; weigh it against the failure breakdown, the loss-streak anchor, average drawdown and expected value. Rule sets vary between firms and change over time — verify every rule against your firm's current terms, particularly the drawdown type and any consistency requirement. No simulation, however honest, is a substitute for a tested edge and your own risk management. Wskaźnik

BTC Trend-Momentum Strategy A rules-based long/short strategy designed specifically for Bitcoin, combining three complementary components:
Trend filter (EMA 200): Only trades in the direction of the prevailing trend — long above the EMA, short below it.
Volume confirmation (Chaikin Money Flow): Confirms that actual buying or selling pressure supports the trend direction before entering.
Momentum trigger (Stochastic RSI): Times entries when %K crosses back out of oversold/overbought territory, avoiding entries at momentum extremes.
Optional volatility filter (ATR vs. its moving average): Can restrict trading to periods of above-average volatility, filtering out low-volatility chop.
Risk disclosure: This strategy has no built-in stop-loss or take-profit. Positions are only closed by an opposing signal (a long signal closes an existing short and vice versa). This means an open position can theoretically run at a loss for an extended period before the opposite signal triggers. Traders should manage their own risk (position sizing, stops) independently when applying this on a live account.
Backtest settings used: Initial capital $1,000, 0.075% commission per trade, no slippage, 100% equity per trade, tested on BTC/USD from 2018 onward. Past performance does not guarantee future results.
This publication is for educational purposes only and does not constitute financial advice. Strategia

Session Profitability Visualizer
What it shows
Session Profitability Visualizer breaks the trading day into its 24 hours and shows, for each hour, how price has historically behaved on your chart. It answers a simple statistical question: "When this market trades at 09:00 vs. 14:00 vs. 20:00, how have bars in that hour tended to move?"
For every hour with enough data it displays a table with:
- Hour — the hour-of-day bucket (00:00–23:00) in the symbol's exchange timezone
- Cum move — the cumulative close-minus-open of all completed bars in that hour (in points, or in % if you select the percent metric)
- Bars — how many completed bars contributed to that bucket (the sample size)
- % Pos — the share of those bars that closed above their open
Rows are tinted green or red by the sign of the cumulative move, with color intensity scaled by magnitude relative to the strongest hour, so the "heavier" hours stand out at a glance. An optional (off by default) background shading tints the chart by the historical statistics of the hour the current bar belongs to.
How it works
On every completed intraday bar inside the lookback window, the script:
1. Determines the bar's hour of day using the symbol's exchange timezone (syminfo.timezone).
2. Computes the bar's move — either close − open in points, or (close − open) / open × 100 in percent, depending on the Metric input.
3. Adds that move to the hour's running sum, increments the hour's bar count, and increments a positive-bar counter when the move is positive.
The per-hour sums, counts, and positive counts are held in three 24-element arrays. The table is rendered once on the last bar from those arrays. There is no request.security() call, no reference to future data, and only confirmed bars are counted — the statistics do not repaint on historical data (the live, still-forming bar is excluded until it closes).
Inputs
- Lookback (bars) — how many recent bars feed the statistics (default 5000). Larger windows are more stable; smaller windows react faster to regime changes.
- Metric — Points (close − open) or Percent (bar return %). Percent is more comparable across price levels and long histories.
- Min samples per hour — hours with fewer completed bars than this are hidden (default 30), so thin buckets don't masquerade as meaningful.
- Table position — where the table sits on the chart.
- Shade background — optional tint of the current bar's hour by its historical stats (off by default).
How to use it
Apply it to any intraday chart (15m or 1h are good starting points — on a 15m chart each hour bucket gets four bars per session). Look for hours where the cumulative move and the % positive rate agree and the sample count is healthy; those are the hours where the market has shown a persistent directional lean on your symbol. Compare the same symbol on different lookbacks to see whether the pattern is stable or an artifact of one period.
Limitations — please read
- Hour buckets use the symbol's exchange timezone, not your chart's display timezone. A "09:00" row on NASDAQ symbols means 09:00 America/New_York regardless of your local clock.
- Bar close-minus-open is a directional proxy, not trade P&L. It ignores spreads, slippage, position sizing, and intrabar path.
- The statistics are a historical observation, not a prediction. An hour that has drifted up for 5000 bars can stop doing so at any time; sample sizes shrink quickly on higher intraday timeframes.
- The script is intraday-only by design; on daily and above it shows an explanatory message instead of statistics.
This is a statistical visualization tool. It does not generate signals or recommendations of any kind.
Wskaźnik

Multi-Timeframe Squeeze Board LiteWhat it shows
Multi-Timeframe Squeeze Board — Lite answers one question at a glance: "Where is this symbol compressed, and which way is momentum leaning, on every timeframe that matters?" For the chart's symbol it displays a compact table with one row per timeframe — 15m, 1h, 4h, Daily, Weekly — and two readings per row:
- Sqz — the TTM Squeeze compression state as a colored dot, using the standard three-level cascade: orange = high squeeze (deepest compression), red = mid squeeze, black = low squeeze, green = no squeeze (volatility released / normal).
- Mom — the squeeze momentum oscillator as a colored arrow using the classic 4-color scheme: aqua = positive and rising, blue = positive but falling, yellow = negative but rising, red = negative and falling. The arrow points up when momentum is increasing bar-over-bar and down when it is decreasing.
A stacked squeeze (orange/red dots on several adjacent timeframes) marks a market coiling across horizons; the momentum colors tell you which side the pressure is building on.
How it works
Each row runs the full TTM Squeeze calculation on its own timeframe via request.security() with lookahead = barmerge.lookahead_off (no future data, ever):
1. Bollinger Bands: SMA(close, 20) basis, 2.0 × population standard deviation.
2. Keltner Channels: the same SMA(close, 20) basis, with band width = SMA of True Range over 20 bars (simple average of TR — not Wilder's ATR) at three multipliers: 1.0, 1.5, 2.0.
3. A squeeze is on when the Bollinger Bands sit fully inside the Keltner Channel on both sides. The narrower the Keltner band that still contains the BB, the deeper the compression — hence the 1.0-multiplier band defines the high squeeze, 1.5 the mid, 2.0 the low.
4. Momentum is the linear regression of price's deviation from the average of the Donchian midline and the SMA, over the same 20 bars.
By default the board evaluates confirmed bars only: every row shows the last fully closed bar of its timeframe, so a dot or arrow never changes after it appears. See Limitations for the tradeoff.
Inputs
- Squeeze length — lookback for BB, KC and momentum (default 20, the canonical TTM setting).
- Confirmed HTF bars only — ON (default): stable, non-repainting readings that lag up to one bar of each row's timeframe. OFF: rows track the still-forming higher-timeframe bar — more current, but the reading can flip until that bar closes.
- Table position / Table size — where the board sits and how large it renders.
How to use it
Apply it to a 15m chart (or lower) so all five rows populate. Scan the Sqz column top-to-bottom: multiple orange/red dots stacked across timeframes indicate multi-horizon compression — historically the precondition for expansion moves. Then read the Mom column for directional lean while the compression resolves. The board is a context tool: it tells you where energy is stored, not when or in which direction it must release.
Limitations — please read
- Confirmed-bar lag: with the default non-repainting mode, the Weekly row updates once per week, the Daily row once per day, etc. That is the honest cost of stability. Turning the toggle off shows the live forming bar instead, and those readings can change until the bar closes.
- Rows below the chart's timeframe show "–": Pine's request.security() cannot reliably reconstruct lower-timeframe series, so instead of showing a possibly wrong dot the board declines to show one. Use a 15m chart to see everything.
- A squeeze has no direction. Compression means stored energy, not a buy or sell signal. The momentum color is a lean, not a prediction.
- Warm-up: each timeframe needs about 20 bars of history before its row populates (shown as "·" until then).
This board covers one symbol — the chart's.
Wskaźnik

Wskaźnik

Wskaźnik

Wskaźnik

Quick Level InputsPlot levels by typing them, not by drawing them
OVERVIEW
Plot horizontal levels by typing prices instead of dragging lines. Paste a
comma-separated list, pick a color, done. Six independent groups, each
optionally bound to its own ticker, so a single instance can hold level sets
for multiple symbols and swap between them automatically as you change charts.
THE PROBLEM IT SOLVES
Drawing tools are fine until your prep produces a *list*. Pivots, prior
session highs/lows, gamma strikes, VWAP anchors — if the output of your
process is numbers, translating them into hand-dragged lines is slow and
imprecise. Typing the price is exact and takes a second.
The usual catch with a Pine-based approach is that indicator inputs aren't
tied to a symbol: switch the chart and your ES levels are sitting on NQ. This
script fixes that with per-group ticker binding.
FEATURES
• Unlimited levels per group — just type or paste "5312, 5288.5, 5250"
• 6 independent groups, each with its own color, width, style, and label text
• Per-group ticker binding — blank draws on any symbol; set a ticker and that
group only appears on that chart
• Zone shading — pair levels to shade bands for chop zones, expected pivot
ranges, or supply/demand
• Price-scale tags — levels show as colored price tags on the right axis
• Full color pickers with opacity, plus a master opacity fade for all lines
• Extend right / both / none
• Optional on-chart labels with adjustable size and bar offset
• Fails quietly — an unmarked ticker simply draws nothing
HOW TO USE
1. Add to chart and open settings.
2. In any group, type your levels into the Levels field, separated by commas:
5312, 5288.5, 5250
Semicolons work too. Spaces are ignored. Unparseable entries are skipped
rather than breaking the script.
3. Pick a color, width, and line style for that group.
4. Optional: set a Ticker to bind the group to one symbol. Leave it blank to
draw on every symbol.
Think of groups as buckets, not rows. A typical setup:
Group 1 — red, solid, width 2 → key pivots
Group 2 — blue, solid, width 1 → secondary levels
Group 3 — amber, "Solid + Zone" → expected chop zone
ZONES
Choose any "+ Zone" style and the group's levels pair up sequentially:
5340, 5325 → one shaded band
5340, 5325, 5280, 5262 → two shaded bands
Order within a pair doesn't matter (high/low is sorted for you). An odd
leftover level draws as a plain line. Fill transparency is set by "Zone fill
opacity".
MULTI-SYMBOL WORKFLOW
Set Group 1's ticker to ES1! and Group 2's to NQ1!, each with its own levels.
Flip the chart between the two symbols and the correct set appears
automatically — one indicator instance, no duplicate copies, no retyping.
Blank-ticker groups act as a "draws on everything" layer.
SETTINGS
• Show price labels (on line) — text labels riding on each level
• Show levels in price scale — colored tags on the right axis
• Label size / Label offset — offset pushes labels N bars right, clear of
price action
• Extend — Right, Both, or None
• Master opacity — fades every line at once; at 100 each group's own
color-picker opacity is used as-is
• Zone fill opacity — higher is more transparent
NOTES AND LIMITS (read these)
• Price-scale tags cover the FIRST 20 LEVELS in group order. Pine requires a
fixed number of plot() calls, so this can't be unbounded. Levels beyond 20
still draw as lines and labels normally — they just don't get an axis tag.
Zones consume two tags each (high and low).
• Color, width, and style are per GROUP, not per individual level. That's the
deliberate tradeoff for pasteable lists. Use a separate group per color.
• Levels are stored per indicator instance in your chart layout — not per
symbol in TradingView's own storage. Ticker binding controls VISIBILITY,
not storage. Save your layout to persist them.
• Drawing happens once on the last bar and objects are cleaned up on redraw,
so it stays light regardless of history length.
CREDITS
The input model here — grouped, comma-separated level strings with per-group
symbol binding, and the zone concept — is based on "Quick Levels" by
@SamRecio. This is an independent rewrite rather than a fork: it adds full
color pickers (instead of a fixed color list), price-scale tags, an extend
option, master opacity, multiple zones per group, and single-pass rendering
on the last bar; and it removes the runtime error on unmarked tickers. Credit
to SamRecio for the original design. Licensed MPL 2.0. Wskaźnik

Balanced Price Range (BPR) [TakingProphets]OVERVIEW
The Balanced Price Range (BPR) study identifies areas where two opposing fair value gaps overlap in price. It marks the shared region between an inverted fair value gap and the newly formed gap that caused the inversion, tracking these zones forward in time until they are invalidated.
PURPOSE AND SCOPE
-----------------------------------------------------------------------------------------------
This study is intended for analytical and educational use. It automates the visual identification of overlapping gap regions so that a chart reader does not need to manually measure where two opposing fair value gaps intersect.
The study does not generate trade signals, recommendations, or forecasts. All markings are analytical references only.
LOGIC STRUCTURE
-----------------------------------------------------------------------------------------------
The study first identifies standard fair value gaps.
When an existing fair value gap is inverted by a confirmed candle close through it, the study checks whether the move responsible for that inversion also formed a new fair value gap in the opposing direction.
If it did, the study calculates the overlapping price region shared by the original gap and the newly formed opposing gap. That shared region is the Balanced Price Range.
If the two gaps do not share any overlapping price, no zone is drawn.
A bullish gap inverted downward by a bearish gap produces a bearish Balanced Price Range. A bearish gap inverted upward by a bullish gap produces a bullish Balanced Price Range.
A zone is invalidated when price closes back through it against its direction. A bearish zone is invalidated on a confirmed close above the zone high. A bullish zone is invalidated on a confirmed close below the zone low. Invalidated zones are removed from the chart and are not restored.
All state transitions require a confirmed bar close. Wicks and intrabar movement do not trigger detection or invalidation.
COMPONENTS AND VISUALS
-----------------------------------------------------------------------------------------------
Balanced Price Range zones are drawn as boxes spanning the overlapping price region and extended forward in time.
Bullish and bearish zones are styled independently.
An optional gradient renders each zone in graded bands at the zero, twenty five, fifty, seventy five, and one hundred percent levels of the zone, each with independent color, style, and thickness settings.
Optional labels identify each zone as a Balanced Price Range, positioned outside the lower right of the zone, with selectable label sizes.
INPUT CATEGORIES
-----------------------------------------------------------------------------------------------
General settings control detection sensitivity, minimum zone sizing, and how many zones are displayed on the chart.
Style settings control zone colors, gradient bands, label visibility, and label sizing for bullish and bearish zones independently.
USAGE GUIDELINES
-----------------------------------------------------------------------------------------------
This study is intended as a contextual reference for observing how price interacts with regions where opposing gaps overlap.
Zones may be used as study markers for observation and journaling. They are not entries, exits, or targets.
The study is designed for use alongside a reader's own analysis rather than in isolation.
OPERATIONAL NOTES AND LIMITATIONS
-----------------------------------------------------------------------------------------------
Because the overlapping region is by definition smaller than either source gap, zones can be narrow on lower timeframes. The minimum sizing filter is provided to manage this.
Detection depends on confirmed closes, so zones appear only after the relevant candle has closed.
Historical and real time behavior may differ in appearance as bars confirm.
Past chart behavior does not indicate future behavior. This study describes structure that has already formed.
ORIGINALITY AND ATTRIBUTION
-----------------------------------------------------------------------------------------------
This implementation is original code. The underlying concepts of fair value gaps, gap inversion, and balanced price ranges are widely discussed within the trading education community and are not claimed as proprietary.
TERMS AND DISCLAIMER
-----------------------------------------------------------------------------------------------
This study is provided for educational and analytical purposes only. It does not constitute financial advice, investment advice, or a recommendation to buy or sell any instrument.
Trading involves substantial risk of loss. Any decisions made are the sole responsibility of the user. Wskaźnik

Buyers/Sellers Trapped V2This spots the bar where price spikes hard one way, then reverses and closes back against the spike. Whoever chased the move is trapped, and price usually keeps going the way it reversed.
I first published a version of this in 2017. This is the rebuild.
On the chart
*ST (green, up arrow): sellers trapped after a down spike. Bullish continuation cue.
*BT (red, down arrow): buyers trapped after an up spike. Bearish continuation cue.
*Trend filter (EMA + slope) highlights signals that line up with the trend and fades or hides the rest. The trend-aligned ones are the setups that matter.
*ATR-buffered stop just beyond the spike, so invalidation isn't sitting on the wick.
*Exit marker when the trend flips (price closes back through the MA) or the stop gives out.
How I use it
*Trade it with the trend, not against it. A trap in the direction of an established trend is a continuation entry, or a spot to add to a position you already hold.
*Stop goes an ATR beyond the spike.
Don't cap it with a tight target. The spike makes the stop wide, so a small fixed target pays you badly for the risk. Let it run and exit on the trend flip. In my own testing across crypto, riding to the trend flip beat every fixed target, and the long side carried most of the edge.
*Strongest in trending markets, noisy in chop, so lean on the trend filter. Alerts are built in for the entries, the trend-aligned entries, and the exit.
Free to use, feedback welcome.
Cheers,
Ivan Labrie. Wskaźnik

Break & Re-Test Zones v5.2 Outcome AuditHere's the full description of the indicator — what it is, what it draws, and how it thinks.
What it is
It's a TradingView indicator that automates the Break & Re-Test strategy on 15-minute Gold and NQ futures. It finds support/resistance zones by itself, watches for one to break, waits for price to come back and confirm the flip, and only then fires a buy or sell signal — with entry, stop, and targets pre-calculated. Two versions exist: the indicator (v5.1) for live trading and chart-reading, and a strategy sibling that runs the identical logic through TradingView's backtester.
What it draws — the five layers
1. Support & resistance zones. Built automatically from swing pivots, drawn as bands (not lines), and colour-coded by where price sits right now: green below price = support, red above = resistance, gray = price inside it ("IN TEST"). Each zone is also classified PRIMARY (solid thick border, likely to hold — earned by having 2 of: multiple touches, overlap with a higher-timeframe level, or a round number inside it) or SECONDARY (dashed, likely to break). White labels show the price and touch count. This is the map.
2. The armed state. When a candle body closes through a zone, that zone turns orange with a "RETEST? / ARMED" label — meaning a break happened and the indicator is now watching for the pullback. It's a watch notice, never an entry, and it lives only while the setup is genuinely armed.
3. The signal / trade package. When price returns and a confirmation candle closes back on the breakout side, the entry fires: a coloured arrow at the candle, a banner with direction and confluence grade ("LONG @ …"), plus dotted rails to the entry, a hollow-circle stop, and blue-square TP1/TP2 targets. Stop goes beyond the zone; targets sit at 1.5R and 2R.
4. The outcome audit. Every fired trade tracks itself: stopped out, the whole package erases; reaches TP1, it's immortalised as a yellow-bordered rectangle spanning the winning run. Only the last couple of winners stay — a pattern library of what worked (winners-only by design, so it's study material, not a scoreboard).
5. Reference levels & tables. Stepped lines mark the previous day's and previous hour's high/low (the walls and fences other traders watch). A dashboard shows session, HTF bias, and zone counts; a pre-entry runsheet grades the nearest armed setup live against every rule (session, touches, gap, room, confluence, confirmation) and gives a GO / NO-TRADE verdict.
How it thinks — the engine
Under the hood it runs a per-zone state machine: each level independently moves live → broken → retested/failed/expired, so many setups can be tracked at once without interfering. Three principles govern everything: a break requires a body close through the zone (wick pokes are ignored); a retest needs a gap of at least one candle so the breakout candle can't be its own retest; and — critically — all decisions are made only at candle close, so signals, stops, and targets never drift intrabar or repaint.
Layered on top is a confluence grader (A/B/C) scoring each setup on higher-timeframe level overlap, breakout volume, and a quiet pullback — with an optional filter to trade only A or B+ setups. Session filters restrict signals to the high-volume London and New York windows (Asia is for marking levels, not trading them).
What it's for
Three jobs, in order of how you'd use them: it draws the map (which levels matter, which will hold vs break, for zone-to-zone planning), it triggers the trade (arms on break, fires on confirmed retest, with risk pre-set), and it keeps you honest (the audit shows real outcomes; the backtest sibling reports win rate and average R per grade so you tune on evidence, not vibes).
The one thing it deliberately doesn't do is pretend the strategy is a money printer — the audit only shows winners by design, and your first raw backtest came back at 25% win rate, which is exactly why the tuned strategy version and its per-grade stats exist: to find where the real edge lives before you risk anything. Wskaźnik

Wskaźnik

Ichimoku Cloud Thickness SpectrumOverview
Ichimoku Cloud Thickness Spectrum is an overlay for studying the geometry and relative thickness of the projected Ichimoku cloud. It plots the classical Tenkan-sen, Kijun-sen, Senkou Span A, Senkou Span B, and an optional Chikou Span, then adds a configurable research layer derived only from the distance and relationship between the two Senkou spans.
The script is designed to make three questions easier to inspect:
- How wide is the projected cloud in a unit suited to the current instrument?
- How unusual is that width compared with the cloud's own recent history?
- Is the smoothed cloud thickness expanding, contracting, or comparatively stable?
This is a context and visualization tool. It does not generate buy or sell instructions, forecasts, targets, stops, position sizing, or performance claims.
Original contribution
Cloud thickness is a known Ichimoku concept. The original contribution of this implementation is the integrated workflow used to transform raw Span A/B distance into a configurable research display:
1. Selectable ATR, percentage, or raw-price normalization.
2. Rolling empirical percentile ranking of the selected thickness measure.
3. Percentile-weighted cloud opacity and an optional dense inner core.
4. A stabilized expansion/contraction spine with a near-zero denominator floor and release-ratio hysteresis.
5. Confirmed thin-cloud seams filtered by thin-state membership, two-sided prominence, and minimum spacing.
6. Directional projected-cloud twist markers.
7. Separate handling of the newly calculated forward cloud and the historically shifted cloud aligned with the current price bar.
8. A bilingual confirmed/live readout, confirmed-bar alerts, and Data Window diagnostics.
The classical Ichimoku formulas are standard, widely known calculations. The percentile, motion-state, seam-filtering, visualization, readout, and alert logic were implemented for this script. No source code from another Community Script is reused.
Core calculations
- Tenkan-sen: midpoint of the highest high and lowest low over the Conversion length.
- Kijun-sen: midpoint of the highest high and lowest low over the Base length.
- Senkou Span A: average of Tenkan-sen and Kijun-sen.
- Senkou Span B: midpoint of the highest high and lowest low over the Span B length.
- Raw cloud thickness: absolute distance between Senkou Span A and Senkou Span B.
- Cloud midpoint: average of Senkou Span A and Senkou Span B.
Thickness modes and percentile ranking
- ATR: raw cloud thickness divided by ATR. This is the default and relates cloud width to recent price range.
- Percent: raw cloud thickness divided by the absolute close, multiplied by 100.
- Raw: the unnormalized price distance between Span A and Span B.
The selected measure is ranked against its own rolling history with a percent-rank calculation. A reading near 10 is relatively thin within the selected lookback, while a reading near 90 is relatively thick. The result is specific to the symbol, timeframe, settings, and available history; it is not a universal market-strength score.
Stabilized expansion and contraction
The selected thickness measure is smoothed with an EMA. A one-bar percentage change is then calculated. Near a cloud twist, Span A and Span B can converge and the previous thickness can approach zero, which can make an unrestricted percentage change unstable. To reduce this effect, the denominator cannot fall below a configurable fraction of a slower EMA baseline.
The state classifier also uses release-ratio hysteresis. Entry into expansion or contraction requires the main sensitivity threshold, while release from an existing state uses a smaller configurable threshold. This reduces bar-to-bar color chatter. The state uses the previous bar and does not rely on intrabar-only persistent memory.
Visual interpretation
- Teal cloud: Senkou Span A is at or above Senkou Span B.
- Red cloud: Senkou Span A is below Senkou Span B.
- More transparent cloud: lower thickness percentile.
- More visible cloud: higher thickness percentile.
- Dense inner core: optional emphasis when thickness percentile is above the selected threshold.
- Blue midpoint spine: thickness is in an expanding state.
- Purple midpoint spine: thickness is in a contracting state.
- Gray midpoint spine: thickness motion is inside the release threshold.
- Yellow upward/downward triangle: confirmed bullish/bearish projected-cloud twist.
- Small pink X: confirmed local thin-cloud seam that passed the thin-state, prominence, and spacing filters.
The cloud opacity and inner core encode relative thickness only. They do not guarantee support, resistance, continuation, reversal, or breakout behavior.
Filtered thin-cloud seams
A thin seam is not every low-thickness bar. It must be a confirmed local minimum in the thickness percentile, remain at or below the user-defined thin threshold, rebound by at least the selected prominence on both sides, and pass the minimum-spacing filter.
The pivot becomes known only after the selected number of right-side bars has closed. By default, a marker is not placed to the left of the bar where confirmation became available. The optional Allow seam placement before confirmation setting can place the marker at the original pivot-projected cloud position after confirmation. This changes the visual location only and does not make the event available earlier.
Projected cloud versus current aligned cloud
The newly calculated Span A and Span B values are displayed forward by the selected displacement. This positive offset shifts calculations made from current and historical bars into future chart positions; it does not access future market data.
Price-context calculations use a different alignment. They reference the historically shifted spans that are actually visible at the current price bar. Optional inside-cloud highlighting and current-cloud transition alerts therefore do not compare current price with the newly calculated cloud plotted in the future.
Forward readout, alerts, and research outputs
The three-line readout displays the thickness state and percentile, the selected normalized thickness value and motion state, and the future-cloud direction with Live or Confirmed status. English is the default. Japanese changes the readout, hover tooltip, and combined dynamic alert messages; input names and tooltips are bilingual.
Use confirmed values in readout is enabled by default. While the latest realtime bar is open, the label uses the previous closed bar. Once the latest bar is confirmed, it uses that bar. Users can disable the setting to inspect the open realtime bar, in which case the label shows Live and may change until close.
Confirmed-bar alert conditions are available for projected twists, thin/thick state transitions, current-cloud position transitions, expansion/contraction changes, and filtered thin seams. A combined bilingual alert is also available through Any alert() function call. Additional raw, normalized, percentile, motion, seam, current-cloud, direction, and state values are provided in the Data Window.
Realtime behavior and limitations
The script does not use request.security(), lookahead, or future bars. On an open realtime bar, Tenkan-sen, Kijun-sen, the projected spans, cloud opacity, and motion state can update as the bar's high, low, and close change. Confirmed historical values do not use intrabar-only memory. The supplied alert conditions are evaluated on confirmed bars, and the combined alert() call uses once-per-bar-close frequency.
Percentile readings require sufficient history and can show a warming-up state. Results depend on the symbol, timeframe, Ichimoku lengths, normalization basis, percentile lookback, and available data. Non-time-based charts and sparse datasets may behave differently from standard time-based candles.
A thick cloud is not automatically strong support or resistance. A thin or contracting cloud is not a breakout prediction. This script provides research context and should be combined with the user's own analysis and risk process.
日本語概要
Ichimoku Cloud Thickness Spectrumは、一目均衡表の将来雲について、方向だけでなく、厚み、履歴内の相対順位、拡大・収縮状態を研究するためのオーバーレイ型インジケーターです。転換線、基準線、先行スパン1・2、任意の遅行スパンを表示し、追加分析はすべて先行スパン1と2の距離および関係から算出します。
主な特徴
- 雲の厚みをATR比率、価格比率、価格差から選択可能。
- 選択した厚みを直近履歴内のパーセンタイルへ変換。
- 厚み順位を雲の透明度と任意の高密度インナーコアへ反映。
- ゼロ近傍の分母下限とヒステリシスを備えた拡大・収縮中心線。
- 薄い状態、左右プロミネンス、最小間隔を満たした確認済み局所薄化点。
- 上向き・下向きを分けた確認済み将来雲ツイスト。
- 将来へ描画する新規計算雲と、現在価格バーへ整列した過去計算雲を分離。
- 英語・日本語を切り替えられる将来ラベル、確定足アラート、データウィンドウ研究値。
雲の厚みという概念自体は既知です。本実装の差異は、生の雲幅を正規化し、履歴順位化し、厚みの動きを安定化し、薄化点を確認・選別し、それらを一貫した視覚表現と研究出力へ統合している点です。標準一目均衡表の計算式は広く知られた古典計算であり、追加した順位化、状態判定、薄化点フィルター、表示、ラベル、アラートのロジックは本スクリプト用に実装しています。他のCommunity Scriptのソースコードは再利用していません。
表示の読み方
- 青緑の雲: 先行スパン1が先行スパン2以上。
- 赤の雲: 先行スパン1が先行スパン2未満。
- 透明度が高い雲: 厚み順位が低い。
- 濃い雲とインナーコア: 厚み順位が高い。
- 青の中心線: 厚みが拡大状態。
- 紫の中心線: 厚みが収縮状態。
- 灰色の中心線: 安定状態。
- 黄色の三角: 確認済みの上向き・下向き将来雲ツイスト。
- 小さなピンクのX: 条件を満たした確認済み局所薄化点。
厚み順位は銘柄、時間足、設定、参照期間、利用可能な履歴に依存する相対値です。雲の濃さやインナーコアは支持抵抗の保証ではありません。
確認、シフト、ライブ動作
将来雲は、現在および過去バーから計算した先行スパンを正のoffsetで将来位置へ描画したもので、未来データを取得していません。現在価格との関係には、現在バー上に実際に整列している過去計算の先行スパンを使用します。
薄化点は右側に指定本数の確定バーを必要とするため、認識に意図的な遅延があります。初期設定では確認可能になったバーより左側へ表示しません。任意設定で元の投影位置へ表示する場合も、認識自体は確認後です。
未確定リアルタイムバーでは、高値・安値・終値の更新に伴い、転換線、基準線、先行スパン、雲の透明度、拡大・収縮状態が終値確定まで変化する場合があります。将来ラベルは初期設定で確定値を使用し、用意したアラートは確定足で判定します。
本インジケーターは研究・可視化ツールです。売買指示、将来予測、目標価格、損切り、ポジションサイズ、成績統計、投資助言を提供しません。厚い雲を必ず強い支持抵抗、薄い雲や収縮中の雲を必ずブレイクする状態とは定義していません。 Wskaźnik
