TA Basics: further "Steps" with our Moving AverageSo far in this series of posts, we have worked thru creating a basic zero-lag moving average, then moved forward all the way to coding a "Fibonacci" Weighted Moving Average.
in this post we take a look at a technique that can help traders minimize noise in the underlying data and get better insight on the changes that are happening in the data series represented by the moving average. we'll look at adding "stepping" to our Fibonacci Moving Average as an example. we introduce the Stepping Fibonacci Moving Average , or Step_FiMA
note that you can use the same technique with any plot you may have. feel free to copy or leverage the relevant parts of the script - the script is commented to make this easier.
How is this useful?
==================
with "stepping", you get your indicator to "round" the outcome into pre-specified bands or ranges. this works very similar to how, for example, range or Renko charts work. you can easily see the difference in the chart above once we look at a non-stepped and a stepping moving average of the same length side-by-side
the more granular your timeframe is, you will see the effect of the stepping clearer - here's how the same chart looks when we go into the 1-hr aggregation
Notes about this script
====================
there are couple of pieces i wanted to highlight in the script if you plan to use some of it :
1 - the step(x) function is meant to try to automatically pick the best "suitable" step size based on the range of the underlying series (for example, the closing price). these ranges i included here in the code are just my own "best choices" - you are totally welcome to adjust these ranges and the resulting step size to your own preference
2 - we applied the stepping as a user-choice. user can choose a manual entry, or "0" to get the code to automatically pick the step size, or enter -1 (or actually any value below zero) to cancel the stepping option altogether - this gives us some flexibility on how to use the stepping in an indicator
3 - very important (and somehow confusing): on the "rounding" approach:
the magic math formula that actually creates the stepping is this one
result = round(input / step) * step
now, this tells the script to "round" the result up or down (the basic rounding) -- so for example, a price of 17 with a step of 5 would be rounded (down) to 15, where as a price of 18 would be rounded "up" to 20 -- this is not the way some of us would expect or want, cause the price never reached 20 and they would want an 18 to still be rounded to 15 - and the stepping line not to show 20 *until* the price actually hits or exceeds 20 -- in that case, you would need to replace the function "round" with the function "floor" --
so the new formula becomes: floor(input / step) * step
-- in an ideal world, we can make this rounding choice a user-option in the settings -- maybe in an improved version
4 - we kept the smoothing option, and it takes place before the stepping is applied - we continue to use that smoothing to further minimize the level changes in the FiMA line.
I hope you find this script useful in your journey with technical analysis and DIY scripting, and good luck in your trading.
Pesquisar nos scripts por "黄金近20年走势"
BTC and ETH Long strategy - version 1I will start with a small introduction about myself. I'm now trading cryto currencies manually for almost 2 years. I decided to start after watching a documentary on the TV showing people who made big money during the Bitcoin pump which happened at the end of 2017.
The next day, I asked myself "Why should I not give it a try and learn how to trade".
This was in February 2018 and the price of Bitcoin was around 11500USD.
I didn't know how to trade. In fact, I didn't know the trading industry at all.
So, my first step into trading was to open an account with a broken. Then I directly bought 200$ worst of BTC . At that time, I saw the graph and thought "This can only go back in the upward direction!" :)
I didn't know anything about Stop loss, Take profit and Risk management.
Today, almost 2 years after, I think that I know how to trade and can also confirm that I still hold this bag of 200$ of bitcoin from 2018 :)
I did spend the 2 last years to learn technical analysis , risk management and leverage trading.
Today (14/05/2020), I know what I'm doing and I'm happy to see that the 2 last years have been positive in terms of gains. Of course, I did not make crazy money with my saving but at least I made more than if I would have kept it in my bank account.
Even if I like trading, I have a full time job which requires my full energy and lots of focus, so, the biggest problem I had is that I didn't have enough time to look at the charts.
Also, I realized that sometimes, neither technical analysis , nor fundamentals worked with crypto currency (at least for short time trading). So, as I have a developer background I decided to try to have a look at algo trading.
The goal for me was neither to make complex algos nor to beat the market but just to automate my trading with simple bot catching the big waves.
I then started to take a look at TV pine script and played with it.
I did my first LONG script in February 2020 to Long the BTC Market. It has some limitations but works well enough for me for the time being. Even if the real trades will bring me half of what the back testing shows, this will still be a lot more than what I was used to win during the last 2 years with my manual trading.
So, here we are! Below you will find some details about my first LONG script. I'm happy to share it with you.
Feel free to play with it, give your comments and bring improvements to it.
But please note that it only works fine with the candle size and crypto pair that I have mentioned below. If you use other settings this algo might loose money!
- Crypto pairs : XBTUSD and ETHXBT
- Candle size: 2 Hours
- Indicator used: Volatility , MACD (12, 26, 7), SMA (100), SMA (200), EMA (20)
- Default StopLoss: -1.5%
- Entry in position if: Volatility < 2%
AND MACD moving up
AND AME (20) moving up
AND SMA (100) moving up
AND SMA (200) moving up
AND EMA (20) > SAM (100)
AND SMA (100) > SMA (200)
- Exit the postion if: Stoploss is reached
OR EMA (20) crossUnder SMA (100)
Here is a summary of the results for this script:
XBTUSD : 01/01/2019 --> 14/05/2020 = +107%
ETHXBT : 01/01/2019 --> 14/05/2020 = +39%
ETHUSD : 01/01/2019 --> 14/05/2020 = +112%
It is far away from being perfect. There are still plenty of things which can be done to improve it but I just wanted to share it :) .
Enjoy playing with it....
BO - Bar M15 2/3 SignalBO - Bar M15 2/3 Signal show the signal to trade Binary Option with rule below:
A. Indicator
* Bollinger Band (20,2): avoid waterfall
B. Rule of Signal
1. Rule1: Split Bar M15 to 3 part and load them on M5 chart (recommend use M5 IDC chart)
2. Rule 2: Delay 10' after bar M15 open => wait for price's pattern
3. Rule 3: Put Signal row 30-32
* Delay 10' after bar M15 open.
* Direction of 1/3 and 2/3 Bar M15 is upward
* close of 2/3 Bar M15 below upper band Bb(20,2) on M5 chart => avoid strong buy
4. Rule 4: Call Signal row 36-38
* Delay 10' after bar M15 open.
* Direction of 1/3 and 2/3 Bar M15 is downward
* close of 2/3 Bar M15 above lower band Bb(20,2) on M5 chart => avoid strong sell
C. Recommend Expiry time: Bar M15 close
* We try to catch the shadow of Bar M15 but dont trade when price run on the upper or lower band of BB(20,2,M5)
Average Candle Length 2.0This script will tell you the following:
• Average length of all the candles (wick to wick) for the last 20 candles
-- shown in blue
• Average length of bull (green) candles (wick to wick) for the last 20 candles
-- shown in green
• Average length of bear (red) candles (wick to wick) for the last 20 candles
-- shown in red
___________________________________________
Inputs:
• # of Candles to analyze (default = 20)
Pivot trend indicatorThis is a LAGGING indicator which can provide a good indication of trend. It require a certain (configurable) number of candles to have closed before it can determine whether a pivot has formed.
It provides a 20 period SMA for the timeframe of your choice which is color coded to show the trend according to confirmed pivots.
Anticipated usage:
Long / Short bias is determined by pivot trend
Trader seeks entries according to their strategy
Black consolidation areas may trigger a re-evaluation of the trade and can serve as good profit taking areas
The SMA colors:
Green -> Higher highs & Higher lows
Red -> Lower highs & Lowers lows
Black -> No clear trend from the pivots
Why the 20 SMA?
Feel free to adjust it for your purposes. I personally find that using a higher time frame 20 SMA is a better indication of trend than longer period MAs on shorter time frames. This can be seen from comparing the 20 daily SMA and 200 hourly SMA.
Pivot adjustment
The pivots use the selected time frame (not) the MA trend time frame. You can specify the left and right candles required to confirm a pivot
VIX reversion-Buschi
English:
A significant intraday reversion (commonly used: 3 points) on a high (over 20 points) S&P 500 Volatility Index (VIX) can be a sign of a market bottom, because there is the assumption that some of the "big guys" liquidated their options / insurances because the worst is over.
This indicator shows these reversions (3 points as default) when the VIX was over 20 points. The character "R" is then shown directly over the daily column, the VIX need not to be loaded explicitly.
Deutsch:
Eine deutliche Intraday-Umkehr (3 Punkte im Normalfall) bei einem hohen (über 20 Punkte) S&P 500 Volatility Index (VIX) kann ein Zeichen für eine Bodenbildung im Markt sein, weil möglicherweise einige "große Jungs" ihre Optionen / Versicherungen auflösen, weil das schlimmste vorbei ist.
Dieser Indikator zeigt diese Umkehr (Standardwert: 3 Punkte), wenn der VIX vorher über 20 Punkte lag. Der Buchstabe "R" wird dabei direkt über dem Tagesbalken angezeigt, wobei der VIX nicht explizit geladen werden muss.
Triple Moving Average HeatmapHi everyone
I didn't publish on Friday because I was working on an Expert Advisor in MT4. The day I don't publish, some scripts spamming guys published many (not useful) scripts the same to kick me out of the TOP #1 ranking.
So what I'm going to do about it? crying or sharing more quality scripts than before? :)
I guess you know the answer :) I'm gonna share a few quality scripts that I have in my library. I noticed that you guys tend to like more the scripts useful for your trading actually making you money rather than a copy-paste (of another copy-paste)
Alright, enough for the trolling now let's introduce the Three MA heatmap which is an upgrade of that script : MA-heatmap-Double-cross-edition/
The challenge was to keep the heatmap not rolling and to make it match with the MA cross. I did it using this
```
since_ma_buy = barssince(macrossover)
since_ma_sell = barssince(macrossunder)
heatmap_color() =>
since_ma_buy < since_ma_sell ? color.new(color.green, 20) : since_ma_buy > since_ma_sell ? color.new(color.red, 20) : na
```
This is a technique that I found after drinking three glasses of red wine (#french) to keep the heatmap stable and not rolling.
To get what I'm saying I invite you to replace the piece of code above by what everyone would normally do
```
heatmap_color() =>
macrossunder() ? color.new(color.green, 20) : macrossover() ? color.new(color.red, 20) : na
```
Ah and I'm not done sharing for the day, a few scripts are coming also after that one and tonight !!!!! I want to live in a world where you guys can enjoy quality scripts (mostly) :)
PS
____________________________________________________________
Feel free to hit the thumbs up as it shows me that I'm not doing this for nothing and will motivate to deliver more quality content in the future.
- I'm an officially approved PineEditor/LUA/MT4 approved mentor on codementor. You can request a coaching with me if you want and I'll teach you how to build kick-ass indicators and strategies
Jump on a 1 to 1 coaching with me
- You can also hire for a custom dev of your indicator/strategy/bot/chrome extension/python
Palex 2.0Atualização do SETUP do saudoso Professor Alexandre Fernandes "Palex"
- Bandas de Bolliger (Standard) =
*Banda Superior = Média Móvel Simples (20 dias) + (2 x Desvio Padrão de 20 dias)
*Banda Inferior = Média Móvel Simples (20 dias) – (2 x Desvio Padrão de 20 dias)
- EMA 9 (Média Móvel Exponencial)
- SMA 21 (Média Móvel Simples)
- SMA 200 (Média Móvel Simples) Clássica MA 200 períodos
- SMA 400 (Média Móvel Simples)
- EMA 400 (Média Móvel Exponencial)
- WILD (Média Móvel Welles Wilder)
O mesmo usado pelo nosso grande Mestre PALEX!
The 6 Line Death PunchIf you are looking to discover what trend you are in, you need to first what direction the price is going in...
I've been using and testing a mixture of EMA's and SMA's for a long time and I've found that these ones are by far the best.
EMA 3
EMA 8
MA 20
EMA 55
MA 100
MA 200
EMA 3 & 8 Crossover is a good method for confirming a coin going to the upside or to the downside.
EMA 8 is known as the Trigger Line (trademarked brand) as one of the fib numbers it shows good support or resistance of a trend.
MA 20 universal way of seeing trend direction in the stock market, works well with crypto too.
EMA 55, another trusty fib number. Works very well and could trade off that alone as support and resistance.
MA 100 and MA 200. Long ranged moving averages which govern the overall longer-term trend.
LONG ENTRY
Option 1 - 3/8 crossover
Option 2 - Candles above EMA 8
Option 3 - Candles above MA 20
Option 4 - Candles Above EMA 55.
SHORT ENTRY
Option 1 - 3/8 crossover
Option 2 - Candles below EMA 8
Option 3 - Candles below MA 20
Option 4 - Candles below EMA 55.
Signals for call and putSorry for the Google Translate English
Indicator for signals of call and put, using Bollinger bands (period 20, standard deviation 2.5), market trend of (sma, períod 100) and stochastic (period 20, %D 3).
I was overthrown but in pine scrip, the function "stoch()" no way to smooth (3). If anyone knows how to smooth inside the script, help me! Please.
With smoothed stochastic the hit rate grows a lot.
Português (Pt-Br)
Indicador de sinais de compra e venda, usando bandas de Bollinger (período de 20, desvio de 2,5), tendencia de mercado com (sma período 100) e estocástico (período 20, %D de 3).
Eu travei porque no pine script, a função "stoch()" não tem como aplicar a suavização (3). Se alguem souber como suavizar dentro do script, me ajude! Por favor.
MG - Multiple Moving Averages & Candle Wick Alerts - 1.0Features:
- Each moving average has customizable length, type and source
- The ability to change the source of all moving averages with one input (changing an individual MA source will override the general for that MA)
- At a glance comparison of 20 SMA and 20 VWMA to gauge volume trend
- Wick alerts which can be toggled for each moving average.
- Bullish wick alerts are when the wick is the only part of the candle to drop below the moving average
- Bearish wick alerts are when the wick is the only part of the candle to reach above the moving average
- Simple candle closed alert if you want a notification, for example each hour.
Defaults: Four SMAs (20, 50, 100, 200) and a 20 VWMA .
Recommended Usage:
- Set the general source (sets the source of all moving averages) to 'low' when in an uptrend and 'high' in a downtrend to maximize Risk : Reward.
- Use Fibonacci levels, oscillators .etc for confluence
NOTE: The moving average component of this indicator is the same as the previous indicator ()
Indicator - Multiple Moving Averages 1.0Features:
- Each moving average has customizable length, type and source
- The ability to change the source of all moving averages with one input (changing an individual MA source will override the general for that MA)
- At a glance comparison of 20 SMA and 20 VWMA to gauge volume trend
Defaults: Four SMAs (20, 50, 100, 200) and a 20 VWMA.
Usage:
- Use Fibonacci levels, pivots .etc for confluence
- Personally, I like to set overall source to low in uptrends, to high in downtrends and then set alerts for when the price crosses any of the averages. Then pay particular attention to the candlesticks and other indicators.
TODO:
- Add alerts option so that it send alert on crossing up or down any alert lines.
XPloRR MA-Trailing-Stop StrategyXPloRR MA-Trailing-Stop Strategy
Long term MA-Trailing-Stop strategy with Adjustable Signal Strength to beat Buy&Hold strategy
None of the strategies that I tested can beat the long term Buy&Hold strategy. That's the reason why I wrote this strategy.
Purpose: beat Buy&Hold strategy with around 10 trades. 100% capitalize sold trade into new trade.
My buy strategy is triggered by the fast buy EMA (blue) crossing over the slow buy SMA curve (orange) and the fast buy EMA has a certain up strength.
My sell strategy is triggered by either one of these conditions:
the EMA(6) of the close value is crossing under the trailing stop value (green) or
the fast sell EMA (navy) is crossing under the slow sell SMA curve (red) and the fast sell EMA has a certain down strength.
The trailing stop value (green) is set to a multiple of the ATR(15) value.
ATR(15) is the SMA(15) value of the difference between the high and low values.
The scripts shows a lot of graphical information:
The close value is shown in light-green. When the close value is lower then the buy value, the close value is shown in light-red. This way it is possible to evaluate the virtual losses during the trade.
the trailing stop value is shown in dark-green. When the sell value is lower then the buy value, the last color of the trade will be red (best viewed when zoomed)(in the example, there are 2 trades that end in gain and 2 in loss (red line at end))
the EMA and SMA values for both buy and sell signals are shown as a line
the buy and sell(close) signals are labeled in blue
How to use this strategy?
Every stock has it's own "DNA", so first thing to do is tune the right parameters to get the best strategy values voor EMA , SMA, Strength for both buy and sell and the Trailing Stop (#ATR).
Look in the strategy tester overview to optimize the values Percent Profitable and Net Profit (using the strategy settings icon, you can increase/decrease the parameters)
Then keep using these parameters for future buy/sell signals only for that particular stock.
Do the same for other stocks.
Important : optimizing these parameters is no guarantee for future winning trades!
Here are the parameters:
Fast EMA Buy: buy trigger when Fast EMA Buy crosses over the Slow SMA Buy value (use values between 10-20)
Slow SMA Buy: buy trigger when Fast EMA Buy crosses over the Slow SMA Buy value (use values between 30-100)
Minimum Buy Strength: minimum upward trend value of the Fast SMA Buy value (directional coefficient)(use values between 0-120)
Fast EMA Sell: sell trigger when Fast EMA Sell crosses under the Slow SMA Sell value (use values between 10-20)
Slow SMA Sell: sell trigger when Fast EMA Sell crosses under the Slow SMA Sell value (use values between 30-100)
Minimum Sell Strength: minimum downward trend value of the Fast SMA Sell value (directional coefficient)(use values between 0-120)
Trailing Stop (#ATR): the trailing stop value as a multiple of the ATR(15) value (use values between 2-20)
Example parameters for different stocks (Start capital: 1000, Order=100% of equity, Period 1/1/2005 to now) compared to the Buy&Hold Strategy(=do nothing):
BEKB(Bekaert): EMA-Buy=12, SMA-Buy=44, Strength-Buy=65, EMA-Sell=12, SMA-Sell=55, Strength-Sell=120, Stop#ATR=20
NetProfit: 996%, #Trades: 6, %Profitable: 83%, Buy&HoldProfit: 78%
BAR(Barco): EMA-Buy=16, SMA-Buy=80, Strength-Buy=44, EMA-Sell=12, SMA-Sell=45, Strength-Sell=82, Stop#ATR=9
NetProfit: 385%, #Trades: 7, %Profitable: 71%, Buy&HoldProfit: 55%
AAPL(Apple): EMA-Buy=12, SMA-Buy=45, Strength-Buy=40, EMA-Sell=19, SMA-Sell=45, Strength-Sell=106, Stop#ATR=8
NetProfit: 6900%, #Trades: 7, %Profitable: 71%, Buy&HoldProfit: 2938%
TNET(Telenet): EMA-Buy=12, SMA-Buy=45, Strength-Buy=27, EMA-Sell=19, SMA-Sell=45, Strength-Sell=70, Stop#ATR=14
NetProfit: 129%, #Trade
EMA Indicators with BUY sell SignalCombine 3 EMA indicators into 1. Buy and Sell signal is based on
- Buy signal based on 20 Days Highest High resistance
- Sell signal based on 10 Days Lowest Low support
Input :-
1 - Short EMA (20), Mid EMA (50) and Long EMA (200)
2 - Resistance (20) = 20 Days Highest High line
3 - Support (10) = 10 Days Lowest Low line
SMA Close/High/Low with Input LengthCustom SMA Indicator on TradingView: Close, High, and Low
This TradingView Pine Script indicator plots three Simple Moving Averages (SMAs) on the main price chart using the closing, high, and low prices of the asset. Unlike a standard SMA that considers only the closing price, this indicator gives you insights into the average price behavior from three different perspectives simultaneously.
What It Does
Calculates a 20-period (default) SMA of the Closing price to show the average trend of closing prices.
Calculates a 20-period SMA of the High price to track the average upper price movement.
Calculates a 20-period SMA of the Low price to track the average lower price movement.
All three lines are overlaid on the price chart for easy comparison.
The SMA length is adjustable by the user via an input box, making the indicator versatile for different trading timeframes and strategies.
Market Energy & Direction DashboardMarket Energy & Direction Dashboard - Daytrading
Overview
A comprehensive real-time market internals dashboard that combines NYSE TICK, NYSE Advance-Decline (ADD) momentum, VIX direction, and relative volume into a single visual traffic light system with intelligent signal synthesis. Designed for active daytraders who need instant confirmation of market direction and energy based on momentum alignment across all major internals.
What It Does
This indicator synthesizes multiple market internals using directional momentum analysis rather than static thresholds to provide clear, actionable signals:
• Traffic Light System: Single glance confirmation of market state
o Bright Green: Maximum bullish - all internals aligned (TICK + ADD rising + VIX falling + volume)
o Bright Red: Maximum bearish - all internals aligned (TICK + ADD falling + VIX rising + volume)
o Yellow: Exhaustion warning - TICK at extremes, potential reversal imminent
o Moderate Colors: Partial alignment - some confirmation but not complete
o Gray: Choppy, neutral, or conflicting signals
• Real-Time Dashboard displays:
o Current TICK value with exhaustion warnings
o Current ADD with directional momentum indicator (↑ rising = breadth improving, ↓ falling = breadth deteriorating, ± compression)
o VIX level with directional indicator (↓ declining = bullish, ↑ rising = bearish, ± compression = neutral)
o Relative volume (current vs 20-period average)
o Composite status message synthesizing all data into clear directional summary
Key Features
✓ Momentum-based analysis - all indicators show direction/change, not just levels ✓ Intelligent signal hierarchy from "Maximum" to "Moderate" based on internal alignment ✓ ADD directional momentum - catches breadth shifts early, works in all market conditions ✓ VIX directional analysis - shows if fear is increasing, decreasing, or stagnant ✓ Color-coded traffic light for instant decision making ✓ Detects TICK/ADD divergences (conflicting signals = caution) ✓ Exhaustion warnings at extreme TICK levels (±1000+) ✓ Composite status messages - "Maximum Bull", "Strong Bull", "Moderate Bull", etc. ✓ Customizable thresholds for all parameters ✓ Moveable dashboard (9 position options) ✓ Built-in alerts for all signal strengths, exhaustion, and divergences
How To Use
Setup:
1. Add indicator to your main trading chart (SPY, ES, NQ, etc.)
2. Default settings work well for most traders, but you can customize:
o TICK Extreme Level (default 1000)
o ADD Compression Threshold (default 100 - detects when breadth is stagnant)
o VIX Elevated Level (default 20)
o VIX Compression Threshold (default 2% - detects low volatility)
o Volume Threshold (default 1.5x average)
3. Position dashboard wherever convenient on your chart
Reading The Signals:
Signal Hierarchy (Strongest to Weakest):
MAXIMUM SIGNALS ⭐ (Brightest colors - All 4 internals aligned)
• "✓ MAXIMUM BULL": TICK bullish + ADD rising (↑) + VIX falling (↓) + Volume elevated
o This is the holy grail setup - all momentum aligned, highest conviction longs
• "✓ MAXIMUM BEAR": TICK bearish + ADD falling (↓) + VIX rising (↑) + Volume elevated
o Perfect storm bearish - all momentum aligned, highest conviction shorts
STRONG SIGNALS (Bright colors - Core internals aligned)
• "✓ STRONG BULL": TICK bullish + ADD rising (↑)
o Strong confirmation even without VIX/volume - breadth supporting the move
• "✓ STRONG BEAR": TICK bearish + ADD falling (↓)
o Strong confirmation - both momentum and breadth deteriorating
MODERATE SIGNALS (Faded colors - Partial confirmation)
• "MODERATE BULL": TICK bullish but ADD not confirming direction
o Proceed with caution - momentum present but breadth questionable
• "MODERATE BEAR": TICK bearish but ADD not confirming direction
o Proceed with caution - selling but breadth not fully participating
WARNING SIGNALS
• "⚠ EXHAUSTION" (Yellow): TICK at ±1000+ extremes
o Potential reversal zone - prepare to fade or take profits
o Often marks blow-off tops or capitulation bottoms
NEUTRAL/AVOID
• "CHOPPY/NEUTRAL" (Gray): Conflicting signals or low conviction
o Stay out or reduce size significantly
Individual Indicator Interpretation:
TICK:
• Green: Bullish momentum (>+300)
• Red: Bearish momentum (<-300)
• Yellow: Exhaustion (±1000+)
• Gray: Neutral
ADD (Advance-Decline):
• Green (↑): Breadth improving - more stocks participating in the move
• Red (↓): Breadth deteriorating - fewer stocks participating
• Gray (±): Breadth stagnant - no clear participation trend
VIX:
• Green (↓): Fear declining - healthy environment for rallies
• Red (↑): Fear rising - risk-off mode, supports downward moves
• Gray (±): Volatility compression - often precedes explosive moves
Volume:
• Green: High conviction (>1.5x average)
• Gray: Low conviction
Trading Strategy:
1. Wait for "MAXIMUM" or "STRONG" signals for highest probability entries
o Maximum signals = go full size with confidence
o Strong signals = good conviction, normal position sizing
2. Confirm directional alignment:
o For longs: Want ADD ↑ (rising) and VIX ↓ (falling)
o For shorts: Want ADD ↓ (falling) and VIX ↑ (rising)
3. Use exhaustion warnings (yellow) to:
o Take profits on existing positions
o Prepare counter-trend entries
o Tighten stops
4. Avoid "MODERATE" signals unless you have strong conviction from other analysis
o These work best as confirmation for existing setups
o Not strong enough to initiate new positions alone
5. Never trade "CHOPPY/NEUTRAL" signals
o Gray means stay out - preserve capital
o Wait for clear alignment
6. Watch for divergences:
o Price making new highs but ADD ↓ (falling) = distribution warning
o Price making new lows but ADD ↑ (rising) = potential bottom
o Divergence alert will notify you
Best Practices:
• Use on 1-5 minute charts for daytrading
• Combine with your price action or technical setup (support/resistance, trendlines, patterns)
• The dashboard confirms when to take your setup, not what setup to take
• Most effective during regular market hours (9:30 AM - 4:00 PM ET) when volume is present
• The strongest edge comes from "MAXIMUM" signals - wait for these for best risk/reward
• Pay special attention to ADD direction - it's the most predictive breadth indicator
• VIX compression (gray ±) often signals upcoming volatility expansion - prepare for bigger moves
Customization Option
All thresholds are adjustable in settings:
• TICK Extreme: Higher = fewer exhaustion warnings (try 1200-1500 for less sensitivity)
• ADD Compression Threshold: Change detection sensitivity
o Default 100 = balanced
o Lower (50) = more sensitive to small breadth changes
o Higher (200-300) = only shows major breadth shifts
• VIX Elevated: Adjust for current volatility regime (15-25 typical range)
• VIX Compression Threshold:
o Default 2% = balanced
o Lower (0.5-1%) = catches subtle VIX changes
o Higher (3-5%) = only shows significant VIX moves
• Volume Threshold: Lower for quieter stocks/times, higher for more confirmation
Alerts Available
• Maximum Bullish: All 4 internals aligned bullish (TICK + ADD↑ + VIX↓ + Volume)
• Maximum Bearish: All 4 internals aligned bearish (TICK + ADD↓ + VIX↑ + Volume)
• Strong Bullish: TICK bullish + ADD rising
• Strong Bearish: TICK bearish + ADD falling
• Exhaustion Warning: TICK at extreme levels
• Divergence Warning: TICK and ADD directions conflicting
Understanding the Signal Synthesis
The indicator uses intelligent logic to combine all internals:
"MAXIMUM" Signals require:
• TICK direction (bullish/bearish)
• ADD momentum (rising/falling) in same direction
• VIX direction (falling for bulls, rising for bears)
• Volume elevated (>1.5x average)
"STRONG" Signals require:
• TICK direction (bullish/bearish)
• ADD momentum (rising/falling) in same direction
• (VIX and volume are bonuses but not required)
"MODERATE" Signals:
• TICK showing direction
• But ADD not confirming or contradicting
• Weakest actionable signal
This hierarchy ensures you know exactly how much conviction the market has behind any move.
Technical Details
• Pulls real-time data from NYSE TICK (USI:TICK), NYSE ADD (USI:ADD), and CBOE VIX
• ADD direction calculated using bar-to-bar change with compression detection
• VIX direction calculated using bar-to-bar percentage change
• Volume calculation uses 20-period simple moving average
• Dashboard updates every bar
• No repainting - all calculations based on closed bar data
Who This Is For
• Active daytraders of stocks, futures (ES/NQ), and options
• Scalpers needing quick directional confirmation with multiple internal alignment
• Swing traders looking to time intraday entries with maximum confluence
• Volatility traders who monitor VIX behavior
• Market makers and professionals who trade based on breadth and internals
• Anyone who monitors market internals but wants intelligent synthesis vs raw data
Tips For Success
Trading Philosophy:
• Quality over quantity - wait for "MAXIMUM" signals for best results
• One "MAXIMUM" signal trade is worth five "MODERATE" signal trades
• Gray/neutral is not a sign of missing opportunity - it's protecting your capital
Signal Confidence Levels:
1. MAXIMUM (95%+ confidence) - Trade these aggressively with full size
2. STRONG (80-85% confidence) - Trade these with normal position sizing
3. MODERATE (60-70% confidence) - Only if confirmed by strong technical setup
4. CHOPPY/NEUTRAL - Do not trade, wait for clarity
Advanced Techniques:
• Breadth divergences: Watch for price making new highs while ADD shows ↓ (falling) = major warning
• VIX/Price divergences: Rallies with rising VIX (↑) are usually false moves
• Volume confirmation: "MAXIMUM" signals with 2x+ volume are the absolute best
• Compression zones: When both ADD and VIX show compression (±), expect explosive breakout soon
• Sequential signals: Back-to-back "MAXIMUM" signals in same direction = strong trending day
Common Patterns:
• Opening surge with "MAXIMUM BULL" that shifts to "EXHAUSTION" (yellow) = fade the high
• Selloff with "MAXIMUM BEAR" followed by ADD ↑ (rising) divergence = potential reversal
• Choppy morning followed by "MAXIMUM" signal afternoon = best trending opportunity
Example Scenarios
Perfect Bull Entry:
• Bright green signal box
• TICK: +650
• ADD: +1200 (↑)
• VIX: 18.30 (↓)
• Volume: 2.3x
• Status: "✓ MAXIMUM BULL" → ALL SYSTEMS GO - Take aggressive long positions
Strong Bull (Good Confidence):
• Green signal box (slightly less bright)
• TICK: +500
• ADD: +800 (↑)
• VIX: 19.50 (±)
• Volume: 1.2x
• Status: "✓ STRONG BULL" → Good long setup - breadth confirming even without VIX/volume
Caution Bull (Moderate):
• Faded green signal box
• TICK: +400
• ADD: +900 (↓)
• VIX: 20.10 (↑)
• Volume: 0.9x
• Status: "MODERATE BULL" → CAUTION - TICK bullish but breadth deteriorating and VIX rising = weak rally
Exhaustion Warning:
• Yellow signal box
• TICK: +1350 ⚠
• ADD: +2100 (↑)
• VIX: 17.20 (↓)
• Volume: 1.8x
• Status: "⚠ EXHAUSTION" → Take profits or prepare to fade - TICK overextended despite good internals
Divergence Setup (Potential Reversal):
• Faded green signal
• TICK: +300
• ADD: +1800 (↓)
• VIX: 21.50 (↑)
• Volume: 1.6x
• Status: "MODERATE BULL" → WARNING - Price rallying but breadth collapsing and fear rising = distribution
Perfect Bear Entry:
• Bright red signal box
• TICK: -780
• ADD: -1600 (↓)
• VIX: 24.80 (↑)
• Volume: 2.5x
• Status: "✓ MAXIMUM BEAR" → Perfect short setup - all momentum bearish with conviction
Compression (Wait Mode):
• Gray signal box
• TICK: +50
• ADD: -200 (±)
• VIX: 16.40 (±)
• Volume: 0.7x
• Status: "CHOPPY/NEUTRAL" → STAY OUT - Volatility compression, no conviction, await breakout
Performance Optimization
Best Market Conditions:
• Works excellent in trending markets (up or down)
• Particularly powerful during high-volume sessions (first/last hours)
• "MAXIMUM" signals most reliable during 9:45-11:00 AM and 2:00-3:30 PM ET
Less Effective During:
• Lunch period (11:30 AM - 1:30 PM) - lower volume reduces signal quality
• Low-volatility environments - compression signals dominate
• Major news events in first 5 minutes - wait for internals to stabilize
Recommended Use Cases:
• Scalping: Trade only "MAXIMUM" signals for quick 5-15 minute moves
• Daytrading: Use "MAXIMUM" and "STRONG" signals for position entries
• Swing entries: Use "MAXIMUM" signals for optimal intraday entry timing
• Exit timing: Use "EXHAUSTION" (yellow) warnings to take profits
________________________________________
Pro Tip: Create a dedicated workspace with this indicator on SPY/ES/NQ charts. Set alerts for "MAXIMUM BULL", "MAXIMUM BEAR", and "EXHAUSTION" signals. Most professional traders only trade the "MAXIMUM" setups and ignore everything else - this alone can dramatically improve win rates.
ADR / ATR / Other Info TableADR / ATR / Other Info Table is a comprehensive, fully customizable information dashboard that displays essential stock metrics in a clean, organized table overlay. At a glance, monitor your position relative to key moving averages (20, 50, 200 SMA) with dynamic trend arrows showing whether each SMA is rising or falling, plus distance from 52-week highs and lows. Track volatility with today's ADR%, 20-day and 50-day ADR% averages, ATR values, and ATR deviation from its 50-day mean—all with optional color-coded thresholds to quickly identify elevated volatility conditions. The volume section provides deep insights including 20-day and 5-day average dollar volume, projected volume, relative volume, relative dollar volume, and Volume Buzz (percentage deviation from average). Fundamental data such as market cap, shares float, float percentage, days until earnings, RS Rating (relative strength vs. S&P 500), liquidity cap, sector, sector ETF performance, and industry group round out the display. Every metric can be individually toggled on or off, and the table offers extensive customization including position, size, text alignment, background color, and multi-tier color thresholds for ADR%, Volume Buzz, and Relative Dollar Volume. Perfect for swing traders, momentum traders, and anyone who wants critical market data consolidated into one efficient, non-intrusive display.
GBPUSD Weekly Cross LinesThis indicator tracks 20/50 EMA crossovers on GBPUSD (Weekly timeframe) and displays the crossover points across all symbols and timeframes, allowing traders to visually align current price action with key historical turning points in GBPUSD.
The script works by detecting bullish (20 EMA crossing above 50 EMA) and bearish (20 EMA crossing below 50 EMA) signals since 2010, using request.security() to source data from GBPUSD weekly candles, even if the indicator is applied to AAPL, EURJPY, BTCUSD, or any other asset.
Each crossover is marked with a vertical line that persists across all charts, offering a powerful way to:
Compare current market context with GBPUSD’s historical trend shifts
Observe intermarket correlations
Align trading timing across multiple assets
Spot macro trend transitions that ripple across global markets
Day Trading Signals - Ultimate Pro (Dark Neon + Strong BB Cloud)//@version=5
indicator("Day Trading Signals - Ultimate Pro (Dark Neon + Strong BB Cloud)", overlay=true, max_lines_count=500, max_labels_count=500)
// ===== INPUTS =====
ema_fast_len = input.int(9, "Fast EMA Length")
ema_slow_len = input.int(21, "Slow EMA Length")
rsi_len = input.int(12, "RSI Length")
rsi_overbought = input.int(70, "RSI Overbought Level")
rsi_oversold = input.int(30, "RSI Oversold Level")
bb_len = input.int(20, "Bollinger Bands Length")
bb_mult = input.float(2.0, "Bollinger Bands Multiplier")
sr_len = input.int(15, "Pivot Lookback for Support/Resistance")
min_ema_gap = input.float(0.0, "Minimum EMA Gap to Define Trend", step=0.1)
sr_lifespan = input.int(200, "Bars to Keep S/R Lines")
// Display options
show_bb = input.bool(true, "Show Bollinger Bands?")
show_ema = input.bool(true, "Show EMA Lines?")
show_sr = input.bool(true, "Show Support/Resistance Lines?")
show_bg = input.bool(true, "Show Background Trend Color?")
// ===== COLORS (Dark Neon Theme) =====
neon_teal = color.rgb(0, 255, 200)
neon_purple = color.rgb(180, 95, 255)
neon_orange = color.rgb(255, 160, 60)
neon_yellow = color.rgb(255, 235, 90)
neon_red = color.rgb(255, 70, 110)
neon_gray = color.rgb(140, 140, 160)
sr_support_col = color.rgb(0, 190, 140)
sr_resist_col = color.rgb(255, 90, 120)
// ===== INDICATORS =====
ema_fast = ta.ema(close, ema_fast_len)
ema_slow = ta.ema(close, ema_slow_len)
ema_gap = math.abs(ema_fast - ema_slow)
trend_up = (ema_fast > ema_slow) and (ema_gap > min_ema_gap)
trend_down = (ema_fast < ema_slow) and (ema_gap > min_ema_gap)
trend_flat = ema_gap <= min_ema_gap
rsi = ta.rsi(close, rsi_len)
bb_mid = ta.sma(close, bb_len)
bb_upper = bb_mid + bb_mult * ta.stdev(close, bb_len)
bb_lower = bb_mid - bb_mult * ta.stdev(close, bb_len)
// ===== SUPPORT / RESISTANCE =====
pivot_high = ta.pivothigh(high, sr_len, sr_len)
pivot_low = ta.pivotlow(low, sr_len, sr_len)
var line sup_lines = array.new_line()
var line res_lines = array.new_line()
if show_sr and not na(pivot_low)
l = line.new(bar_index - sr_len, pivot_low, bar_index, pivot_low, color=sr_support_col, width=2, extend=extend.right)
array.push(sup_lines, l)
if show_sr and not na(pivot_high)
l = line.new(bar_index - sr_len, pivot_high, bar_index, pivot_high, color=sr_resist_col, width=2, extend=extend.right)
array.push(res_lines, l)
// Delete old S/R lines
if array.size(sup_lines) > 0
for i = 0 to array.size(sup_lines) - 1
l = array.get(sup_lines, i)
if bar_index - line.get_x2(l) > sr_lifespan
line.delete(l)
array.remove(sup_lines, i)
break
if array.size(res_lines) > 0
for i = 0 to array.size(res_lines) - 1
l = array.get(res_lines, i)
if bar_index - line.get_x2(l) > sr_lifespan
line.delete(l)
array.remove(res_lines, i)
break
// ===== BUY / SELL CONDITIONS =====
buy_cond = trend_up and not trend_flat and ta.crossover(ema_fast, ema_slow) and rsi < rsi_oversold and close < bb_lower
sell_cond = trend_down and not trend_flat and ta.crossunder(ema_fast, ema_slow) and rsi > rsi_overbought and close > bb_upper
// ===== SIGNAL PLOTS =====
plotshape(buy_cond, title="Buy Signal", location=location.belowbar, color=neon_teal, style=shape.labelup, text="BUY", size=size.small)
plotshape(sell_cond, title="Sell Signal", location=location.abovebar, color=neon_red, style=shape.labeldown, text="SELL", size=size.small)
// ===== EMA LINES =====
plot(show_ema ? ema_fast : na, color=neon_orange, title="EMA Fast", linewidth=2)
plot(show_ema ? ema_slow : na, color=neon_purple, title="EMA Slow", linewidth=2)
// ===== STRONG BOLLINGER BAND CLOUD =====
plot_bb_upper = plot(show_bb ? bb_upper : na, color=color.new(neon_yellow, 20), title="BB Upper")
plot_bb_lower = plot(show_bb ? bb_lower : na, color=color.new(neon_gray, 20), title="BB Lower")
plot(bb_mid, color=color.new(neon_gray, 50), title="BB Mid")
// More visible BB cloud (stronger contrast)
bb_cloud_color = trend_up ? color.new(neon_teal, 40) : trend_down ? color.new(neon_red, 40) : color.new(neon_gray, 70)
fill(plot_bb_upper, plot_bb_lower, color=show_bb ? bb_cloud_color : na, title="BB Cloud")
// ===== BACKGROUND COLOR (TREND ZONES) =====
bgcolor(show_bg ? (trend_up ? color.new(neon_teal, 92) : trend_down ? color.new(neon_red, 92) : color.new(neon_gray, 94)) : na)
// ===== ALERTS =====
alertcondition(buy_cond, title="Buy Signal", message="Buy signal triggered. Check chart.")
alertcondition(sell_cond, title="Sell Signal", message="Sell signal triggered. Check chart.")
Day Trading Signals - Ultimate Pro (Dark Neon + Strong BB Cloud)//@version=5
indicator("Day Trading Signals - Ultimate Pro (Dark Neon + Strong BB Cloud)", overlay=true, max_lines_count=500, max_labels_count=500)
// ===== INPUTS =====
ema_fast_len = input.int(9, "Fast EMA Length")
ema_slow_len = input.int(21, "Slow EMA Length")
rsi_len = input.int(12, "RSI Length")
rsi_overbought = input.int(70, "RSI Overbought Level")
rsi_oversold = input.int(30, "RSI Oversold Level")
bb_len = input.int(20, "Bollinger Bands Length")
bb_mult = input.float(2.0, "Bollinger Bands Multiplier")
sr_len = input.int(15, "Pivot Lookback for Support/Resistance")
min_ema_gap = input.float(0.0, "Minimum EMA Gap to Define Trend", step=0.1)
sr_lifespan = input.int(200, "Bars to Keep S/R Lines")
// Display options
show_bb = input.bool(true, "Show Bollinger Bands?")
show_ema = input.bool(true, "Show EMA Lines?")
show_sr = input.bool(true, "Show Support/Resistance Lines?")
show_bg = input.bool(true, "Show Background Trend Color?")
// ===== COLORS (Dark Neon Theme) =====
neon_teal = color.rgb(0, 255, 200)
neon_purple = color.rgb(180, 95, 255)
neon_orange = color.rgb(255, 160, 60)
neon_yellow = color.rgb(255, 235, 90)
neon_red = color.rgb(255, 70, 110)
neon_gray = color.rgb(140, 140, 160)
sr_support_col = color.rgb(0, 190, 140)
sr_resist_col = color.rgb(255, 90, 120)
// ===== INDICATORS =====
ema_fast = ta.ema(close, ema_fast_len)
ema_slow = ta.ema(close, ema_slow_len)
ema_gap = math.abs(ema_fast - ema_slow)
trend_up = (ema_fast > ema_slow) and (ema_gap > min_ema_gap)
trend_down = (ema_fast < ema_slow) and (ema_gap > min_ema_gap)
trend_flat = ema_gap <= min_ema_gap
rsi = ta.rsi(close, rsi_len)
bb_mid = ta.sma(close, bb_len)
bb_upper = bb_mid + bb_mult * ta.stdev(close, bb_len)
bb_lower = bb_mid - bb_mult * ta.stdev(close, bb_len)
// ===== SUPPORT / RESISTANCE =====
pivot_high = ta.pivothigh(high, sr_len, sr_len)
pivot_low = ta.pivotlow(low, sr_len, sr_len)
var line sup_lines = array.new_line()
var line res_lines = array.new_line()
if show_sr and not na(pivot_low)
l = line.new(bar_index - sr_len, pivot_low, bar_index, pivot_low, color=sr_support_col, width=2, extend=extend.right)
array.push(sup_lines, l)
if show_sr and not na(pivot_high)
l = line.new(bar_index - sr_len, pivot_high, bar_index, pivot_high, color=sr_resist_col, width=2, extend=extend.right)
array.push(res_lines, l)
// Delete old S/R lines
if array.size(sup_lines) > 0
for i = 0 to array.size(sup_lines) - 1
l = array.get(sup_lines, i)
if bar_index - line.get_x2(l) > sr_lifespan
line.delete(l)
array.remove(sup_lines, i)
break
if array.size(res_lines) > 0
for i = 0 to array.size(res_lines) - 1
l = array.get(res_lines, i)
if bar_index - line.get_x2(l) > sr_lifespan
line.delete(l)
array.remove(res_lines, i)
break
// ===== BUY / SELL CONDITIONS =====
buy_cond = trend_up and not trend_flat and ta.crossover(ema_fast, ema_slow) and rsi < rsi_oversold and close < bb_lower
sell_cond = trend_down and not trend_flat and ta.crossunder(ema_fast, ema_slow) and rsi > rsi_overbought and close > bb_upper
// ===== SIGNAL PLOTS =====
plotshape(buy_cond, title="Buy Signal", location=location.belowbar, color=neon_teal, style=shape.labelup, text="BUY", size=size.small)
plotshape(sell_cond, title="Sell Signal", location=location.abovebar, color=neon_red, style=shape.labeldown, text="SELL", size=size.small)
// ===== EMA LINES =====
plot(show_ema ? ema_fast : na, color=neon_orange, title="EMA Fast", linewidth=2)
plot(show_ema ? ema_slow : na, color=neon_purple, title="EMA Slow", linewidth=2)
// ===== STRONG BOLLINGER BAND CLOUD =====
plot_bb_upper = plot(show_bb ? bb_upper : na, color=color.new(neon_yellow, 20), title="BB Upper")
plot_bb_lower = plot(show_bb ? bb_lower : na, color=color.new(neon_gray, 20), title="BB Lower")
plot(bb_mid, color=color.new(neon_gray, 50), title="BB Mid")
// More visible BB cloud (stronger contrast)
bb_cloud_color = trend_up ? color.new(neon_teal, 40) : trend_down ? color.new(neon_red, 40) : color.new(neon_gray, 70)
fill(plot_bb_upper, plot_bb_lower, color=show_bb ? bb_cloud_color : na, title="BB Cloud")
// ===== BACKGROUND COLOR (TREND ZONES) =====
bgcolor(show_bg ? (trend_up ? color.new(neon_teal, 92) : trend_down ? color.new(neon_red, 92) : color.new(neon_gray, 94)) : na)
// ===== ALERTS =====
alertcondition(buy_cond, title="Buy Signal", message="Buy signal triggered. Check chart.")
alertcondition(sell_cond, title="Sell Signal", message="Sell signal triggered. Check chart.")
Day Trading Signals - Ultimate Pro (Dark Neon + Strong BB Cloud)//@version=5
indicator("Day Trading Signals - Ultimate Pro (Dark Neon + Strong BB Cloud)", overlay=true, max_lines_count=500, max_labels_count=500)
// ===== INPUTS =====
ema_fast_len = input.int(9, "Fast EMA Length")
ema_slow_len = input.int(21, "Slow EMA Length")
rsi_len = input.int(12, "RSI Length")
rsi_overbought = input.int(70, "RSI Overbought Level")
rsi_oversold = input.int(30, "RSI Oversold Level")
bb_len = input.int(20, "Bollinger Bands Length")
bb_mult = input.float(2.0, "Bollinger Bands Multiplier")
sr_len = input.int(15, "Pivot Lookback for Support/Resistance")
min_ema_gap = input.float(0.0, "Minimum EMA Gap to Define Trend", step=0.1)
sr_lifespan = input.int(200, "Bars to Keep S/R Lines")
// Display options
show_bb = input.bool(true, "Show Bollinger Bands?")
show_ema = input.bool(true, "Show EMA Lines?")
show_sr = input.bool(true, "Show Support/Resistance Lines?")
show_bg = input.bool(true, "Show Background Trend Color?")
// ===== COLORS (Dark Neon Theme) =====
neon_teal = color.rgb(0, 255, 200)
neon_purple = color.rgb(180, 95, 255)
neon_orange = color.rgb(255, 160, 60)
neon_yellow = color.rgb(255, 235, 90)
neon_red = color.rgb(255, 70, 110)
neon_gray = color.rgb(140, 140, 160)
sr_support_col = color.rgb(0, 190, 140)
sr_resist_col = color.rgb(255, 90, 120)
// ===== INDICATORS =====
ema_fast = ta.ema(close, ema_fast_len)
ema_slow = ta.ema(close, ema_slow_len)
ema_gap = math.abs(ema_fast - ema_slow)
trend_up = (ema_fast > ema_slow) and (ema_gap > min_ema_gap)
trend_down = (ema_fast < ema_slow) and (ema_gap > min_ema_gap)
trend_flat = ema_gap <= min_ema_gap
rsi = ta.rsi(close, rsi_len)
bb_mid = ta.sma(close, bb_len)
bb_upper = bb_mid + bb_mult * ta.stdev(close, bb_len)
bb_lower = bb_mid - bb_mult * ta.stdev(close, bb_len)
// ===== SUPPORT / RESISTANCE =====
pivot_high = ta.pivothigh(high, sr_len, sr_len)
pivot_low = ta.pivotlow(low, sr_len, sr_len)
var line sup_lines = array.new_line()
var line res_lines = array.new_line()
if show_sr and not na(pivot_low)
l = line.new(bar_index - sr_len, pivot_low, bar_index, pivot_low, color=sr_support_col, width=2, extend=extend.right)
array.push(sup_lines, l)
if show_sr and not na(pivot_high)
l = line.new(bar_index - sr_len, pivot_high, bar_index, pivot_high, color=sr_resist_col, width=2, extend=extend.right)
array.push(res_lines, l)
// Delete old S/R lines
if array.size(sup_lines) > 0
for i = 0 to array.size(sup_lines) - 1
l = array.get(sup_lines, i)
if bar_index - line.get_x2(l) > sr_lifespan
line.delete(l)
array.remove(sup_lines, i)
break
if array.size(res_lines) > 0
for i = 0 to array.size(res_lines) - 1
l = array.get(res_lines, i)
if bar_index - line.get_x2(l) > sr_lifespan
line.delete(l)
array.remove(res_lines, i)
break
// ===== BUY / SELL CONDITIONS =====
buy_cond = trend_up and not trend_flat and ta.crossover(ema_fast, ema_slow) and rsi < rsi_oversold and close < bb_lower
sell_cond = trend_down and not trend_flat and ta.crossunder(ema_fast, ema_slow) and rsi > rsi_overbought and close > bb_upper
// ===== SIGNAL PLOTS =====
plotshape(buy_cond, title="Buy Signal", location=location.belowbar, color=neon_teal, style=shape.labelup, text="BUY", size=size.small)
plotshape(sell_cond, title="Sell Signal", location=location.abovebar, color=neon_red, style=shape.labeldown, text="SELL", size=size.small)
// ===== EMA LINES =====
plot(show_ema ? ema_fast : na, color=neon_orange, title="EMA Fast", linewidth=2)
plot(show_ema ? ema_slow : na, color=neon_purple, title="EMA Slow", linewidth=2)
// ===== STRONG BOLLINGER BAND CLOUD =====
plot_bb_upper = plot(show_bb ? bb_upper : na, color=color.new(neon_yellow, 20), title="BB Upper")
plot_bb_lower = plot(show_bb ? bb_lower : na, color=color.new(neon_gray, 20), title="BB Lower")
plot(bb_mid, color=color.new(neon_gray, 50), title="BB Mid")
// More visible BB cloud (stronger contrast)
bb_cloud_color = trend_up ? color.new(neon_teal, 40) : trend_down ? color.new(neon_red, 40) : color.new(neon_gray, 70)
fill(plot_bb_upper, plot_bb_lower, color=show_bb ? bb_cloud_color : na, title="BB Cloud")
// ===== BACKGROUND COLOR (TREND ZONES) =====
bgcolor(show_bg ? (trend_up ? color.new(neon_teal, 92) : trend_down ? color.new(neon_red, 92) : color.new(neon_gray, 94)) : na)
// ===== ALERTS =====
alertcondition(buy_cond, title="Buy Signal", message="Buy signal triggered. Check chart.")
alertcondition(sell_cond, title="Sell Signal", message="Sell signal triggered. Check chart.")
Relative Strength TableRelative Strength Table
1. Overview and Key Features
The Relative Strength Table is an indicator that compares multiple tickers against a benchmark (default: SPY) and displays their relative strength.
It is designed to help analyze stock leadership, sector trends, and portfolio performance in one consolidated table.
You can freely input up to 20 tickers from the Inputs panel, allowing flexible comparisons.
(If 20 tickers feel too limited, let me know in the comments — I’ll expand it.)
2. How the RS Percentile Is Calculated and What It Means
The RS Percentile shows how strong the current price ratio is compared to past data, expressed as a percentile rank.
First, the indicator calculates the price ratio by dividing the ticker’s close by the benchmark’s close.
Then, it compares the latest ratio with historical ratio data and determines its percentile value.
Examples:
・80% or higher → relatively strong
・Around 50% → neutral
・40% or below → relatively weak
3. Indicator Features and Customization
3-1. RS Lookback Settings
You can set up to four lookback periods for RS calculation and customize the bar count for each.
Default values are 5, 21, 63, and 126 bars.
You can choose which column to sort by, and the selected column is marked with an asterisk.
Each RS column can be shown or hidden individually via checkboxes.
3-2. Visual Highlight Settings
Relative strength can be color-coded for clarity.
You can freely customize:
・Highlight colors
・Threshold values
・On/off toggles for each highlight layer
3-3. Default Tickers and Reset Function
These 16 sector ETFs are included as the default ticker set:
QQQ, QQQE, RSP, DIA, IWM, XLV, XLE, XLF, XLRE, XLB, XLP, XLU, XLY, XLK, XLC, XLI
You can return to the default list anytime by pressing the refresh button next to the ticker fields.
4. Use Cases and Analysis Examples
4-1. Sector Rotation Analysis
By comparing RS across multiple periods, you can easily identify:
・Sectors gaining short-term strength
・Sectors with steady long-term inflows
A sharp rise in short-term RS may signal the early stages of a rotation.
4-2. Identifying Leaders Within a Sector
You can compare up to 20 tickers at once, making it easy to spot true sector leaders.
4-3. Objective Evaluation of Portfolio Holdings
By entering your portfolio tickers, you can instantly see:
・Whether each name is outperforming or underperforming
・Which timeframes show strength
・How each ticker compares to the benchmark
كلاستر
Detailed Description – Fibonacci Cluster Zones + OB + FVG (AR34)
This script is an advanced multi-layer confluence system developed under the AR34 Trading Framework, designed to identify high-accuracy reversal zones, liquidity imbalances, institutional footprints, and trend direction using a unified analytic engine.
It combines Fibonacci mathematics, Smart Money Concepts, market structure, and smart trend signals to produce precise, reliable trading zones.
⸻
🔶 1 — Fibonacci Retracement Zones + Custom Smart Levels
The script calculates the highest and lowest prices over a selected lookback period to generate key Fibonacci retracement levels:
• 0.236
• 0.382
• 0.500
• 0.618
• 0.786
• 1.000
You can also add up to three custom Fibonacci levels (0.66, 0.707, 0.88 or any value you want).
✔ Each level is drawn as a horizontal line
✔ Optional label display for every level
✔ Color and activation fully customizable
These levels help identify pullback zones and potential turning points.
⸻
🔶 2 — True Fibonacci Cluster Detection
The script automatically identifies Cluster Zones, which occur when:
1. A Fibonacci level
2. An Order Block
3. A Fair Value Gap
all overlap in the same price range.
When all three conditions align, the script prints a CLUSTER marker in yellow.
These zones represent:
• High-probability reversal areas
• Strong institutional footprints
• Highly reactive price levels
⸻
🔶 3 — Automatic Order Block (OB) Detection
The indicator detects Order Blocks based on structural candle behavior:
• Bearish candle → followed by bullish
• Price interacts with a Fibonacci level
• Area aligns with institutional order flow
When detected, the OB is marked for easy visualization.
⸻
🔶 4 — Fair Value Gap (FVG) Mapping
The script scans for liquidity imbalances using the classic FVG logic:
• low > high
When an FVG exists, it draws a green liquidity box.
This highlights:
• Gaps left by institutional moves
• High-value return zones
• Efficient price retracement levels
⸻
🔶 5 — Fibonacci Extension Projections
The script calculates extension targets using:
• 1.272
• 1.618
• 2.000
These are drawn as dashed teal lines and help forecast:
• Breakout continuation targets
• Wave extension objectives
• Take-profit areas
⸻
🔶 6 — Smart Trend Signal (EMA-200 Engine)
Trend direction is determined using the EMA 200:
• Price above EMA → uptrend
• Price below EMA → downtrend
A green or red signal icon appears only when the trend flips, reducing noise and improving clarity.
This helps detect:
• Trend shifts early
• Cleaner entries and exits
• Trend-based filtering
⸻
🔶 7 — Four-EMA Multi-Trend System
The indicator includes optional visualization of four moving averages:
• EMA 20 → Short-term
• EMA 50 → Medium-term
• EMA 100 → Long-term
• EMA 200 → Major trend
All are fully customizable (length + color + visibility).
⸻
🔶 8 — Dynamic Negative Fibonacci Levels (Green Only)
When enabled, the script calculates deep retracement zones using:
• –0.23
• –0.75
• –1.20
These negative Fibonacci levels are drawn in green and help identify:
• Deep liquidity capture points
• Hidden structural supports
• Potential reversal bottoms
⸻
🔶 9 — Complete User Control
Users maintain full control over:
✔ Enabling/disabling OB detection
✔ Enabling/disabling FVG detection
✔ Activating custom Fibonacci levels
✔ Showing or hiding labels
✔ Selecting timeframe for Fib calculations
✔ Adjusting moving average parameters
✔ Activating dynamic Fibonacci
The script is designed to be flexible, scalable, and suitable for any trading style.
⸻
🎯 Summary
This indicator is a powerful all-in-one analytical system that merges:
✔ Fibonacci Mathematics
✔ Smart Money Concepts (OB + FVG)
✔ Trend-based filtering
✔ Institutional cluster detection
✔ Dynamic extensions + retracements
✔ Multi-EMA trend mapping
شرح السكربت بالتفصيل – Fibonacci Cluster Zones + OB + FVG (AR34)
هذا السكربت هو نظام تحليل احترافي متكامل من تطوير AR34 Framework يجمع بين أقوى أدوات التداول الحديثة في مؤشر واحد، ويهدف إلى كشف مناطق الانعكاس القوية، والتجميع الذكي، والاتجاه العام، باستخدام مزيج علمي من فيبوناتشي + السيولة + الاتجاه.
يعمل هذا المؤشر بأسلوب Confluence Trading بحيث يدمج عدة مدارس مختلفة في طبقة واحدة لتحديد مناطق الانعكاس والارتداد والاختراق بدقة عالية.
⸻
🔶 1 — مناطق فيبوناتشي (Retracement) + الكلاستر الذكي
يقوم المؤشر بحساب أعلى وأدنى سعر خلال عدد محدد من الشموع (Retracement Length) ثم يرسم مستويات فيبوناتشي الكلاسيكية:
• 0.236
• 0.382
• 0.500
• 0.618
• 0.786
• 1.000
مع إمكانية إضافة 3 مستويات خاصة من اختيارك (0.66 – 0.707 – 0.88 وغيرها).
✔️ كل مستوى يتم رسمه بخط مستقل
✔️ يظهر بجانبه رقم المستوى إذا تم تفعيل خيار Show Fib Labels
✔️ يمكن تغيير لونه، قيمته، وتفعيله حسب رغبتك
⸻
🔶 2 — كاشف الكلاستر الحقيقي (Cluster Detection)
الكلاستر يُعتبر أقوى مناطق الارتداد في التحليل الفني.
السكربت يحدد الكلاستر عندما تتداخل 3 عناصر مع مستوى فيبوناتشي:
1. مستوى فيبوناتشي مهم
2. Order Block
3. Fair Value Gap
إذا اجتمعت الثلاثة في نفس المنطقة، يتم رسمها باللون الأصفر وتظهر كلمة CLUSTER.
هذا يعطيك:
• أقوى منطقة انعكاس
• أعلى دقة في تحديد نقاط الدخول
• مناطق ذات سيولة مرتفعة
⸻
🔶 3 — دمج Order Blocks تلقائياً
يكتشف المؤشر الـ OB الحقيقي باستخدام شروط حركة الشموع:
• bearish candle → bullish candle
• السعر لمس مستوى فيبوناتشي
• منطقة محتملة لتجميع المؤسسات
إذا تحققت الشروط يظهر OB باللون الأحمر.
⸻
🔶 4 — دمج Fair Value Gaps (FVG)
يكتشف الفجوات السعرية بين الشمعتين الأولى والثالثة:
• low > high
ويقوم برسم بوكس أخضر حول الفجوة (FVG Zone).
يساعدك على معرفة:
• مناطق اختلال السيولة
• أهداف السعر القادمة
• مناطق “العودة” المحتملة
⸻
🔶 5 — امتدادات فيبوناتشي (Fibonacci Extensions)
يقوم بحساب الامتدادات من مستويات:
• 1.272
• 1.618
• 2.0
ويظهرها بخطوط متقطعة (Teal Color).
هذه المستويات مهمة لتوقع:
• أهداف اختراق
• مناطق TP
• امتداد موجات السعر
⸻
🔶 6 — إشارة الاتجاه الذكية (Smart Trend Engine – EMA200)
يعتمد على EMA 200 لتحديد الاتجاه العام:
• إذا السعر فوق EMA200 → اتجاه صاعد
• إذا السعر تحت EMA200 → اتجاه هابط
ويظهر المؤشر:
🟢 سهم أخضر عند تحول الاتجاه لصعود
🔴 سهم أحمر عند تحول الاتجاه لهبوط
ميزة التحول فقط عند تغيير الاتجاه (No Noise).
⸻
🔶 7 — أربع موفنقات احترافية (EMA 20 – 50 – 100 – 200)
المؤشر يعرض الموفنقات الأربعة الأساسية:
• EMA 20 → اتجاه قصير
• EMA 50 → متوسط
• EMA 100 → طويل
• EMA 200 → الاتجاه الرئيسي
مع إمكانية:
• تغيير اللون
• تغيير الطول
• إخفائها وإظهارها
⸻
🔶 8 — فيبوناتشي الديناميكي (Dynamic Green Fib)
ميزة قوية جداً تظهر فقط عند تفعيلها.
تحسب أعلى وأدنى سعر في Lookback Period ثم ترسم مستويات سلبية:
• –0.23
• –0.75
• –1.20
هذه المستويات تظهر كخطوط خضراء تحت السعر وتستخدم لـ:
• تحديد مناطق الانعكاس المخفية
• رصد الدعم الديناميكي
• اكتشاف القيعان المحتملة
⸻
🔶 9 — المرونة الكاملة للمستخدم
المؤشر يسمح لك التحكم بكل شيء:
✔️ تفعيل/إلغاء الـ OB
✔️ تفعيل/إلغاء الـ FVG
✔️ تفعيل/إلغاء مستويات فيبوناتشي
✔️ إضافة مستويات مخصصة
✔️ اختيار الفريم المستخدم
✔️ تغيير الألوان
✔️ التحكم في الاتجاه والموفنقات
⸻
🎯 الخلاصة
هذا السكربت يعمل كنظام تحليلي متكامل يجمع:
✔️ فيبوناتشي
✔️ السيولة المؤسسية (OB + FVG)
✔️ الاتجاه الذكي
✔️ الكلاستر الاحترافي
✔️ الموفنقات
✔️ فيبوناتشي الديناميكي






















