EMA Trend TakipCreates a trend following indicator using EMA (Exponential Moving Average). It also highlights the position of the price relative to the EMA and adds visual elements according to the trend direction.
This code performs the following functions:
EMA Calculation: Calculates the EMA with the period specified by the user.
Trend Determination: Determines the trend direction according to whether the price is above or below the EMA.
Visual Elements:
Draws the EMA line and colors it according to the position of the price relative to the EMA.
Adds a label next to the EMA line and moves this label to the left or right as specified by the user.
Colors the background according to the trend direction (green or red).
Indicators and strategies
PriorHourRangeLevels_v0.1PriorHourRangeLevels_v0.1
Created by dc_77 | © 2025 | Mozilla Public License 2.0
Overview
"PriorHourRangeLevels_v0.1" is a versatile Pine Script™ indicator designed to help traders visualize and analyze price levels based on the prior hour’s range. It overlays key levels—High, Low, 75%, 50% (EQ), and 25%—from the previous hour onto the current price chart, alongside the current hour’s opening price. With customizable display options and time zone support, it’s ideal for intraday traders looking to identify support, resistance, and breakout zones.
How It Works
Hourly Reset: The indicator detects the start of each hour based on your chosen time zone (e.g., "America/New_York" by default).
Prior Hour Range: It calculates the High and Low of the previous hour, then derives three additional levels:
75%: 75% of the range above the Low.
EQ (50%): The midpoint of the range.
25%: 25% of the range above the Low.
Current Hour Open: Displays the opening price of the current hour.
Projection: Lines extend forward (default: 24 bars) to project these levels into the future, aiding in real-time analysis.
Alerts: Triggers alerts when the price crosses any of the prior hour’s levels (High, 75%, EQ, 25%, Low).
Key Features
Time Zone Flexibility: Choose from options like UTC, New York, Tokyo, or London to align with your trading session.
Visual Customization:
Toggle visibility for each level (High, Low, 75%, EQ, 25%, Open, and Anchor).
Adjust line styles (Solid, Dashed, Dotted), colors, and widths.
Show or hide labels with adjustable sizes (Tiny, Small, Normal, Large).
Anchor Line: A vertical line marks the start of the prior hour, with optional labeling.
Alert Conditions: Set up notifications for price crossings to catch key moments without watching the chart.
Usage Tips
Use the High and Low as potential breakout levels, while 75%, EQ, and 25% act as intermediate support/resistance zones.
Trend Confirmation: Watch how price interacts with the EQ (50%) level to gauge momentum.
Session Planning: Adjust the time zone to match your market (e.g., "Europe/London" for FTSE trading).
Projection Offset: Extend or shorten the lines (via "Projection Offset") based on your chart timeframe.
Inputs
Time Zone: Select your preferred market time zone.
Anchor Settings: Show/hide the prior hour start line, style, color, width, and label.
Level Settings: Customize visibility, style, color, width, and labels for Open, High, 75%, EQ, 25%, and Low.
Display: Set projection length and label size.
Feedback welcome—happy trading!
Ultimator's RSI Smoother 3.0This indicator uses two RSI timeframes that are smoothed out by applying a SMA to the RSI lines. It's goal is to pinpoint optimal bottoms and tops on a general basis for all timeframes by marking them on the smoothed RSI lines as different colored dots for visual effect.
When the conditions are met at a low RSI for both lines, it creates a dot on the upper line to indicate a possible bottom.
When the conditions are met at high RSI for both lines, it creates a dot on the lower line to indicate a possible top.
This indicator is meant for any timeframe, and the RSI lengths as well as smoothing lengths are opened as user inputs to allows users to fine tune the conditions to their needs.
SuperTrend AI with RSI, EMA & Dynamic S/REdited SuperTrend AI gives a signal when macd, Rsi, EMA 50 are at same direction
MTF Sentiment ProMTF Sentiment Pro - Advanced Multi-Timeframe Analysis
Purpose & Methodology
MTF Sentiment Pro provides traders with comprehensive market sentiment analysis across multiple timeframes. This indicator's unique innovation is its weighted scoring system that evaluates both technical indicators and volume metrics to determine market sentiment across customizable timeframes.
Unlike simple indicator overlays or basic multi-timeframe tools, this indicator:
1. Calculates sentiment using a proprietary weighted formula across 7 different timeframes
2. Incorporates volume confirmation to validate price movements (a critical element often overlooked)
3. Provides clear visualization of sentiment alignment between lower and higher timeframes
4. Uses majority-rule algorithms for overall sentiment determination (2/3 rule for LTF, 3/4 rule for HTF)
Technical Components & Integration
Each timeframe's sentiment score is derived from a combination of:
- **EMA**: Evaluates trend direction and price position relative to moving average
- **RSI**: Measures momentum with sensitivity to the 50-level for trend determination
- **MACD**: Assesses trend strength and momentum through histogram analysis
- **Bollinger Bands**: Determines price volatility and position relative to the mean
- **VWAP**: Provides volume-adjusted price reference
- **OBV**: Confirms price moves with cumulative volume analysis
What makes this combination powerful is how these components are integrated:
- Each indicator contributes a weighted value to the overall sentiment score
- User-definable weights allow customization based on strategy preferences
- Volume confirmation adds a critical dimension beyond basic price-only indicators
- Multi-timeframe analysis helps identify alignment/divergence across time horizons
Trading Applications & Limitations
This indicator works best for:
- Trend confirmation across multiple timeframes
- Identifying potential reversal zones where LTF and HTF sentiments diverge
- Entry/exit timing when paired with your primary strategy rules
- Market structure analysis across different time horizons
Note: While this indicator provides comprehensive sentiment analysis, it should be used as part of a complete trading strategy with proper risk management. No indicator can predict market movements with certainty.
Usage Instructions
1. Select appropriate timeframes for your trading style or use one of the included presets
2. Adjust indicator weights to match your analytical preferences
3. Look for timeframe alignment/divergence to identify potential opportunities
4. Use the overall LTF and HTF sentiment readings for broader market context
This indicator was developed to solve the challenge of efficiently analyzing sentiment across multiple timeframes while incorporating volume confirmation - something that would otherwise require multiple indicators and manual correlation.
Rsi & Ema Optimization Buy-Sell Signal Cuneyt UgurThis indicator is a beta version indicator that aims to generate trading signals by optimizing the RSI (Relative Strength Index) and EMA (Exponential Moving Average) indicators.
Short and long exponential moving averages catch the breaks by following the trends of the bottom and top values of price movements in a certain period, cleared of contradictions. In addition, for RSI, it optimizes the bottom and top points of the RSI and creates buy and sell signals where there are parallels with the price breakdowns.
Recommendation for use: It is recommended to use it for at least 1 hour.d: At least 1 hour.
Fibonacci-Only Strategi V2# Fibonacci-Only Strategy V2
A sophisticated trading strategy that combines Fibonacci retracement levels with advanced pattern recognition and statistical confirmation.
## Key Features:
- Uses 19% and 82.56% Fibonacci retracement levels for trade signals
- Implements pattern matching algorithm to identify high-probability setups
- Incorporates statistical analysis for confirmation
## How to Read the Signals:
- Green Arrow Up: Strong long entry signal
- Red Arrow Down: Strong short entry signal
- Green Background: Long condition triggered
- Red Background: Short condition triggered
- Status Panel: Shows current Fibonacci, Pattern, and Statistical conditions
- Circle Markers: Indicate Fibonacci touch signals
- X-Cross Markers: Indicate Fibonacci break signals
- Text Labels: Display detailed signal information including pattern similarity percentage
This strategy is designed for traders who appreciate the powerful simplicity of Fibonacci levels enhanced by statistical validation and historical pattern recognition. The customizable parameters allow for fine-tuning across different timeframes and markets.
Perfect for both trend-following and reversal trading scenarios, providing clear entry and exit rules combined with dynamic risk management.
Premium structure - Higher High / Lower low - CZ INDICATORSThe best indicator on the Higher High - Lower low system.
This script identifies Orderblocks, Breakerblocks and Range using higher order pivots and priceaction logic.
I tried to reduce the number of blocks to make the chart cleaner, for this purpose I use only second order pivots for both MSB lines and supply/demand boxes, I also tried to filter out shifts in MS and false breakouts.
Green arrows show our lows, red arrows show our highs. This is done in order to clearly and clearly understand the current trend.
Also added order block, and breaker block.
Any box has GRAY color until it gets tested.
After successful test box gets colors:
RED for Supply
GREEN for Demand
BLUE for any Breakerblocks
For cleaner chart and script speed all broken boxes deletes from chart.
It gives comparatively clean chart on any TF, even on extra small (5m, 3m, 1m).
Лучший индикатор по системе Higher High - Lower Low.
Этот скрипт определяет ордерные блоки, брейкерные блоки и диапазоны, используя развороты высшего порядка и логику ценовых действий.
Я попытался уменьшить количество блоков, чтобы сделать график чище, для этого я использую только развороты второго порядка для линий MSB и блоков спроса/предложения, я также попытался отфильтровать сдвиги в MS и ложные прорывы.
Зеленые стрелки показывают наши минимумы, красные - максимумы. Это сделано для того, чтобы четко и ясно понимать текущий тренд.
Также добавлен блок ордеров и блок пробоев.
Любой блок имеет серый цвет до тех пор, пока он не будет протестирован.
После успешного тестирования блок приобретает цвет:
КРАСНЫЙ для предложения (медвежий ордер блок)
ЗЕЛЕНЫЙ для спроса (бычий ордер блок)
СИНИЙ для брейкерблока.
Для более чистого графика и скорости работы скрипта все сломанные блоки удаляются с графика.
Это дает сравнительно чистый график на любом ТФ, даже на сверхмалых (5м, 3м, 1м).
Bayesian TrendEnglish Description (primary)
1. Overview
This script implements a Naive Bayesian classifier to estimate the probability of an upcoming bullish, bearish, or neutral move. It combines multiple indicators—RSI, MACD histogram, EMA price difference in ATR units, ATR level vs. its average, and Volume vs. its average—to calculate likelihoods for each market direction. Each indicator is “binned” (categorized into discrete zones) and assigned conditional probabilities for bullish/bearish/neutral scenarios. The script then normalizes these probabilities and paints bars in green if bullish is most likely, red if bearish is most likely, or blue if neutral is most likely. A small table is also displayed in the top-right corner of the chart, showing real-time probabilities.
2. How it works
Indicator Calculations: The script calculates RSI, MACD (line and histogram), EMA, ATR, and Volume metrics.
Binning: Each metric is converted into a discrete category (e.g., low, medium, high). For example, RSI < 30 is binned as “low,” while RSI > 70 is binned as “high.”
Conditional Probabilities: User-defined tables specify the conditional probabilities of each bin under three hypotheses (Up, Down, Neutral).
Naive Bayesian Formula: The script multiplies the relevant conditional probabilities, normalizes them, and derives the final probabilities (Up, Down, or Neutral).
Visualization:
Bar Colors: Bars are green when the Up probability exceeds 50%, red for Down, and blue otherwise.
Table: Displays numeric probabilities of Up, Down, and Neutral in percentage terms.
3. How to use it
Add the script to your chart.
Observe the colored bars:
Green suggests a higher probability for bullish movement.
Red suggests a higher probability for bearish movement.
Blue indicates a higher probability of sideways or uncertain conditions.
Check the table in the top-right corner to see exact probabilities (Up/Down/Neutral).
Use the input settings to adjust thresholds (RSI, MACD, Volume, etc.), define alert conditions (e.g., when Up probability crosses 50%), and decide whether to trigger alerts on bar close or in real-time.
4. Originality and usefulness
Originality: This script uniquely applies a Naive Bayesian approach to a blend of classic and volume-based indicators. It demonstrates how different indicator “zones” can be combined to produce probabilistic insights.
Usefulness: Traders can interpret the probability breakdown to gauge the script’s bias. Unlike single indicators, this approach synthesizes several signals, potentially offering a more holistic perspective on market conditions.
5. Limitations
The conditional probabilities are manually assigned and may not reflect actual market behavior across all instruments or timeframes.
Results depend on the user’s choice of thresholds and indicator settings.
Like any indicator, past performance does not guarantee future results. Always confirm signals with additional analysis.
6. Disclaimer
This script is intended for educational and informational purposes only. It does not constitute financial advice. Trading involves significant risk, and you should make decisions based on your own analysis. Neither the script’s author nor TradingView is liable for any financial losses.
Русское описание (Russian translation, optional)
Этот индикатор реализует наивный Байесовский классификатор для оценки вероятности предстоящего роста (Up), падения (Down) или бокового движения (Neutral). Он комбинирует несколько индикаторов—RSI, гистограмму MACD, разницу цены и EMA в единицах ATR, уровень ATR относительно своего среднего значения и объём относительно своего среднего—чтобы вычислить вероятности для каждого направления рынка. Каждый индикатор делится на «зоны» (low, mid, high), которым приписаны условные вероятности для бычьего/медвежьего/нейтрального исхода. Скрипт нормирует эти вероятности и раскрашивает бары в зелёный, красный или синий цвет в зависимости от того, какая вероятность выше. Также в правом верхнем углу отображается таблица с текущими значениями вероятностей.
Demand/Supply Absorption PatternHey everyone,
I'm publishing this indicator to seek feedback and support from the community.
This indicator is designed to identify, confirm, and send alerts whenever a Demand/Supply absorption pattern appears on the chart.
Core Logic:
Impulse Move – A single candle or a cluster of candles with a strong bullish/bearish move, characterized by a price range and volume significantly exceeding the ATR and average volume. (I've already implemented this logic and highlighted these zones with rectangles.)
Absorption Phase – Following this move, signs of exhaustion in the previous Demand/Supply emerge. These signs can include small-bodied candles like Doji or Inside Bars, combined with low volume, indicating a potential absorption phase.
Breakout Confirmation – Finally, a breakout candle in the opposite direction confirms the reversal after the consolidation phase.
Challenges & Community Support
I've encountered difficulties in fully implementing steps 2 and 3. While detecting strong impulsive moves and sending alerts has already been helpful in tracking potential setups, completing the full pattern requires waiting 3-4 hours (on a 1-hour chart) or even until the next day (on a 4-hour chart). This delay makes it easy to miss potential price movements in real time.
I’d love to get feedback or suggestions from the community to improve this indicator further.
Thanks for your support!
Cheers! 🚀
Named SessionsShows London, New York and Tokyo sessions (and optionally Sydney).
Beginner-friendly - shows names of sessions, not just colors
Marks low and high of session
Shows if session is currently open
Session names can be customized
Session label is placed above or below depending on price move during session, visually indicating the trend (also works during open session)
Is displayed only on timeframes below 4H
How it works
Session trend is calculated simply by subtracting the session's opening price from the session's closing price (or current price if session is open).
If there is a gap before the session, the previous close is used instead of the first candle's open price.
Elite PivotsThis Script, called " Elite Pivots ," helps traders by drawing their key pivot, resistance, and support levels on their charts.
Users can set custom price levels for five resistances (R1–R5), one pivot (P), and five supports (S1–S5). The script then draws horizontal lines with configurable colors, styles, and labels for each level.
It also monitors if the price crosses any of these levels during a specified trading session, marking crossed levels with a target emoji (🎯).
This visual cue allows traders to quickly identify when important price levels are breached, which can be useful for timing trades and managing risk.
Double Numbered Triangle Chart Progression | RegressionThe Double-Numbered Triangle Progression | Regression Indicator enables forecasting of support and resistance levels by progressing or regressing on the Triangle Chart from a user-selected pivot price. The indicator also plots adjustable pivots on both the chart and the Triangle Price and Time Chart.
How to use to forecast support and resistance levels:
1. Select a Pivot Point: Set the correct price to the pivot by selecting High or Low in the indicator.
2. Set Price Increment: Choose a price increment to adjust the starting price on the Triangle Chart (e.g., 1 or -0.01).
3. Rotate to adjust the number of levels on the Triangle Chart.
4. Plot Levels: Choose the Left Edge, Center, or Right Edge of the Triangle Chart to plot support and resistance levels. These levels automatically expand or decrease depending on the number of levels in step 3. The selected angle's price values are applied to the chart with labels on both sides. The left labels represent the time variable, and the right labels indicate the price. The time variable is used in conjunction with my other indicator "Price and Longitude Angles." The same goes for the Double Numbered Square of Nine indicator.
5. Review Levels: Examine the plotted support and resistance levels with recent market pivots.
6. Identify Correlations: Find the Triangle edge or center that aligns with the most market pivots.
7. The indicator plots user-adjustable pivots on both candles/bars and shows their placement on the Triangle Chart in both Progression and Regression. This visualization helps users identify which angles the highs and lows favor from the selected pivot. Pivot levels' colors can be customized. The close price is plotted on the Triangle Chart in real time with a white background.
Each market has its tendencies, favoring specific angles from the Triangle Chart. The basic idea is to choose between the Left edge, Center, or Right edge of the Triangle to forecast support and resistance levels.
Settings:
Overview:
Example of Forecasting Support and resistance level using this indicator:
In the image above, I am regressing from the significant high at a rate of $-0.008 per cell as shown on the main info label. Based on the plotted pivots, I have chosen the right edge of the triangle as it aligns with these recent pivots. I have drawn a lime green vertical line to indicate that as we add layers to the triangle chart, we introduce support and resistance levels based on the identified angle that aligns with these early pivots from the high.
In the image below, I've moved forward in time to illustrate how the initial angle chosen based on the early pivots forecasted support and resistance levels on $DOGE. Do not expect the price to turn sharply at the levels the indicator generates. As P. Mikula mentions in his work, and I apply the same with the Triangle Chart, " The Square of Nine successfully defines market price swings but does not cause the market to form pivots. "
This indicator is inspired by the methodologies detailed by Patrick Mikula in his book, The Definitive Guide to Forecasting using W.D Gann's Square of Nine. I recommend checking it out. He also mentions another use case as a Triangle Price and Time chart in his book, Gann Scientific Method Unveiled, Volume 2, where you can use my open-source indicator "Price and Longitude Angle" alongside both the Doubled Numbered Square of Nine and this Triangle Chart indicator.
FYI, I am not affiliated with Patrick Mikula in any way.
Planned improvements include adding two more angles: Left Center column and Right Center column as additional options to select.
FYI: Please ensure you select the high when regressing from a high. Also, make sure to add enough layers on the Triangle to see all the pivots. Once you've identified an angle, you can hide the table to gain back space on the chart. Use rounding precision for lower prices.
WAGMI LAB Bitcoin SCALPING TREND REV + VOL FILTER WAGMI LAB Bitcoin SCALPING TREND REV + VOL FILTER is a powerful scalping indicator designed for Bitcoin (BTC) on M1, M5, and M15 timeframes. It helps traders identify trend reversals with volume confirmation, making it an effective tool for short-term trading.
Key Features:
✅ Hull Moving Average (HMA) – A fast-reacting trend filter to determine bullish or bearish momentum.
✅ MACD Confirmation – Ensures momentum shift alignment for stronger entry signals.
✅ Volume-Based Filtering – Uses a moving average of volume to filter out weak signals and avoid false breakouts.
✅ Clear Buy & Sell Signals – Plots green arrows for buy signals and red arrows for sell signals, making decision-making easier.
This indicator is ideal for scalpers looking to trade Bitcoin's rapid price movements efficiently while minimizing noise. 🚀💰
👉 Recommended Timeframes: M1, M5, M15
👉 Best Used With: Additional support/resistance levels or order flow analysis for enhanced accuracy.
Try it now and take your Bitcoin scalping to the next level! 🚀🔥
Gaussian Swing 1H strategyEnglish Description:
The "Gaussian Swing 1H strategy" is a trend-following trading strategy designed for swing trading on mid-term timeframes, specifically recommended for 30-minute to 1-hour charts. This strategy utilizes a Gaussian Filter to smooth price data and effectively identify trend directions. It helps traders to enter long positions during uptrends and short positions during downtrends, while efficiently filtering out market noise.
Core Features:
Gaussian Filter Smoothing:
– The strategy uses a Gaussian Filter to smooth price movements and eliminate minor fluctuations.
– It effectively detects trend changes by analyzing four consecutive rising or falling values.
Default Parameters:
– Length = 100: Determines the smoothing period.
– Sigma = 30: Controls the level of smoothing applied.
Trend Detection and Trading Logic:
– Long Entry: When the Gaussian Filter rises for four consecutive periods.
– Short Entry: When the Gaussian Filter falls for four consecutive periods.
– Position Reversal: Automatically closes the opposite position when a trend change is detected.
Risk Management:
The strategy includes customizable Stop-Loss and Take-Profit levels.
– Stop-Loss: Protects capital by setting a maximum loss limit as a percentage of the entry price.
– Default = 5%
– Take-Profit: Locks in profits by setting a target gain as a percentage of the entry price.
– Default = 15%
If both Stop-Loss and Take-Profit are disabled, the strategy closes positions upon trend reversal.
Swing Trading Recommendation:
This strategy is ideal for swing trading and is recommended for mid-term timeframes:
– 30-minute (30M) to 1-hour (1H) charts.
It is designed to capture larger market movements, making it suitable for traders looking to hold positions for several hours to a few days.
How to Use:
– Apply the strategy on 30M or 1H charts for best results in swing trading.
– Adjust the Length and Sigma parameters to optimize trend detection for your preferred instrument.
– Set Stop-Loss and Take-Profit levels according to your risk tolerance and trading goals.
– Enable "Candles Color" to visually distinguish trend directions on the chart.
Advantages:
– Noise Reduction: The Gaussian Filter smooths out minor fluctuations and focuses on the primary trend.
– Dynamic Trend Following: Automatically enters and exits positions based on trend changes.
– Versatile Risk Management: Customizable Stop-Loss and Take-Profit settings.
Conclusion:
The "Gaussian Swing 1H strategy" is a powerful and reliable trend-following tool suitable for swing traders aiming to capture medium-term market moves. By leveraging the Gaussian Filter, it provides clear entry and exit signals, enhancing decision-making and risk management. Its flexibility in parameter settings allows traders to adapt the strategy to various financial instruments and market conditions.
Описание на русском языке:
"Gaussian Swing 1H strategy" — это трендовая торговая стратегия, разработанная для среднесрочной торговли (swing-трейдинга) на таймфреймах от 30 минут до 1 часа. Стратегия использует Гауссов фильтр для сглаживания ценовых данных и эффективного определения направлений тренда. Она помогает трейдерам входить в лонг при восходящем тренде и в шорт при нисходящем тренде, одновременно фильтруя рыночный шум.
Основные характеристики:
Сглаживание с использованием Гауссова фильтра:
– Стратегия применяет Гауссов фильтр для сглаживания колебаний цены и устранения незначительных колебаний.
– Эффективно определяет изменения тренда, анализируя четыре последовательных значения роста или падения.
Настройки по умолчанию:
– Length = 100: Определяет период сглаживания.
– Sigma = 30: Регулирует степень сглаживания.
Обнаружение тренда и логика торговли:
– Вход в лонг: При четырех последовательных повышениях значения Гауссова фильтра.
– Вход в шорт: При четырех последовательных понижениях значения Гауссова фильтра.
– Переворот позиции: Автоматически закрывает противоположную позицию при обнаружении изменения тренда.
Управление рисками:
В стратегии предусмотрены Stop-Loss и Take-Profit с возможностью настройки.
– Stop-Loss: Ограничивает убыток в процентах от цены входа.
– По умолчанию = 5%
– Take-Profit: Фиксирует прибыль в процентах от цены входа.
– По умолчанию = 15%
Если Stop-Loss и Take-Profit отключены, стратегия закрывает позиции при смене тренда.
Рекомендации по применению для swing-трейдинга:
Стратегия идеально подходит для среднесрочной торговли (swing-трейдинга) и рекомендуется для следующих таймфреймов:
– 30 минут (30M) и 1 час (1H).
Разработана для захвата более крупных рыночных движений, что делает её подходящей для удержания позиций от нескольких часов до нескольких дней.
Как использовать:
– Применяйте стратегию на таймфреймах 30M или 1H для достижения наилучших результатов в swing-трейдинге.
– Настройте параметры Length и Sigma в зависимости от вашего торгового инструмента.
– Установите Stop-Loss и Take-Profit в соответствии с вашими целями и уровнем риска.
– Включите "Candles Color" для визуального отображения направлений тренда на графике.
Преимущества:
– Фильтрация шума: Гауссов фильтр устраняет незначительные колебания, выделяя основной тренд.
– Динамическое следование за трендом: Автоматически входит и выходит из позиций при смене тренда.
– Гибкое управление рисками: Возможность настройки уровней Stop-Loss и Take-Profit.
Заключение:
"Gaussian Swing 1H strategy" — это мощный и надежный инструмент для swing-трейдинга, который помогает захватывать среднесрочные рыночные движения. Благодаря использованию Гауссова фильтра, стратегия генерирует четкие сигналы на вход и выход, повышая эффективность принятия торговых решений и управления рисками. Гибкость в настройках параметров позволяет адаптировать стратегию к различным финансовым инструментам и рыночным условиям.
Breakouts With Timefilter Strategy [LuciTech]This strategy captures breakout opportunities using pivot high/low breakouts while managing risk through dynamic stop-loss placement and position sizing. It includes a time filter to limit trades to specific sessions.
How It Works
A long trade is triggered when price closes above a pivot high, and a short trade when price closes below a pivot low.
Stop-loss can be set using ATR, prior candle high/low, or a fixed point value. Take-profit is based on a risk-reward multiplier.
Position size adjusts based on the percentage of equity risked.
Breakout signals are marked with triangles, and entry, stop-loss, and take-profit levels are plotted.
moving average filter: Bullish breakouts only trigger above the MA, bearish breakouts below.
The time filter shades the background during active trading hours.
Customization:
Adjustable pivot length for breakout sensitivity.
Risk settings: percentage risked, risk-reward ratio, and stop-loss type.
ATR settings: length, smoothing method (RMA, SMA, EMA, WMA).
Moving average filter (SMA, EMA, WMA, VWMA, HMA) to confirm breakouts.
OBV Quantum Edge🚀 OBV Quantum Edge - Advanced Volume Analysis Suite 🚀
Hey fellow traders! After months of testing and refinement, I'm thrilled to share my latest creation with the trading community.
📊 What Makes This Indicator Special:
1. Smart Signal Generation:
• Combines On-Balance Volume (OBV) with volume analysis
• Uses RSI for momentum confirmation
• Incorporates EMA trend filtering
• Real-time accuracy tracking
2. Clean & Clear Signals:
• Green arrows: Strong buy opportunities
• Red arrows: Potential sell setups
• No confusing overlays or cluttered charts
• Focus on quality signals over quantity
3. Built-in Safety Features:
• Volume threshold confirmation
• Trend direction validation
• Multiple timeframe compatibility
• Anti-false signal protection
🎯 Best Usage Practices:
• Most effective on 1H, 4H, and Daily timeframes
• Watch for signals that align with the market trend
• Use the accuracy tracker to validate performance
• Perfect for swing trading and position trading
• Great companion to your existing strategy
💡 Pro Tips:
• Stronger signals occur with higher volume confirmation
• Wait for price action confirmation before entry
• Use proper position sizing and risk management
• Great for both crypto and traditional markets
🔍 Technical Details:
• Advanced OBV calculations with MA smoothing
• Dynamic volume filtering
• Trend-following capabilities
• Real-time performance tracking
Remember: While this indicator provides high-quality signals, always combine it with proper risk management and your own analysis. No indicator is perfect, but this tool aims to give you an edge in your trading journey.
Wishing you profitable trades! 📈
Created with passion by Anmol-max-star
Last Updated: 2025-03-02 13:18:45 UTC
P.S. Don't forget to follow for updates and more trading tools! Your feedback and suggestions are always welcome. Happy Trading! 🌟
#VolumeTrading #TechnicalAnalysis #TradingStrategy #SmartTrading
PSP - Swing Point - Daye Quarterly Theory - 2 AssetsFollow me on Twitter @Crypto_MM_
This indicator detects divergences in candles across two closely related assets. For example, when NQ closes bullish and ES closes bearish these candles are coloured Orange. The colour can be changed in the settings.
In addition there is swing point detection. However, instead of displaying all of the swing points that occur, this indicator will only label those which occur on candles which show a divergence between two closely related assets.
These have been named Precision Swing Points, or PSPs, by Trader Daye and are a key part of his teaching on Quarterly Theory.
This works across all timeframes.
I am also planning to release two other verions:
- One which detects PSPs between 3 assets
- Another which detects PSPs that occur when assets 1 and 2 (NQ and ES, for example) diverge vs asset 3 (for example, YM). If NQ and ES both close bullish, but YM closes bearish, this will be labeled
Other indicators which are show on the chart below and are highly recommended for Quarterly Theory:
Quarterly Theory Smart Money Assistant - - by x.com
Triad QT Beta - - by @darkmiki2
Daye Quarterly Theory by toodegrees - - by toodegrees
ICT NWOG/NDOG - - by Fadi
ES 5m Chart vs NQ (above)
Notes:
- I recommend adding this script to both assets as one may be a swing point and the other not
- Candles which closes the same as what they open at are considered bullish
Heikin-Ashi RSI VolX StrategyThis TradingView Pine Script integrates Heikin-Ashi candles, the Relative Strength Index (RSI), and volume trends to generate buy and sell signals. It first calculates Heikin-Ashi values by averaging price movements, smoothing out market noise to highlight trends more clearly. The script then computes a 14-period RSI to measure momentum, focusing on whether RSI crosses above 50 (indicating bullish momentum) or below 50 (indicating bearish momentum). To confirm trade signals, the script includes a volume filter, calculating a 20-period moving average of volume and ensuring that trades are only triggered when volume exceeds this average, preventing false signals in low-liquidity conditions. Buy signals appear when RSI crosses above 50 and volume is strong, while sell signals occur when RSI drops below 50 with high volume. These signals are visually marked with green up arrows for buys and red down arrows for sells, while Heikin-Ashi candles are color-coded to represent trends—green for uptrends and red for downtrends. This strategy helps traders filter out weak trades and identify stronger trends with confirmation from both momentum and volume. It is useful for trend-following strategies and can be enhanced with additional filters like moving averages or stop-loss levels for risk management.
Acceleration Bands HTF
This version gives you the ability to see the indicator from the HIGHER timeframes when you are on the timeframes. Please note that this is not the original formula, but a factored one that I found effective for identifying market trends. Thanks to @capissimo who provided the base open-code.
Acceleration Bands are designed to capture potential price breakouts or reversals in an asset. They are calculated based on a stock's price movements over a specified period, typically using the high, low, and closing prices. The idea is to identify moments when the price is accelerating (hence the name) beyond its normal range, which might indicate the beginning of a new trend.
Calculation
Acceleration Bands consist of three lines:
Upper Band (AB Upper): This is calculated by adding a certain percentage of the simple moving average (SMA) to the highest high over a given period.
Middle Band: This is typically the SMA of the stock's price.
Lower Band (AB Lower): This is calculated by subtracting the same percentage of the SMA from the lowest low over a given period.
Mathematically :
AB Upper = SMA + (Highest High * Percentage)
AB Lower = SMA - (Lowest Low * Percentage)
OR
Upper Band = SMA x (1 + (High - Low) / SMA)
Lower Band = SMA x (1 - (High - Low) / SMA)
Interpretation
The bands are used to identify periods when the price of a security is accelerating or decelerating:
Breakout Above Upper Band: This is usually considered a bullish signal, suggesting that the price is accelerating upwards and a new uptrend may be starting.
Breakdown Below Lower Band: This is usually considered a bearish signal, suggesting that the price is accelerating downwards and a new downtrend may be starting.
Reversal Between Bands: When the price re-enters the region between the bands after breaking out, it can be seen as a potential reversal signal.
Trading Strategy
Entry Signals:
Buy when the price breaks above the upper band.
Sell or short when the price breaks below the lower band.
Exit Signals:
Close a long position when the price falls back into the area between the bands.
Close a short position when the price rises back into the area between the bands.
Advantages
Helps capture early trends.
Can be used across various time frames and assets.
Provides clear entry and exit signals.
_matrixLibrary "_matrix"
Library helps visualize matrix as array of arrays and enables users to use array methods such as push, pop, shift, unshift etc along with cleanup activities on drawing objects wherever required
method delete(mtx, rowNumber)
deletes row from a matrix
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of objects
rowNumber (int) : row index to be deleted
Returns: void
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method delete(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
remove row from a matrix and returns them to caller
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of objects
rowNumber (int) : row index to be deleted
Returns: type
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method remove(mtx, rowNumber)
Namespace types: matrix
Parameters:
mtx (matrix)
rowNumber (int)
method unshift(mtx, row, maxItems)
unshift array of lines to first row of the matrix
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines
row (array) : array of lines to be inserted in row
maxItems (simple int)
Returns: resulting matrix of type
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method unshift(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
push array of lines to end of the matrix row
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines
row (array) : array of lines to be inserted in row
maxItems (simple int)
Returns: resulting matrix of lines
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method push(mtx, row, maxItems)
Namespace types: matrix
Parameters:
mtx (matrix)
row (array)
maxItems (simple int)
method shift(mtx)
shift removes first row from matrix of lines
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines from which the shift operation need to be performed
Returns: void
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method shift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
rshift removes first row from matrix of lines and returns them as array
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines from which the rshift operation need to be performed
Returns: type
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rshift(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
pop removes last row from matrix of lines
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines from which the pop operation need to be performed
Returns: void
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method pop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
rpop removes last row from matrix of lines and reutnrs the array to caller
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines from which the rpop operation need to be performed
Returns: void
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method rpop(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
clear clears the matrix
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines which needs to be cleared
Returns: void
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method clear(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
clear clears the matrix but retains the drawing objects
Namespace types: matrix
Parameters:
mtx (matrix) : matrix of lines which needs to be cleared
Returns: void
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
method flush(mtx)
Namespace types: matrix
Parameters:
mtx (matrix)
rzigzagLibrary "rzigzag"
Recursive Zigzag Using Matrix allows to create zigzags recursively on multiple levels. This is an old library converted to V6
zigzag(length, ohlc, numberOfPivots, offset)
calculates plain zigzag based on input
Parameters:
length (int) : Zigzag Length
ohlc (array) : Array containing ohlc values. Can also contain custom series
numberOfPivots (simple int) : Number of max pivots to be returned
offset (simple int) : Offset from current bar. Can be used for calculations based on confirmed bars
Returns: [matrix zigzagmatrix, bool flags]
iZigzag(length, h, l, numberOfPivots)
calculates plain zigzag based on input array
Parameters:
length (int) : Zigzag Length
h (array) : array containing high values of a series
l (array) : array containing low values of a series
numberOfPivots (simple int) : Number of max pivots to be returned
Returns: matrix zigzagmatrix
nextlevel(zigzagmatrix, numberOfPivots)
calculates next level zigzag based on present zigzag coordinates
Parameters:
zigzagmatrix (matrix) : Matrix containing zigzag pivots, bars, bar time, direction and level
numberOfPivots (simple int) : Number of max pivots to be returned
Returns: matrix zigzagmatrix
draw(zigzagmatrix, flags, lineColor, lineWidth, lineStyle, showLabel, xloc)
draws zigzag based on the zigzagmatrix input
Parameters:
zigzagmatrix (matrix) : Matrix containing zigzag pivots, bars, bar time, direction and level
flags (array) : Zigzag pivot flags
lineColor (color) : Zigzag line color
lineWidth (int) : Zigzag line width
lineStyle (string) : Zigzag line style
showLabel (bool) : Flag to indicate display pivot labels
xloc (string) : xloc preference for drawing lines/labels
Returns:
draw(length, ohlc, numberOfPivots, offset, lineColor, lineWidth, lineStyle, showLabel, xloc)
calculates and draws zigzag based on zigzag length and source input
Parameters:
length (int) : Zigzag Length
ohlc (array) : Array containing ohlc values. Can also contain custom series
numberOfPivots (simple int) : Number of max pivots to be returned
offset (simple int) : Offset from current bar. Can be used for calculations based on confirmed bars
lineColor (color) : Zigzag line color
lineWidth (int) : Zigzag line width
lineStyle (string) : Zigzag line style
showLabel (bool) : Flag to indicate display pivot labels
xloc (string) : xloc preference for drawing lines/labels
Returns: [matrix zigzagmatrix, array zigzaglines, array zigzaglabels, bool flags]
drawfresh(zigzagmatrix, zigzaglines, zigzaglabels, lineColor, lineWidth, lineStyle, showLabel, xloc)
draws fresh zigzag for all pivots in the input matrix.
Parameters:
zigzagmatrix (matrix) : Matrix containing zigzag pivots, bars, bar time, direction and level
zigzaglines (array) : array to which all newly created lines will be added
zigzaglabels (array) : array to which all newly created lables will be added
lineColor (color) : Zigzag line color
lineWidth (int) : Zigzag line width
lineStyle (string) : Zigzag line style
showLabel (bool) : Flag to indicate display pivot labels
xloc (string) : xloc preference for drawing lines/labels
Returns: