YAMIL//@version=6
indicator(title = 'MACD+RSI+KONCORDE YAMIL', shorttitle = 'MAC+RSI+KON YAMIL')
//KONCORDE
showkoncorde = input(true, title = 'Koncorde')
deltaKon = input(-700, title = 'KONCORDE - Desfase')
escalaKoncorde = input(2, 'Koncorde - Escala')
calc_mfi(length) =>
100.0 - 100.0 / (1.0 + math.sum(volume * (ta.change(hlc3) <= 0 ? 0 : hlc3), length) / math.sum(volume * (ta.change(hlc3) >= 0 ? 0 : hlc3), length))
tprice = ohlc4
lengthEMA = 255
m = 15
pvim = ta.ema(ta.pvi, m)
pvimax = ta.highest(pvim, 90)
pvimin = ta.lowest(pvim, 90)
oscp = (ta.pvi - pvim) * 100 / (pvimax - pvimin)
nvim = ta.ema(ta.nvi, m)
nvimax = ta.highest(nvim, 90)
nvimin = ta.lowest(nvim, 90)
azul = (ta.nvi - nvim) * 100 / (nvimax - nvimin)
xmf = calc_mfi(14)
mult = 2.0
basis = ta.sma(tprice, 25)
dev = mult * ta.stdev(tprice, 25)
upper = basis + dev
lower = basis - dev
OB1 = (upper + lower) / 2.0
OB2 = upper - lower
BollOsc = (tprice - OB1) / OB2 * 100
xrsi = ta.rsi(tprice, 14)
calc_stoch(src, length, smoothFastD) =>
ta.sma(100 * (src - ta.lowest(low, length)) / (ta.highest(high, length) - ta.lowest(low, length)), smoothFastD)
stoc = calc_stoch(tprice, 21, 3)
marron = (xrsi + xmf + BollOsc + stoc / 3) / 2
verde = marron + oscp
media = ta.ema(marron, 21) //
vl = plot(showkoncorde ? verde * escalaKoncorde + deltaKon : na, color = color.new(#25BC00, 0), style = plot.style_columns, histbase = deltaKon, linewidth = 4, title = 'Manos Chicas')
ml = plot(showkoncorde ? marron * escalaKoncorde + deltaKon : na, color = color.new(#FFC34C, 0), style = plot.style_columns, histbase = deltaKon, linewidth = 4, title = 'Koncorde - marron')
al = plot(showkoncorde ? azul * escalaKoncorde + deltaKon : na, color = color.new(#6C3AFF, 0), style = plot.style_columns, histbase = deltaKon, linewidth = 4, title = 'Manos Grandes')
plot(showkoncorde ? marron * escalaKoncorde + deltaKon : na, color = color.new(#000000, 0), linewidth = 1, title = 'Koncorde - lmarron')
plot(showkoncorde ? media * escalaKoncorde + deltaKon : na, color = color.new(#FF0000, 0), linewidth = 1, title = 'Koncorde - media')
hline(-700, color = color.black, linestyle = hline.style_solid)
// MACD
// Getting inputs
showmacd = input(true, title = 'MADC')
deltaMacd = input(700, title = 'MACD - Desfase')
multMacd = input(5, title = 'MACD - Escala')
fast_length = input(title = 'MACD - Fast Length', defval = 12)
slow_length = input(title = 'MACD - Slow Length', defval = 26)
src = input(title = 'MACD - Source', defval = close)
signal_length = input.int(title = 'MACD - Signal Smoothing', minval = 1, maxval = 50, defval = 9)
sma_source = input(title = 'MACD - Simple MA(Oscillator)', defval = false)
sma_signal = input(title = 'MACD - Simple MA(Signal Line)', defval = false)
// Plot colors
col_grow_above = #2AFF00
col_grow_below = #FF0000
col_fall_above = #168500
col_fall_below = #980000
col_macd = #0042FF
col_signal = #FFA200
// Calculating
// = macd(close, fastLength, slowLength, signalLength)
fast_ma = sma_source ? ta.sma(src, fast_length) : ta.ema(src, fast_length)
slow_ma = sma_source ? ta.sma(src, slow_length) : ta.ema(src, slow_length)
macd = (fast_ma - slow_ma) / slow_ma * 1000 * multMacd
signal = sma_signal ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length)
hist = macd - signal
plot(showmacd ? bool(hist) ? hist + deltaMacd : na : na, title = 'MACD - Histogram', style = plot.style_columns, color = hist >= 0 ? hist < hist ? col_grow_above : col_fall_above : hist < hist ? col_grow_below : col_fall_below, histbase = deltaMacd)
plot(showmacd ? bool(macd) ? macd + deltaMacd : na : na, title = 'MACD', color = color.new(col_macd, 0), linewidth = 1)
plot(showmacd ? bool(signal) ? signal + deltaMacd : na : na, title = 'MACD - Signal', color = color.new(col_signal, 0), linewidth = 1)
hline(700, color = color.black, linestyle = hline.style_solid, linewidth = 1)
// STOCH (14,3,1)
showrsi = input(true, title = 'RSI - STOCH')
deltaRSI = input(0, title = 'RSI/STOCH - Desfase')
multip = input(5, title = 'RSI/STOCH - Escala')
deltaSTOCH = deltaRSI - 50 * multip / 2
length = input.int(14, minval = 1, title = 'STOCH - Periodo')
smoothK = input.int(1, minval = 1, title = 'STOCH - Smooth K')
smoothD = input.int(3, minval = 1, title = 'STOCH - Smooth D')
k = ta.sma(ta.stoch(close, high, low, length), smoothK)
d = ta.sma(k, smoothD)
// RSI
bandm = hline(showrsi ? 0 + deltaRSI : na, color = color.black, linewidth = 1, linestyle = hline.style_solid)
band0 = hline(showrsi ? -20 * multip + deltaRSI : na, color = color.new(#59FF00, 0), linewidth = 1, linestyle = hline.style_dotted)
band1 = hline(showrsi ? 20 * multip + deltaRSI : na, color = color.new(#FF0000, 0), linewidth = 1, linestyle = hline.style_dotted)
fill(band1, band0, color = color.new(#FFFF00, 75), title = 'Background')
lengthRSI = input.int(14, minval = 1, title = 'RSI - Periodo')
RSIMain = ta.rsi(close, lengthRSI) - 50
rsiPlot = plot(showrsi ? RSIMain * multip + deltaRSI : na, color = color.new(#000000, 0), linewidth = 1)
// Media móvil en RSI
lengthMA = input.int(21, minval = 1, title = 'RSI - Media Móvil Ponderada Periodo')
RSIMA = ta.wma(RSIMain * multip + deltaRSI, lengthMA)
plot(showrsi ? RSIMA : na, color = color.new(#78FF00, 0), linewidth = 1, title = 'RSI - Media Móvil')
// STOCH (14,3,1) en RSI
showstoch = input(true, title = 'STOCH - RSI')
deltaSTOCH_RSI = input(100, title = 'STOCH - RSI Desfase')
kRSI = ta.sma(ta.stoch(RSIMain, RSIMain, RSIMain, length), smoothK)
dRSI = ta.sma(kRSI, smoothD)
plot(false ? bool(kRSI) ? kRSI + deltaSTOCH_RSI : na : na, title = 'STOCH - RSI K', color = color.new(#0000FF, 0), linewidth = 1)
plot(false ? bool(dRSI) ? dRSI + deltaSTOCH_RSI : na : na, title = 'STOCH - RSI D', color = color.new(#FFA500, 0), linewidth = 1)
Indicatori e strategie
quartile retracement and expansion US Market(for NQ and MNQ)white line (open us market 9.30 NY)
yellow line (third quartile q3)
orange line (second quartile q2)
red line (first quartile q1)
Advanced Bitcoin Trading Strategy//@version=6
indicator("Advanced Bitcoin Trading Strategy", overlay=true)
// Define Short-term and Long-term MAs
shortTermMA = ta.sma(close, 9)
longTermMA = ta.sma(close, 21)
// Define RSI
rsi = ta.rsi(close, 14)
// Define Volume
volumeMA = ta.sma(volume, 20)
// Define Buy and Sell Conditions based on MA Crossovers, RSI, and Volume
buyCondition = ta.crossover(shortTermMA, longTermMA) and rsi < 30 and volume > volumeMA
sellCondition = ta.crossunder(shortTermMA, longTermMA) and rsi > 70 and volume > volumeMA
// Detect Bullish Engulfing Pattern
bullishEngulfing = (open > close ) and (close > open) and (close > high ) and (open < low )
// Detect Bearish Engulfing Pattern
bearishEngulfing = (open < close ) and (close < open) and (close < low ) and (open > high )
// Combine all Buy and Sell Conditions
finalBuyCondition = buyCondition or bullishEngulfing
finalSellCondition = sellCondition or bearishEngulfing
// Plot Short-term and Long-term MA
plot(shortTermMA, "Short Term MA", color=color.blue, linewidth=2)
plot(longTermMA, "Long Term MA", color=color.red, linewidth=2)
// Plot RSI
hline(70, "Overbought Level", color=color.red, linestyle=hline.style_dotted)
hline(30, "Oversold Level", color=color.green, linestyle=hline.style_dotted)
plot(rsi, "RSI", color=color.purple, linewidth=2)
// Plot Volume MA
plot(volumeMA, "Volume MA", color=color.orange, linewidth=1)
// Plot Buy and Sell Arrows
plotshape(series=finalBuyCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=finalSellCondition, location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
plotarrow(series=finalBuyCondition ? 1 : na, title="Buy Arrow", colorup=color.green, offset=-1)
plotarrow(series=finalSellCondition ? -1 : na, title="Sell Arrow", colordown=color.red, offset=-1)
// Alert Conditions
alertcondition(finalBuyCondition, title="Buy Alert", message="Time to Buy Bitcoin!")
alertcondition(finalSellCondition, title="Sell Alert", message="Time to Sell Bitcoin!")
YO//@version=5
indicator("Custom MA Crossover", overlay=true, shorttitle="CMA Cross")
// Inputs
fast_length = input.int(9, title="Fast MA Length", minval=1)
slow_length = input.int(21, title="Slow MA Length", minval=1)
ma_type = input.string(title="MA Type", options= , defval="EMA")
// Calculations
fast_ma = ma_type == "SMA" ? ta.sma(close, fast_length) : ta.ema(close, fast_length)
slow_ma = ma_type == "SMA" ? ta.sma(close, slow_length) : ta.ema(close, slow_length)
// Crossover signals
bullish = ta.crossover(fast_ma, slow_ma)
bearish = ta.crossunder(fast_ma, slow_ma)
// Plotting
plot(fast_ma, color=color.new(color.blue, 0), title="Fast MA")
plot(slow_ma, color=color.new(color.red, 0), title="Slow MA")
// Plot signals
plotshape(bullish, style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(bearish, style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
// Alerts
alertcondition(bullish, title="Bullish Crossover", message="Fast MA crossed above Slow MA")
alertcondition(bearish, title="Bearish Crossover", message="Fast MA crossed below Slow MA")
Advanced Smoothing & Rolling Window (Revised)Script 1: “Advanced Smoothing & Rolling Window”
Purpose: Provide a single indicator that can apply various smoothing methods (None, LinReg, SavGol approx, Kalman approx, Wavelet approx) to your price data, plus an optional rolling high/low plot.
How This Script Is Organized:
• Toggles: showSmoothing, useSavGol, useKalman, useWavelet, showRollingWin.
• Inputs: smoothLen, savGolPasses, kalmanPasses, waveletPasses, rollLen.
• Implementation: If showSmoothing is on, it applies a chain of “approximate” filters. If each advanced filter toggle is on, it further modifies the “smoothed” price.
• Rolling Window: If showRollingWin is on, it plots the rolling high/low lines.
Bank Nifty Buy/Sell Strategyits a low risk strategy where it shows when to buy for scalping a quick 50 to 100 points
Grid Profit Optimizer / Owl of ProfitGrid Profit Optimizer
This strategy is designed to analyze Bitcoin price movements within a defined range, optimizing grid-based trading profits. By tracking how many times the price crosses predefined grid levels, traders can assess potential opportunities for profit-taking in a grid trading system.
How It Works
Grid-Based Tracking
Grid Size ( NYSE:X ): Defines the price difference between each grid level.
Lower & Upper Price Boundaries ( NYSE:L & NYSE:U ): The price range within which the strategy will count grid crossings.
Timeframe for Analysis (H): Determines how many past hours are considered.
Interval in Minutes (M): Defines the resolution for tracking grid movements.
Counting Grid Crossings
Sell Grid Crossings: Counted when the price moves upward and crosses a grid level.
Buy Grid Crossings: Counted when the price retraces downward after a sell grid crossing.
Ensures Proper Sequence: Buy crossings occur only after sell crossings, avoiding double counting.
Displaying Results
At the last bar of the analyzed period, the strategy displays:
The total number of Sell Grid Crossings.
The total number of Buy Grid Crossings.
The specified time range and interval used for calculations.
This allows traders to assess how often the price fluctuates between grid levels, helping them optimize their grid trading strategy.
Visit my website for more tools and strategies: bybitindicators.com
Happy trading!
O'Neil Earnings StabilityO'Neil Earnings Stability Indicator
This indicator implements William O'Neil's earnings stability analysis, a key factor in identifying high-quality growth stocks. It measures both earnings stability (1-99 scale) and growth rate.
Scale Interpretation:
• 1-25: Highly stable earnings (ideal)
• 26-30: Moderately stable
• >30: More cyclical/less dependable
The stability score is calculated by measuring deviations from the earnings trend line, with lower scores indicating more consistent growth. Combined with the annual growth rate (target ≥25%), this helps identify stocks with both steady and strong earnings growth.
Optimal Criteria:
✓ Stability Score < 25
✓ Annual Growth > 25%
This tool helps filter out stocks with erratic earnings patterns and identify those with proven, sustainable growth records. Green label indicates both criteria are met; red indicates one or both criteria failed."
Would you like me to modify any part of this description or add more details about specific aspects of the calculation?
The key concepts in these calculations:
Stability Score (1-99 scale):
Lower score = more stable
Takes average deviation from mean earnings
Uses logarithmic scaling to emphasize smaller deviations
Multiplies by 20 to get into 1-99 range
Score ≤ 25 meets O'Neil's criteria
Growth Rate:
Year-over-year comparison (current quarter vs same quarter last year)
Calculated as percentage change
Growth ≥ 25% meets O'Neil's criteria
O'Neil's Combined Criteria:
Stability Score should be ≤ 25 (indicating stable earnings)
Growth Rate should be ≥ 25% (indicating strong growth)
Both must be met for ideal conditions
Directional High-Low Volatility ((High-Low)/low)Directional High-Low Volatility
Calculated as : HIGH-LOW/LOW
High of Specific Date//@version=5
indicator("High of Specific Date", overlay=true)
// Input for the specific date
input_date = input.time(timestamp("2023-10-01"), title="Specific Date", confirm=true)
// Check if the current bar's date matches the input date
is_target_date = (time == input_date)
// Get the high of the target candle
var float target_high = na
if is_target_date
target_high := high
// Draw a horizontal line at the high of the target candle
line.new(x1=bar_index, y1=target_high, x2=bar_index + 1, y2=target_high, color=color.red, width=2, extend=extend.right)
// Optional: Label to show the high value
if not na(target_high)
label.new(x=bar_index, y=target_high, text=str.tostring(target_high), color=color.white, textcolor=color.black, style=label.style_label_down, size=size.small)
Trading SessionsZeichnet die entsprechenden Sessions von Asia, London und New York ein.
Asia = Blue
London = Green
New York = Red
2 ma 1 EmaMakes it easy to plot ma and Ema
3 indicators combined into one
2 simple moving averages
1 exponential moving average
Real-Time Data Error Check _byMDKTests back if there was missing data/bar with respect to selected timeframe and source.
Experienced red data (no-real time data is available) so i come up with the idea.
Regards.
i.redd.it
Demo GPT - #Moving Average Crossoverdsfsdfsdf fsdfsadfv fewdsfadfs fewasdfasd fasdgdsfgsdf bx fwsdvasdgsfdb fasdgdsfgsdf fsadfsdgdfsg fsadgsdfgsdfg
Donchian Channel Strategy by ardhankurniawanThis strategy combines the Donchian Channel with a 200-period Simple Moving Average (SMA) to identify potential long and short trade opportunities. The Donchian Channel is calculated using a 20-period range, and it plots the upper, lower, and midlines. The strategy enters a long position when the price breaks above the highest point of the Donchian Channel and is above the SMA 200, and enters a short position when the price falls below the lowest point of the Donchian Channel and is below the SMA 200. A custom stop loss is applied for both long and short positions based on the midline of the Donchian Channel, with a 45% offset.
Disclaimer:
This trading strategy is for research purposes only and should not be considered as financial or investment advice. The use of this strategy involves risk, and past performance is not indicative of future results. Always conduct your own research and consult with a financial advisor before making any investment decisions. Trading involves significant risk, and you could lose more than your initial investment. By using this strategy, you agree to take full responsibility for any trades executed and the associated risks.
1AM CRT (Long)1am utc-5 CRT long execution 2 and 3 am than take profit
1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit1am utc-5 CRT long execution 2 and 3 am than take profit
CRYPTO Wall Street HoursAdjust to your Time.
Use with 8h Chart.
Shows only bars of WALLSTREET hours.
Sathanand crossoverThis Moving Average Crossover indicator uses two lines:
1️⃣ Short Moving Average (Short MA - Blue Line)
This is the faster moving average (default: 50-period).
It reacts quickly to price changes.
When it crosses above the Long MA → Buy Signal 📈
When it crosses below the Long MA → Sell Signal 📉
2️⃣ Long Moving Average (Long MA - Red Line)
This is the slower moving average (default: 200-period).
It smooths out long-term trends and avoids short-term fluctuations.
Acts as a trend confirmation line—staying above means an uptrend, below means a downtrend.
Buy & Sell Signals:
✅ Green "Up" Arrow (Buy Signal) → Short MA crosses above Long MA → Uptrend starts
✅ Red "Down" Arrow (Sell Signal) → Short MA crosses below Long MA → Downtrend starts
📊 In Short:
The crossover strategy helps identify trend reversals
Useful for trend-following traders
Works well in strong trending markets, but may give false signals in sideways markets
RSI and MACD Buy/Sell Strategy with Signals//@version=5
indicator("RSI and MACD Buy/Sell Strategy with Signals", overlay=true)
// Define RSI and MACD parameters
rsiPeriod = 14
macdShort = 12
macdLong = 26
macdSignal = 9
// Calculate RSI
rsi = ta.rsi(close, rsiPeriod)
// Calculate MACD
= ta.macd(close, macdShort, macdLong, macdSignal)
macdHist = macdLine - signalLine
// Define buy and sell conditions
buyCondition = (rsi < 30) and (macdHist < -7 or macdHist < -8)
sellCondition = (rsi > 60) and (macdHist > 6)
// Plot Buy and Sell signals directly on the main price chart
plotshape(series=buyCondition, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal", text="BUY", textcolor=color.white, size=size.small)
plotshape(series=sellCondition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal", text="SELL", textcolor=color.white, size=size.small)
BybitPerpsArrayLibrary "BybitPerpsArray"
f_getSymbolsForGroup(groupName)
Parameters:
groupName (string)
Contains all of the BYBIT Perp charts- use function to call them in groups
Gold Trading Signals samimi// Pine Script v5
//@version=5
indicator("Gold Trading Signals", overlay=true)
// تنظیم اندیکاتورها
ema50 = ta.ema(close, 50)
ema200 = ta.ema(close, 200)
= ta.macd(close, 12, 26, 9)
rsi = ta.rsi(close, 14)
// شرط خرید (Buy Signal)
buyCondition = ta.crossover(macdLine, signalLine) and close > ema50 and close > ema200 and rsi > 50
// شرط فروش (Sell Signal)
sellCondition = ta.crossunder(macdLine, signalLine) and close < ema50 and close < ema200 and rsi < 50
// واگراییها
divBull = ta.lowest(close, 5) < ta.lowest(close, 10) and rsi > ta.lowest(rsi, 10) // واگرایی مثبت
divBear = ta.highest(close, 5) > ta.highest(close, 10) and rsi < ta.highest(rsi, 10) // واگرایی منفی
// نمایش سیگنالها
plotshape(buyCondition or divBull, location=location.belowbar, color=color.green, style=shape.labelup, title="Buy Signal")
plotshape(sellCondition or divBear, location=location.abovebar, color=color.red, style=shape.labeldown, title="Sell Signal")
// نمایش خطوط EMA
plot(ema50, title="EMA 50", color=color.blue)
plot(ema200, title="EMA 200", color=color.orange)
Custom MAFACustom indicator of fang stocks to track other similar ETF's and see fi there are any arbitrage opportunities.