ORB Lines - Opening Range Breakout [GC Trading Systems]A simple indicator that draws your opening range + custom fib extension targets.
Indicators and strategies
SPR33DZ-spread, volume based momentum indicator, for crypto trading.
Limited to Binance and Mexc only.
Send private inquiry to remove limitations
Canales Dinámicos ATR con Congelamiento
**Main Features:**
1. **Dual Channel System:**
- Red line (upper): Acts as dynamic resistance
- Green line (lower): Acts as dynamic support
2. **Smart Behavior:**
- When the price breaks out:
- The red line freezes at the breakout level
- The green line continues to update
- When the price breaks out:
- The green line freezes at the breakout level
- The red line continues to update
3. **Visual Elements:**
- Intense color on frozen channels
- Price breakout triangles
- Background colored according to the prevailing direction
4. **Adjustable Parameters:**
- ATR Sensitivity
- Reference Period
- Volatility Multiplier
**How to use the indicator:**
1. Channels adjust automatically in real-time
2. Breakouts generate:
- Visual alerts (triangles)
- Audible alerts Configurable
- Change channel intensity
3. Frozen levels persist until further breakout
**Main Advantages:**
- Clearly identifies breakout points
- Displays relevant support/resistance levels
- Adapts its behavior to the market context
- Provides clean signals with no delay
Dynamic Moving AveragesMultiples Medias Moviles (MMM). Muestra tres medias moviles de diferentes periodos en vision diaria y al cambiar a vision semanal tambien cambian los periodos de las medias moviles semanales automaticamente.
Multiple Moving Averages (MMM). It shows three moving averages from different periods in daily view and switching to weekly view also changes the periods of the weekly moving averages automatically.
VWAP Direction Arrow (Right Edge Clean)🧠 What It Does:
This script plots exactly one arrow on the last visible candle of your chart to show whether price is currently:
Above VWAP → ✅ A green upward arrow
Below VWAP → ❌ A red downward arrow
The VWAP is calculated using the 1-minute chart, no matter what timeframe you're viewing (including 10s, 30s, etc.).
My script//@version=5
strategy("EMA Breakout Strategy", overlay=true)
// Define inputs
emaLength = 20
ema = ta.ema(close, emaLength)
// Entry Condition: Close above EMA and next bar opens above previous close
entryCondition = ta.crossover(close, ema) and open > close
// Exit Condition: Any bar closes below previous bar's close
exitCondition = close < close
// Execute trades
if (entryCondition)
strategy.entry("Long", strategy.long)
if (exitCondition)
strategy.close("Long")
// Plot EMA
plot(ema, title="EMA 20", color=color.blue)
VWAP Direction ArrowThis script plots directional arrows above candles based on the VWAP calculated from the 1-minute chart. A green up arrow appears when price is above VWAP, and a red down arrow appears when price is below VWAP. It's designed to help quickly visualize whether the current price is trading above or below short-term VWAP, especially useful on fast timeframes.
Dynamic EMA BandsAdjustable Ema bands. You can adjust ema period and ema pip (price) distance bands.
mala-MA crossoverPurpose
The "mala-MA Crossover" is a TradingView indicator designed to help traders identify potential buy and sell opportunities based on the interaction between two Exponential Moving Averages (EMAs). It solves a common problem for traders: determining optimal entry and exit points in a market by highlighting momentum shifts. Whether you're scalping short-term moves or riding longer trends, this indicator simplifies trend detection and trade timing.
How It Works
This indicator uses two EMAs—a fast EMA (shorter period) and a slow EMA (longer period)—to track price momentum. The core logic is straightforward: when the fast EMA crosses above the slow EMA, it suggests upward momentum (a buy signal); when it crosses below, it indicates downward momentum (a sell signal). The EMAs are calculated using closing prices over user-defined periods, smoothing out price noise to focus on meaningful trends. Visual signals (triangles) and optional alerts make it easy to act on these crossovers without constant chart monitoring.
How to Use It
Adding to TradingView: Open TradingView, click the "Indicators" button (the "+" icon), search for "mala-MA Crossover," and add it to your chart.
Configuring Settings:
Adjust the "Fast EMA Length" (default: 5) for sensitivity to short-term price changes.
Adjust the "Slow EMA Length" (default: 20) to capture broader trends.
Beginners can stick with defaults, while pros might experiment (e.g., 10 and 50 for swing trading).
Interpreting Signals:
A green triangle below the price bar signals a buy—time to consider entering a long position.
A red triangle above the bar signals a sell—time to consider exiting or shorting.
Watch the blue (fast) and red (slow) EMA lines to confirm trend direction visually.
Practical Tips:
Beginners: Pair this with a simple trend filter (e.g., price above a 200-period EMA) to avoid false signals in choppy markets.
Pros: Backtest custom lengths on your asset (e.g., crypto vs. stocks) and enable alerts for automated notifications via TradingView’s alert system (right-click the indicator, select "Add Alert").
Originality
While EMA crossovers aren’t new, "mala-MA Crossover" stands out with its clean, beginner-friendly design paired with practical features for all skill levels. The adjustable EMA lengths offer flexibility, and the overlay format—showing EMAs directly on the price chart—keeps your workspace uncluttered. The addition of clear visual signals (triangles) and built-in alerts saves time compared to manually plotting or coding similar setups. It’s a no-fuss, customizable tool that balances simplicity with actionable insights, making it a go-to for both casual traders and seasoned strategists.
GainzAlgo Pro// © GainzAlgo
//@version=5
indicator('GainzAlgo Pro', overlay=true, max_labels_count=500)
candle_stability_index_param = input.float(0.5, 'Candle Stability Index', 0, 1, step=0.1, group='Technical', tooltip='Candle Stability Index measures the ratio between the body and the wicks of a candle. Higher - more stable.')
rsi_index_param = input.int(50, 'RSI Index', 0, 100, group='Technical', tooltip='RSI Index measures how overbought/oversold is the market. Higher - more overbought/oversold.')
candle_delta_length_param = input.int(5, 'Candle Delta Length', 3, group='Technical', tooltip='Candle Delta Length measures the period over how many candles the price increased/decreased. Higher - longer period.')
disable_repeating_signals_param = input.bool(false, 'Disable Repeating Signals', group='Technical', tooltip='Removes repeating signals. Useful for removing clusters of signals and general clarity')
GREEN = color.rgb(29, 255, 40)
RED = color.rgb(255, 0, 0)
TRANSPARENT = color.rgb(0, 0, 0, 100)
label_size = input.string('normal', 'Label Size', options= , group='Cosmetic')
label_style = input.string('text bubble', 'Label Style', , group='Cosmetic')
buy_label_color = input(GREEN, 'BUY Label Color', inline='Highlight', group='Cosmetic')
sell_label_color = input(RED, 'SELL Label Color', inline='Highlight', group='Cosmetic')
label_text_color = input(color.white, 'Label Text Color', inline='Highlight', group='Cosmetic')
stable_candle = math.abs(close - open) / ta.tr > candle_stability_index_param
rsi = ta.rsi(close, 14)
bullish_engulfing = close < open and close > open and close > open
rsi_below = rsi < rsi_index_param
decrease_over = close < close
bull = bullish_engulfing and stable_candle and rsi_below and decrease_over and barstate.isconfirmed
bearish_engulfing = close > open and close < open and close < open
rsi_above = rsi > 100 - rsi_index_param
increase_over = close > close
bear = bearish_engulfing and stable_candle and rsi_above and increase_over and barstate.isconfirmed
var last_signal = ''
if bull and (disable_repeating_signals_param ? (last_signal != 'buy' ? true : na) : true)
if label_style == 'text bubble'
label.new(bull ? bar_index : na, low, 'BUY', color=buy_label_color, style=label.style_label_up, textcolor=label_text_color, size=label_size)
else if label_style == 'triangle'
label.new(bull ? bar_index : na, low, 'BUY', yloc=yloc.belowbar, color=buy_label_color, style=label.style_triangleup, textcolor=TRANSPARENT, size=label_size)
else if label_style == 'arrow'
label.new(bull ? bar_index : na, low, 'BUY', yloc=yloc.belowbar, color=buy_label_color, style=label.style_arrowup, textcolor=TRANSPARENT, size=label_size)
last_signal := 'buy'
if bear and (disable_repeating_signals_param ? (last_signal != 'sell' ? true : na) : true)
if label_style == 'text bubble'
label.new(bear ? bar_index : na, high, 'SELL', color=sell_label_color, style=label.style_label_down, textcolor=label_text_color, size=label_size)
else if label_style == 'triangle'
label.new(bear ? bar_index : na, high, 'SELL', yloc=yloc.abovebar, color=sell_label_color, style=label.style_triangledown, textcolor=TRANSPARENT, size=label_size)
else if label_style == 'arrow'
label.new(bear ? bar_index : na, high, 'SELL', yloc=yloc.abovebar, color=sell_label_color, style=label.style_arrowdown, textcolor=TRANSPARENT, size=label_size)
last_signal := 'sell'
alertcondition(bull, 'BUY Signals', 'New signal: BUY')
alertcondition(bear, 'SELL Signals', 'New signal: SELL')
MFI Module (Raw Output)This module calculates and outputs the raw Money Flow Index (MFI) using manual formula logic, independent of built-in ta.mfi(). Not intended for standalone use.
Session Color Blocks🧠 Purpose:
To visually highlight different market sessions — Asia, London, Premarket (US), and New York — using colored background blocks on the chart for better timing, context, and trade planning.
🕓 Session Times Used (Eastern Time / New York Time):
Session Time (ET) Color
Asia 8:00 PM – 3:00 AM 🟨 Yellow
London 3:00 AM – 8:30 AM 🟥 Red
Premarket 8:30 AM – 9:30 AM 🟦 Blue
New York 9:30 AM – 4:00 PM 🟩 Green
(DST is automatically handled via "America/New_York" timezone)
✅ Features:
Session colors appear only when that session is active.
Sessions are mutually exclusive, so no overlapping blocks.
Works on any symbol, especially useful for US stock/futures traders.
Auto-adjusts for daylight savings (using TradingView's IANA timezones).
🔧 Future Enhancements (Optional):
Toggle each session on/off
Add vertical lines or labels for session opens
Extend to weekends or custom sessions
Bollinger Bands with EMAsHere's a TradingView Pine Script indicator that includes:
Bollinger Bands with default settings (20-period SMA and 2 standard deviations).
Three EMA lines with default values of 10, 20, and 50.
Settings and style options to adjust any parameter.
RSI Module (Raw Output)his is a raw RSI output module . It calculates RSI and exposes the value using plot() so it can be accessed via request.security().
Kase Permission StochasticOverview
The Kase Permission Stochastic indicator is an advanced momentum oscillator developed from Kase's trading methodology. It offers enhanced signal smoothing and filtering compared to traditional stochastic oscillators, providing clearer entry and exit signals with fewer false triggers.
How It Works
This indicator calculates a specialized stochastic using a multi-stage smoothing process:
Initial stochastic calculation based on high, low, and close prices
Application of weighted moving averages (WMA) for short-term smoothing
Progressive smoothing through differential factors
Final smoothing to reduce noise and highlight significant trend changes
The indicator oscillates between 0 and 100, with two main components:
Main Line (Green): The smoothed stochastic value
Signal Line (Yellow): A further smoothed version of the main line
Signal Generation
Trading signals are generated when the main line crosses the signal line:
Buy Signal (Green Triangle): When the main line crosses above the signal line
Sell Signal (Red Triangle): When the main line crosses below the signal line
Key Features
Multiple Smoothing Algorithms: Uses a combination of weighted and exponential moving averages for superior noise reduction
Clear Visualization: Color-coded lines and background filling
Reference Levels: Horizontal lines at 25, 50, and 75 for context
Customizable Colors: All visual elements can be color-customized
Customization Options
PST Length: Base period for the stochastic calculation (default: 9)
PST X: Multiplier for the lookback period (default: 5)
PST Smooth: Smoothing factor for progressive calculations (default: 3)
Smooth Period: Final smoothing period (default: 10)
Trading Applications
Trend Confirmation: Use crossovers to confirm entries in the direction of the prevailing trend
Reversal Detection: Identify potential market reversals when crossovers occur at extreme levels
Range-Bound Markets: Look for oscillations between overbought and oversold levels
Filter for Other Indicators: Use as a confirmation tool alongside other technical indicators
Best Practices
Most effective in trending markets or during well-defined ranges
Combine with price action analysis for better context
Consider the overall market environment before taking signals
Use longer settings for fewer but higher-quality signals
The Kase Permission Stochastic delivers a sophisticated approach to momentum analysis, offering a refined perspective on market conditions while filtering out much of the noise that affects standard oscillators.
Turtle Soup Plus OneSimilar to Turtle Soup, but the entry is delayed by one day to catch reversals after the initial momentum players are trapped.
0900/1500 UTC-4 Body Marker
User Manual: 0900/1500 UTC-4 Body Marker Indicator
Introduction
Purpose of the Indicator:
The 0900/1500 UTC-4 Body Marker Indicator highlights candles at 09:00 AM and 03:00 PM (UTC-4) to assist traders in analyzing key market times.
09:00 AM ET is significant for pre-market trends, while 03:00 PM ET marks the final hour of the U.S. stock market session.
YOU WILL FIND THE FULL USERS MANUAL IN THE PINE EDITOR.
YOU MAY NOT USE ANY PART OF THIS CODE AND MONETIZE IT.
YOU MAY HOWEVER USE ANY AND ALL TO MAKE IT BETTER AND AVAILABLE FOR ALL TO USE.
REMEMBER.....WERE ALL IN THIS THING TO MAKE MONEY TOGETHER.
NO ONE SHOULD THINK THEY HAVE THE RIGHT AND OWNERSHIP TO THE "HOLY GRAIL"
FA_PA_LIBLibrary "FA_PA_LIB"
A collection of custom tools & utility functions commonly used for coding Dr Al Brooks, Price Action System with my scripts
getBodySize()
Gets the current candle's body size (in POINTS, divide by 10 to get pips)
Returns: The current candle's body size in POINTS
getTopWickSize()
Gets the current candle's top wick size (in POINTS, divide by 10 to get pips)
Returns: The current candle's top wick size in POINTS
getTopWickPercent()
Gets the current candle's top wick size (in POINTS, divide by 10 to get pips)
Returns: Percent of total candle width that is occupied by the upper wick
getBottomWickSize()
Gets the current candle's bottom wick size (in POINTS, divide by 10 to get pips)
Returns: The current candle's bottom wick size in POINTS
getBottomWickPercent()
Gets the current candle's bottom wick size (in POINTS, divide by 10 to get pips)
Returns: Percent of total candle width that is occupied by the lower wick
getBarMidPoint()
Gets the current candle's midpoint wick to wick
Returns: The current candle's mid point
getBodyPercent()
Gets the current candle's body size as a percentage of its entire size including its wicks
Returns: The current candle's body size percentage (00.00)
bullFib(priceLow, priceHigh, fibRatio)
Calculates a bullish fibonacci value
Parameters:
priceLow (float) : The lowest price point
priceHigh (float) : The highest price point
fibRatio (float) : The fibonacci % ratio to calculate
Returns: The fibonacci value of the given ratio between the two price points
bearFib(priceLow, priceHigh, fibRatio)
Calculates a bearish fibonacci value
Parameters:
priceLow (float) : The lowest price point
priceHigh (float) : The highest price point
fibRatio (float) : The fibonacci % ratio to calculate
Returns: The fibonacci value of the given ratio between the two price points
isBr()
Checks if the current bar is a Bear Bar
Returns: A boolean - true if the current bar is bear candle
isBl()
Checks if the current bar is a Bull Bar
Returns: A boolean - true if the current bar is Bull candle
isTrendBar()
Checks if the current bar is a Trend Bar. Candle that its body size is greater than 50% of entire candle size
Returns: A boolean - true if the current bar is Trend candle
isBlTrendBar()
Checks if the current bar is a Bull Trend Bar. Bullish candle that its body size is greater than 50% of entire candle size
Returns: A boolean - true if the current bar is Bull Trend candle
isBrTrendBar()
Checks if the current bar is a Bull Trend Bar. Bullish candle that its body size is greater than 50% of entire candle size
Returns: A boolean - true if the current bar is Bull Trend candle
isBlRevB()
Checks if the current bar is a Bull Reversal Bar. Bullish candle that closes on upper half of candle body
Returns: A boolean - true if the current bar is Bull Reversal candle
isBrRevB()
Checks if the current bar is a Bear Reversal Bar. BulBearish candle that closes on lower half of candle body
Returns: A boolean - true if the current bar is Bear Reversal candle
isDoji(wickSize, bodySize)
Checks if the current bar is a doji candle based on the given parameters
Parameters:
wickSize (float) : (default=2) The maximum top wick size compared to the bottom (and vice versa)
bodySize (float) : (default=0.05) The maximum body size as a percentage compared to the entire candle size
Returns: A boolean - true if the current bar matches the requirements of a doji candle
isHammer(fib, colorMatch)
Checks if the current bar is a hammer candle based on the given parameters
Parameters:
fib (float) : (default=0.382) The fib to base candle body on
colorMatch (bool) : (default=true) Does the candle need to be green? (true/false)
Returns: A boolean - true if the current bar matches the requirements of a hammer candle
isStar(fib, colorMatch)
Checks if the current bar is a shooting star candle based on the given parameters
Parameters:
fib (float) : (default=0.382) The fib to base candle body on
colorMatch (bool) : (default=false) Does the candle need to be red? (true/false)
Returns: A boolean - true if the current bar matches the requirements of a shooting star candle
isBlOB()
Detects Bullish outside bars(OB)
Returns: Returns true if the current bar is a bull outside bar
isBrOB()
Detects Bearish outside bars(OB)
Returns: Returns true if the current bar is a bear outside bar
26 and 50 EMA Crossover with 200 EMA FilterThe "26 and 50 EMA Crossover with 200 EMA Filter" indicator is a trend-following strategy designed to help traders identify high-probability entry points based on moving average crossovers and the overall market trend.
Key Features:
Buy Signal: A Buy signal is triggered when:
The price is above the 200 EMA, confirming the market is in an uptrend.
The 26 EMA crosses above the 50 EMA, indicating a potential bullish momentum shift.
Sell Signal: A Sell signal is triggered when:
The price is below the 200 EMA, confirming the market is in a downtrend.
The 26 EMA crosses below the 50 EMA, indicating potential bearish momentum.
Visual Indicators:
The 26 EMA is plotted in blue.
The 50 EMA is plotted in green.
The 200 EMA is plotted in red.
Buy and Sell Arrows:
Buy signals are shown as green arrows below the bars, indicating a potential long trade.
Sell signals are shown as red arrows above the bars, indicating a potential short trade.
This indicator combines a multi-EMA crossover strategy with a 200 EMA filter to give clear signals in trending markets while avoiding choppy, sideways conditions.
How to Use:
For Buy Trades: Look for the green arrows when the price is above the 200 EMA, confirming an uptrend. A bullish crossover between the 26 EMA and the 50 EMA signals a potential entry point.
For Sell Trades: Look for the red arrows when the price is below the 200 EMA, confirming a downtrend. A bearish crossover between the 26 EMA and the 50 EMA signals a potential entry point.
This strategy is ideal for traders looking for a trend-following approach to identify trade opportunities based on market momentum and major moving average crossovers.
Note:- TRY TO TRAIL SL FOR BIG REWARD AND SMALL LOSSES.
kuzanLibrary "kuzan"
TODO: add library description here
fun(x)
TODO: add function description here
Parameters:
x (float) : TODO: add parameter x description here
Returns: TODO: add what function returns
FFTLibraryLibrary "FFTLibrary"
Fast Fourier Transform (FFT) library for market cycle analysis
@Rocky-Studio
reverseIndex(n, bits)
Parameters:
n (int)
bits (int)
nextPowerOf2(x)
Parameters:
x (int)
pow2(n)
Parameters:
n (int)
computeDFT(data)
Parameters:
data (array)
magnitude(real, imag)
Parameters:
real (array)
imag (array)
hanningWindow(data)
Parameters:
data (array)
hammingWindow(data)
Parameters:
data (array)
blackmanWindow(data)
Parameters:
data (array)
findDominantCycles(magnitudes, sampleSize, timeframe)
Parameters:
magnitudes (array)
sampleSize (int)
timeframe (int)
prepareData(source, windowType)
Parameters:
source (array)
windowType (string)
analyzeMarketCycles(prices, lookback, windowType, minperiod)
Parameters:
prices (array)
lookback (int)
windowType (string)
minperiod (int)
getCycleSignal(prices, mainCyclePeriod)
Parameters:
prices (array)
mainCyclePeriod (int)