Daily Protocol [#] by @shulktrades@shulktrades aka Shulkins aka shulk
Open Source Script created from the code “ICT Everything” by @coldbrewrosh
*Adjusted Key Times and Standard Deviations to better fit my model*
Daily Protocol Indicator - Description
Overview
The Daily Protocol indicator is a comprehensive trading tool designed to help traders identify and visualize key intraday time-based levels and sessions for forex and other markets. This indicator automatically marks important market opening times, session ranges, and standard deviation projections to assist in technical analysis and trade planning.
Key Features
Time-Based Vertical Lines
Midnight Open (00:00): Marks the start of each trading day
News Open (08:30): Highlights the typical economic news release time
NY AM Open (09:30): Identifies the US equity market opening
Opening Price Lines
Midnight Opening Price: Tracks the price at market day start
News Opening Price (08:30): Shows the price level at news time
NY AM Opening Price (09:30): Displays equity market open price
Afternoon Opening Price (13:30): Optional afternoon session marker
Weekly & Monthly Opening Prices: Higher timeframe reference levels
Session Range Boxes
London Session (LNDN): 02:00-05:00 range with optional standard deviation projections
Asian Session (ASIA): 20:00-00:00 range with optional standard deviation projections
NY AM Session (NYAM): 09:30-10:00 range with optional standard deviation projections
Standard Deviation Projections
Automatically calculates and displays 1-4 standard deviation levels based on session ranges
Configurable directional display (both sides, upside only, or downside only)
Helps identify potential target zones and reversal areas
Additional Features
Day of Week Labels: Clearly marks each trading day
Customizable Timezone: Supports multiple global timezones
Historical Lines Toggle: Option to show/hide past levels for cleaner charts
Terminus Settings: Control how far price lines extend into the future
Color Customization: Full control over all colors, line styles, and widths
Range Statistics Table: Displays current session ranges and pip counts (forex only)
Best Use Cases
Identifying overnight key times and structure before market opens for NY
Planning entries around major session times
Setting targets using standard deviation projections
Understanding market structure through time-based analysis
Backtesting strategies based on session behavior
Timeframe Recommendation
Works best on intraday timeframes (1-60 minutes). The indicator automatically hides on timeframes above 61 minutes to prevent chart clutter.
Customization
Extensive settings allow traders to:
Enable/disable any individual component
Adjust all colors, line styles, and widths
Control label display and formatting
Set timezone preferences
Configure standard deviation calculations
Choose which sessions and times to display
This indicator is ideal for traders who follow time-based trading methodologies and want to incorporate structured intraday analysis into their workflow.
Pesquisar nos scripts por "backtesting"
ICT/SMC Holy GrailThe Holy Grail, with its backtesting feature to check win rates, is all you need to do when placing orders!
Dual MTF Confirmed Trend Strategy (5m Entry / 15m MACD & RSI) v1That is a detailed Dual Multi-Timeframe (MTF) Confirmed Trend Strategy written in Pine Script for TradingView. The core idea of this strategy is to only take entry signals on a faster timeframe (5-minute) when the trend is strongly confirmed on a slower, higher timeframe (15-minute). This aims to reduce false signals and trade in the direction of the dominant trend. Here is an explanation of how the strategy works, broken down by section:
1. 5-Minute Entry Filters 🚀This section calculates several indicators on the current 5-minute chart to identify potential trade setups. A position is only considered if all 5-minute conditions align.
Supertrend: A trend-following indicator based on Average True Range (ATR).
Long Condition: The closing price must be above the Supertrend line.
Short Condition: The closing price must be below the Supertrend line.
Gann Hi-Lo (GHL): A trend indicator using Simple Moving Averages (SMA) of the high and low prices. GHL Line: Switches between the SMA of the Highs and the SMA of the Lows based on price action.
Long Condition: The closing price must be above the GHL line.
Short Condition: The closing price must be below the GHL line.
Exponential Moving Averages (EMAs): It uses a 50-period EMA and a 100-period EMA to confirm the short-term trend direction.
Long Condition: The closing price must be above both the 50 EMA and the 100 EMA.
Short Condition: The closing price must be below both the 50 EMA and the 100 EMA.
2. 15-Minute MTF Confirmation Filters ⏳This is the crucial step where the strategy verifies the trend on the slower, 15-minute timeframe using the request security function. This step acts as a gatekeeper to ensure the 5-minute trade aligns with the larger trend.
MACD Histogram (12, 26, 9): The difference between the MACD Line and the Signal Line.
Long Confirmation: The 15m MACD Histogram must be greater than 0 (MACD line is above the Signal line, indicating bullish momentum).
Short Confirmation: The 15m MACD Histogram must be less than 0 (MACD line is below the Signal line, indicating bearish momentum).
RSI (Relative Strength Index) (14): A momentum oscillator. The 50 level is often used to determine the general market trend.
Long Confirmation: The 15m RSI must be greater than 50 (indicating stronger bullish momentum).
Short Confirmation: The 15m RSI must be less than 50 (indicating stronger bearish momentum).
The Total 15m Confirmation is only true if both the MACD and the RSI confirmation signals align.
3. Trade Orders (Entry Logic) ⚖️
The strategy only executes a trade when the 5-minute entry conditions are met AND the 15-minute confirmation conditions are met.
Final Long Condition:
5m Conditions (Supertrend, GHL, EMA alignment) AND
15m Confirmation (MACD Hist > 0 AND RSI > 50)
Final Short Condition:
5m Conditions (Supertrend, GHL, EMA alignment) AND
15m Confirmation (MACD Hist < 0 AND RSI < 50)
When a trade signal is generated, the strategy:
Closes any opposite position (e.g., closes a "Short" trade if a "Long" signal appears).
Enters the new position (e.g., enters a "Long" trade).
This is designed as a reversal strategy where a new entry automatically closes the previous opposing trade.
In Summary
The strategy operates on a principle of Trend Alignment:
5-Minute Chart: Is used for Signal Timing (when exactly to enter the market).
15-Minute Chart: Is used for Trend Validation (is the overall market momentum supporting the signal?).
It's an attempt to capture short-term moves (5m signals) that are backed by strong medium-term momentum (15m confirmation), thereby aiming for higher probability trades.
This is not investment advice; it is recommended to perform optimization and backtesting for the assets intended for implementation.
Omega Correlation [OmegaTools]Omega Correlation (Ω CRR) is a cross-asset analytics tool designed to quantify both the strength of the relationship between two instruments and the tendency of one to move ahead of the other. It is intended for traders who work with indices, futures, FX, commodities, equities and ETFs, and who require something more robust than a simple linear correlation line.
The indicator operates in two distinct modes, selected via the “Show” parameter: Correlation and Anticipation. In Correlation mode, the script focuses on how tightly the current chart and the chosen second asset move together. In Anticipation mode, it shifts to a lead–lag perspective and estimates whether the second asset tends to behave as a leader or a follower relative to the symbol on the chart.
In both modes, the core inputs are the chart symbol and a user-selected second symbol. Internally, both assets are transformed into normalized log-returns: the script computes logarithmic returns, removes short-term mean and scales by realized volatility, then clips extreme values. This normalisation allows the tool to compare behaviour across assets with different price levels and volatility profiles.
In Correlation mode, the indicator computes a composite correlation score that typically ranges between –1 and +1. Values near +1 indicate strong and persistent positive co-movement, values near zero indicate an unstable or weak link, and values near –1 indicate a stable anti-correlation regime. The composite score is constructed from three components.
The first component is a normalized return co-movement measure. After transforming both instruments into normalized returns, the script evaluates how similar those returns are bar by bar. When the two assets consistently deliver returns of similar sign and magnitude, this component is high and positive. When they frequently diverge or move in opposite directions, it becomes negative. This captures short-term co-movement in a volatility-adjusted way.
The second component focuses on high–low swing alignment. Rather than looking only at closes, it examines the direction of changes in highs and lows for each bar. If both instruments are printing higher highs and higher lows together, or lower highs and lower lows together, the swing structure is considered aligned. Persistent alignment contributes positively to the correlation score, while repeated mismatches between the swing directions reduce it. This helps differentiate between superficial price noise and structural similarity in trend behaviour.
The third component is a classical Pearson correlation on closing prices, computed over a longer lookback. This serves as a stabilising backbone that summarises general co-movement over a broader window. By combining normalized return co-movement, swing alignment and standard price correlation with calibrated weights, the Correlation mode provides a richer view than a single linear measure, capturing both short-term dynamic interaction and longer-term structural linkage.
In Anticipation mode, Omega Correlation estimates whether the second asset tends to lead or lag the current chart. The output is again a continuous score around the range. Positive values suggest that the second asset is acting more as a leader, with its past moves bearing informative value for subsequent moves of the chart symbol. Negative values indicate that the second asset behaves more like a laggard or follower. Values near zero suggest that no stable lead–lag structure can be identified.
The anticipation score is built from four elements inspired by quantitative lead–lag and price discovery analysis. The first element is a residual lead correlation, conceptually similar to Granger-style logic. The script first measures how much of the chart symbol’s normalized returns can be explained by its own lagged values. It then removes that component and studies the correlation between the residuals and lagged returns of the second asset. If the second asset’s past returns consistently explain what the chart symbol does beyond its own autoregressive behaviour, this residual correlation becomes significantly positive.
The second element is an asymmetric lead–lag structure measure. It compares the strength of relationships in both directions across multiple lags: the correlation of the current symbol with lagged versions of the second asset (candidate leader) versus the correlation of lagged values of the current symbol with the present values of the second asset. If the forward direction (second asset leading the first) is systematically stronger than the backward direction, the structure is skewed toward genuine leadership of the second asset.
The third element is a relative price discovery score, constructed by building a dynamic hedge ratio between the two prices and defining a spread. The indicator looks at how changes in each asset contribute to correcting deviations in this spread over time. When the chart symbol tends to do most of the adjustment while the second asset remains relatively stable, it suggests that the second asset is taking a greater role in determining the equilibrium price and the chart symbol is adjusting to it. The difference in adjustment intensity between the two instruments is summarised into a single score.
The fourth element is a breakout follow-through causality component. The script scans for breakout events on the second asset, where its price breaks out of a recent high or low range while the chart symbol has not yet done so. It then evaluates whether the chart symbol subsequently confirms the breakout direction, remains neutral, or moves against it. Events where the second asset breaks and the first asset later follows in the same direction add positive contribution, while failed or contrarian follow-through reduce this component. The contribution is also lightly modulated by the strength of the breakout, via the underlying normalized return.
The four elements of the Anticipation mode are combined into a single leading correlation score, providing a compact and interpretable measure of whether the second asset currently behaves as an effective early signal for the symbol you trade.
To aid interpretation, Omega Correlation builds dynamic bands around the active series (correlation or anticipation). It estimates a long-term central tendency and a typical deviation around it, plotting upper and lower bands that highlight unusually high or low values relative to recent history. These bands can be used to distinguish routine fluctuations from genuinely extreme regimes.
The script also computes percentile-based levels for the correlation series and uses them to track two special price levels on the main chart: lost correlation levels and gained correlation levels. When the correlation drops below an upper percentile threshold, the current price is stored as a lost correlation level and plotted as a horizontal line. When the correlation rises above a lower percentile threshold, the current price is stored as a gained correlation level. These levels mark zones where a historically strong relationship between the two markets broke down or re-emerged, and can be used to frame divergence, convergence and spread opportunities.
An information panel summarises, in real time, whether the second asset is behaving more as a leading, lagging or independent instrument according to the anticipation score, and suggests whether the current environment is more conducive to de-alignment, re-alignment or classic spread behaviour based on the correlation regime. This makes the tool directly interpretable even for users who are not familiar with all the underlying statistical details.
Typical applications for Omega Correlation include intermarket analysis (for example, index vs index, commodity vs related equity sector, FX vs bonds), dynamic hedge sizing, regime detection for algorithmic strategies, and the identification of lead–lag structures where a macro driver or benchmark can be monitored as an early signal for the instrument actually traded. The indicator can be applied across intraday and higher timeframes, with the understanding that the strength and nature of relationships will differ across horizons.
Omega Correlation is designed as an advanced analytical framework, not as a standalone trading system. Correlation and lead–lag relationships are statistical in nature and can change abruptly, especially around macro events, regime shifts or liquidity shocks. A positive anticipation reading does not guarantee that the second asset will always move first, and a high correlation regime can break without warning. All outputs of this tool should be combined with independent analysis, sound risk management and, when appropriate, backtesting or forward testing on the user’s specific instruments and timeframes.
The intention behind Omega Correlation is to bring techniques inspired by quantitative research, such as normalized return analysis, residual correlation, asymmetric lead–lag structure, price discovery logic and breakout event studies, into an accessible TradingView indicator. It is intended for traders who want a structured, professional way to understand how markets interact and to incorporate that information into their discretionary or systematic decision-making processes.
Simple Grid Trading v1.0 [PUCHON]Simple Grid Trading v1.0
Overview
This is a Long-Only Grid Trading Strategy developed in Pine Script v6 for TradingView. It is designed to profit from market volatility by placing a series of Buy Limit orders at predefined price levels. As the price drops, the strategy accumulates positions. As the price rises, it sells these positions at a profit.
Features
Grid Types : Supports both Arithmetic (equal price spacing) and Geometric (equal percentage spacing) grids.
Flexible Order Management : Uses strategy.order for precise control and prevents duplicate orders at the same level.
Performance Dashboard : A real-time table displaying key metrics like Capital, Cashflow, and Drawdown.
Advanced Metrics : Includes Max Drawdown (MaxDD) , Avg Monthly Return , and CAGR calculations.
Customizable : Fully adjustable price range, grid lines, and lot size.
Dashboard Metrics
The dashboard (default: Bottom Right) provides a quick snapshot of the strategy's performance:
Initial Capital : The starting capital defined in the strategy settings.
Lot Size : The fixed quantity of assets purchased per grid level.
Avg. Profit per Grid : The average realized profit for each closed trade.
Cashflow : The total realized net profit (closed trades only).
MaxDD : Maximum Drawdown . The largest percentage drop in equity (realized + unrealized) from a peak.
Avg Monthly Return : The average percentage return generated per month.
CAGR : Compound Annual Growth Rate . The mean annual growth rate of the investment over the specified time period.
Strategy Settings (Inputs)
Grid Settings
Upper Price : The highest price level for the grid.
Lower Price : The lowest price level for the grid.
Number of Grid Lines : The total number of levels (lines) in the grid.
Grid Type :
Arithmetic: Distance between lines is fixed in price terms (e.g., $10, $20, $30).
Geometric: Distance between lines is fixed in percentage terms (e.g., 1%, 2%, 3%).
Lot Size : The fixed amount of the asset to buy at each level.
Dashboard Settings
Show Dashboard : Toggle to hide/show the performance table.
Position : Choose where the dashboard appears on the chart (e.g., Bottom Right, Top Left).
How It Works
Initialization : On the first bar, the script calculates the price levels based on your Upper/Lower price and Grid Type.
Entry Logic :
The strategy places Buy Limit orders at every grid level below the current price.
It checks if a position already exists at a specific level to avoid "stacking" multiple orders on the same line.
Exit Logic :
For every Buy order, a corresponding Sell Limit (Take Profit) order is placed at the next higher grid level.
MaxDD Calculation :
The script continuously tracks the highest equity peak.
It calculates the drawdown on every bar (including intra-bar movements) to ensure accuracy.
Displayed as a percentage (e.g., 5.25%).
Disclaimer
This script is for educational and backtesting purposes only. Grid trading involves significant risk, especially in strong trending markets where the price may move outside your grid range. Always use proper risk management.
SPY/QQQ Customizable Price ConverterThis is a minimalist utility tool designed for Index traders (SPX, NDX, RUT). It allows you to monitor the price of a reference asset (like SPY, QQQ) directly on your main chart without cluttering your screen.
Key Features:
1.🖱️ Crosshair Sync for Historical Data (Highlight): Unlike simple info tables that only show the latest price, this script allows for historical inspection.
· How it works: Simply move your mouse crosshair over ANY historical candle on your chart.
· The script will instantly display the closing price of the reference asset (e.g., SPY) for that specific time in the Status Line (top-left) or the Data Window. Perfect for backtesting and reviewing price action.
2.🔄 Fully Customizable Ticker: Default is set to SPY, but you can change it to anything in the settings.
e.g.
· Trading NDX Change it to QQQ.
· Trading RUT Change it to IWM.
3.📊 Clean Real-Time Dashboard:
· A floating table displays the current real-time price of your reference asset.
· Color-coded text (Green/Red) indicates price movement.
· Fully customizable size, position, and colors to fit your layout.
15m ORB Breakout NAS100 (5m Mgmt) v6 - OptimizedOpening Range Breakout Strategy
Buy and sell signals are given upon break of market session opening range. Best utilized for 30 minute NY opening range, managed on 5 min timeframe on NAS100. Tweak the settings for higher win rate on backtesting dashboard before implementing strategy.
Delta Signals NO REPINTA (FINAL)📢 New Indicator: Delta Signals NO REPAINT 🔥
Introducing my new indicator based on Order Flow Delta, designed to provide buy and sell signals with absolutely NO repainting — perfect for scalping, day trading, or swing trading.
This tool combines two powerful components:
✅ Order Flow Delta — Measures the real strength between buyers and sellers
✅ Smart Trend Filter — Only shows signals in the direction of the dominant trend
Together, they deliver cleaner, more accurate and more reliable signals, with clear entry markers on the chart and a delta histogram revealing real market pressure.
🚀 What’s Included?
🔹 Buy/Sell signals with NO repaint
🔹 Intelligent delta calculation
🔹 Trend filter using moving average
🔹 Clear labels on entry points
🔹 Visual delta histogram
🔹 Works great on Crypto, Forex, Indices & Stocks
🔹 Very lightweight and fast on TradingView
🎯 Why is it powerful?
Because it doesn't rely on lagging indicators — it reads the actual imbalance between buyers and sellers, often detecting strong moves before traditional indicators do.
This type of analysis is used by professional order flow traders, but now you have it on your TradingView chart in a simple, visual format.
🔥 Perfect for:
Scalpers who need precision
Day traders working breakouts and pullbacks
Swing traders seeking strong confirmations
Traders who want clean, NO-repaint signals
If you want a version with automatic TP/SL, alerts, or full backtesting, I can publish that as well.
Just let me know. 🚀📈
BybitMinOrderSizeBybit Order Quantity Compliance Library
This library provides all utility functions required for TradingView strategies
that execute orders on Bybit via webhooks.
Problem:
Bybit enforces two strict rules on every order submitted:
Minimum Order Size – each symbol has its own minimum quantity.
Quantity Precision – each symbol requires rounding to the correct number of decimals.
TradingView does not expose this metadata, so strategies can easily submit
quantities that Bybit rejects as invalid.
Solution (This Library):
This library embeds full Bybit contract metadata, including:
A complete mapping of Bybit symbols → minimum order size
A complete mapping of Bybit symbols → allowed precision (decimal places)
A helper to normalize tickers (removing `.P` suffix for Bybit perpetuals)
It also exposes utility functions to automatically make your quantities valid:
`normalizeTicker()` — removes `.P` for consistent lookup
`getMinOrderSize()` — returns the correct minimum order size
`getPrecisionForTicker()` — returns required quantity precision
`floorQty()` — floors quantities to valid minimum increments
`roundQty()` — rounds quantities to valid decimal precision
Use Cases:
Ensuring webhook strategies never send too-small orders
Rounding limit/market orders correctly before execution
Making Pine strategies execution-accurate for Bybit
Avoiding "order rejected: qty too small / invalid precision" errors
This library is recommended for:
Live trading via TradingView → Bybit webhooks
Backtesting strategies that simulate real Bybit constraints
Source: www.bybit.com
Updated: 2025-11-25 — Bybit contract metadata
normalizeTicker(symbol)
Normalizes Bybit perpetual tickers by removing the ".P" suffix.
precisionFromMinOrder(minOrder)
Derives precision (decimal places) from minimum order size.
getMinOrderSize(symbol)
Retrieves the minimum order size for the current or given symbol.
getPrecisionForTicker(symbol)
Retrieves the required quantity precision (decimal places) for a given Bybit symbol.
floorQty(qty, symbol)
Rounds a quantity down to the nearest valid minimum order size for a given symbol.
roundQty(qty, symbol)
Rounds a quantity to the valid precision for the specified symbol.
Marcaj Ore 07:00 și 18:00 (Stabil v2)For backtesting and remember times that you can be active in the market.
Oracle Protocol — Arch Public (Testing Clone) Oracle Protocol — Arch Public Series (testing clone)
This model implements the Arch Public Oracle structure: a systematic accumulation-and-distribution engine built around a dynamic Accumulation Cost Base (ACB), strict profit-gate exit logic, and a capital-bounded flywheel reinvestment system.
It is designed for transparent execution, deterministic behaviour, and rule-based position management.
Core Function Set
1. Accumulation Framework (ACB-Driven)
The accumulation engine evaluates market movement against defined entry conditions, including:
Percentage-based entry-drop triggers
Optional buy-below-ACB mode
Capital-gated entries tied to available ledger balance
Fixed-dollar and min-dollar entry rules (as seen in Arch public materials)
Automated sizing through flywheel capital
Range-bounded ledger for controlled backtesting input
Each qualifying buy updates the live ACB, maintains the internal ledger, and forms the next reference point for exit evaluation.
No forecasting mechanisms are included.
2. Profit-Gate Exit System
Exits are governed by the standard Arch public approach:
A sealed ACB reference for threshold evaluation
Optional live-ACB visibility
Profit-gate triggers defined per asset class
Candle-confirmation integration (“ProfitGate + Candle” mode)
Distribution only when the smallest active threshold is met
This provides a consistent cadence with published Arch diagrams and PDFs.
3. Once-Per-Rally Governance
After a distribution, the algorithm locks until price retraces below the most recent accumulation base.
Only after re-arming can the next profit gate activate.
This prevents over-frequency selling and aligns with the public-domain Oracle behaviour.
4. Quiet-Bars & Threshold Cluster Control
A volatility-stabilisation layer prevents multiple exits from micro-fluctuations or transient spikes.
This ensures clean execution during fast markets and high volatility.
5. Flywheel Reinvestment
Distribution proceeds automatically return to the capital pool where permitted, creating a closed system of:
Entry sizing
Exit proceeds
Ledger-managed capital state
All sizing respects capital boundaries and does not breach dollar floors or overrides.
6. Automation Hooks and Integration
The script exposes:
3Commas-compatible JSON sizing
Entry/exit signalling via alertcondition()
Deterministic event reporting suitable for external automation
This allows consistent deployment across automated execution environments.
7. Visual Tooling
Optional displays include:
Live ACB line
Exit-guide markers
Capital, state, and ledger panels
Realized/unrealized outcome tracking based on internal logic only
Visual components do not influence execution rules.
Operating Notes
This model is rule-based, deterministic, and non-predictive.
It executes only according to the explicit thresholds, capital limits, and state transitions defined within the script.
No discretionary or forward-looking logic is included.
Simple Line📌 Understanding the Basic Concept
The trend reverses only when the price moves up or down by a fixed filter size.
It ignores normal volatility and noise, recognizing a trend change only when price moves beyond a specified threshold.
Trend direction is visually intuitive through line colors (green: uptrend, red: downtrend).
⚙️ Explanation of Settings
Auto Brick Size: Automatically determines the brick/filter size.
Fixed Brick Size: Manually set the size (e.g., 15, 30, 50, 100, etc.).
Volatility Length: The lookback period used for calculations (default: 14).
📈 Example of Identifying Buy Timing
When the line changes from gray or red to green, it signals the start of an uptrend.
This indicates that the price has moved upward by more than the required threshold.
📉 Example of Identifying Sell Timing
When the line changes from green to red, it suggests a possible downtrend reversal.
At this point, consider closing long positions or evaluating short entries.
🧪 Recommended Use Cases
Use as a trend filter to enhance the accuracy of existing strategies.
Can be used alone as a clean directional indicator without complex oscillators.
Works synergistically with trend-following strategies, breakout strategies, and more.
🔒 Notes & Cautions
More suitable for medium- to long-term trend trading than for fast scalping.
If the brick size is too small, the indicator may react to noise.
Sensitivity varies greatly depending on the selected brick size, so backtesting is essential to determine optimal values.
❗ The Trend Simple Line focuses solely on direction—remove the noise and focus purely on the trend.
초대 전용 스크립트
이 스크립트에 대한 접근이 제한되어 있습니다. 사용자는 즐겨찾기에 추가할 수 있지만 사용하려면 사용자의 권한이 필요합니다. 연락처 정보를 포함하여 액세스 요청에 대한 명확한 지침을 제공해 주세요.
이 비공개 초대 전용 스크립트는 스크립트 모더레이터의 검토를 거치지 않았으며, 하우스 룰 준수 여부는 확인되지 않았습니다. 트레이딩뷰는 스크립트의 작동 방식을 충분히 이해하고 작성자를 완전히 신뢰하지 않는 이상, 해당 스크립트에 비용을 지불하거나 사용하는 것을 권장하지 않습니다. 커뮤니티 스크립트에서 무료 오픈소스 대안을 찾아보실 수도 있습니다.
작성자 지시 사항
.
c9indicator
면책사항
해당 정보와 게시물은 금융, 투자, 트레이딩 또는 기타 유형의 조언이나 권장 사항으로 간주되지 않으며, 트레이딩뷰에서 제공하거나 보증하는 것이 아닙니
Paulinho Signals – Cripto 5m/15m com Filtro de LateralidadeThis script is an automated Pine Script v6 strategy designed for short-term cryptocurrency trading, especially on 5-minute and 15-minute timeframes. It combines moving average crossovers, trend strength (ADX), volatility (ATR), and candlestick patterns to generate buy and sell signals with a fixed risk/reward management system.
How to Use:
- Apply to cryptocurrency charts on 5m or 15m timeframes.
- Adjust parameters to fit your preferences (EMA, RSI, ADX, ATR).
- Use for backtesting or as a decision-support tool.
Disclaimer:
This script is for educational purposes only and does not constitute financial advice. Always test on demo accounts before applying to live trading.
Multi Timeframe Bollinger Bands Spectrum [Ata]Multi-Timeframe Bollinger Bands Spectrum
Technical Overview
This script integrates multi-timeframe volatility analysis with volume-derived order flow estimation. By combining Bollinger Bands (statistical deviation) with internal candle volume logic, the indicator qualifies price movements to differentiate between sustained trends, reversals, and exhaustion events.
The system is designed to provide a structural context for price action, visualizing market regimes through a dual-zone spectrum and filtering signals based on the interaction between price location and specific volume thresholds.
Core Logic & Calculation
1. Volume Decomposition Algorithm
Instead of using total volume, the script estimates Buying Pressure vs. Selling Pressure based on the close position relative to the candle's High/Low range:
- Buying Volume (vb): Increases as the close approaches the High.
- Selling Volume (vs): Increases as the close approaches the Low.
This logic allows the detection of directional flow even within standard volume bars.
2. Statistical Spectrum
The indicator renders deviations from the Basis (SMA) as two distinct zones:
- Bullish Zone (Blue): Price positioning between the Basis and Upper Band.
- Bearish Zone (Red): Price positioning between the Basis and Lower Band.
This structure is applied across multiple timeframes (overlay) to visualize the macro trend context without noise.
3. Non-Repainting Execution
To ensure historical accuracy and reliability for backtesting, all higher-timeframe data is requested using "lookahead_off". Signals are confirmed only upon the closure of the respective timeframe's candle.
Signal Definitions
Signals are generated only when specific Volatility and Volume conditions intersect:
Reversal Setups (Reaction to Liquidity)
- WALL: Triggered when price rejects the Upper Band accompanied by Extreme Selling Volume (vs > Limit). This suggests active limit sell orders absorbing the rally.
- FLOOR: Triggered when price rejects the Lower Band accompanied by Extreme Buying Volume (vb > Limit). This suggests active limit buy orders absorbing the drop.
- ABSORP: Identifies absorption near the lower bands where selling pressure is met with passive buying (indicated by lower wicks and relative buy volume).
Momentum Setups (Trend Continuation)
- POWER: Validates a breakout above the Upper Band only if supported by Dominant Buying Volume and a strong candle body.
- PANIC: Validates a breakdown below the Lower Band only if supported by Dominant Selling Volume.
- TRAP: Marks failed breakouts where price exits the bands but volume analysis contradicts the move (e.g., low directional volume).
Exhaustion Setups (Statistical Extremes)
- CLIMAX/CRASH: Identifies anomalies where price deviates significantly from the mean (Extreme Deviation) or when volume reaches unsustainable levels relative to the average, often preceding a mean reversion.
Input Parameters
- Bollinger Logic: Configuration for Length and Standard Deviation Multiplier.
- Volume Thresholds: Adjustable factors for Minimum Volume (Trend) and Extreme Volume (Reversal/Climax).
- Timeframe Layers: Toggle visibility for up to 5 higher timeframes.
- Theme: Adjusts label contrast for Dark/Light backgrounds.
Disclaimer
This indicator is strictly for analytical purposes. It provides a visualization of past market data based on statistical and volumetric formulas. Users should apply their own risk management protocols.
MTF Scalper - alemicihanMulti-Timeframe Scalper Strategy: Aligning the Big Picture for Quick Gains
This article presents a robust futures trading strategy designed for high-frequency scalping in the crypto market. It’s built on the principle of minimizing risk by ensuring that short-term entries are always aligned with the dominant, higher-timeframe trend.
The Core Concept: Alignment is Key
A Balanced Trend Follower approach, now refined for rapid scalping, uses a Multi-Timeframe (MTF) confirmation system to filter out market noise and increase the probability of a successful trade.
The strategy operates on a Low Timeframe (LTF) chart (e.g., 3m, 5m, or 15m) but only executes trades if the direction is validated by three Higher Timeframes (HTF).
ComponentPurposeFunctionHTF (D, 4h, 1h) EMA => Trend Confirmation =>Checks if the current price is above/below all three Exponential Moving Averages (EMA 20). This provides a strong directional bias.
LTF (5m) Stochastic RSI => Momentum Entry => Generates the actual buy/sell signal by spotting a swift crossover, indicating fresh momentum in the direction of the confirmed HTF trend.
How The Signal Is Generated
Trend Alignment: The system first confirms the trend. If the price is trading above the Daily, 4-Hour, and 1-Hour EMAs, the market is deemed to be in a Strong LONG Trend. Only LONG signals are permitted.
Momentum Trigger: Once the trend is confirmed, a Long Signal is generated only when the Stochastic K-Line crosses above the D-Line, indicating a momentum shift (a pullback ending) towards the main trend direction.
Short Signal: The inverse logic applies to the Short Trend confirmation and entry signal.
Mandatory Risk Management: ATR-Based Exit
Given the high leverage nature of futures and scalping, static Stop-Loss (SL) and Take-Profit (TP) levels are inefficient. This strategy uses the Average True Range (ATR) indicator to dynamically set profit and loss targets based on current market volatility.
Stop Loss (SL): Set dynamically at 1.5 x ATR below (for long) or above (for short) the entry price. This gives the trade enough room to breathe without risking excessive capital.
Take Profit (TP): Set dynamically at 3.0 x ATR, establishing a robust Risk-to-Reward Ratio of 1:2.
Final Thoughts on Testing
This sophisticated approach combines the reliability of MTF analysis with the speed of momentum indicators. However, data analysis is key. Backtesting these parameters (EMA, ATR Multipliers, RSI/Stochastic lengths) on your chosen asset (like BTC/USDT or ETH/USDT) and timeframe is crucial to achieving optimal performance.
Multi-Timeframe TTM Squeeze Pro with alerts and screenersBased of John Carters TTM Squeeze. Must open the settings and select wether you want to match the timeframe in your chart. This must be done in the pinescreener as well otherwise results will not be correct.
---
# **Squeeze Momentum Pro – Enhanced Screener + EMA Cross Alerts**
This custom version of the Squeeze Momentum indicator expands the standard TTM-style squeeze with screening and automated alert logic so you can quickly find high-quality setups across many tickers.
---
## **What This Script Does**
This indicator plots a three-level squeeze visual similar to TTM Squeeze:
Dot meanings in this indicator
Orange dot:
Strongest squeeze – Bollinger Bands are inside the tightest Keltner level (highest volatility compression).
Red dot:
Medium squeeze – still compressed, but not as tight as orange.
Black dot:
Weak squeeze / lowest level of volatility compression.
Price is coiling, but not as tight as the higher levels.
Green dot (“Fired”):
Squeeze has released — Bollinger Bands have expanded out of the channels and momentum is moving.
A momentum histogram is plotted to show directional pressure during the squeeze.
---
## **Major Improvements Added**
### **① Screenable Conditions for Stock Scanners**
This version includes multiple `alertcondition()` flags so the script can be used as a **Pine Screener inside TradingView**.
Currently it can screen for:
✔ Price closing above the 50-SMA
✔ Presence of an **orange (strong) squeeze dot**
✔ 6/20 EMA crossover signals inside a squeeze
These can be used inside the TradingView Screener or in watchlists to automatically highlight qualifying tickers.
---
### **② 6/20 EMA Trend Signals (Filtered by Squeeze)**
A crossover system was added:
* **Bullish Signal:** 6 EMA crosses above 20 EMA
* **Bearish Signal:** 6 EMA crosses below 20 EMA
But **these signals only trigger if the market is in a red or orange squeeze**, which helps remove noise and focus on valid setups.
---
### **③ Visual Markers Under the Histogram**
Whenever an EMA crossover occurs during a squeeze:
* A **green up-triangle** is plotted for a bullish cross
* A **red down-triangle** for a bearish cross
These markers are drawn **below the histogram**, keeping the display clean while still providing quick visual cues.
---
### **④ Fully Non-Repainting Logic**
All signals and squeeze calculations are based on standard fully-resolved `ta.*` functions, making the results stable both in backtesting and real-time.
---
## **Who This Script Helps**
This version is ideal for:
* Traders who use TradingView’s screener and want automated breakout/continuation filtering
* Traders who scan large watchlists for squeeze setups
* Users who want trend confirmation during volatility compression
---
## **How to Use It**
1. Add the script to your chart
2. Open TradingView Alerts or Screener
3. Select the conditions you want, for example:
* *“Orange Squeeze Detected”*
* *“Squeeze Fire after 3 squeeze dots*
* *“4 REd Dots in a row.”*
* *“Buy Alert”*
* *“EMA 6/20 Bullish Crossover (Squeeze Only)”*
* *“Close Above 50 SMA”*
Once active, TradingView will automatically flag symbols that meet the criteria.
---
## **Summary**
This enhanced Squeeze Momentum indicator turns the standard TTM-style visual into a **true screening and alert system** by adding:
* Multi-level squeezes
* EMA trend signals
* Screener-compatible alert conditions
* Clean visual signals
* Non-repainting logic
It helps traders quickly locate high-probability setups across any watchlist or market.
Hash Momentum IndicatorHash Momentum Indicator
Overview
The Hash Momentum Indicator provides real-time momentum-based trading signals with visual entry/exit markers and automatic risk management levels. This is the indicator version of the popular Hash Momentum Strategy, designed for traders who want signal alerts without backtesting functionality.
Perfect for: Live trading, automation via alerts, multi-indicator setups, and clean chart visualization.
What Makes This Indicator Special
1. Pure Momentum-Based Signals
Captures price acceleration in real-time - not lagging moving average crossovers. Enters when momentum exceeds a dynamic ATR-based threshold, catching moves as they begin accelerating.
2. Automatic Risk Management Visualization
Every signal automatically displays:
Entry level (white dashed line)
Stop loss level (red line)
Take profit target (green line)
Partial TP levels (dotted green lines)
3. Smart Trade Management
Trade Cooldown: Prevents overtrading by enforcing waiting period between signals
EMA Trend Filter: Only trades with the trend (optional)
Session Filters: Trade only during Tokyo/London/New York sessions (optional)
Weekend Toggle: Avoid low-liquidity weekend periods (optional)
4. Clean Visual Design
🟢 Tiny green dot = Long entry signal
🔴 Tiny red dot = Short entry signal
🔵 Blue X = Long exit
🟠 Orange X = Short exit
No cluttered labels or dashboard - just clean signals
5. Professional Alerts Ready
Set up TradingView alerts for:
Long signals
Short signals
Long exits
Short exits
How It Works
Step 1: Calculate Momentum
Momentum = Current Price - Price
Normalized by standard deviation for consistency
Must exceed ATR × Threshold to trigger
Step 2: Confirm Acceleration
Momentum must be increasing (positive momentum change)
Price must be moving in signal direction
Step 3: Apply Filters
EMA Filter: Long only above EMA, short only below EMA (if enabled)
Session Filter: Check if in allowed trading session (if enabled)
Weekend Filter: Block signals on Sat/Sun (if enabled)
Cooldown: Ensure minimum bars passed since last signal
Step 4: Generate Signal
All conditions met = Entry signal fires
Lines automatically drawn for entry, stop, and targets
Step 5: Exit Detection
Opposite momentum detected = Exit signal
Stop loss or take profit hit = Exit signal
Lines removed from chart
⚙️ Settings Guide
Core Strategy
Momentum Length (Default: 13)
Number of bars for momentum calculation. Higher values = stronger signals but fewer trades.
Aggressive: 10
Balanced: 13
Conservative: 18-24
Momentum Threshold (Default: 2.25)
ATR multiplier for signal generation. Higher values = only trade the biggest momentum moves.
Aggressive: 2.0
Balanced: 2.25
Conservative: 2.5-3.0
Risk:Reward Ratio (Default: 2.5)
Your target profit as a multiple of your risk. With 2.2% stop and 2.5 R:R, your target is 5.5% profit.
Conservative: 3.0+ (need 25% win rate to profit)
Balanced: 2.5 (need 29% win rate to profit)
Aggressive: 2.0 (need 33% win rate to profit)
Macketings 1min ScalpingThis is a hyper-reactive scalping strategy designed for the 1-minute chart. It utilizes a strict four-EMA hierarchy (80/90/340/500) to ensure trades are only taken in the strongest aligned market trend. The strategy is built to be extremely tight on risk and focuses on capturing the immediate, high-momentum swing that follows a confirmed EMA retest or breakout.
Key Mechanics (How it Works):
Strict Trend Alignment: Entry is only permitted when the faster EMA band (80/90) and the price action are correctly aligned with the slow trend (340/500).
Long: EMA 80/90 must be above EMA 340/500, AND EMA 340 must be above EMA 500. (And vice-versa for Short.)
Expanded Retest Entry: The strategy waits for the price to retest or briefly enter the 80/90 band, then immediately enters upon the confirmed momentum breakout from that band.
Dynamic Risk Management (Tight Ride): The strategy is engineered to ride the wave aggressively while protecting capital immediately:
Extremely Tight Initial Stop Loss (0.2% default): Limits initial risk instantly.
Break-Even Security: Once profit hits 0.3%, the Stop Loss is automatically trailed to secure 0.2% profit (a risk-free trade).
Aggressive Exit Logic: Positions are closed not only upon hitting the Take Profit target (2.5%) but also immediately if the 80/90 EMA band crosses the 340 EMA, signaling a critical loss of momentum.
Disclaimer:
This strategy requires high-liquidity instruments and is best used on low timeframes (1-minute) due to its dependency on fast momentum shifts and tight stops. Backtesting and forward testing are crucial before deployment.
90D High % Pullback Lines (Hybrid 10 Lines)90D High % Pullback Lines (Hybrid 10 Lines) visualizes drawdown levels from the 90-day high, with up to 10 fully customizable percentage-based lines.
This tool makes it easy to identify pullbacks, dip-buy zones, trend continuation points, and discount regions in any market.
🔍 Features
✅ Up to 10 customizable pullback levels
Each line has its own % drop setting
Turn any line ON/OFF individually
Example presets: −10%, −20%, −30%, … −95%
✅ Two rendering modes
1. Hybrid Fixed Line Mode (Stable / Anti-Shift)
Prevents line drift caused by chart updates
Keeps horizontal levels synchronized on every bar
Best stability for intraday & real-time use
2. Lightweight plot (stepline) Mode
Ideal for backtesting
Fully compatible with alerts
Clean and fast rendering
✅ Supports daily-based 90-day high
Even on lower timeframes, the indicator can use the daily 90-day high
Ideal for MTF (multi-timeframe) analysis
🎯 Use Cases
Instantly see how far price has pulled back (%) from the 90-day high
Build systematic dip-buy / trend-follow setups
Identify discount zones during volatility
Monitor recovery signals after strong sell-offs
Works great for crypto, FX, indices, and stocks
🚨 Alerts Included
Alerts trigger when closing price crosses any selected pullback line
Useful for automated dip-buy alerts, breakout alerts, etc.
📌 Notes
Due to internal TradingView behavior, public indicators may behave slightly differently from real-time script editing mode.
The Hybrid Line Mode is designed to provide the most stable and drift-free line display.
14:30 New York OpenRed dotted line at NY open. Shows new traders where NY opens. Helpful for backtesting and when trading that session where it starts very quickly
Any Strategy BacktestA simple script for backtesting your strategies with TP and SL settings. For this to work, your indicators must have sources for long and short conditions.
Nadaraya-Watson: Rational Quadratic Kernel (Opening Gap Shift)What we did to fix it: We didn't throw out the old data (that made it too jumpy early in the day).
Instead, we "tricked" the kernel by shifting all the previous day's prices up or down by the exact gap amount (e.g., if it gapped up 50 points, add 50 to every old price point). This makes the history "line up" with the new day's starting level.
Created so with a fresh session the Nadaraya-Watson Regression Kernel is relevant from the get go - no catch up on opening gaps.
All credit to jdehorty his full description is below.
What is Nadaraya–Watson Regression?
Nadaraya–Watson Regression is a type of Kernel Regression, which is a non-parametric method for estimating the curve of best fit for a dataset. Unlike Linear Regression or Polynomial Regression, Kernel Regression does not assume any underlying distribution of the data. For estimation, it uses a kernel function, which is a weighting function that assigns a weight to each data point based on how close it is to the current point. The computed weights are then used to calculate the weighted average of the data points.
How is this different from using a Moving Average?
A Simple Moving Average is actually a special type of Kernel Regression that uses a Uniform (Retangular) Kernel function. This means that all data points in the specified lookback window are weighted equally. In contrast, the Rational Quadratic Kernel function used in this indicator assigns a higher weight to data points that are closer to the current point. This means that the indicator will react more quickly to changes in the data.
Why use the Rational Quadratic Kernel over the Gaussian Kernel?
The Gaussian Kernel is one of the most commonly used Kernel functions and is used extensively in many Machine Learning algorithms due to its general applicability across a wide variety of datasets. The Rational Quadratic Kernel can be thought of as a Gaussian Kernel on steroids; it is equivalent to adding together many Gaussian Kernels of differing length scales. This allows the user even more freedom to tune the indicator to their specific needs.
The formula for the Rational Quadratic function is:
K(x, x') = (1 + ||x - x'||^2 / (2 * alpha * h^2))^(-alpha)
where x and x' data are points, alpha is a hyperparameter that controls the smoothness (i.e. overall "wiggle") of the curve, and h is the band length of the kernel.
Does this Indicator Repaint?
No, this indicator has been intentionally designed to NOT repaint. This means that once a bar has closed, the indicator will never change the values in its plot. This is useful for backtesting and for trading strategies that require a non-repainting indicator.
Settings:
Bandwidth. This is the number of bars that the indicator will use as a lookback window.
Relative Weighting Parameter. The alpha parameter for the Rational Quadratic Kernel function. This is a hyperparameter that controls the smoothness of the curve. A lower value of alpha will result in a smoother, more stretched-out curve, while a lower value will result in a more wiggly curve with a tighter fit to the data. As this parameter approaches 0, the longer time frames will exert more influence on the estimation, and as it approaches infinity, the curve will become identical to the one produced by the Gaussian Kernel.
Color Smoothing. Toggles the mechanism for coloring the estimation plot between rate of change and cross over modes.
Range Oscillator Strategy + Stoch Confirm🔹 Short summary
This is a free, educational long-only strategy built on top of the public “Range Oscillator” by Zeiierman (used under CC BY-NC-SA 4.0), combined with a Stochastic timing filter, an EMA-based exit filter and an optional risk-management layer (SL/TP and R-multiple exits). It is NOT financial advice and it is NOT a magic money machine. It’s a structured framework to study how range-expansion + momentum + trend slope can be combined into one rule-based system, often with intentionally RARE trades.
────────────────────────
0. Legal / risk disclaimer
────────────────────────
• This script is FREE and public. I do not charge any fee for it.
• It is for EDUCATIONAL PURPOSES ONLY.
• It is NOT financial advice and does NOT guarantee profits.
• Backtest results can be very different from live results.
• Markets change over time; past performance is NOT indicative of future performance.
• You are fully responsible for your own trades and risk.
Please DO NOT use this script with money you cannot afford to lose. Always start in a demo / paper trading environment and make sure you understand what the logic does before you risk any capital.
────────────────────────
1. About default settings and risk (very important)
────────────────────────
The script is configured with the following defaults in the `strategy()` declaration:
• `initial_capital = 10000`
→ This is only an EXAMPLE account size.
• `default_qty_type = strategy.percent_of_equity`
• `default_qty_value = 100`
→ This means 100% of equity per trade in the default properties.
→ This is AGGRESSIVE and should be treated as a STRESS TEST of the logic, not as a realistic way to trade.
TradingView’s House Rules recommend risking only a small part of equity per trade (often 1–2%, max 5–10% in most cases). To align with these recommendations and to get more realistic backtest results, I STRONGLY RECOMMEND you to:
1. Open **Strategy Settings → Properties**.
2. Set:
• Order size: **Percent of equity**
• Order size (percent): e.g. **1–2%** per trade
3. Make sure **commission** and **slippage** match your own broker conditions.
• By default this script uses `commission_value = 0.1` (0.1%) and `slippage = 3`, which are reasonable example values for many crypto markets.
If you choose to run the strategy with 100% of equity per trade, please treat it ONLY as a stress-test of the logic. It is NOT a sustainable risk model for live trading.
────────────────────────
2. What this strategy tries to do (conceptual overview)
────────────────────────
This is a LONG-ONLY strategy designed to explore the combination of:
1. **Range Oscillator (Zeiierman-based)**
- Measures how far price has moved away from an adaptive mean.
- Uses an ATR-based range to normalize deviation.
- High positive oscillator values indicate strong price expansion away from the mean in a bullish direction.
2. **Stochastic as a timing filter**
- A classic Stochastic (%K and %D) is used.
- The logic requires %K to be below a user-defined level and then crossing above %D.
- This is intended to catch moments when momentum turns up again, rather than chasing every extreme.
3. **EMA Exit Filter (trend slope)**
- An EMA with configurable length (default 70) is calculated.
- The slope of the EMA is monitored: when the slope turns negative while in a long position, and the filter is enabled, it triggers an exit condition.
- This acts as a trend-protection exit: if the medium-term trend starts to weaken, the strategy exits even if the oscillator has not yet fully reverted.
4. **Optional risk-management layer**
- Percentage-based Stop Loss and Take Profit (SL/TP).
- Risk/Reward (R-multiple) exit based on the distance from entry to SL.
- Implemented as OCO orders that work *on top* of the logical exits.
The goal is not to create a “holy grail” system but to serve as a transparent, configurable framework for studying how these concepts behave together on different markets and timeframes.
────────────────────────
3. Components and how they work together
────────────────────────
(1) Range Oscillator (based on “Range Oscillator (Zeiierman)”)
• The script computes a weighted mean price and then measures how far price deviates from that mean.
• Deviation is normalized by an ATR-based range and expressed as an oscillator.
• When the oscillator is above the **entry threshold** (default 100), it signals a strong move away from the mean in the bullish direction.
• When it later drops below the **exit threshold** (default 30), it can trigger an exit (if enabled).
(2) Stochastic confirmation
• Classic Stochastic (%K and %D) is calculated.
• An entry requires:
- %K to be below a user-defined “Cross Level”, and
- then %K to cross above %D.
• This is a momentum confirmation: the strategy tries to enter when momentum turns up from a pullback rather than at any random point.
(3) EMA Exit Filter
• The EMA length is configurable via `emaLength` (default 70).
• The script monitors the EMA slope: it computes the relative change between the current EMA and the previous EMA.
• If the slope turns negative while the strategy holds a long position and the filter is enabled, it triggers an exit condition.
• This is meant to help protect profits or cut losses when the medium-term trend starts to roll over, even if the oscillator conditions are not (yet) signalling exit.
(4) Risk management (optional)
• Stop Loss (SL) and Take Profit (TP):
- Defined as percentages relative to average entry price.
- Both are disabled by default, but you can enable them in the Inputs.
• Risk/Reward Exit:
- Uses the distance from entry to SL to project a profit target at a configurable R-multiple.
- Also optional and disabled by default.
These exits are implemented as `strategy.exit()` OCO orders and can close trades independently of oscillator/EMA conditions if hit first.
────────────────────────
4. Entry & Exit logic (high level)
────────────────────────
A) Time filter
• You can choose a **Start Year** in the Inputs.
• Only candles between the selected start date and 31 Dec 2069 are used for backtesting (`timeCondition`).
• This prevents accidental use of tiny cherry-picked windows and makes tests more honest.
B) Entry condition (long-only)
A long entry is allowed when ALL the following are true:
1. `timeCondition` is true (inside the backtest window).
2. If `useOscEntry` is true:
- Range Oscillator value must be above `entryLevel`.
3. If `useStochEntry` is true:
- Stochastic condition (`stochCondition`) must be true:
- %K < `crossLevel`, then %K crosses above %D.
If these filters agree, the strategy calls `strategy.entry("Long", strategy.long)`.
C) Exit condition (logical exits)
A position can be closed when:
1. `timeCondition` is true AND a long position is open, AND
2. At least one of the following is true:
- If `useOscExit` is true: Oscillator is below `exitLevel`.
- If `useMagicExit` (EMA Exit Filter) is true: EMA slope is negative (`isDown = true`).
In that case, `strategy.close("Long")` is called.
D) Risk-management exits
While a position is open:
• If SL or TP is enabled:
- `strategy.exit("Long Risk", ...)` places an OCO stop/limit order based on the SL/TP percentages.
• If Risk/Reward exit is enabled:
- `strategy.exit("RR Exit", ...)` places an OCO order using a projected R-multiple (`rrMult`) of the SL distance.
These risk-based exits can trigger before the logical oscillator/EMA exits if price hits those levels.
────────────────────────
5. Recommended backtest configuration (to avoid misleading results)
────────────────────────
To align with TradingView House Rules and avoid misleading backtests:
1. **Initial capital**
- 10 000 (or any value you personally want to work with).
2. **Order size**
- Type: **Percent of equity**
- Size: **1–2%** per trade is a reasonable starting point.
- Avoid risking more than 5–10% per trade if you want results that could be sustainable in practice.
3. **Commission & slippage**
- Commission: around 0.1% if that matches your broker.
- Slippage: a few ticks (e.g. 3) to account for real fills.
4. **Timeframe & markets**
- Volatile symbols (e.g. crypto like BTCUSDT, or major indices).
- Timeframes: 1H / 4H / **1D (Daily)** are typical starting points.
- I strongly recommend trying the strategy on **different timeframes**, for example 1D, to see how the behaviour changes between intraday and higher timeframes.
5. **No “caution warning”**
- Make sure your chosen symbol + timeframe + settings do not trigger TradingView’s caution messages.
- If you see warnings (e.g. “too few trades”), adjust timeframe/symbol or the backtest period.
────────────────────────
5a. About low trade count and rare signals
────────────────────────
This strategy is intentionally designed to trade RARELY:
• It is **long-only**.
• It uses strict filters (Range Oscillator threshold + Stochastic confirmation + optional EMA Exit Filter).
• On higher timeframes (especially **1D / Daily**) this can result in a **low total number of trades**, sometimes WELL BELOW 100 trades over the whole backtest.
TradingView’s House Rules mention 100+ trades as a guideline for more robust statistics. In this specific case:
• The **low trade count is a conscious design choice**, not an attempt to cherry-pick a tiny, ultra-profitable window.
• The goal is to study a **small number of high-conviction long entries** on higher timeframes, not to generate frequent intraday signals.
• Because of the low trade count, results should NOT be interpreted as statistically strong or “proven” – they are only one sample of how this logic would have behaved on past data.
Please keep this in mind when you look at the equity curve and performance metrics. A beautiful curve with only a handful of trades is still just a small sample.
────────────────────────
6. How to use this strategy (step-by-step)
────────────────────────
1. Add the script to your chart.
2. Open the **Inputs** tab:
- Set the backtest start year.
- Decide whether to use Oscillator-based entry/exit, Stochastic confirmation, and EMA Exit Filter.
- Optionally enable SL, TP, and Risk/Reward exits.
3. Open the **Properties** tab:
- Set a realistic account size if you want.
- Set order size to a realistic % of equity (e.g. 1–2%).
- Confirm that commission and slippage are realistic for your broker.
4. Run the backtest:
- Look at Net Profit, Max Drawdown, number of trades, and equity curve.
- Remember that a low trade count means the statistics are not very strong.
5. Experiment:
- Tweak thresholds (`entryLevel`, `exitLevel`), Stochastic settings, EMA length, and risk params.
- See how the metrics and trade frequency change.
6. Forward-test:
- Before using any idea in live trading, forward-test on a demo account and observe behaviour in real time.
────────────────────────
7. Originality and usefulness (why this is more than a mashup)
────────────────────────
This script is not intended to be a random visual mashup of indicators. It is designed as a coherent, testable strategy with clear roles for each component:
• Range Oscillator:
- Handles mean vs. range-expansion states via an adaptive, ATR-normalized metric.
• Stochastic:
- Acts as a timing filter to avoid entering purely on extremes and instead waits for momentum to turn.
• EMA Exit Filter:
- Trend-slope-based safety net to exit when the medium-term direction changes against the position.
• Risk module:
- Provides practical, rule-based exits: SL, TP, and R-multiple exit, which are useful for structuring risk even if you modify the core logic.
It aims to give traders a ready-made **framework to study and modify**, not a black box or “signals” product.
────────────────────────
8. Limitations and good practices
────────────────────────
• No single strategy works on all markets or in all regimes.
• This script is long-only; it does not short the market.
• Performance can degrade when market structure changes.
• Overfitting (curve fitting) is a real risk if you endlessly tweak parameters to maximise historical profit.
Good practices:
- Test on multiple symbols and timeframes.
- Focus on stability and drawdown, not only on how high the profit line goes.
- View this as a learning tool and a basis for your own research.
────────────────────────
9. Licensing and credits
────────────────────────
• Core oscillator idea & base code:
- “Range Oscillator (Zeiierman)”
- © Zeiierman, licensed under CC BY-NC-SA 4.0.
• Strategy logic, Stochastic confirmation, EMA Exit Filter, and risk-management layer:
- Modifications by jokiniemi.
Please respect both the original license and TradingView House Rules if you fork or republish any part of this script.
────────────────────────
10. No payments / no vendor pitch
────────────────────────
• This script is completely FREE to use on TradingView.
• There is no paid subscription, no external payment link, and no private signals group attached to it.
• If you have questions, please use TradingView’s comment system or private messages instead of expecting financial advice.
Use this script as a tool to learn, experiment, and build your own understanding of markets.
────────────────────────
11. Example backtest settings used in screenshots
────────────────────────
To avoid any confusion about how the results shown in screenshots were produced, here is one concrete example configuration:
• Symbol: BTCUSDT (or similar major BTC pair)
• Timeframe: 1D (Daily)
• Backtest period: from 2018 to the most recent data
• Initial capital: 10 000
• Order size type: Percent of equity
• Order size: 2% per trade
• Commission: 0.1%
• Slippage: 3 ticks
• Risk settings: Stop Loss and Take Profit disabled by default, Risk/Reward exit disabled by default
• Filters: Range Oscillator entry/exit enabled, Stochastic confirmation enabled, EMA Exit Filter enabled
If you change any of these settings (symbol, timeframe, risk per trade, commission, slippage, filters, etc.), your results will look different. Please always adapt the configuration to your own risk tolerance, market, and trading style.






















