Anjink V3 Purpose:
Identify Market Swings:
Detects significant highs and lows in the price movement using parameters like Depth, Deviation, and Backstep.
Plots trendlines connecting these swing points.
Labels these swing points with S (Sell) for swing highs and B (Buy) for swing lows, indicating potential trading opportunities.
Trend Analysis:
Plots three key moving averages (MA 20, MA 50, MA 200) for trend-following strategies.
Helps traders understand the short-term, mid-term, and long-term trends.
Volatility and Risk Metrics:
Uses ATR (Average True Range) to measure market volatility.
Displays the ATR percentage (volatility as a percentage of the price) and a calculated stop-loss percentage (1.5x ATR) for risk management.
Trend Visualization:
Dynamically updates swing levels and trendlines as the market evolves.
Highlights the trend direction with a background color:
Red: Downtrend (Bearish).
Green: Uptrend (Bullish).
Candlestick analysis
Volume Candle WyckHello traders!
Este sencillo indicador muestra colores de velas más brillantes cuando su volumen es mayor que el volumen de las 3 velas anteriores con la finalidad de visualizar más fácil los posibles niveles de reacción del precio.
Inside Bar/Outside Bar/Mother Bar Box By SmartTrader888This Indicator shows:
1. Inside Bar
2. Outside Bar
3. Mother Bar box (Box the mother bar and all subsequent inside bars)
This indicator handles correctly the edge conditions such as:
1. bar close = bar open
2. current bar low equals to mother bar low or current bar high equals mother bar high
FVG DetectorA fairly flexible indicator for displaying imbalance zones. There are quite a few similar indicators, but none of them suit me, so I made my own.
Settings:
Minimum FVG size in % - Minimum imbalance size in percentage
Percentage of filling FVG - When the imbalance is filled by the specified percentage, the imbalance will be considered inactive
Show FVG - The number of FVG to be shown on the chart. If 0, all FVG are shown
FVG Long color - Color of FVG Long FVG
FVG Short color - Color of FVG Short FVG
FVG middle line - Setting the line that shows the middle of the imbalance
Filling 50% FVG - When filling the imbalance halfway, the line showing the middle of the imbalance changes type and color
When Candle Close - The rectangle showing the imbalance zone is removed only after the candle closes
History - Display all imbalance zones on history
Conclusion:
This indicator will be useful for those users who need to display imbalance zones, the middle of the imbalance, and also visually show that the price has covered half of the imbalance zone.
VWAP Breakout and Pullback StrategyThis Pine Script implements the following setups:
Breakout Trades:
A long breakout trade occurs when:
The price is above VWAP.
RSI > 50.
Volume is higher than the average volume (indicating a volume spike).
A short breakout trade occurs when:
The price is below VWAP.
RSI < 50.
Volume is higher than the average volume.
Pullback Entries:
A long pullback trade occurs when:
The price crosses above VWAP.
RSI > 50.
Volume is lower than the average volume (indicating a pullback with low momentum).
A short pullback trade occurs when:
The price crosses below VWAP.
RSI < 50.
Volume is lower than the average volume.
Features:
Signals: Buy and sell signals are plotted on the chart with breakout or pullback labels.
Alerts: Alerts are configured for each type of signal, enabling automation or notifications.
You can copy and paste this code into TradingView's Pine Script editor to test and use it for real-time
Combined Support Resistance & Moving AveragesConverted the script to Pine Script version 6 syntax.
Replaced outdated functions like pivothigh and pivotlow with ta.pivothigh and ta.pivotlow.
Updated the input and plot methods to match version 6 standards.
Fixed any syntax issues related to brackets or line continuation.
Let me know if this works or needs further refinements!
Optimized MGC Futures Strategy | Dynamic R:RONLY for 1 hour timeframe, it takes fundamentals into consideration
Intraday Leading Indicator Strategy DHRUPAL JOSHIUseful for intraday and swing trading
Use Strategy before making proper analysis
ADX & RSI Strategy with ATR TargetsIt is a multi indicator bullish strategy. ADX >18, +DI is greater than - DI, RSI crosses above 60 and is above RSI SMA (20). Target is at 2.5 ATR at the entry time and the SL is 1.5 times of the ATR. This one works well for long trade in options in a 1 minute time frame. This can be optimised further.
Double EMA Crossover with Volume Filter//@version=5
indicator("Double EMA Crossover with Volume Filter", overlay=true)
// Inputs for EMA lengths
fast_ema_length = input.int(3, title="Fast EMA Length", minval=1)
slow_ema_length = input.int(30, title="Slow EMA Length", minval=1)
// Input for Volume settings
volume_length = input.int(20, title="Volume Moving Average Length", minval=1)
// Calculate EMAs
fast_ema = ta.ema(close, fast_ema_length)
slow_ema = ta.ema(close, slow_ema_length)
// Calculate Volume Average
avg_volume = ta.sma(volume, volume_length)
// Volume condition: Current volume is higher than average volume
is_high_volume = volume > avg_volume
// EMA Crossover conditions
bullish_crossover = ta.crossover(fast_ema, slow_ema) // Fast EMA crosses above Slow EMA
bearish_crossover = ta.crossunder(fast_ema, slow_ema) // Fast EMA crosses below Slow EMA
// Combine crossover and volume condition
bullish_signal = bullish_crossover and is_high_volume
bearish_signal = bearish_crossover and is_high_volume
// Plot EMAs
plot(fast_ema, color=color.blue, linewidth=2, title="Fast EMA (3)")
plot(slow_ema, color=color.orange, linewidth=2, title="Slow EMA (30)")
// Plot signals
plotshape(bullish_signal, style=shape.labelup, color=color.green, size=size.small, location=location.belowbar, text="Buy")
plotshape(bearish_signal, style=shape.labeldown, color=color.red, size=size.small, location=location.abovebar, text="Sell")
// Highlight high-volume bars
bgcolor(is_high_volume ? color.new(color.green, 90) : na, title="High Volume Highlight")
BFX Buy and SellThe BFX Buy and Sell Strategy is a cutting-edge trading tool designed to help you navigate the markets with confidence.
This strategy simplifies decision-making by delivering precise buy and sell signals, ensuring you’re always one step ahead of market trends. Perfect for traders of all experience levels, it offers clean visuals and reliable alerts to maximize your trading potential.
Whether you’re looking to fine-tune your strategy or seeking a fresh approach to trading, the BFX Buy and Sell is your ultimate partner for smarter, more efficient trading.
Developed by
Jc Golden
BeardedFX
www.beardedfx.net
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)
Asia Range Breakout StrategySimple Asia Range Breakout Strategy.
Long Example:
If we are in the trading session and a candle on the current timeframe closes above the asia range we enter a buy with x number of contracts.
SL is ATR multiplied by X
TP 1: Close x number of contracts when ATR multiplied by X is reached
TP 2: Close remaining contracts when ATR multiplied by X is reached
Vice versa for shorts.
Additional, Optional Conditions/ functions (long example):
- Only buy if the current daily candle is bullish → Inputs: true/false
- Only buy if the DXY is below the EMA with length X on timeframe X → Inputs: true/false, EMA length, EMA timeframe
- Trailing SL: ATR Based trailing SL → Inputs: Use Trailing SL true/ false, Trail after X ATR in Profit, Trail SL by X ATR
- Close all open positions x minutes before session end → Inputs: true, false, time input: X minutes before session end
Oscilador/RSIEste indicador es una combinación de dos herramientas: el Oscilador WaveTrend Mejorado (una variación del WaveTrend Oscillator) y el Índice de Fuerza Relativa (RSI), con la adición de alertas y diversas opciones de personalización.
Qobavision indicatorEl "Qobavision Indicator" es una herramienta personalizada diseñada para identificar la acción del precio en relación con bandas dinámicas basadas en una EMA (Media Móvil Exponencial) de longitud configurable. Este indicador proporciona una guía visual clara mediante colores personalizados en las velas, según su posición con respecto a las bandas:
Velas verdes: El precio cierra por encima de la banda superior, lo que puede indicar un impulso alcista.
Velas rojas: El precio cierra por debajo de la banda inferior, lo que puede señalar un impulso bajista.
Velas grises: El precio cierra dentro de las bandas, indicando una posible consolidación o rango.
El ancho de las bandas se calcula utilizando un multiplicador configurable del ATR (Rango Verdadero Promedio), lo que permite que las bandas se ajusten dinámicamente a la volatilidad del mercado. Además, el indicador incluye opciones de personalización avanzadas, como colores para las velas y el fondo de las bandas, junto con la transparencia del relleno.
Características clave:
Configuración flexible de la longitud de la EMA y el multiplicador del ATR.
Personalización de colores para las velas y el fondo de las bandas.
Identificación visual clara de diferentes condiciones del mercado.
Adecuado para traders de todos los niveles que deseen analizar tendencias y volatilidad en cualquier temporalidad.
3Candles By SharadLong and Short:
If Candle turns White; Long, Keep SL as Low of -2 Candle
If Candle turns Blue; Short, Keep SL as High of -2 Candle
*Manage Risk to be in profit in long run*
Candlesticks ExplainedCandlestick Patterns Identified:
Doji: A candlestick with a small body, indicating market indecision.
Evening Star: A three-bar pattern signaling a bearish reversal, typically used as a sell signal.
Morning Star: A three-bar pattern signaling a bullish reversal, typically used as a buy signal.
Shooting Star: A single-bar pattern signaling a potential top reversal, typically used as a sell signal.
Hammer (H): A candlestick with a small body and long lower shadow, typically indicating a reversal after a downtrend (buy signal).
Inverted Hammer (IH): Similar to a hammer, but with a long upper shadow, signaling a potential reversal after a downtrend (buy signal).
Bearish Harami: A two-bar pattern signaling a bearish reversal (sell signal).
Bullish Harami: A two-bar pattern signaling a bullish reversal (buy signal).
Bearish Engulfing: A two-bar pattern signaling a bearish reversal (sell signal).
Bullish Engulfing: A two-bar pattern signaling a bullish reversal (buy signal).
Piercing Line: A two-bar pattern signaling a bullish reversal (buy signal).
Bullish Belt: A bullish candle opens at or below the low of the previous candle (buy signal).
Bullish Kicker: A bullish candle opens above the previous candle's close (buy signal).
Bearish Kicker: A bearish candle opens below the previous candle's close (sell signal).
Hanging Man: A candlestick signaling a potential reversal after an uptrend (sell signal).
Dark Cloud Cover: A two-bar pattern signaling a bearish reversal (sell signal).
PCHLM with TimeframeThis indicator plots the previous candle's high, low, and midpoint on the chart with customizable line thickness and distinct colors for better visualization. It allows traders to choose the timeframe from which these levels are derived, providing flexibility to adapt to different trading strategies.
Features:
Timeframe Selection: Users can select any desired timeframe (e.g., daily, weekly) to define the previous candle's high, low, and midpoint.
Color-Coded Lines:
The high level is marked with a red line.
The low level is marked with a green line.
The midpoint is marked with a grey line.
Adjustable Line Thickness: Traders can set the thickness of the lines between 1 and 5, allowing for better visual customization according to their preferences.
Dynamic Updates: The lines update automatically with each new candle, ensuring the levels are always current based on the selected timeframe.
CSP Entry Signal//@version=5
indicator("CSP Entry Signal", overlay=true)
// RSI Calculation
rsiLength = 14
rsiSource = close
rsiValue = ta.rsi(rsiSource, rsiLength)
// Moving Averages for Trend Confirmation
ema200 = ta.ema(close, 200)
// MACD Histogram for Momentum Confirmation
= ta.macd(close, 12, 26, 9)
// Support Level Detection (Simple Moving Low)
supportLookback = 20
supportLevel = ta.lowest(low, supportLookback)
// Implied Volatility Approximation (Using ATR as a Proxy)
atrLength = 14
atrValue = ta.atr(atrLength)
// Entry Conditions
rsiCondition = rsiValue < 55
trendCondition = close > ema200 and macdHist > 0
supportCondition = close <= supportLevel
// Final Entry Signal
cspEntrySignal = rsiCondition and trendCondition and supportCondition
// Plot Support Level
plot(supportLevel, title="Support Level", color=color.blue, linewidth=2, style=plot.style_stepline)
// Plot Entry Signal
plotshape(cspEntrySignal, location=location.belowbar, color=color.green, style=shape.labelup, size=size.small, title="CSP Entry")
// Alert Condition
alertcondition(cspEntrySignal, title="CSP Entry Alert", message="CSP Entry Signal Triggered")