NY Liquidity sweep - MuralidharNew York Session Liquidity Sweep in the Asian Session
This term refers to a price action phenomenon where liquidity created during the New York trading session is targeted and swept (or cleared) during the subsequent Asian trading session. Let’s break this down:
Key Components:
Liquidity:
In financial markets, liquidity often refers to the areas where stop-loss orders, pending orders, or clusters of trades accumulate. These areas typically form around key levels like highs, lows, or consolidation zones.
Traders often place stop-losses above recent highs or below recent lows, creating "pools of liquidity."
New York Session:
The New York session is one of the most volatile trading sessions due to the overlap with the London session and the significant participation of institutional players.
It often leaves behind key levels, such as session highs, lows, or consolidation zones, where liquidity builds up.
Asian Session:
The Asian session is typically less volatile compared to the New York session. However, it can still be used by market makers or large players to manipulate price action.
Due to the reduced trading volume, it is easier for large players to sweep liquidity during this session.
What Happens During a Liquidity Sweep?
Formation of Liquidity Zones in the New York Session:
As the New York session progresses, traders establish positions, leaving behind liquidity pockets such as stop-loss orders around session highs and lows.
Asian Session Sweep:
In the quieter Asian session, price often moves to these liquidity zones created during the New York session.
This "sweep" is often a sharp move in price designed to trigger stop-loss orders or entice breakout traders into the market.
Once the liquidity is taken, price often reverses sharply, leaving behind a false breakout or a wick in the price chart.
Why Does This Happen?
Market Maker Behavior:
Market makers or large institutional players may manipulate prices to access liquidity.
By sweeping these zones, they can fill their larger orders at better prices.
Inducing Traders:
A sweep may be used to lure retail traders into positions before reversing the market direction, trapping them.
Practical Implications for Traders:
Identifying Liquidity Zones:
Mark key highs, lows, and consolidation areas from the New York session on your charts.
Watch for price action around these zones during the Asian session.
Avoiding Traps:
Be cautious of trading breakouts during the Asian session, as they might be liquidity grabs.
Look for confirmation before entering trades.
Using the Sweep to Your Advantage:
After the sweep, wait for signs of reversal, such as candlestick patterns or rejection wicks, to enter trades in the opposite direction.
Example:
During the New York session, a high is formed at 1.2000 on EUR/USD.
In the Asian session, price moves up to 1.2005, triggering stop-loss orders placed above 1.2000.
After the sweep, price sharply reverses, leaving a wick at 1.2005 and continuing downward.
By understanding this phenomenon, traders can better anticipate market behavior and refine their strategies to avoid being caught in liquidity traps.
Cycles
Improved Exhaustion Signal backtestTry this on higher tiemframes and be amazed.
Insane profitability...
youre welcome
My strategy I made this pine script using tradesage it works well free to use and optimize if you like made from kittickds thank you
all‐in‐one RSI Divergence - Mutasem13All‐in‐one RSI Divergence script that detects the four divergence strengths (Strong, Medium, Weak, Hidden) for both Bullish and Bearish, matching your cheat sheet. We use pivot detection (ta.pivotlow, ta.pivothigh) on RSI, comparing price vs. RSI swings:
Strong: Price forms Lower Low (Bullish) or Higher High (Bearish), while RSI forms Higher Low (Bullish) or Lower High (Bearish).
Medium: Price forms Equal Low/High, RSI forms Higher/Lower Low/High.
Weak: Price forms Lower/ Higher Low/High, RSI forms Equal Low/High.
Hidden: Price forms Higher/Lower Low/High, RSI forms Lower/Higher Low/High.
Each type has a toggle in the settings. We allow equality checks (<=/>=) so you can capture “equal” swing points too. All calls are single‐line to avoid line‐continuation errors. Copy/paste into TradingView’s Pine Editor, click “Add to Chart,” and it will compile in PineScript v6 with no errors.
Enhanced Trend Following Strategy for DOGEUSDT (1-Min Chart)This strategy is designed to capitalize on trend momentum while minimizing risk through calculated entries and exits. With a focus on high-frequency trading, it leverages key technical indicators such as EMA crossovers, ADX trend strength, and RSI for market momentum analysis.
Performance Overview
Net Profit: +7,176.92 USDT (0.72%)
Total Closed Trades: 39
Win Rate: 76.92%
Profit Factor: 1.819
Max Drawdown: 3,600.01 USDT (0.36%)
Avg Trade: 184.02 USDT (0.18%)
Avg # Bars in Trades: 39
Key Features
Dual EMA Trend Confirmation:
A fast EMA (e.g., 50-period) and slow EMA (e.g., 200-period) identify strong trend directions and crossovers to confirm entry points.
ADX Trend Strength Filtering:
The Average Directional Index (ADX) helps ensure trades are only taken during strong trending conditions, avoiding choppy markets.
RSI Momentum Indicator:
Avoids overbought/oversold conditions by filtering entries when RSI is in favorable territory.
Multi-Timeframe Analysis:
Uses higher timeframe data to confirm trend direction, adding robustness to the strategy.
Risk Management:
Dynamic stop-loss and take-profit levels adjust based on market volatility to capture optimal profit potential.
Trade Logic
Long Entry:
When the fast EMA crosses above the slow EMA, ADX confirms a strong trend, and RSI indicates upward momentum.
Stop-loss set below recent swing low, take-profit at a 5-10% gain target.
Short Entry:
When the fast EMA crosses below the slow EMA, ADX confirms a downtrend, and RSI indicates downward momentum.
Stop-loss above recent swing high, take-profit at a 5-10% gain target.
Exit Conditions:
Take profit triggered when predefined levels are hit, or an opposite crossover occurs.
Stop loss triggered on price reversal beyond key support/resistance levels.
Potential Improvements
Fine-tuning ADX smoothing to reduce whipsaws.
Experimenting with dynamic position sizing based on ATR.
Adding volume-based confirmations for increased accuracy.
This strategy provides a solid foundation for trend-following traders, especially on shorter timeframes such as the 1-minute chart, with a strong focus on maintaining a high win rate and keeping drawdowns under control.
Give it a shot and optimize it further to suit your trading style!
Relative Risk MetricOVERVIEW
The Relative Risk Metric is designed to provide a relative measure of an asset's price, within a specified range, over a log scale.
PURPOSE
Relative Position Assessment: Visualizes where the current price stands within a user-defined range, adjusted for log scale.
Logarithmic Transformation: Utilizes the natural log to account for a log scale of prices, offering a more accurate representation of relative positions.
Calculation: The indicator calculates a normalized value via the function Relative Price = / log(UpperBound) − log(LowerBound) . The result is a value between 0 and 1, where 0 corresponds to the lower bound and 1 corresponds to the upper bound on a log scale.
VISUALIZATION
The indicator plots three series:
Risk Metric - a plot of the risk metric value that’s computed from an asset's relative price so that it lies within a logarithmic range between 0.0 & 1.0.
Smoothed Risk Metric - a plot of the risk metric that’s been smoothed.
Entry/Exit - a scatter plot for identified entry and exit. Values are expressed as percent and are coded as red being exit and green being entity. E.g., a red dot at 0.02 implies exit 2% of the held asset. A green dot at 0.01 implies use 1% of a designated capital reserve.
USAGE
Risk Metric
The risk metric transformation function has several parameters. These control aspects such as decay, sensitivity, bounds and time offset.
Decay - Acts as an exponent multiplier and controls how quickly dynamic bounds change as a function of the bar_index.
Time Offset - provides a centering effect of the exponential transformation relative to the current bar_index.
Sensitivity - controls how sensitive to time the dynamic bound adjustments should be.
Baseline control - Serves as an additive offset for dynamic bounds computation which ensures that bounds never become too small or negative.
UpperBound - provides headroom to accomodate growth an assets price from the baseline. For example, an upperbound of 3.5 accommodates a 3.5x growth from the baseline value (e.g., $100 -> $350).
LowerBound - provides log scale compression such that the overall metric provides meaningful insights for prices well below the average whilst avoiding extreme scaling. A lowerbound of 0.25 corresponds to a price that is approx one quarter of a normalised baseline in a log context.
Weighted Entry/Exit
This feature provides a weighted system for identifying DCA entry and exit. This weighting mechanism adjusts the metric's interpretation to highlight conditions based on dynamic thresholds and user-defined parameters to identify high-probability zones for entry/exit actions and provide risk-adjusted insights.
Weighting Parameters
The weighting function supports fine-tuning of the computed weighted entry/exit values
Base: determines the foundational multiplier for weighting the entry/exit value. A higher base amplifies the weighting effect, making the weighted values more pronounced. It acts as a scaling factor to control the overall magnitude of the weighting.
Exponent: adjusts the curve of the weighting function. Higher exponent values increase sensitivity, emphasizing differences between risk metric values near the entry or exit thresholds. This creates a steeper gradient for the computed entry/exit value making it more responsive to subtle shifts in risk levels.
Cut Off: specifies the maximum percentage (expressed as a fraction of 1.0) that the weighted entry/exit value can reach. This cap ensures the metric remains within a meaningful range and avoids skewing
Exit condition: Defines a threshold for exit. When the risk metric is below the exit threshold (but above the entry threshold) then entry/exit is neutral.
Entry condition: Defines a threshold for entry. When the risk metric is above the entry threshold (but below the exit threshold) then entry/exit is neutral.
Weighting Behaviour
For entry conditions - value is more heavily weighted as the metric approaches the entry threshold, emphasizing lower risk levels.
For exit conditions - value is more heavily weighted as the metric nears the exit threshold, emphasizing increased risk levels.
USE-CASES
Identifying potential overbought or oversold conditions within the specified logarithmic range.
Assisting in assessing how the current price compares to historical price levels on a logarithmic scale.
Guiding decision-making processes by providing insights into the relative positioning of prices within a log context
CONSIDERATIONS
Validation: It's recommended that backtesting over historical data be done before acting on any identified entry/exit values.
User Discretion: This indicator focus on price risk. Consider other risk factors and general market conditions as well.
Ultimate Precision Buy/Sell Signals - Advanced Edition V1.01Ultimate Precision Buy/Sell Signals - Advanced Edition V1.01
Overview
This powerful TradingView indicator is designed for maximum precision in trading by utilizing a combination of EMA, RSI, ATR, ADX, Fibonacci extensions, and divergence detection to identify optimal buy and sell opportunities. The script is designed to help traders maximize profits while minimizing risk with advanced risk calculations and stop-loss mechanisms.
How to Use the Indicator
1. Buy and Sell Signals
BUY Signal (Green Label Below Candles):
RSI crosses above 30 (indicating an oversold recovery).
Price is below the EMA (indicating undervaluation).
ADX confirms a strong trend (if enabled).
📌 Action: Open a long position and set a stop-loss based on the risk level.
SELL Signal (Red Label Above Candles):
RSI crosses below 70 (indicating an overbought condition).
Price is above the EMA (indicating overextension).
ADX confirms a strong trend (if enabled).
📌 Action: Open a short position and set a stop-loss based on the risk level.
2. Risk and Profit Calculations
Risk Level is determined using ATR × Risk Multiplier.
Potential Profit is calculated as Risk Level × Risk-Reward Ratio.
These values are displayed in a floating label to help manage your trades efficiently.
📌 Tip: A higher Risk Multiplier means wider stop-losses, useful for volatile markets.
3. Trend Confirmation (ADX Filter)
If trend filtering is enabled, buy/sell signals will only appear in strong trends.
ADX must be above 25 to confirm that the market is trending.
📌 Tip: Use this to avoid false signals in ranging markets.
4. Divergence Detection
Bullish Divergence (Blue Circle Below Candles): Indicates a potential reversal upwards.
Bearish Divergence (Orange Circle Above Candles): Indicates a potential downward reversal.
📌 Tip: Divergences provide early warnings before market reversals.
5. Heatmap Visualization
Green Background: Indicates a high-confidence buy zone.
Red Background: Indicates a high-confidence sell zone.
📌 Tip: Use heatmaps to spot high-conviction trades.
6. Fibonacci-Based Take Profit (Optional)
If enabled, the script will use Fibonacci extensions instead of fixed risk-reward levels.
📌 Tip: Fibonacci-based TP works well in trending markets.
7. Alerts (No Need to Stare at the Charts!)
Set alerts for BUY and SELL signals.
TradingView will notify you when a perfect trade setup appears.
📌 Tip: Enable alerts in TradingView settings.
Socials & Live Stream Promotion 🚀
If you love this indicator and want to see it in action, check out my live trading sessions and content here:
🎥 YouTube: www.YouTube.com
🎮 Kick: www.Kick.com
🎥 Twitch: twitch.tv
👀 Follow me for more trading insights, strategies, and live action!
Funny Trading Joke to Brighten Your Day 😆
💬 Trader: "I lost my whole account today!"💬 Friend: "What happened?!"💬 Trader: "Well... I kept seeing those green candles and thought they were money-growing trees. Turns out they were just market traps!"😂😂😂
🚀 Smash that FOLLOW button if this indicator helps your trading! Let’s dominate the markets together! 📈🔥
Kalango Trader 7.0
// Sinais visuais no gráfico
plotshape(series=long_signal, location=location.belowbar, color=color.green, style=shape.labelup, title="Long Signal", text="LONG")
plotshape(series=short_signal, location=location.abovebar, color=color.red, style=shape.labeldown, title="Short Signal", text="SHORT")
plotshape(series=lt
Optimized Impulse Wave Strategy - Precision Trading with 30% This strategy leverages a powerful combination of MACD, Elliott Wave, Fibonacci retracements, trend lines, and Hurst cycles to identify high-probability trade setups for BTC/USDT. Using a strict "decisive break" rule, it only considers trend line breaks valid when a full 4-hour candle opens and closes beyond the level, ensuring robust confirmation before entering trades.
With a 30% profitability rate, this script is fine-tuned to catch long-term impulse waves while minimizing false breakouts. Ideal for traders looking to balance precision with trend-following momentum.
Key Features:
📊 Multi-timeframe confirmation for stronger signals.
🔄 Automated entry/exit based on confluence of indicators.
🎯 Dynamic stop-loss and take-profit levels using Fibonacci extensions.
📈 Works on multiple timeframes, optimized for 3H and 4H charts.
⚠️ Backtested results show a consistent performance, but further optimizations are encouraged to tailor the strategy to market conditions.
🔔 Follow for more updates and strategy enhancements!
#CryptoTrading #ImpulseWave #TradingStrategy #MACD #ElliottWave #Fibonacci #TrendLines #Backtesting
TASC 2025.02 Autocorrelation Indicator█ OVERVIEW
This script implements the Autocorrelation Indicator introduced by John Ehlers in the "Drunkard's Walk: Theory And Measurement By Autocorrelation" article from the February 2025 edition of TASC's Traders' Tips . The indicator calculates the autocorrelation of a price series across several lags to construct a periodogram , which traders can use to identify market cycles, trends, and potential reversal patterns.
█ CONCEPTS
Drunkard's walk
A drunkard's walk , formally known as a random walk , is a type of stochastic process that models the evolution of a system or variable through successive random steps.
In his article, John Ehlers relates this model to market data. He discusses two first- and second-order partial differential equations, modified for discrete (non-continuous) data, that can represent solutions to the discrete random walk problem: the diffusion equation and the wave equation. According to Ehlers, market data takes on a mixture of two "modes" described by these equations. He theorizes that when "diffusion mode" is dominant, trading success is almost a matter of luck, and when "wave mode" is dominant, indicators may have improved performance.
Pink spectrum
John Ehlers explains that many recent academic studies affirm that market data has a pink spectrum , meaning the power spectral density of the data is proportional to the wavelengths it contains, like pink noise . A random walk with a pink spectrum suggests that the states of the random variable are correlated and not independent. In other words, the random variable exhibits long-range dependence with respect to previous states.
Autocorrelation function (ACF)
Autocorrelation measures the correlation of a time series with a delayed copy, or lag , of itself. The autocorrelation function (ACF) is a method that evaluates autocorrelation across a range of lags , which can help to identify patterns, trends, and cycles in stochastic market data. Analysts often use ACF to detect and characterize long-range dependence in a time series.
The Autocorrelation Indicator evaluates the ACF of market prices over a fixed range of lags, expressing the results as a color-coded heatmap representing a dynamic periodogram. Ehlers suggests the information from the periodogram can help traders identify different market behaviors, including:
Cycles : Distinguishable as repeated patterns in the periodogram.
Reversals : Indicated by sharp vertical changes in the periodogram when the indicator uses a short data length .
Trends : Indicated by increasing correlation across lags, starting with the shortest, over time.
█ USAGE
This script calculates the Autocorrelation Indicator on an input "Source" series, smoothed by Ehlers' UltimateSmoother filter, and plots several color-coded lines to represent the periodogram's information. Each line corresponds to an analyzed lag, with the shortest lag's line at the bottom of the pane. Green hues in the line indicate a positive correlation for the lag, red hues indicate a negative correlation (anticorrelation), and orange or yellow hues mean the correlation is near zero.
Because Pine has a limit on the number of plots for a single indicator, this script divides the periodogram display into three distinct ranges that cover different lags. To see the full periodogram, add three instances of this script to the chart and set the "Lag range" input for each to a different value, as demonstrated in the chart above.
With a modest autocorrelation length, such as 20 on a "1D" chart, traders can identify seasonal patterns in the price series, which can help to pinpoint cycles and moderate trends. For instance, on the daily ES1! chart above, the indicator shows repetitive, similar patterns through fall 2023 and winter 2023-2024. The green "triangular" shape rising from the zero lag baseline over different time ranges corresponds to seasonal trends in the data.
To identify turning points in the price series, Ehlers recommends using a short autocorrelation length, such as 2. With this length, users can observe sharp, sudden shifts along the vertical axis, which suggest potential turning points from upward to downward or vice versa.
Squeeze Momentum BUY SELL - CryptoBoostSqueeze momentum con Cipher pro para activar ordenes de compra y de venta. Modificado para la estrategia que usamos en nuestro fondo de inversiones
Optimized Impulse Wave Strategy for Speedy BTC Trades (3-Min)Looking to capitalize on rapid price movements in Bitcoin? The Optimized Impulse Wave Strategy is designed for high-frequency traders who thrive on short-term opportunities. Leveraging a combination of key technical indicators, this strategy aims to provide timely entries and exits with dynamic risk management.
Key Features:
📊 Indicators Used:
MACD Crossover: To identify momentum shifts.
200 EMA Trend Confirmation: For directional bias.
RSI (14): To gauge overbought/oversold conditions.
ADX (14): To confirm strong trends with a threshold filter.
ATR-based Stop Loss & Take Profit: Adaptive risk management.
⚡ Timeframe: 3-minute chart – ideal for scalping and short-term trades.
💡 Entry Logic:
Long Entry: Price above EMA, MACD bullish crossover, RSI > 50, and ADX strength confirmation.
Short Entry: Price below EMA, MACD bearish crossover, RSI < 50, and ADX strength confirmation.
🎯 Risk-Reward Ratio: Customizable with built-in ATR calculations to ensure strategic exits.
Performance:
✅ Win Rate: ~40% on BTC/USDT (3-min timeframe) in backtesting.
✅ Profit Factor: Carefully optimized to balance risk and reward.
✅ Trade Frequency: Frequent, perfect for active traders seeking volatility.
How to Use:
Apply the script to BTC/USDT on the 3-minute chart.
Watch for green buy arrows and red sell arrows to trigger trades.
Manage your risk using ATR-based stop-loss and take-profit levels.
Enable alerts for real-time trade signals.
⚠ Disclaimer: Past performance does not guarantee future results. Use proper risk management and test in a demo environment before live trading.
Follow for more trading strategies and share your thoughts below! 📩🔥
Webhook simplifiedtest to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
test to sent webhooks to various parties
Pi - Intraday High-Low PredictorCustomizable Inputs:
Users can adjust settings like table visibility, line styles, label sizes, and colors for high/low levels.
Flexibility in choosing table position and text size.
Predicted High/Low Levels:
Calculates small, regular, and large ranges for intraday high/low levels using the Pi multiplier on the opening range.
Dynamically plots these levels with customizable visuals.
Historical Range Support:
Optionally overlays historical predicted ranges on the chart.
Table for Summary:
Displays a table summarizing predicted values with dynamic placement.
QuantFarming Signals v6//@version=6
indicator("QuantFarming Signals", overlay = true, max_boxes_count = 500)
// INPUT
Resolution = input.timeframe("240", title = "Resolution")
BarWidth = input.int(4, title = "Bar Width", minval = 1)
RSIRegPeriod = input.int(1000, title = "RSI Regression Period")
RSIRegFactor = input.float(1.7, title = "RSI Regression Factor")
StopLossBufferPoints = input.float(5.0, title = "Stop Loss Buffer Points")
WebhookID = input.string("", title = "Webhook ID", group = "Setup")
WebhookToken = input.string("", title = "Webhook Token", group = "Setup")
Delay = input.timeframe("240", title = "Signal Delay", group = "Setup")
BuyMovingAveragePeriod = input.int(25, title = "Buy MA Period", inline = "Buy", group = "Moving Average Period & Angle")
SellMovingAveragePeriod = input.int(25, title = "Sell MA Period", inline = "Sell", group = "Moving Average Period & Angle")
BuyAngle = input.float(+0.01, title = "Buy MA Angle", inline = "Buy", group = "Moving Average Period & Angle")
SellAngle = input.float(-0.01, title = "Sell MA Angle", inline = "Sell", group = "Moving Average Period & Angle")
RSIMax = input.float(55, title = "RSI Max", group = "Relative Strength Index Regression")
RSIMin = input.float(50, title = "RSI Min", group = "Relative Strength Index Regression")
// KR INPUT
Timeframe = input.timeframe("5", title = "Timeframe", group = "Kernel Regression for Confirmation")
Size = input.int(100, title = "Size", minval = 1, group = "Kernel Regression for Confirmation")
Bandwidth = input.float(5.0, title = "Bandwidth Parameter", minval = 1, step = 0.125, group = "Kernel Regression for Confirmation")
R = input.float(1.0, title = "R Value", minval = 0.125, step = 0.125, group = "Kernel Regression for Confirmation")
// FIBONACCI RETRACEMENT INPUT
RetracementLookback = input.int(100, title = "Retracement Lookback", group = "Fibonacci Retracement")
// POINTS IN THE BOX
BoxPoints = input.bool(true, title = "Display Points", group = "Points In The Box")
BoxWidth = input.int(10, title = "Box Width", group = "Points In The Box")
BoxHeight = input.int(10, title = "Box Height", group = "Points In The Box")
// DIRECTION ===============================================
// OFFSET
Offset = timeframe.in_seconds(Resolution) >= timeframe.in_seconds(timeframe.period) ? timeframe.in_seconds(Resolution) / timeframe.in_seconds(timeframe.period) : 0
// TRENDLINE
BuyMovingAverage = request.security(syminfo.tickerid, Resolution, ta.sma(close, BuyMovingAveragePeriod))
SellMovingAverage = request.security(syminfo.tickerid, Resolution, ta.sma(close, SellMovingAveragePeriod))
// ANGLE OF ELEVATION AND DEPRESSION
BuyMovingAverageAngle = request.security(syminfo.tickerid, Resolution, (BuyMovingAverage / BuyMovingAverage - 1) * 100)
SellMovingAverageAngle = request.security(syminfo.tickerid, Resolution, (SellMovingAverage / SellMovingAverage - 1) * 100)
// DIRECTION
var Direction = int(0)
BuyDirection = BuyMovingAverage > BuyMovingAverage and BuyMovingAverageAngle > BuyAngle ? 1 : 0
SellDirection = SellMovingAverage < SellMovingAverage and SellMovingAverageAngle < -SellAngle ? -1 : 0
Direction := BuyDirection > BuyDirection ? 1 : (SellDirection < SellDirection ? -1 : Direction)
// DRAW ANGLE OF ELEVATION AND DEPRESSION
if Direction > Direction
line.new(bar_index, BuyMovingAverage, bar_index , BuyMovingAverage , xloc.bar_index, extend.none, color.white, line.style_solid, 2)
if Direction < Direction
line.new(bar_index, SellMovingAverage, bar_index , SellMovingAverage , xloc.bar_index, extend.none, color.yellow, line.style_solid, 2)
// DRAW TRENDLINE
plot(BuyMovingAverage, title = "Buy Moving Average", color = Direction > 0 ? color.aqua : color.fuchsia, offset = -Offset + 1)
plot(SellMovingAverage, title = "Sell Moving Average", color = Direction > 0 ? color.aqua : color.fuchsia, offset = -Offset + 1)
// DRAW DIRECTION
bgcolor(color = color.new(Direction > 0 ? color.teal : color.maroon, 90), title = "Direction", offset = -Offset + 1)
// REGRESSION ============================================
// RELATIVE STRENGTH INDEX
RSI = ta.rsi(close, 14)
// RELATIVE STRENGTH INDEX REGRESSION
RSIRegression = ta.linreg(RSI, RSIRegPeriod, 0)
// RELATIVE STRENGTH INDEX DEVIATION
RSIDeviation = ta.stdev(RSI, RSIRegPeriod) * RSIRegFactor
// RSI SIGNAL
RSISell = ta.crossunder(RSI, RSIRegression + RSIDeviation) and RSI > RSIMax
RSIBuy = ta.crossover(RSI, RSIRegression - RSIDeviation) and RSI < RSIMin
// KERNEL REGRESSION ==============================================================================
// KERNEL REGRESSION
KernelRegression() =>
CurrentWeight = 0.0
CumulativeWeight = 0.0
for Count = 0 to Size
Y = close
U = math.pow(Count, 2) / (math.pow(Bandwidth, 2) * R)
W = (U >= 1) ? 0 : (3. / 4) * (1 - math.pow(U, 2))
CurrentWeight := CurrentWeight + Y * W
CumulativeWeight := CumulativeWeight + W
CurrentWeight / CumulativeWeight
// REVERSAL CONFIRMATION
Regression = request.security(syminfo.tickerid, Timeframe, KernelRegression())
// SIGNAL
Sell = RSISell and Direction < 0 and Regression > Regression
Buy = RSIBuy and Direction > 0 and Regression < Regression
// DELAY
var Track = int(0)
Active = (time - Track) >= timeframe.in_seconds(Delay) * 1000
Track := Active and (Buy or Sell) ? time : Track
plotshape(Sell and Active, title = "Sell", style = shape.triangledown, color = color.fuchsia, location = location.abovebar, size = size.tiny)
plotshape(Buy and Active, title = "Buy", style = shape.triangleup, color = color.aqua, location = location.belowbar, size = size.tiny)
// LEVEL ==========================================================================
// LEVEL
Peak = ta.highest(RetracementLookback)
Trough = ta.lowest (RetracementLookback)
// DEVIATION
Deviation = Peak - Trough
// SIDE
Side = Buy and Active ? 1 : (Sell and Active ? -1 : 0)
// FIBONACCI RETRACEMENT ==========================================================================
// FIBONACCI RETRACEMENT
var TP1 = float(na)
var TP2 = float(na)
var Stop = float(na)
F0 = (Side > 0 ? Trough : Peak) + Side * Deviation * 0.000
F1 = (Side > 0 ? Trough : Peak) + Side * Deviation * 0.236
F2 = (Side > 0 ? Trough : Peak) + Side * Deviation * 0.382
F3 = (Side > 0 ? Trough : Peak) + Side * Deviation * 0.500
F4 = (Side > 0 ? Trough : Peak) + Side * Deviation * 0.618
F5 = (Side > 0 ? Trough : Peak) + Side * Deviation * 0.786
F6 = (Side > 0 ? Trough : Peak) + Side * Deviation * 1.000
F7 = (Side > 0 ? Trough : Peak) + Side * Deviation * 1.236
F8 = (Side > 0 ? Trough : Peak) + Side * Deviation * 1.382
F9 = (Side > 0 ? Trough : Peak) + Side * Deviation * 1.500
FX = (Side != 0 ? 1 : (Side != 0 ? 2 : (Side != 0 ? 3 : 0)))
if Side > 0 and FX == 0
TP1 := (close < F1 ? F2 : (close < F2 ? F3 : (close < F3 ? F4 : (close < F4 ? F5 : (close < F5 ? F6 : (close < F6 ? F7 : na))))))
TP2 := (close < F1 ? F3 : (close < F2 ? F4 : (close < F3 ? F5 : (close < F4 ? F6 : (close < F5 ? F7 : (close < F6 ? F8 : na))))))
Stop := close - (Deviation * 0.236 + StopLossBufferPoints)
if Side < 0 and FX == 0
TP1 := (close > F1 ? F2 : (close > F2 ? F3 : (close > F3 ? F4 : (close > F4 ? F5 : (close > F5 ? F6 : (close > F6 ? F7 : na))))))
TP2 := (close > F1 ? F3 : (close > F2 ? F4 : (close > F3 ? F5 : (close > F4 ? F6 : (close > F5 ? F7 : (close > F6 ? F8 : na))))))
Stop := close + (Deviation * 0.236 + StopLossBufferPoints)
// DRAW FIBONACCI RETRACEMENT
var OpenPosition = int(0), OpenPosition := FX > 0 ? OpenPosition + 1 : 0
var Line = float(na), Line := OpenPosition == 1 ? Stop : (OpenPosition == 2 ? TP2 : Line)
plot(Line, linewidth = 1, color = FX == 0 ? na : (OpenPosition < 3 and OpenPosition > 1 ? color.lime : na))
plot(Stop, linewidth = 1, color = FX == 0 ? na : (OpenPosition < 6 and OpenPosition > 0 ? color.fuchsia : na))
plot(TP1, linewidth = 1, color = FX == 0 ? na : (OpenPosition < 6 and OpenPosition > 0 ? color.aqua : na))
plot(TP2, linewidth = 1, color = FX == 0 ? na : (OpenPosition < 6 and OpenPosition > 0 ? color.aqua : na))
// DRAW POINTS IN THE BOX
Box = array.new_box()
if Active and (Buy or Sell) and bar_index > 2 and BoxPoints
StopPoints = str.tostring(math.round(math.abs(close - Stop) / syminfo.mintick) * syminfo.mintick) + " pts"
TP1Points = str.tostring(math.round(math.abs(close - TP1) / syminfo.mintick) * syminfo.mintick) + " pts"
TP2Points = str.tostring(math.round(math.abs(close - TP2) / syminfo.mintick) * syminfo.mintick) + " pts"
array.push(Box, box.new(left = bar_index - 2, top = Stop + BoxHeight, right = bar_index + BoxWidth, bottom = Stop - BoxHeight, text = StopPoints, text_size = size.auto, text_halign = text.align_right, border_color = color.fuchsia, bgcolor = color.new(color.fuchsia, 80)))
array.push(Box, box.new(left = bar_index - 2, top = TP1 + BoxHeight, right = bar_index + BoxWidth, bottom = TP1 - BoxHeight, text = TP1Points, text_size = size.auto, text_halign = text.align_right, border_color = color.aqua, bgcolor = color.new(color.aqua, 80)))
array.push(Box, box.new(left = bar_index - 2, top = TP2 + BoxHeight, right = bar_index + BoxWidth, bottom = TP2 - BoxHeight, text = TP2Points, text_size = size.auto, text_halign = text.align_right, border_color = color.aqua, bgcolor = color.new(color.aqua, 80)))
// WEBHOOK
message = array.new_string()
array.push(message, "\"id\": \"" + WebhookID + "\"")
array.push(message, "\"token\": \"" + WebhookToken + "\"")
array.push(message, "\"ticker\": \"" + syminfo.ticker + "\"")
array.push(message, "\"action\": \"" + (Buy ? "BUY" : "SELL") + "\"")
array.push(message, "\"price\": \"" + str.tostring(close) + "\"")
array.push(message, "\"time\": \"" + str.tostring(time) + "\"")
if Active and (Buy or Sell)
alert(message = "{ " + array.join(message, ", ") + " }", freq = alert.freq_once_per_bar_close)
6 EMA's with BUY/SELL by Lincoln Khan -V2This Pine Script, titled "6 EMA's with BUY/SELL by Lincoln Khan," is designed to assist traders in identifying trends and potential trading opportunities based on exponential moving averages (EMAs). It visualizes six EMAs with user-defined colors and periods, allowing traders to observe market momentum and potential reversal points. The script provides clear Buy and Sell signals based on the crossover of specific EMAs, helping traders make informed decisions.
Improved Exhaustion Signalextremely profitable indicator.
Tested in backtesting consistintly made 450k plus
Only works higher timeframes
US10Y 63-Day Range PercentageMide la posición actual del precio del US10Y en su rango de los últimos 63 días, expresada como porcentaje.
Interpretación:
0%: El precio está en el mínimo del rango.
100%: El precio está en el máximo del rango.
Color de fondo: Resalta condiciones extremas según los umbrales configurados.
30 moving averageA 30-moving average (MA) is a technical analysis tool that calculates the average price of an asset over the last 30 periods (e.g., days, weeks, or months). It smooths out price fluctuations to help traders and investors identify trends. Here’s a brief overview:
Purpose: To determine the overall trend direction and filter out short-term price volatility.
Types:
Simple Moving Average (SMA): Equal weight is given to all data points.
Exponential Moving Average (EMA): More weight is given to recent prices.
Usage:
When the price is above the 30-MA, it suggests an uptrend.
When the price is below the 30-MA, it indicates a downtrend.
Application: Commonly used in combination with other indicators to confirm trends, identify potential entry/exit points, and assess overall market momentum.
Trend Analysis: DJ 09Bullish trends when the short-term MA crosses above the long-term MA and RSI is rising.
Bearish trends when the short-term MA crosses below the long-term MA and RSI is falling.
MCDX_SignalThe MCDX indicator (Market Cycle Dynamic Index) is a technical indicator developed by Trung Pham. It is a tool used for analyzing the stock market, often utilized to identify big money flow (Big Money) and evaluate the strength of individual stocks or the overall market.
MCDX is known for its distinctive histogram chart with red and green bars. The red bars typically represent the inflow of big money, while the green bars indicate small money flow or outflows.