Transient Impact Model [ScorsoneEnterprises]This indicator is an implementation of the Transient Impact Model. This tool is designed to show the strength the current trades have on where price goes before they decay.
Here are links to more sophisticated research articles about Transient Impact Models than this post arxiv.org and arxiv.org
The way this tool is supposed to work in a simple way, is when impact is high price is sensitive to past volume, past trades being placed. When impact is low, it moves in a way that is more independent from past volume. In a more sophisticated system, perhaps transient impact should be calculated for each trade that is placed, not just the total volume of a past bar. I didn't do it to ensure parameters exist and aren’t na, as well as to have more iterations for optimization. Note that the value will change as volume does, as soon as a new candle occurs with no volume, the values could be dramatically different.
How it works
There are a few components to this script, so we’ll go into the equation and then the other functions used in this script.
// Transient Impact Model
transient_impact(params, price_change, lkb) =>
alpha = array.get(params, 0)
beta = array.get(params, 1)
lambda_ = array.get(params, 2)
instantaneous = alpha * volume
transient = 0.0
for t = 1 to lkb - 1
if na(volume )
break
transient := transient + beta * volume * math.exp(-lambda_ * t)
predicted_change = instantaneous + transient
math.pow(price_change - predicted_change, 2)
The parameters alpha, beta, and lambda all represent a different real thing.
Alpha (α):
Represents the instantaneous impact coefficient. It quantifies the immediate effect of the current volume on the price change. In the equation, instantaneous = alpha * volume , alpha scales the current bar's volume (volume ) to determine how much of the price change is due to immediate market impact. A larger alpha suggests that current volume has a stronger instantaneous influence on price.
Beta (β):
Represents the transient impact coefficient.It measures the lingering effect of past volumes on the current price change. In the loop calculating transient, beta * volume * math.exp(-lambda_ * t) shows that beta scales the volume from previous bars (volume ), contributing to a decaying effect over time. A higher beta indicates a stronger influence from past volumes, though this effect diminishes with time due to the exponential decay factor.
Lambda (λ):
Represents the decay rate of the transient impact.It controls how quickly the influence of past volumes fades over time in the transient component. In the term math.exp(-lambda_ * t), lambda determines the rate of exponential decay, where t is the time lag (in bars). A larger lambda means the impact of past volumes decays faster, while a smaller lambda implies a longer-lasting effect.
So in full.
The instantaneous term, alpha * volume , captures the immediate price impact from the current volume.
The transient term, sum of beta * volume * math.exp(-lambda_ * t) over the lookback period, models the cumulative, decaying effect of past volumes.
The total predicted_change combines these two components and is compared to the actual price change to compute an error term, math.pow(price_change - predicted_change, 2), which the script minimizes to optimize alpha, beta, and lambda.
Other parts of the script.
Objective function:
This is a wrapper function with a function to minimize so we get the best alpha, beta, and lambda values. In this case it is the Transient Impact Function, not something like a log-likelihood function, helps with efficiency for a high iteration count.
Finite Difference Gradient:
This function calculates the gradient of the objective function we spoke about. The gradient is like a directional derivative. Which is like the direction of the rate of change. Which is like the direction of the slope of a hill, we can go up or down a hill. It nudges around the parameter, and calculates the derivative of the parameter. The array of these nudged around parameters is what is returned after they are optimized.
Minimize:
This is the function that actually has the loop and calls the Finite Difference Gradient each time. Here is where the minimizing happens, how we go down the hill. If we are below a tolerance, we are at the bottom of the hill.
Applied
After an initial guess, we optimize the parameters and get the transient impact value. This number is huge, so we apply a log to it to make it more readable. From here we need some way to tell if the value is low or high. We shouldn’t use standard deviation because returns are not normally distributed, an IQR is similar and better for non normal data. We store past transient impact values in an array, so that way we can see the 25th and 90th percentiles of the data as a rolling value. If the current transient impact is above the 90th percentile, it is notably high. If below the 25th percentile, notably low. All of these values are plotted so we can use it as a tool.
Tool examples:
The idea around it is that when impact is low, there is room for big money to get size quickly and move prices around.
Here we see the price reacting in the IQR Bands. We see multiple examples where the value above the 90th percentile, the red line, corresponds to continuations in the trend, and below the 25th percentile, the purple line, corresponds to reversals. There is no guarantee these tools will be perfect, that is outlined in these situations, however there is clearly a correlation in this tool and trend.
This tool works on any timeframe, daily as we saw before, or lower like a two minute. The bands don’t represent a direction, like bullish or bearish, we need to determine that by interpreting price action. We see at open and at close there are the highest values for the transient impact. This is to be expected as these are the times with the highest volume of the trading day.
This works on futures as well as equities with the same context. Volume can be attributed to volatility as well. In volatile situations, more volatility comes in, and we can perceive it through the transient impact value.
Inputs
Users can enter the lookback value.
No tool is perfect, the transient impact value is also not perfect and should not be followed blindly. It is good to use any tool along with discretion and price action.
Komut dosyalarını "Futures" için ara
Advanced OHLC ExporterThis Pine Script indicator provides one-click export of candlestick data (OHLC + Volume) from any TradingView chart. It displays the current candle's values in a clean table while ensuring all visible historical data is available for export in CSV format.
Key Features
📊 Visual Data Display
Real-time OHLC table in the top-right corner.
Color-coded values for quick analysis (green=high, red=low).
Volume shown in standardized formatting.
Data Export Ready
All plotted values appear in TradingView's Data Window.
Right-click → "Export Data" to save:
Open, High, Low, Close (OHLC) prices
Trading volume
Timestamps for each candle
⚙️ Customizable Output
Works on any timeframe (1m to 1M)
Compatible with: Forex, Stocks, Crypto, Futures
How Traders Use This
Technical Analysts - Export clean datasets for external analysis.
Backtesters - Quickly gather historical price data for strategy development.
Researchers - Study candlestick patterns with precise numerical data.
Intraday Macro & Flow Indicator# IntraMacroFlow Indicator
## Introduction
IntraMacroFlow is a volume and delta-based indicator that identifies significant price movements within trading sessions. It generates signals when volume spikes coincide with quality price movement, filtered by RSI to avoid overbought/oversold conditions.
> **Note:** This indicator provides multiple signals and should be combined with additional analysis methods such as support/resistance, trend direction, and price action patterns.
## Inputs
### Volume Settings
* **Volume Lookback Period** (14) - Number of bars for volume moving average calculation
* **Volume Threshold Multiplier** (1.5) - Required volume increase over average to generate signals
* **Delta Threshold** (0.3) - Required close-to-open movement relative to bar range (higher = stronger movement)
### Session Configuration
* **Use Dynamic Session Detection** (true) - Automatically determine session times
* **Highlight Market Open Period** (true) - Highlight first third of trading session
* **Highlight Mid-Session Period** (true) - Highlight middle portion of trading session
* **Detect Signals Throughout Whole Session** (true) - Find signals in entire session
* **Session Time** ("0930-1600") - Trading hours in HHMM-HHMM format
* **Session Type** ("Regular") - Select Regular, Extended, or Custom session
### Manual Session Settings
Used when dynamic detection is disabled:
* **Manual Session Open Hour** (9)
* **Manual Session Open Minute** (30)
* **Manual Session Open Duration** (60)
* **Manual Mid-Session Start Hour** (12)
* **Manual Mid-Session End Hour** (14)
## How It Works
The indicator analyzes each bar using three primary conditions:
1. **Volume Condition**: Current volume > Average volume × Threshold
2. **Delta Condition**: |Close-Open|/Range > Delta threshold
3. **Time Condition**: Bar falls within configured session times
When all conditions are met:
* Bullish signals appear when close > open and RSI < 70
* Bearish signals appear when close < open and RSI > 30
## Display Elements
### Shapes and Colors
* Green triangles below bars - Bullish signals
* Red triangles above bars - Bearish signals
* Blue background - Market open period
* Purple background - Mid-session period
* Bar coloring - Green (bullish), Red (bearish), or unchanged
### Information Panel
A dynamic label shows:
* Current volume relative to average (Vol)
* Delta value for current bar (Delta)
* RSI value (RSI)
* Session status (Active/Closed)
## Calculation Method
```
// Volume Condition
volumeMA = ta.sma(volume, lookbackPeriod)
volumeCondition = volume > volumeMA * volumeThreshold
// Delta Calculation (price movement quality)
priceRange = high - low
delta = math.abs(close - open) / priceRange
deltaCondition = delta > deltaThreshold
// Direction and RSI Filter
bullishBias = close > open and entrySignal and not (rsi > 70)
bearishBias = close < open and entrySignal and not (rsi < 30)
```
## Usage Recommendations
### Suitable Markets
* Equities during regular trading hours
* Futures markets
* Forex during active sessions
* Cryptocurrencies with defined volume patterns
### Recommended Timeframes
* 1-minute to 1-hour (optimal: 5 or 15-minute)
### Parameter Adjustments
* For fewer but stronger signals: increase Volume Threshold (2.0+) and Delta Threshold (0.4-0.6)
* For more signals: decrease Volume Threshold (1.2-1.5) and Delta Threshold (0.2-0.3)
### Usage Tips
* Combine with trend analysis for higher-probability entries
* Focus on signals occurring at session boundaries and mid-session
* Use opposite signals as potential exit points
* Configure alerts to receive notifications when signals occur
## Additional Notes
* RSI parameters are fixed at 14 periods with 70/30 thresholds
* The indicator handles overnight sessions correctly
* Fully compatible with TradingView alerts
* Customizable visual elements
## Release Notes
Initial release: This is a template indicator that should be customized to suit your specific trading strategies and preferences.
Autofib Extensions | DTDHello trader comuunity!
I'm introducing another script that is part of my main day-trading strategy. We all know regardless of what strategy we use, we need to know what levels offer the least amount of risk to our trade entry and a great tool to anticipate how far a move might go or what level a move may retrace to are the Fibonacci Retracement and Extensions. This indicator combines both together, but with a twist.
The main elements of the script are:
1. Multiple Session High and Lows | Developing my first script led me to understand that measuring key times during each session provides understanding of the market's continuity. I have provided 3 "sessions' a user can define according to CST time where the script saves the high and low of that session window to produce the retracement and extensions from those plots. Currently, the levels are always plotted from low to high (with the 0 mark being the high) and negative values provided so the levels are consistent. You can toggle each session on or off.
2. Coloring Key Retracements / Extensions | I use a dark background for my charts so the default colors help me distinguish from other another indicator I use. Feel free to adjust the colors to your preference. I consider 3 different colors because of their significance. Retracements that you want to see continue fall back into the .50 to .618 level (this I consider the "Golden Zone"). While basic Elliott Wave Theory states a wave is completed near the 1.618 level (this I consider "Major Extensions"). Everything isn't noise, but minor levels in a larger sequence.
______________
Script Limitations
All of my scripts are made with the help of ChatGPT so there are going to be limitations. One current one that I have made progress on, but not fully is when you are viewing a timeframe where the candle doesn't start when a session window starts. On smaller timeframes like the 7-minute this is not an issue. However, on the hourly, if your session window starts at the half hour which the 3rd session default window does, the lines will not produce. I will hopefully have this rectified in the near future. I will open the script since none of this work is original in nature and I would love to see how others can create a better product. Also, this is mainly a futures trading tool. If you are using this on stocks you will find it not as useful if the session window is too wide since the script waits until the session window closes to calculate the extension values.
Cheers,
DTD
BeSight Mega SpotBeSight Mega Spot – Zone Based Price Grid Indicator
สคริปต์นี้ถูกออกแบบมาเพื่อช่วยเทรดเดอร์มองเห็นโซนราคาสำคัญที่ราคาอาจเกิดปฏิกิริยา โดยอ้างอิงจากระดับราคาที่ลงท้ายด้วย 0 และ 5 (เช่น 1350, 1355, 1360 เป็นต้น) ซึ่งมักเป็นระดับที่มีการตั้งคำสั่งซื้อขายจำนวนมากในตลาด
BeSight Mega Spot – Zone-Based Price Grid Indicator
This indicator is designed to help traders visualize key price zones where the market often reacts, based on price levels ending with 0 or 5 (e.g., 1350, 1355, 1360). These levels are commonly used for pending orders, liquidity, or price clustering zones.
It displays horizontal grid lines at fixed step intervals (default: every 5 points), covering the entire visible price range of the chart. Each price level is labeled for better clarity and planning.
🟦 Blue lines: Price levels ending in 0
⬜ Gray lines: Price levels ending in 5
This tool is useful for identifying potential institutional behavior zones, price consolidation, accumulation/distribution areas, or psychological support/resistance levels.
🧠 Notes:
- This indicator is not a buy/sell signal tool or predictive system.
- It works best when used in conjunction with other technical tools such as Supply/Demand zones or Smart Money Concepts (SMC) analysis.
- Compatible with all instruments: stocks, futures, forex, crypto, etc.
✅ How to use:
1. Add the indicator to your chart
2. Observe how price interacts with the 0/5 grid zones
3. Use the lines to assist with breakout, retest, or reversal planning
4. Combine with price action or other indicators for higher precision
✨ Developed by BeSight – A Community Of Traders
---------------------------------------------------------------------------------------
อินดิเคเตอร์นี้จะแสดงเส้นแนวนอนแบบตาราง (Grid) ที่แบ่งช่วงราคาออกเป็นระยะ ๆ ตามค่าที่ผู้ใช้กำหนด เช่น ทุก ๆ 5 จุด และครอบคลุมช่วงราคาทั้งหมดของกราฟ โดยแสดงเป็นเส้นแบบ dotted พร้อมป้ายราคาเพื่อให้มองเห็นได้ชัดเจน
🟦 เส้นสีน้ำเงิน: แสดงระดับราคาที่ลงท้ายด้วย 0
⬜ เส้นสีเทา: แสดงระดับราคาที่ลงท้ายด้วย 5
เหมาะสำหรับผู้ที่ต้องการดูโซนราคา "หยุดพัก / เก็บของ / เปิดโพซิชัน" ซึ่งอาจสะท้อนพฤติกรรมของผู้เล่นรายใหญ่หรือสถาบันในตลาด
🧠 ข้อควรรู้:
- อินดิเคเตอร์นี้ไม่ได้บอกจุดเข้าเทรดหรือการคาดการณ์ แต่ช่วยในการวางแผนแนวรับ-แนวต้านร่วมกับเครื่องมือวิเคราะห์อื่น ๆ
- รองรับทุกสินทรัพย์ที่มีหน่วยราคาคงที่ (หุ้น, ฟิวเจอร์ส, ฟอเร็กซ์, คริปโต ฯลฯ)
✅ วิธีใช้งาน:
1. เพิ่มอินดิเคเตอร์นี้ลงบนกราฟ
2. ใช้เส้น Grid เป็นแนวประกอบในการดูพฤติกรรมราคา เช่น การหยุดลง, การเบรกแนว, การกลับตัว
3. ผสมผสานกับโซน Demand/Supply หรือโซน SMC เพื่อความแม่นยำ
✨ พัฒนาโดย BeSight – คอมมูนิตี้ของเทรดเดอร์ตัวจริง
Smart Dynamic Levels [ATR-Based]Smart Dynamic Levels
Automated Support & Resistance Levels Based on Market Volatility
Overview:
This advanced indicator automatically plots dynamic support and resistance levels based on the Average True Range (ATR), creating meaningful price zones that adapt to changing market conditions. Unlike static round-number levels, these volatility-adjusted zones provide more relevant technical reference points.
Key Features:
Volatility-Responsive: Levels automatically adjust based on the asset's ATR
Smart Visualization:
Color gradient shows strength of each level (darker = stronger)
Bullish (green) levels below price, bearish (red) levels above
Customizable Settings:
Adjust ATR length (14-period default)
Modify level sensitivity with ATR multiplier (1.5x default)
Choose number of levels to display (5 above/below default)
Toggle labels and line extensions
How It Works:
Calculates the asset's true volatility using ATR
Rounds to significant price intervals based on current volatility
Plots equidistant levels above and below current price
Colors levels based on their position relative to price
Automatically updates as market conditions change
Recommended Use:
Day Trading: Identify intraday support/resistance zones
Swing Trading: Spot potential reversal areas
Breakout Trading: Watch for moves beyond key levels
Works on all markets: Stocks, Forex, Crypto, Futures
Settings Guide:
ATR Length: Higher values for smoother levels (14-20)
Multiplier: Increase for wider levels (1.5-3x)
Levels Count: More levels for higher timeframes (3-10)
Pro Tips:
Combine with trend analysis - levels are more significant when aligned with trend
Watch for price reactions at these levels for confirmation
Use wider levels (higher multiplier) for volatile assets
CME Price LimitCalculates the CME Price Limit
The reference price is obtained from the previous day's closing settlement price
(data pulled from the asset's daily chart with settlement enabled)
Percentage limit can be modified in settings
Buffer can be enabled (for example, 2% buffer on a 7% limit, so a line gets drawn at 5% too)
Alert can be enabled for price crossing a certain percentage from reference on the day
You can choose to plot the historical lines on every day, or the current day only
The reference price output can be found in the data window, or in the indicator status line if enabled in the settings.
Before placing real trades with this, you should compare the indicator's reference price to what's shown on CME's website, to double check that TradingView's data matches for your contract.
www.cmegroup.com
Session Color Blocks🧠 Purpose:
To visually highlight different market sessions — Asia, London, Premarket (US), and New York — using colored background blocks on the chart for better timing, context, and trade planning.
🕓 Session Times Used (Eastern Time / New York Time):
Session Time (ET) Color
Asia 8:00 PM – 3:00 AM 🟨 Yellow
London 3:00 AM – 8:30 AM 🟥 Red
Premarket 8:30 AM – 9:30 AM 🟦 Blue
New York 9:30 AM – 4:00 PM 🟩 Green
(DST is automatically handled via "America/New_York" timezone)
✅ Features:
Session colors appear only when that session is active.
Sessions are mutually exclusive, so no overlapping blocks.
Works on any symbol, especially useful for US stock/futures traders.
Auto-adjusts for daylight savings (using TradingView's IANA timezones).
🔧 Future Enhancements (Optional):
Toggle each session on/off
Add vertical lines or labels for session opens
Extend to weekends or custom sessions
Opal Title: Opal Lines
Short Title: Opal Lines
Description:
Opal Lines is a dynamic overlay indicator that plots horizontal price levels at the open of key market sessions throughout the trading day, based on Eastern Time (ET). Designed for traders who rely on session-based price action, it marks significant intraday events such as the European Open (3:00 AM ET), Gold Open (8:20 AM ET), Regular Market Open (9:30 AM ET), and Globex Open (6:00 PM ET), among others. Each line is color-coded and toggleable via inputs, allowing users to customize which sessions they want to track.
Unlike generic time-based tools, Opal Lines captures the opening price at precise minute intervals and extends these levels across the chart until the daily reset at 5:00 PM ET (except for the Globex line, which persists into the next day). This makes it ideal for identifying support/resistance zones, breakout levels, or reference points tied to major market openings. Traders can use it across forex, futures, equities, or commodities to align their strategies with global session dynamics.
Key Features:
Seven toggleable session lines with distinct colors for easy identification.
Time-specific logic using ET, adaptable to any chart timeframe.
Persistent lines that reset daily, with Globex extending overnight.
Lightweight and overlay-friendly, preserving chart clarity.
How to Use:
Add the indicator to your chart and enable the sessions relevant to your trading style. Watch for price interactions with these levels—e.g., bounces, breaks, or retests—especially during high-volume periods. Combine with other tools like volume or oscillators for confirmation.
Note: Ensure your chart’s timezone is set to “America/New_York” (ET) for accurate alignment.
[COG]Adaptive Volatility Bands# Adaptive Volatility Bands (AVB) Indicator Guide for Traders
## Special Acknowledgment 🙌
This script is inspired by and builds upon the foundational work of **DonovanWall**, a respected contributor to the trading community. His innovative approach to adaptive indicators has been instrumental in developing this advanced trading tool.
## What is the Adaptive Volatility Bands Indicator?
The Adaptive Volatility Bands (AVB) is a sophisticated technical analysis tool designed to help traders understand market dynamics by creating dynamic, responsive price channels that adapt to changing market conditions. Unlike traditional static indicators, this script uses advanced mathematical techniques to create flexible bands that adjust to market volatility in real-time.
## Key Features and Inputs
### 1. Price and Filtering Options
- **Price Source**: Determines the base price used for calculations (default is HLC3 - Average of High, Low, and Close)
- **Filter Poles**: Controls the smoothness of the indicator (1-9 poles)
- Lower values: More responsive, more noise
- Higher values: Smoother, but slower to react
### 2. Volatility and Band Settings
- **Sample Length**: Determines how many bars are used to calculate volatility (default 144)
- **Volatility Multiplier**: Adjusts the width of the main bands (default 1.414)
- **Outer Band Multiplier**: Controls the width of the outer bands (default 2.5)
- **Inner Band Ratio**: Positions the inner bands between the center and outer bands (default 0.25)
### 3. Advanced Processing Options
- **Lag Reduction Mode**: Helps reduce indicator delay
- **Fast Response Mode**: Makes the indicator more responsive to recent price changes
### 4. Signal and Visualization Options
- **Show Entry Signals**: Displays buy and sell signals
- **Signal Display Style**: Choose between labels or shapes
- **Range Filter**: Adds an additional filter for signal validation
## How the Indicator Works
The Adaptive Volatility Bands create a dynamic price channel with three key components:
1. **Center Line**: Represents the core trend direction
2. **Inner Bands**: Closer to the center line
3. **Outer Bands**: Wider bands that show broader price potential
### Color Dynamics
- The indicator uses a smart color gradient system
- Colors change based on price position within the bands
- Helps visualize bullish (green/blue) and bearish (red) market conditions
## Trading Strategies for Beginners
### Basic Entry Signals
- **Buy Signal**:
- Price touches the center line from below
- Candle is bullish (closes higher than it opens)
- Price is above the center line
- Trend is upward
- **Sell Signal**:
- Price touches the center line from above
- Candle is bearish (closes lower than it opens)
- Price is below the center line
- Trend is downward
### Risk Management Tips
1. Use the bands to identify:
- Potential trend changes
- Volatility levels
- Support and resistance areas
2. Combine with other indicators for confirmation
3. Always use stop-loss orders
4. Adjust parameters to match your trading style and asset
## When to Use This Indicator
Best suited for:
- Trending markets
- Swing trading
- Identifying potential entry and exit points
- Understanding market volatility
### Recommended Markets
- Stocks
- Forex
- Cryptocurrencies
- Futures
## Customization
The script offers extensive customization:
- Adjust smoothness
- Change band multipliers
- Modify color schemes
- Enable/disable features like lag reduction
## Important Considerations for Beginners
🚨 **Disclaimer**:
- No indicator guarantees profits
- Always practice with a demo account first
- Learn and understand the indicator before live trading
- Market conditions change, so continually adapt your strategy
## Getting Started
1. Add the script to your TradingView chart
2. Experiment with different settings
3. Backtest on historical data
4. Start with small positions
5. Continuously learn and improve
Happy Trading! 📈🔍
Granular MA Ribbon🎗️ The Granular MA Ribbon provides a structured view of price action on lower timeframes by incorporating both price-based and volume-weighted moving averages, offering a more nuanced view of market trends and momentum shifts. Furthermore, by using 15-minute intervals for its calculations, it ensures that intraday traders receive a smooth and responsive representation of higher timeframe trends.
⚠️ Note that this indicator is specifically optimized for the 15-minute and 1-hour charts; applying it to longer or shorter periods will distort its calculations and reduce its effectiveness. Adjust visibility settings accordingly.
🧰 Unlike traditional moving averages that may lag or fail to reflect real-time shifts in price dynamics, the Granular MA Ribbon includes a one-day exponential moving average (1D EMA), a one-day volume-weighted moving average (1D VWMA), and a one-week exponential moving average (1W EMA). Together, these elements allow traders to stay aligned with the broader market while making precise intraday trading decisions.
🤷🏻 Why Two Daily Moving Averages?
🔊 Instead of relying on a single moving average, this indicator uses both an EMA and a VWMA to provide a clearer picture of price movement. The EMA reacts quickly to price changes, making it a useful tool for identifying short-term momentum shifts. The VWMA, meanwhile, accounts for volume, ensuring that price movements supported by higher trading activity carry greater weight in the trend calculation.
💪🏻 When the EMA and VWMA diverge significantly, it signals strong momentum. If they begin to converge, it suggests that momentum is weakening or that price may be entering consolidation. The space between these two moving averages is filled with a ribbon, making it easier to see shifts in trend strength. A wide ribbon typically indicates strong momentum, while a narrowing ribbon suggests the trend may be losing steam.
🧮 Calculation Rationale
🔎 The 1D EMA and 1D VWMA are constructed using 15-minute blocks to maintain accuracy on lower timeframes. A full trading day consists of 96 fifteen-minute intervals. Instead of relying on daily candle data, which would reduce the granularity of the moving averages, this method allows the indicator to reflect intra-day trends more accurately. By breaking the day into smaller increments, the moving averages adapt more smoothly to changes in price and volume, making them more reliable for traders working on shorter timeframes.
🔍 The weekly EMA follows the same logic, adjusting based on the selected five-day or seven-day setting. If the market follows a standard five-day trading week, the one-week EMA is calculated using 480 fifteen-minute bars. If the market trades seven days a week, such as in crypto, the weekly EMA is adjusted accordingly to reflect 672 fifteen-minute bars. This setting ensures that traders using the indicator across different asset classes receive accurate trend information.
🫤 Sideways Markets
🔄 When the broader market is in a range-bound state, with no clear trend on the one-day or one-week chart, this indicator helps traders make sense of the short-term price structure. In these conditions, the ribbon will often appear flat, with the 1D EMA and 1D VWMA frequently crossing each other. This suggests that momentum is weak and that price action lacks a strong directional bias.
⚠️ A narrowing ribbon in a sideways market indicates reduced volatility and a potential breakout. If the EMA crosses above the VWMA during consolidation, it may signal a short-term upward move, especially if volume begins to increase. Conversely, if the EMA moves below the VWMA, it could indicate that selling pressure is increasing. However, in choppy conditions, crossovers alone are not enough to confirm a trade. Traders should wait for additional confirmation, such as a breakout from a defined range or a shift in volume.
♭ If the weekly EMA remains flat while the daily ribbon fluctuates, it confirms that the market lacks a strong trend. In such cases, traders may consider fading moves near the top and bottom of a range rather than expecting sustained breakouts.
💹 Trending Markets
🏗️ When the market is in a strong uptrend or downtrend, the ribbon takes on a more structured shape. A widening ribbon that slopes upward signals strong bullish momentum, with price consistently respecting the 1D EMA and VWMA as support. In a downtrend, the ribbon slopes downward, acting as dynamic resistance.
📈 In trending conditions, traders can use the ribbon to time pullback entries. In an uptrend, price often retraces to the VWMA before resuming its upward move. If price holds above both the EMA and VWMA, the trend remains strong. If price begins to close below the VWMA but remains above the EMA, it suggests weakening momentum but not necessarily a reversal. A clean break below both moving averages indicates a shift in trend structure.
📊 The one-week EMA serves as a higher timeframe guide. When price remains above the weekly EMA, it confirms that the broader trend is intact. If price pulls back to the weekly EMA and bounces, it can provide a high-confidence trade entry. Conversely, if price breaks below the weekly EMA and fails to reclaim it, it suggests that the trend may be reversing.
⏳ 5-Day and 7-Day Week Variants
🎚️ The setting for a five-day or seven-day trading week adjusts the calculation of the one-week EMA. This ensures that the indicator remains accurate across different asset classes.
5️⃣ A five-day trading week is appropriate for stocks, futures, and forex markets, where trading pauses on weekends. Using a seven-day week for these markets would create artificial distortions by including non-trading days. 7️⃣ In contrast, the seven-day week setting is ideal for crypto markets, which trade continuously. Without this adjustment, the weekly EMA would fail to reflect weekend price action, leading to misleading trend signals.
🧐 This indicator is expressly designed to complement its higher timeframe counterpart, the Triple Differential Moving Average Braid, optimized for the 1-Day chart.
Aggregated Spot vs Perp Volume (% Change)Aggregated Spot vs Perp Volume (% Change)
Description
The "Aggregated Spot vs Perp Volume (% Change)" indicator helps crypto traders compare the momentum of spot and perpetual futures (perp) trading volumes across 12 major exchanges. It calculates the percentage change in volume from one bar to the next, highlighting divergences and showing which market—spot or perp—is leading a move. By focusing on relative changes, it eliminates the issue of absolute volume differences, making trends clear.
The indicator aggregates data from Binance, Bybit, OKX, Coinbase, Bitget, MEXC, Phemex, BingX, WhiteBIT, BitMEX, Kraken, and HTX. Users can toggle exchanges and choose to measure volume in coin units (e.g., BTC) or USD.
How It Works
Volume Aggregation:
Fetches spot and perp volume data for the selected crypto (e.g., BTC) from up to 12 exchanges.
Spot volume is included only if perp volume is available for the same pair, ensuring consistency.
Volume can be measured in coin units or USD (volume × spot price).
Percentage Change:
Calculates the percentage change in spot and perp volumes from the previous bar:
Percentage Change = ((Current Volume − Previous Volume) / Previous Volume) ×100
This focuses on relative momentum, making spot and perp volumes directly comparable.
Visualization:
Spot volume % change is plotted as a blue line, and perp volume % change as a red line, both with a linewidth of 1.
Who Should Use It
Crypto Traders: To understand spot vs. perp market dynamics across exchanges.
Momentum Traders: To spot which market is driving price moves via volume divergences.
Scalpers/Day Traders: For identifying short-term shifts in market activity.
Analysts: To study liquidity and sentiment in crypto markets.
How to Use It
Blue line: Spot volume % change.
Red line: Perp volume % change.
Look for divergences (e.g., a sharp rise in the red line but not the blue line suggests perp markets are leading).
Combine with Price:
Use alongside price charts to confirm trends or spot potential reversals.
Context
Spot markets reflect actual asset trading, while perp markets, with leverage, attract speculative activity and often show higher volumes. This indicator uses percentage change to compare their momentum, helping traders identify market leadership and divergences. For example, a 50% increase in both spot and perp volumes plots at the same level, making it easy to see relative shifts across exchanges.
GLXY Support & Resistance ZonesHere’s a structured trading strategy for Galaxy Digital Holdings Ltd. (GLXY) based on a combination of technical analysis, market sentiment, and macro crypto market movement:
⸻
1. Timeframe
• Swing trading timeframe: 1-week to 1-month trades.
• Monitor daily and 4H charts for entries and exits.
⸻
2. Key Factors Driving GLXY
• Strongly correlated to Bitcoin and Ethereum price movement.
• Sensitive to regulatory news in Canada/US and institutional crypto adoption.
• Watch Galaxy’s quarterly earnings and treasury BTC/ETH position updates.
⸻
3. Entry Strategy
A) Technical Setup:
• Buy at major support zones:
• Key support levels: $7.00 CAD, $9.00 CAD (verify current chart levels).
• Enter long positions on bullish reversal candles at these supports.
• Breakout trades:
• Enter long positions on confirmed breakouts above significant resistance (watch volume and 1D close).
• Moving Average Confirmation:
• Only trade long if price is above the 50-day moving average and 50 MA is upward sloping.
B) Macro Confirmation:
• Only take aggressive long positions if BTC price is in an uptrend (above its own 50-day MA).
• Monitor ETH/BTC pair as additional confidence for alt sentiment.
⸻
4. Exit Strategy
• First partial profit target: Previous swing highs or Fibonacci extension levels (commonly 1.272 or 1.618).
• Trailing stop: Move stop-loss to entry when trade is +10%.
• Hard stop-loss: Below the last daily support (2-5% risk).
⸻
5. Diversification
• Do not exceed 5-7% of total portfolio per trade.
• Hedge exposure by monitoring crypto futures or crypto sentiment indexes (eg. Fear & Greed Index).
⸻
6. Optional Short Setup
• Only short if price breaks major support with strong volume, and BTC/ETH are in confirmed downtrends.
• Short target: next daily support zone.
⸻
7. News / Event-based Catalyst
• Enter small positions before major earnings or after big regulatory decisions if crypto sentiment is bullish.
⸻
8. Review
• Reassess the strategy every month based on BTC market structure.
• Track your trade results for GLXY separately to refine position sizing and entry criteria.
⸻
5-Min ORB with Volume SpikeThis indicator identifies Opening Range Breakouts (ORB) based on the high and low of the first 5 minutes of the trading day and confirms the breakout with a volume spike.
🔍 What It Does:
Automatically captures the Opening Range High and Low from 9:30 AM to 9:35 AM (configurable).
Plots green (high) and red (low) lines across the chart once the opening range is set.
Highlights long breakout signals when price breaks above the OR High with above-average volume.
Highlights short breakout signals when price breaks below the OR Low with above-average volume.
Volume confirmation is based on a customizable 20-period simple moving average (SMA) of volume.
⚙️ Best Used On:
5-minute or lower intraday charts (e.g., SPY, QQQ, futures, etc.)
Highly liquid, high-volatility instruments
U.S. equity market open (customizable for other sessions)
📈 Trading Edge: This strategy helps traders identify strong, momentum-driven breakouts early in the trading session — especially when confirmed by increased institutional activity (volume spike).
EMA Clouds with Strict Buy/Sell SignalsEMA Clouds with Strict Buy/Sell Signals - Precision Trading Unleashed
Unlock the power of trend-following precision with the EMA Clouds with Strict Buy/Sell Signals indicator, a sophisticated tool built for traders who demand reliability and clarity in their decision-making. Inspired by the legendary Ripster EMA Clouds, this indicator takes the classic cloud concept to the next level by incorporating stricter, high-confidence signals—perfect for navigating the markets on 15-minute or higher timeframes.
Why You’ll Want This on Your Chart:
Dual EMA Clouds for Crystal-Clear Trends: Watch as two dynamic clouds—formed by carefully paired Exponential Moving Averages (8/21 and 34/50)—paint a vivid picture of market momentum. The green short-term cloud and red long-term cloud provide an intuitive, at-a-glance view of trend direction and strength.
Stricter Signals, Fewer False Moves: Tired of chasing weak signals? This indicator only triggers buy and sell signals when the stars align: a cloud crossover (short-term crossing above or below long-term) and price confirmation above or below both clouds. The result? Fewer trades, higher conviction, and a cleaner chart.
Customizable Timeframe Power: Whether you’re a scalper on the 15-minute chart or a swing trader on the daily, tailor the clouds to your preferred higher timeframe (15min, 30min, 1hr, 4hr, or daily) for seamless integration into your strategy.
Visual Mastery Meets Actionable Alerts: Green buy triangles below the bars and red sell triangles above them make spotting opportunities effortless. Pair this with built-in alerts, and you’ll never miss a high-probability trade again.
How It Works:
Buy Signal: Triggers when the short-term cloud crosses above the long-term cloud and the price surges above both, signaling a robust bullish breakout.
Sell Signal: Activates when the short-term cloud dips below the long-term cloud and the price falls beneath both, confirming bearish dominance.
Cloud Visualization: The green cloud (8/21 EMA) tracks fast-moving trends, while the red cloud (34/50 EMA) anchors the broader market direction—together, they filter noise and spotlight tradable moves.
Why Traders Will Love It:
Designed for those who value precision over guesswork, this indicator cuts through market clutter to deliver signals you can trust. Whether you’re trading stocks, forex, crypto, or futures, its adaptability and strict logic make it a must-have tool for serious traders. Customize the EMA lengths, tweak the timeframe, and watch your edge sharpen.
Add EMA Clouds with Strict Buy/Sell Signals to your chart today and experience the confidence of trading with a tool that’s as disciplined as you are. Your next big move is waiting—don’t let it slip away.
Elastic Volume-Weighted Student-T TensionOverview
The Elastic Volume-Weighted Student-T Tension Bands indicator dynamically adapts to market conditions using an advanced statistical model based on the Student-T distribution. Unlike traditional Bollinger Bands or Keltner Channels, this indicator leverages elastic volume-weighted averaging to compute real-time dispersion and location parameters, making it highly responsive to volatility changes while maintaining robustness against price fluctuations.
This methodology is inspired by incremental calculation techniques for weighted mean and variance, as outlined in the paper by Tony Finch:
📄 "Incremental Calculation of Weighted Mean and Variance" .
Key Features
✅ Adaptive Volatility Estimation – Uses an exponentially weighted Student-T model to dynamically adjust band width.
✅ Volume-Weighted Mean & Dispersion – Incorporates real-time volume weighting, ensuring a more accurate representation of market sentiment.
✅ High-Timeframe Volume Normalization – Provides an option to smooth volume impact by referencing a higher timeframe’s cumulative volume, reducing noise from high-variability bars.
✅ Customizable Tension Parameters – Configurable standard deviation multipliers (σ) allow for fine-tuned volatility sensitivity.
✅ %B-Like Oscillator for Relative Price Positioning – The main indicator is in form of a dedicated oscillator pane that normalizes price position within the sigma ranges, helping identify overbought/oversold conditions and potential momentum shifts.
✅ Robust Statistical Foundation – Utilizes kurtosis-based degree-of-freedom estimation, enhancing responsiveness across different market conditions.
How It Works
Volume-Weighted Elastic Mean (eμ) – Computes a dynamic mean price using an elastic weighted moving average approach, influenced by trade volume, if not volume detected in series, study takes true range as replacement.
Dispersion (eσ) via Student-T Distribution – Instead of assuming a fixed normal distribution, the bands adapt to heavy-tailed distributions using kurtosis-driven degrees of freedom.
Incremental Calculation of Variance – The indicator applies Tony Finch’s incremental method for computing weighted variance instead of arithmetic sum's of fixed bar window or arrays, improving efficiency and numerical stability.
Tension Calculation – There are 2 dispersion custom "zones" that are computed based on the weighted mean and dynamically adjusted standard student-t deviation.
%B-Like Oscillator Calculation – The oscillator normalizes the price within the band structure, with values between 0 and 1:
* 0.00 → Price is at the lower band (-2σ).
* 0.50 → Price is at the volume-weighted mean (eμ).
* 1.00 → Price is at the upper band (+2σ).
* Readings above 1.00 or below 0.00 suggest extreme movements or possible breakouts.
Recommended Usage
For scalping in lower timeframes, it is recommended to use the fixed α Decay Factor, it is in raw format for better control, but you can easily make a like of transformation to N-bar size window like in EMA-1 bar dividing 2 / decayFactor or like an RMA dividing 1 / decayFactor.
The HTF selector catch quite well Higher Time Frame analysis, for example using a Daily chart and using as HTF the 200-day timeframe, weekly or monthly.
Suitable for trend confirmation, breakout detection, and mean reversion plays.
The %B-like oscillator helps gauge momentum strength and detect divergences in price action if user prefer a clean chart without bands, this thanks to pineScript v6 force overlay feature.
Ideal for markets with volume-driven momentum shifts (e.g., futures, forex, crypto).
Customization Parameters
Fixed α Decay Factor – Controls the rate of volume weighting influence for an approximation EWMA approach instead of using sum of series or arrays, making the code lightweight & computing fast O(1).
HTF Volume Smoothing – Instead of a fixed denominator for computing α , a volume sum of the last 2 higher timeframe closed candles are used as denominator for our α weight factor. This is useful to review mayor trends like in daily, weekly, monthly.
Tension Multipliers (±σ) – Adjusts sensitivity to dispersion sigma parameter (volatility).
Oscillator Zone Fills – Visual cues for price positioning within the cloud range.
Posible Interpretations
As market within indicators relay on each individual edge, this are just some key ideas to glimpse how the indicator could be interpreted by the user:
📌 Price inside bands – Market is considered somehow "stable"; price is like resting from tension or "charging batteries" for volume spike moves.
📌 Price breaking outer bands – Potential breakout or extreme movement; watch for reversals or continuation from strong moves. Market is already in tension or generating it.
📌 Narrowing Bands – Decreasing volatility; expect contraction before expansion.
📌 Widening Bands – Increased volatility; prepare for high probability pull-back moves, specially to the center location of the bands (the mean) or the other side of them.
📌 Oscillator is just the interpretation of the price normalized across the Student-T distribution fitting "curve" using the location parameter, our Elastic Volume weighted mean (eμ) fixed at 0.5 value.
Final Thoughts
The Elastic Volume-Weighted Student-T Tension indicator provides a powerful, volume-sensitive alternative to traditional volatility bands. By integrating real-time volume analysis with an adaptive statistical model, incremental variance computation, in a relative price oscillator that can be overlayed in the chart as bands, it offers traders an edge in identifying momentum shifts, trend strength, and breakout potential. Think of the distribution as a relative "tension" rubber band in which price never leave so far alone.
DISCLAIMER:
The Following indicator/code IS NOT intended to be a formal investment advice or recommendation by the author, nor should be construed as such. Users will be fully responsible by their use regarding their own trading vehicles/assets.
The following indicator was made for NON LUCRATIVE ACTIVITIES and must remain as is, following TradingView's regulations. Use of indicator and their code are published for work and knowledge sharing. All access granted over it, their use, copy or re-use should mention authorship(s) and origin(s).
WARNING NOTICE!
THE INCLUDED FUNCTION MUST BE CONSIDERED FOR TESTING. The models included in the indicator have been taken from open sources on the web and some of them has been modified by the author, problems could occur at diverse data sceneries, compiler version, or any other externality.
Initial BalanceInitial Balance Pro – Precision Trading with Market Open Dynamics
The Initial Balance Pro indicator is designed to provide traders with a clear, structured view of the market's opening price action, helping to identify key levels for intraday trading. It automatically calculates and plots the initial balance (IB) high and low, allowing traders to gauge early market sentiment and potential breakout zones.
Features:
✅ Customizable Initial Balance Period – Set your preferred IB range, whether the first 30, 60, or any custom minutes after market open.
✅ Breakout & Rejection Zones – Visually highlight key areas where price action may find support, resistance, or breakout opportunities.
✅ Midpoint & Extension Levels – Identify the IB midpoint and customizable extension levels to anticipate possible price targets.
✅ Session Flexibility – Works across various trading sessions, including pre-market and post-market hours.
✅ Alerts & Notifications – Get notified when price breaches IB levels, helping you stay ahead of key moves.
Why Use Initial Balance?
The initial balance is a fundamental concept in market profile analysis. Institutional traders often set their positions within this range, making it a crucial reference point for potential trend continuation or reversal. When price breaks above or below the IB, it can signal high-probability trade opportunities, especially when combined with volume and order flow analysis.
Perfect For:
📈 Futures & Forex Traders – Utilize the IB for breakout and mean-reversion strategies.
📊 Equity & Options Traders – Identify key levels for intraday momentum plays.
🔍 Price Action Traders – Improve trade execution with a structured market approach.
Optimize your intraday trading strategy with Initial Balance Pro , giving you a refined edge in market structure and price action analysis. 🚀
Volume Aggregated Spot & FuturesAggregated volume for cryptos using spot and perpetual contracts but only those that are based on normal volume and not on tick volume.
Provides more reliable volume than volume from one provider.
Thanks to HALDRO because it's his code and I simplified it to create this version.
Cumulative Weighted Change (Session) with 14 MAThis indicator provides the session weighted cumulative change of the Magnificent 7(AAPL META GOOG AMZN MSFT NVDA TSLA), it is weighted according to their market capitalization and size in relation to size of the market. The bar to bar current change is plotted by the fast line that begins its calculations at the start of each daily session, the smoother(slower) line is the 14 period Volume Weighted Moving Average of the cumulative change.
I use this in conjunction with a timeframe continuity indicator in order to weed out invalid signals, I have one that I have recently published. I use this to trade futures and index stock options, since the 7 tickers that this indicator is built off of are the biggest force that moves markets this ends up acting as an alpha indicator if you can find a consistent and reliable way to weed out false signals.
Happy Trading!
-Drgzzz
PSP - NQ ES YMThe PSP - NQ ES YM indicator tracks the price movements of the NQ, ES, and YM futures to identify correlation and divergence between them.
🔸 Orange dot (above candle) → When NQ and ES have opposite trends (one up, one down).
🔹 Blue dot (below candle) → When YM differs from either NQ or ES, but NQ and ES are aligned.
🟠🔹 Both dots on the same candle → When NQ and ES differ, and one of them also differs from YM.
🟢 Green dot (above candle at 12 AM NY time) → Marks the daily open at 12 AM New York time.
This helps traders spot market divergence patterns between major indices and potential trading opportunities. 🚀
Awesome Oscillator (AO) with Signals [AIBitcoinTrend]👽 Multi-Scale Awesome Oscillator (AO) with Signals (AIBitcoinTrend)
The Multi-Scale Awesome Oscillator transforms the traditional Awesome Oscillator (AO) by integrating multi-scale wavelet filtering, enhancing its ability to detect momentum shifts while maintaining responsiveness across different market conditions.
Unlike conventional AO calculations, this advanced version refines trend structures using high-frequency, medium-frequency, and low-frequency wavelet components, providing traders with superior clarity and adaptability.
Additionally, it features real-time divergence detection and an ATR-based dynamic trailing stop, making it a powerful tool for momentum analysis, reversals, and breakout strategies.
👽 What Makes the Multi-Scale AO – Wavelet-Enhanced Momentum Unique?
Unlike traditional AO indicators, this enhanced version leverages wavelet-based decomposition and volatility-adjusted normalization, ensuring improved signal consistency across various timeframes and assets.
✅ Wavelet Smoothing – Multi-Scale Extraction – Captures short-term fluctuations while preserving broader trend structures.
✅ Frequency-Based Detail Weights – Separates high, medium, and low-frequency components to reduce noise and improve trend clarity.
✅ Real-Time Divergence Detection – Identifies bullish and bearish divergences for early trend reversals.
✅ Crossovers & ATR-Based Trailing Stops – Implements intelligent trade management with adaptive stop-loss levels.
👽 The Math Behind the Indicator
👾 Wavelet-Based AO Smoothing
The indicator applies multi-scale wavelet decomposition to extract high-frequency, medium-frequency, and low-frequency trend components, ensuring an optimal balance between reactivity and smoothness.
sma1 = ta.sma(signal, waveletPeriod1)
sma2 = ta.sma(signal, waveletPeriod2)
sma3 = ta.sma(signal, waveletPeriod3)
detail1 = signal - sma1 // High-frequency detail
detail2 = sma1 - sma2 // Intermediate detail
detail3 = sma2 - sma3 // Low-frequency detail
advancedAO = weightDetail1 * detail1 + weightDetail2 * detail2 + weightDetail3 * detail3
Why It Works:
Short-Term Smoothing: Captures rapid fluctuations while minimizing noise.
Medium-Term Smoothing: Balances short-term and long-term trends.
Long-Term Smoothing: Enhances trend stability and reduces false signals.
👾 Z-Score Normalization
To ensure consistency across different markets, the Awesome Oscillator is normalized using a Z-score transformation, making overbought and oversold levels stable across all assets.
normFactor = ta.stdev(advancedAO, normPeriod)
normalizedAO = advancedAO / nz(normFactor, 1)
Why It Works:
Standardizes AO values for comparison across assets.
Enhances signal reliability, preventing misleading spikes.
👽 How Traders Can Use This Indicator
👾 Divergence Trading Strategy
Bullish Divergence
Price makes a lower low, while AO forms a higher low.
A buy signal is confirmed when AO starts rising.
Bearish Divergence
Price makes a higher high, while AO forms a lower high.
A sell signal is confirmed when AO starts declining.
👾 Buy & Sell Signals with Trailing Stop
Bullish Setup:
✅AO crosses above the bullish trigger level → Buy Signal.
✅Trailing stop placed at Low - (ATR × Multiplier).
✅Exit if price crosses below the stop.
Bearish Setup:
✅AO crosses below the bearish trigger level → Sell Signal.
✅Trailing stop placed at High + (ATR × Multiplier).
✅Exit if price crosses above the stop.
👽 Why It’s Useful for Traders
Wavelet-Enhanced Filtering – Retains essential trend details while eliminating excessive noise.
Multi-Scale Momentum Analysis – Separates different trend frequencies for enhanced clarity.
Real-Time Divergence Alerts – Identifies early reversal signals for better entries and exits.
ATR-Based Risk Management – Ensures stops dynamically adapt to market conditions.
Works Across Markets & Timeframes – Suitable for stocks, forex, crypto, and futures trading.
👽 Indicator Settings
AO Short Period – Defines the short-term moving average for AO calculation.
AO Long Period – Defines the long-term moving average for AO smoothing.
Wavelet Smoothing – Adjusts multi-scale decomposition for different market conditions.
Divergence Detection – Enables or disables real-time divergence analysis. Normalization Period – Sets the lookback period for standard deviation-based AO normalization.
Cross Signals Sensitivity – Controls crossover signal strength for buy/sell signals.
ATR Trailing Stop Multiplier – Adjusts the sensitivity of the trailing stop.
Disclaimer: This indicator is designed for educational purposes and does not constitute financial advice. Please consult a qualified financial advisor before making investment decisions.
*Auto Backtest & Optimize EngineFull-featured Engine for Automatic Backtesting and parameter optimization. Allows you to test millions of different combinations of stop-loss and take profit parameters, including on any connected indicators.
⭕️ Key Futures
Quickly identify the optimal parameters for your strategy.
Automatically generate and test thousands of parameter combinations.
A simple Genetic Algorithm for result selection.
Saves time on manual testing of multiple parameters.
Detailed analysis, sorting, filtering and statistics of results.
Detailed control panel with many tooltips.
Display of key metrics: Profit, Win Rate, etc..
Comprehensive Strategy Score calculation.
In-depth analysis of the performance of different types of stop-losses.
Possibility to use to calculate the best Stop-Take parameters for your position.
Ability to test your own functions and signals.
Customizable visualization of results.
Flexible Stop-Loss Settings:
• Auto ━ Allows you to test all types of Stop Losses at once(listed below).
• S.VOLATY ━ Static stop based on volatility (Fixed, ATR, STDEV).
• Trailing ━ Classic trailing stop following the price.
• Fast Trail ━ Accelerated trailing stop that reacts faster to price movements.
• Volatility ━ Dynamic stop based on volatility indicators.
• Chandelier ━ Stop based on price extremes.
• Activator ━ Dynamic stop based on SAR.
• MA ━ Stop based on moving averages (9 different types).
• SAR ━ Parabolic SAR (Stop and Reverse).
Advanced Take-Profit Options:
• R:R: Risk/Reward ━ sets TP based on SL size.
• T.VOLATY ━ Calculation based on volatility indicators (Fixed, ATR, STDEV).
Testing Modes:
• Stops ━ Cyclical stop-loss testing
• Pivot Point Example ━ Example of using pivot points
• External Example ━ Built-in example how test functions with different parameters
• External Signal ━ Using external signals
⭕️ Usage
━ First Steps:
When opening, select any point on the chart. It will not affect anything until you turn on Manual Start mode (more on this below).
The chart will immediately show the best results of the default Auto mode. You can switch Part's to try to find even better results in the table.
Now you can display any result from the table on the chart by entering its ID in the settings.
Repeat steps 3-4 until you determine which type of Stop Loss you like best. Then set it in the settings instead of Auto mode.
* Example: I flipped through 14 parts before I liked the first result and entered its ID so I could visually evaluate it on the chart.
Then select the stop loss type, choose it in place of Auto mode and repeat steps 3-4 or immediately follow the recommendations of the algorithm.
Now the Genetic Algorithm at the bottom right will prompt you to enter the Parameters you need to search for and select even better results.
Parameters must be entered All at once before they are updated. Enter recommendations strictly in fields with the same names.
Repeat steps 5-6 until there are approximately 10 Part's left or as you like. And after that, easily pour through the remaining Parts and select the best parameters.
━ Example of the finished result.
━ Example of use with Takes
You can also test at the same time along with Take Profit. In this example, I simply enabled Risk/Reward mode and immediately specified in the TP field Maximum RR, Minimum RR and Step. So in this example I can test (3-1) / 0.1 = 20 Takes of different sizes. There are additional tips in the settings.
━
* Soon you will start to understand how the system works and things will become much easier.
* If something doesn't work, just reset the engine settings and start over again.
* Use the tips I have left in the settings and on the Panel.
━ Details:
Sort ━ Sorting results by Score, Profit, Trades, etc..
Filter ━ Filtring results by Score, Profit, Trades, etc..
Trade Type ━ Ability to disable Long\Short but only from statistics.
BackWin ━ Backtest Window Number of Candle the script can test.
Manual Start ━ Enabling it will allow you to call a Stop from a selected point. which you selected when you started the engine.
* If you have a real open position then this mode can help to save good Stop\Take for it.
1 - 9 Сheckboxs ━ Allow you to disable any stop from Auto mode.
Ex Source - Allow you to test Stops/Takes from connected indicators.
Connection guide:
//@version=6
indicator("My script")
rsi = ta.rsi(close, 14)
buy = not na(rsi) and ta.crossover (rsi, 40) // OS = 40
sell = not na(rsi) and ta.crossunder(rsi, 60) // OB = 60
Signal = buy ? +1 : sell ? -1 : 0
plot(Signal, "🔌Connector🔌", display = display.none)
* Format the signal for your indicator in a similar style and then select it in Ex Source.
⭕️ How it Works
Hypothesis of Uniform Distribution of Rare Elements After Mixing.
'This hypothesis states that if an array of N elements contains K valid elements, then after mixing, these valid elements will be approximately uniformly distributed.'
'This means that in a random sample of k elements, the proportion of valid elements should closely match their proportion in the original array, with some random variation.'
'According to the central limit theorem, repeated sampling will result in an average count of valid elements following a normal distribution.'
'This supports the assumption that the valid elements are evenly spread across the array.'
'To test this hypothesis, we can conduct an experiment:'
'Create an array of 1,000,000 elements.'
'Select 1,000 random elements (1%) for validation.'
'Shuffle the array and divide it into groups of 1,000 elements.'
'If the hypothesis holds, each group should contain, on average, 1~ valid element, with minor variations.'
* I'd like to attach more details to My hypothesis but it won't be very relevant here. Since this is a whole separate topic, I will leave the minimum part for understanding the engine.
Practical Application
To apply this hypothesis, I needed a way to generate and thoroughly mix numerous possible combinations. Within Pine, generating over 100,000 combinations presents significant challenges, and storing millions of combinations requires excessive resources.
I developed an efficient mechanism that generates combinations in random order to address these limitations. While conventional methods often produce duplicates or require generating a complete list first, my approach guarantees that the first 10% of possible combinations are both unique and well-distributed. Based on my hypothesis, this sampling is sufficient to determine optimal testing parameters.
Most generators and randomizers fail to accommodate both my hypothesis and Pine's constraints. My solution utilizes a simple Linear Congruential Generator (LCG) for pseudo-randomization, enhanced with prime numbers to increase entropy during generation. I pre-generate the entire parameter range and then apply systematic mixing. This approach, combined with a hybrid combinatorial array-filling technique with linear distribution, delivers excellent generation quality.
My engine can efficiently generate and verify 300 unique combinations per batch. Based on the above, to determine optimal values, only 10-20 Parts need to be manually scrolled through to find the appropriate value or range, eliminating the need for exhaustive testing of millions of parameter combinations.
For the Score statistic I applied all the same, generated a range of Weights, distributed them randomly for each type of statistic to avoid manual distribution.
Score ━ based on Trade, Profit, WinRate, Profit Factor, Drawdown, Sharpe & Sortino & Omega & Calmar Ratio.
⭕️ Notes
For attentive users, a little tricks :)
To save time, switch parts every 3 seconds without waiting for it to load. After 10-20 parts, stop and wait for loading. If the pause is correct, you can switch between the rest of the parts without loading, as they will be cached. This used to work without having to wait for a pause, but now it does slower. This will save a lot of time if you are going to do a deeper backtest.
Sometimes you'll get the error “The scripts take too long to execute.”
For a quick fix you just need to switch the TF or Ticker back and forth and most likely everything will load.
The error appears because of problems on the side of the site because the engine is very heavy. It can also appear if you set too long a period for testing in BackWin or use a heavy indicator for testing.
Manual Start - Allow you to Start you Result from any point. Which in turn can help you choose a good stop-stick for your real position.
* It took me half a year from idea to current realization. This seems to be one of the few ways to build something automatic in backtest format and in this particular Pine environment. There are already better projects in other languages, and they are created much easier and faster because there are no limitations except for personal PC. If you see solutions to improve this system I would be glad if you share the code. At the moment I am tired and will continue him not soon.
Also You can use my previosly big Backtest project with more manual settings(updated soon)
Opening Lines (M15, H1 & H4) with Wickless Candle DetectorTailored for day traders, this technical analysis indicator serves as a multi-timeframe opening price visualization tool, displaying real-time and historical opening price levels across three distinct time intervals to enhance pattern identification and strategic decision-making. Additionally, the tool incorporates a ‘Wickless Candle Detector’ feature, which annotates candles that open without upper or lower wicks. Empirical observations suggest these wickless candles often act as future price magnets, particularly in index futures such as the Nasdaq and S&P500, making them critical reference points for market analysis.
Key Features:
1) Multi-Timeframe Opening Price Visualization:
◦ Plots horizontal reference lines for opening prices across:
✓ 15-minute (M15)
✓ 1-hour (H1)
✓ 4-hour (H4) timeframes
◦ Lines dynamically extend throughout their respective periods or can be configured to a fixed bar offset
2) Wickless Candle Detection:
◦ Automatically marks wickless candles with a discrete symbol at their opening price level
◦ Symbols are removed upon either:
✓ Price breaching the opening level by ≥1 tick
✓ A 24-hour expiration period (whichever occurs first)
3) Customization and Flexibility:
◦ Toggle visibility for individual timeframes, historical opening lines, and the Wickless Candle Detector
◦ Full customization of visual elements (colors, line styles, symbols) to align with user preferences or trading platform themes