Optimize Al-Sat Stratejisi (ADX ile)Strateji, teknik analiz araçlarını kullanarak piyasa trendlerini, fiyat hareketlerini ve hacim değişimlerini analiz eden bir algoritmadır. Bu sistem, alım ve satım sinyalleri üreterek yatırımcılara karar desteği sağlar. Ayrıca, risk yönetimi ve kâr hedefleriyle optimize edilmiştir.
Chỉ báo và chiến lược
RCI 6 linesYou can display 6 RCIs. It’s simple, so feel free to adjust it as you like. Your support would be a great motivator for creating new indicators.
6本のRCIを表示できます。
シンプルですので、ご自由に調整してください。
応援頂けると新たなインジケーター作成の糧になります。
Nahum - ZLSMA for Telegram [Nahum81]Este indicador ZLSMA (Zero Lag Least Squares Moving Average) proporciona una media móvil con un retraso casi nulo, lo que permite identificar la dirección de la tendencia de forma instantánea.
Características:
Alertas de Telegram: Recibe notificaciones en tiempo real en tu Telegram cuando se produzcan señales de compra o venta.
Integración con Telegram: Conéctate fácilmente a tu cuenta de Telegram para recibir alertas.
Configuración personalizable: Ajusta los parámetros del indicador y las alertas a tu estrategia de trading.
Advertencia:
Este indicador debe usarse con precaución.
Se recomienda contactar al desarrollador (@Nahum81) para comprender completamente la estrategia y su uso adecuado.
El trading implica riesgos y este indicador no garantiza ganancias.
Unicorn Fart DustA playful script for the cult meme token $UFD. Please fee free to copy and enhance to make a more elaborate sparkly fart dust indicator. Thank you Rontoshi aka Ron The Don... and Jasper.
FxSessions Mauricio LopezDiferencia el inicio de cada sesión del mercado de divisas, desde la apertura de Tokio, apertura de Londres y la apertura de Nueva York.
rsi 1450The code has been reverted to its original version without the arrow modifications. Let me know if you need any further adjustments!
Pine ChristmasThe "Pine Christmas" indicator is a festive decoration for your chart. It features a stylized Christmas tree, symbolizing the Pine Script logo, dressed up for the New Year. A star shines atop the tree, snowflakes float around, and gifts and snowmen sit beneath it, creating a magical winter vibe. This indicator brings a touch of holiday cheer and joy to your charting experience!
Indicador Radial com Visualização de Graus ( versão de teste )Indicador baseado em graus para captar movimentos de liquidez do mercado( associado ao RSI)
Cambio de Volumen (%)Descripción del Indicador: Cambio de Volumen (%) con Delta y Coloreo de Velas
¡Bienvenido al indicador avanzado de Cambio de Volumen con Delta! Este indicador está diseñado para ayudarte a identificar de manera visual las velas que presentan cambios significativos en el volumen con respecto a la vela anterior, lo que puede ser una señal importante de movimientos potencialmente fuertes en el mercado. A través de un sistema de colores dinámicos, este indicador no solo te alerta sobre el cambio de volumen, sino que también te proporciona información adicional sobre el delta (la diferencia entre el cierre actual y el anterior), lo que te permite tomar decisiones de trading más informadas.
¿Cómo usar este indicador?
Configura el umbral de volumen:
Puedes elegir entre una serie de umbrales predefinidos para determinar qué constituye un "gran" cambio de volumen. Estas opciones incluyen 38.2%, 50%, 61.8%, 78.6%, 100%, 250%, 350% y 500%. Al seleccionar uno de estos, el indicador coloreará las velas que superen ese umbral.
Coloreado de velas:
Las velas se colorean automáticamente en verde si el cambio de volumen es positivo y en rojo si es negativo, lo que te ayuda a visualizar rápidamente qué velas presentan un cambio significativo en volumen y cómo se comporta el precio.
Visualiza el porcentaje de cambio:
En la parte superior de las velas seleccionadas, podrás ver el porcentaje de cambio de volumen, proporcionándote un dato clave que puede servirte para decidir si una vela tiene el suficiente volumen como para justificar una operación.
Tamaño personalizable de las etiquetas:
Puedes ajustar el tamaño de las etiquetas con el porcentaje de cambio de volumen directamente desde las opciones del indicador, permitiendo mayor flexibilidad en la visualización según tus preferencias.
Ejemplos de Funcionamiento
Ejemplo 1: Si seleccionas un umbral de 50%, y el volumen de una vela supera este porcentaje en comparación con la vela anterior, esa vela se coloreará de acuerdo a si su delta es positivo (verde) o negativo (rojo). Esto te da una alerta visual clara sobre el comportamiento del mercado y te permite evaluar si es un buen momento para entrar o salir del mercado.
Ejemplo 2: Si el volumen de una vela excede el umbral de 100%, y el delta es negativo, la vela se coloreará de rojo, indicándote que aunque el volumen fue grande, el precio está cayendo, lo que puede ser una señal de debilidad en el mercado.
Ventajas del Indicador
Visualización clara y sencilla: El cambio de volumen se refleja de manera intuitiva con colores de velas, facilitando la comprensión del comportamiento del mercado.
Detección de movimientos significativos: Puedes detectar rápidamente velas con volumen anómalo, lo que puede ayudarte a identificar oportunidades de trading en base a cambios significativos de volumen y precio.
Personalización de umbrales y tamaños: Puedes ajustar los valores de umbral de volumen y personalizar el tamaño de las etiquetas según tu estilo y preferencia de visualización, haciéndolo flexible para cada tipo de trader.
Comodidad en el análisis técnico: Al integrar el cambio de volumen con la información sobre el delta de cada vela, este indicador te ofrece una herramienta poderosa para evaluar la fuerza de los movimientos del mercado y hacer análisis más profundos.
Facilita decisiones rápidas: Con las velas coloreadas y el porcentaje de cambio visible, podrás tomar decisiones más informadas sin tener que hacer cálculos complejos mientras realizas tus análisis.
¡Contáctame para más información!
Si tienes alguna pregunta sobre cómo usar este indicador o si deseas sugerir mejoras o personalizaciones adicionales, no dudes en contactarme. Estoy disponible para ayudarte a sacarle el máximo provecho a este indicador y hacer que se ajuste mejor a tus necesidades de trading.
¡No olvides probar el indicador y ver cómo puede mejorar tu análisis de mercado!
Refined Fibonacci Strategy - Enhanced Risk ManagementThis strategy leverages the 0.65 Fibonacci retracement level as a key point of interest while incorporating trend filtering and risk management mechanisms. It is designed for use on the 15-minute timeframe and aims to identify high-probability trading opportunities in line with the prevailing market trend.
MM8 Advanced Regression HistogramMM8 Advanced Regression Histogram
Description :
The MM8 Advanced Regression Histogram is a professional-grade TradingView script that combines regression analysis with intuitive visual elements. This tool is designed to help traders identify key price trends, support/resistance zones, and volatility areas in a more efficient and visually appealing manner.
-----------------------------------------------
Key Features:
1. Dynamic Regression Channel:
- Automatically calculates and plots regression channels based on the selected length.
- Uses a customizable multiplier to adjust the channel width, allowing users to adapt to different market conditions.
2. Histogram Visualization:
- Divides the regression channel into customizable bins, helping traders see price distribution across the channel.
- Histogram bars are color-coded to provide clear insights into price activity.
3. Gradient Coloring:
- Smooth gradient colors shift from **blue (upper zone)** to **white (midpoint)** and **red (lower zone)**, giving traders an immediate visual cue about price positioning within the channel.
4. Customizable Style Options:
- Adjustable line styles (solid, dashed, dotted) for regression lines.
- Flexible histogram visibility and color options to suit individual preferences.
5. Real-time Adaptability:
- Automatically updates as new bars are formed, ensuring traders always have the most up-to-date analysis.
-----------------------------------------------
How to Use:
1. Apply the script to any standard candlestick chart
2. Adjust the Length parameter to define the number of candles for regression calculation.
3. Set the Bins Number to divide the channel into segments that suit your trading strategy.
4. Customize the Multiplier to adjust the channel width according to market volatility.
5. Toggle the histogram display and adjust its colors for better visualization.
-----------------------------------------------
Best For:
- Day traders and swing traders looking for precise price analysis tools.
- Traders interested in combining regression analysis with visual histogram insights.
- Identifying key support/resistance zones and potential breakout levels.
-----------------------------------------------
Important Notes:
- This script is designed for educational purposes and should not be used as a standalone trading signal.
- Ensure proper risk management and market understanding while using this tool.
-----------------------------------------------
Why MM8 Advanced Regression Histogram Stands Out:
This script provides a seamless blend of mathematical accuracy and visual simplicity, making it an excellent choice for traders who value both precision and usability.
3 Volume Wighted Moving Average -trend-Macd3 Volume Wighted Moving Average
With Main trend
With MACD
EMA Scalperindikator EMA, untuk scalping berdasarkan harga EMA, dilangkapi dengan SL yang menggunakan 50% ATR
sajjad jamshidi Support The Bull Market Support Band Strategy is a trend-following strategy that leverages the relationship between two moving averages: the Simple Moving Average (SMA) and the Exponential Moving Average (EMA). This strategy aims to capture long positions in a bullish market when the EMA crosses above the SMA, signaling an upward trend, and to exit positions when the EMA crosses below the SMA, indicating a bearish reversal. The strategy is designed to operate on a weekly timeframe.
Arrow Strategy Final VersionFinalna wersja bardzo skutecznej strategi Scalpingowej.
Po Checkliste z alertami badz z potwierdzeniami potrzebnymi do wejscia
Zgłoś się na priv.
LETS GO !
Abnormal Delta Volume HistogramThis indicator can help traders spot potential turning points or heightened volatility and provides a dynamic measure of unusual market behavior by focusing on shifts in “delta volume.” Delta volume is approximated by assigning all of a bar’s volume to the bullish side if the close is higher than the open and to the bearish side if the close is lower. The result is a net volume measure that can hint at which side—buyers or sellers—has the upper hand. By comparing this delta volume to its historical averages and measuring how far current readings deviate in terms of standard deviations, the indicator can highlight bars that reflect significantly stronger than normal buying or selling pressure.
A histogram visualizes these delta volume values on a bar-by-bar basis, while additional reference lines for the mean and threshold boundaries allow traders to quickly identify abnormal conditions. When the histogram bars extend beyond the threshold lines, and are colored differently to signal abnormality, it can draw the trader’s eye to periods when market participation or sentiment may be shifting rapidly. This can be used as an early warning signal, prompting further investigation into price action, external news, or significant events that may be driving unusual volume patterns.
Important Notice:
Trading financial markets involves significant risk and may not be suitable for all investors. The use of technical indicators like this one does not guarantee profitable results. This indicator should not be used as a standalone analysis tool. It is essential to combine it with other forms of analysis, such as fundamental analysis, risk management strategies, and awareness of current market conditions. Always conduct thorough research or consult with a qualified financial advisor before making trading decisions. Past performance is not indicative of future results.
Disclaimer:
Trading financial instruments involves substantial risk and may not be suitable for all investors. Past performance is not indicative of future results. This indicator is provided for informational and educational purposes only and should not be considered investment advice. Always conduct your own research and consult with a licensed financial professional before making any trading decisions.
Note: The effectiveness of any technical indicator can vary based on market conditions and individual trading styles. It's crucial to test indicators thoroughly using historical data and possibly paper trading before applying them in live trading scenarios.
Refined MACD Heikin Ashi Indicator v1.1MACD Golden/Death cross Buy/Sell indicator working with Heikin Ashi candles with refined accuracy, with stoploss of atr x1.75
ST+SQZMOM v.3// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © syahdan modifying LazyBear script and many sources
//======================================================================================================================
//@version=6
indicator('ST+SQZMOM v.3', overlay = true, max_lines_count = 40)
import TradingView/ta/9
//======================================================================================================================
//groups
Alerts = 'alert'
Supertrend = 'supertrend'
SqzMom = 'sqzMom'
Sma = 'ma'
TS = 'tp/sl'
// Input switches for alerts
alertTrendChange = input.bool(true, title='Enable Trend Change Alert', group = Alerts)
alertSQZMOM = input.bool(true, title='Enable SQZMOM Alerts', group = Alerts)
// Supertrend Inputs
atrPeriod = input.int(10, 'ATR Length', minval = 1, group = Supertrend)
factor = input.float(2.5, 'Factor', minval = 0.01, step = 0.01, group = Supertrend)
// Squeeze Momentum Indicator Inputs
sources = input(close, 'Source', group = SqzMom)
bbLength = input.int(20, 'Bollinger Bands Length', minval = 1, group = SqzMom)
bbMult = input.float(2, 'Bollinger Bands MultFactor', step = 0.25, group = SqzMom)
kcLength = input(20, 'Keltner\'s Channel Length', group = SqzMom)
kcMult = input.float(1.5, 'Keltner\'s Channel MultFactor', step = 0.25, group = SqzMom)
useTrueRange = input(true, 'Use TrueRange (Keltner\'s Channel)', group = SqzMom)
addSignal = input.bool(false, title = 'add Signal to Calculate direction', group = SqzMom)
signalLength = input(5, 'Signal Length', group = SqzMom)
tooltip_sqz = 'show momentum direction, BB band and KC band'
showBB = input.bool(false, 'show BBand', tooltip = tooltip_sqz, group = SqzMom)
showKC = input.bool(false, 'show keltner channel', tooltip = tooltip_sqz, group = SqzMom)
showDir= input.bool(false, 'show squeeze direction', tooltip = tooltip_sqz, group = SqzMom)
// Customizable thresholds
lowerThreshold = input(-1.0, title = 'Lower Threshold', group = SqzMom)
upperThreshold = input(1.0, title = 'Upper Threshold', group = SqzMom)
// SMA Input settings
lengthMA = input(200, title="MA Period", group = Sma)
showMA = input.bool(true, title="Show MA", group = Sma)
addsave = input.bool(true, title = 'add MA as filter', group = Alerts)
// Hardcoded tp + sl multipliers
targetMultiplier1 = input.int(1, 'TP1 multiply', minval = 1, group = TS)
targetMultiplier2 = input.int(2, 'TP2 multiply', minval = 2, group = TS)
targetMultiplier3 = input.int(3, 'TP3 multiply', minval = 3, group = TS)
stopLossMultiplier = input.int(3, 'SL multiply', minval = 3, group = TS)
//======================================================================================================================
// Calculate Supertrend
= ta.supertrend(factor, atrPeriod)
// Plot the Supertrend line
plot(supertrend, color = direction < 0 ? color.green : color.red, title = 'ST', style = plot.style_stepline_diamond)
// Determine if the trend is up or down
upTrend = direction < 0
downTrend = direction > 0
// Track previous trend state
var int previousDirection = na
previousDirection := upTrend ? 1 : -1
// Calculate ATR for targets and stop loss
atrValue = ta.atr(atrPeriod)
// Initialize target and stop loss levels
var float entryPrice = na
var float targetLevel1 = na
var float targetLevel2 = na
var float targetLevel3 = na
var float stopLossLevel = na
// Initialize counters for lines and labels
var int count_up = 0
var int count_down = 0
// Initialize a new variable to track if new lines and labels are drawn
var bool newLinesDrawn = false
// Calculate BB
basis = ta.sma(sources, bbLength)
dev = bbMult * ta.stdev(sources, bbLength)
bbUpper = basis + dev
bbLower = basis - dev
// Calculate KC
ma = ta.sma(sources, kcLength)
trRange = useTrueRange ? ta.tr : high - low
rangema = ta.sma(trRange, kcLength)
kcUpper = ma + rangema * kcMult
kcLower = ma - rangema * kcMult
sqzOn = bbLower > kcLower and bbUpper < kcUpper
sqzOff = bbLower < kcLower and bbUpper > kcUpper
noSqz = sqzOn == false and sqzOff == false
val = ta.linreg(sources - math.avg(math.avg(ta.highest(high, kcLength), ta.lowest(low, kcLength)), ta.sma(sources, kcLength)), kcLength, 0)
signal = ta.sma(val, signalLength)
dir = not addSignal ? val : val - signal
// Calculate SMA
MA = ta.sma(sources,lengthMA)
saveEntryBuy = addsave ? MA < close : false
saveEntrySell = addsave ? MA > close : false
//======================================================================================================================
// Plot SMA
plot(showMA ? MA : na, color=color.white, linewidth=2, title='MA')
triangUp = sqzOff and dir > dir and dir >= upperThreshold
triangDown = sqzOff and dir < dir and dir <= lowerThreshold
triangUpR = sqzOff and dir < dir and dir >= upperThreshold
triangDownR = sqzOff and dir > dir and dir <= lowerThreshold
insideThreshold = sqzOff and upperThreshold > dir and dir > lowerThreshold
// Calculate target and stop loss levels
if upTrend and triangUp
entryPrice := close
targetLevel1 := close + atrValue * targetMultiplier1
targetLevel2 := close + atrValue * targetMultiplier2
targetLevel3 := close + atrValue * targetMultiplier3
stopLossLevel := close - atrValue * stopLossMultiplier
count_up := count_up + 1
count_down := 0
else if downTrend and triangDown
entryPrice := close
targetLevel1 := close - atrValue * targetMultiplier1
targetLevel2 := close - atrValue * targetMultiplier2
targetLevel3 := close - atrValue * targetMultiplier3
stopLossLevel := close + atrValue * stopLossMultiplier
count_down := count_down + 1
count_up := 0
// Plotting Squeeze Momentum Indicator
plotshape(sqzOn or noSqz, 'In Squeeze', shape.square, location.top, color=sqzOn or noSqz ? color.new(color.orange, 0) : color.new(color.white, 0))
plotshape(triangUp or triangUpR, 'Squeeze Release UpTrend', shape.triangleup, location.top, color=triangUp ? color.new(color.green, 0) : color.new(color.yellow, 0))
plotshape(triangDown or triangDownR, 'Squeeze Release DownTrend', shape.triangledown, location.top, color=triangDown ? color.new(color.red, 0) : color.new(color.yellow, 0))
plotshape(insideThreshold, 'inside threshold', shape.diamond, location.top, color.new(color.white, 0) )
// Draw lines and labels for targets and stop loss
var line stopLossLine = na
var line entryLine = na
var line targetLine1 = na
var line targetLine2 = na
var line targetLine3 = na
var label stopLossLabel = na
var label entryLabel = na
var label targetLabel1 = na
var label targetLabel2 = na
var label targetLabel3 = na
// Clear previous lines and labels if a new trend is confirmed
if upTrend and triangUp and count_up == 1
// Clear previous lines and labels
line.delete(stopLossLine)
line.delete(entryLine)
line.delete(targetLine1)
line.delete(targetLine2)
line.delete(targetLine3)
label.delete(stopLossLabel)
label.delete(entryLabel)
label.delete(targetLabel1)
label.delete(targetLabel2)
label.delete(targetLabel3)
// Draw new lines + 10 bars into the future
stopLossLine := line.new(bar_index, stopLossLevel, last_bar_index + 10, stopLossLevel, color = color.red, width = 2)
entryLine := line.new(bar_index, close, last_bar_index + 10, close, color = color.green, width = 2)
targetLine1 := line.new(bar_index, targetLevel1, last_bar_index + 10, targetLevel1, color = color.blue, width = 2)
if saveEntryBuy
targetLine2 := line.new(bar_index, targetLevel2, last_bar_index + 10, targetLevel2, color = color.blue, width = 2)
targetLine3 := line.new(bar_index, targetLevel3, last_bar_index + 10, targetLevel3, color = color.blue, width = 2)
// Set the newLinesDrawn flag to true
newLinesDrawn := true
// Draw new labels with three decimal places
stopLossLabel := label.new(last_bar_index + 10, stopLossLevel, 'SL: ' + str.tostring(stopLossLevel, '#.###'), style = label.style_label_left, color = color.red, textcolor = color.white)
entryLabel := label.new(last_bar_index + 10, close, 'Entry: ' + str.tostring(close, '#.###'), style = label.style_label_left, color = color.green, textcolor = color.white)
targetLabel1 := label.new(last_bar_index + 10, targetLevel1, 'TP 1: ' + str.tostring(targetLevel1, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white)
if saveEntryBuy
targetLabel2 := label.new(last_bar_index + 10, targetLevel2, 'TP 2: ' + str.tostring(targetLevel2, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white)
targetLabel3 := label.new(last_bar_index +10, targetLevel3, 'TP 3: ' + str.tostring(targetLevel3, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white)
if downTrend and triangDown and count_down == 1
// Clear previous lines and labels
line.delete(stopLossLine)
line.delete(entryLine)
line.delete(targetLine1)
line.delete(targetLine2)
line.delete(targetLine3)
label.delete(stopLossLabel)
label.delete(entryLabel)
label.delete(targetLabel1)
label.delete(targetLabel2)
label.delete(targetLabel3)
// Draw new lines + 10 bars into the future
stopLossLine := line.new(bar_index, stopLossLevel, last_bar_index + 10, stopLossLevel, color = color.red, width = 2)
entryLine := line.new(bar_index, close, last_bar_index + 10, close, color = color.green, width = 2)
targetLine1 := line.new(bar_index, targetLevel1, last_bar_index + 10, targetLevel1, color = color.blue, width = 2)
if saveEntrySell
targetLine2 := line.new(bar_index, targetLevel2, last_bar_index + 10, targetLevel2, color = color.blue, width = 2)
targetLine3 := line.new(bar_index, targetLevel3, last_bar_index + 10, targetLevel3, color = color.blue, width = 2)
// Set the newLinesDrawn flag to true
newLinesDrawn := true
// Draw new labels with three decimal places
stopLossLabel := label.new(last_bar_index + 10, stopLossLevel, 'SL: ' + str.tostring(stopLossLevel, '#.###'), style = label.style_label_left, color = color.red, textcolor = color.white)
entryLabel := label.new(last_bar_index + 10, close, 'Entry: ' + str.tostring(close, '#.###'), style = label.style_label_left, color = color.green, textcolor = color.white)
targetLabel1 := label.new(last_bar_index + 10, targetLevel1, 'TP 1: ' + str.tostring(targetLevel1, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white)
if saveEntrySell
targetLabel2 := label.new(last_bar_index + 10, targetLevel2, 'TP 2: ' + str.tostring(targetLevel2, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white)
targetLabel3 := label.new(last_bar_index + 10, targetLevel3, 'TP 3: ' + str.tostring(targetLevel3, '#.###'), style = label.style_label_left, color = color.blue, textcolor = color.white)
// Plot momentum strength/direction
plotarrow(showDir ? dir : na, 'Momentum Strength/Direction', color.new(color.aqua, 50), color.new(color.orange, 50), show_last = 500)
plot(showBB ? bbUpper : na, 'BBUpper', color.new(color.blue, 25), show_last = 500)
plot(showBB ? bbLower : na, 'BBLower', color.new(color.blue, 25), show_last = 500)
plot(showKC ? kcUpper : na, 'KCUpper', color.new(color.red, 25), show_last = 500)
plot(showKC ? kcLower : na, 'KCLower', color.new(color.red, 25), show_last = 500)
//======================================================================================================================
// Trigger alert when squeeze is released
if sqzOn and not sqzOn
alert('Squeeze On : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar_close)
if sqzOff and not sqzOff // Only trigger alert if the squeeze was previously on
alert('Squeeze Off : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar_close)
if triangDown and not triangDown // Only trigger alert if the squeeze was previously on
alert('Weak TrendDown or Reverse : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar_close)
if triangUp and not triangUp // Only trigger alert if the squeeze was previously on
alert('Weak TrendUp or Reverse : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar_close)
if insideThreshold and not insideThreshold //trigger when entering threshold channel
alert('inside threshold : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar_close)
if triangUpR and triangUp
alert('Trend Up Cont : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar_close)
if triangDownR and triangDown
alert('Trend Down Cont : '+ syminfo.tickerid + ' | ' + timeframe.period, alert.freq_once_per_bar_close)
// Alert for trend change when new lines and labels are drawn
if newLinesDrawn
saveEntry = addsave ? 'safe' : 'adrenaline'
trendType = upTrend ? 'Buy' : 'Sell'
stopLossValue = str.tostring(stopLossLevel, '#.###')
entryValue = str.tostring(close, '#.###')
targetValue1 = str.tostring(targetLevel1, '#.###')
targetValue2 = saveEntryBuy or saveEntrySell ? str.tostring(targetLevel2, '#.###') : '---'
targetValue3 = saveEntryBuy or saveEntrySell ? str.tostring(targetLevel3, '#.###') : '---'
alertMessage = 'Mode : '+ saveEntry +' ' +
'Pair : ' + syminfo.tickerid + ' | ' + timeframe.period + ' ' +
'Trend : ' + trendType + ' ' +
'SL : ' + stopLossValue + ' ' +
'Ent : ' + entryValue + ' ' +
'TP1 : ' + targetValue1 + ' ' +
'TP2 : ' + targetValue2 + ' ' +
'TP3 : ' + targetValue3
if alertTrendChange
alert(alertMessage, alert.freq_once_per_bar_close)
// Reset the newLinesDrawn flag
newLinesDrawn := false
Volume Change Color with Marker (9x volume)Mark candle blue + mark if volume is 9x bigger than previous candle.