BTC/USD Enhanced High-Growth Impulse Strategy for 30-Min ChartOverview:
This script combines trend-following and momentum-based entry/exit signals, optimized for BTC/USD on a 30-minute timeframe. It integrates Exponential Moving Averages (EMAs), Supertrend, and Average True Range (ATR) to identify potential trade opportunities with volatility-adjusted risk management.
Indicators Explained:
Exponential Moving Averages (EMAs):
21 EMA (Short-term): Identifies fast-moving price trends.
50 EMA (Medium-term): Captures broader momentum.
200 EMA (Long-term): Filters major market direction.
These EMAs work together to signal trend crossovers, indicating shifts between bullish and bearish phases.
Supertrend:
This indicator highlights momentum and volatility. A positive Supertrend indicates strong upward momentum, while a negative Supertrend signals bearish momentum.
Average True Range (ATR):
ATR helps calculate dynamic stop loss and take profit levels. By adjusting exits to match market volatility, the strategy can respond to both fast-moving and consolidating conditions.
Entry & Exit Conditions:
Long Entry:
The 21 EMA crosses above the 50 EMA.
The price is above the Supertrend line, confirming bullish momentum.
ATR volatility is above its 50-period moving average to filter out low-volatility conditions.
Trade Exit:
A stop loss is set at 2 ATR below the entry price, and the take profit is set at 6 ATR above.
Short Entry:
The 21 EMA crosses below the 50 EMA.
The price is below the Supertrend line, confirming bearish momentum.
ATR volatility exceeds the 50-period moving average.
Trade Exit:
A stop loss is set at 2 ATR above the entry price, and take profit at 6 ATR below.
Default Strategy Settings:
Position Size: 2% of equity per trade (configurable)
Risk Management: Dynamic ATR-based stop loss and take profit
Indicators:
EMA 21, 50, and 200 for trend detection
Supertrend (factor: 3, ATR period: 10) for momentum confirmation
ATR for volatility-based risk control
Performance Metrics:
Optimal Timeframe: 30-minute chart
Backtesting Results:
Percent Profitable: 62%
Profit Factor: 1.136
Average Trade Return: 0.14%
Max Drawdown: 0.58% of equity
Total Trades: 35
The strategy demonstrates stable performance across both trending and volatile market conditions. Keep in mind that past performance does not guarantee future results.
Notes for Traders:
Test this strategy with realistic commission and slippage to ensure results are accurate for your trading environment.
While the strategy is designed for BTC/USD on the 30-minute timeframe, it may also perform well on other high-liquidity cryptocurrencies and timeframes with additional optimization.
Avoid over-leveraging. We recommend allocating 1-2% equity per trade for risk control.
Plot Information:
The script visualizes key indicators:
EMA 21 (blue), EMA 50 (red), EMA 200 (green)
Supertrend (orange)
Green/red background shading highlights bullish and bearish entry conditions.
Disclaimer:
This script is for educational purposes only. Use it as part of a comprehensive trading plan that includes proper risk management. Trading involves significant risk, and no strategy can predict future price movements with certainty.
Индикаторы и стратегии
MABS algo box Time Algothis indicator helps with time zone where market rejects hopefully u can use it
MABS algo box Time Algothis indicator helps with time zones n hours where the market rejects this my option n hopefully works for you
DOGE Trend-Following Strategy – Balanced Risk & Trend (15m)This strategy is designed to capture trends in DOGE/USDT, using a combination of moving averages and momentum indicators to filter high-quality trades. It is optimized for balanced risk management with a focus on reducing drawdowns through conservative position sizing.
How the Strategy Works
Exponential Moving Averages (EMAs):
A fast EMA (default: 50) tracks short-term price momentum.
A slow EMA (default: 200) represents the broader trend.
Trades are executed when these EMAs cross, signaling shifts in market direction.
ADX (Average Directional Index):
ADX (default length: 14) confirms trend strength.
The strategy only enters trades when ADX is above 25, indicating a strong trend. This helps avoid low-confidence trades during sideways markets.
RSI (Relative Strength Index):
RSI (default: 14) helps avoid trades during overbought or oversold conditions.
Long trades are exited when RSI crosses above 70, while short trades are closed when RSI drops below 30.
Multi-Timeframe Filter:
To further validate trends, 4-hour EMAs are integrated into the strategy, keeping entries in sync with larger market movements.
Performance Highlights
Net Profit: +$2,438.85 USDT (0.24% return over testing period)
Profit Factor: 1.136 – indicating more profit than loss overall.
Closed Trades: 35
Winning Trades: 62.86%
Max Drawdown: 0.58% – representing the largest equity decrease during the test period.
Trade Duration: On average, trades last about 40 bars (10 hours on a 15-minute chart).
Trade Setup
Long Entry:
A long position is taken when:
The 50 EMA crosses above the 200 EMA,
The ADX is above 25, and
RSI is above 30 (indicating healthy momentum).
The trade is exited when RSI hits 70 or price reaches a dynamic profit or stop-loss level.
Short Entry:
A short position is entered when:
The 50 EMA crosses below the 200 EMA,
The ADX confirms trend strength above 25, and
RSI is below 70 (avoiding oversold conditions).
The short position closes if RSI drops to 30 or stop-loss/take-profit criteria are met.
Strategy Parameters
Fast EMA Length: Default set to 50.
Slow EMA Length: Default set to 200.
ADX Length: Default set to 14 with a threshold of 25 for filtering trends.
RSI: Length is 14 with overbought/oversold thresholds at 70 and 30.
Dynamic Take Profit & Stop Loss: Configurable, allowing for risk customization.
Backtesting Conditions
Account Size: $100,000
Position Size: 2% of equity per trade – within the recommended 1-5% risk management framework.
Slippage and Commission: Set to realistic values to improve accuracy.
The backtest ran on DOGE/USDT over a multi-month period, showing reliable performance on the 15-minute timeframe. While past performance is not a guarantee of future success, the results suggest this approach may offer a robust framework for trend-following traders.
Strategy Notes
This updated version prioritizes sustainability by ensuring trades risk no more than 2% of equity. The combination of multiple indicators helps avoid whipsaws and improves long-term profitability. Always test strategies with your own data and market conditions before live trading.
EMA50EMA150#gangesThis strategy is a trading system that uses Exponential Moving Averages (EMA) and Simple Moving Averages (SMA) to determine entry and exit points for trades. Here's a breakdown of the key components and logic:
Key Indicators:
EMA 50 (Exponential Moving Average with a 50-period window): This is a more responsive moving average to recent price movements.
EMA 150 (Exponential Moving Average with a 150-period window): A slower-moving average that helps identify longer-term trends.
SMA 150 (Simple Moving Average with a 150-period window): This acts as a stop-loss indicator for long trades.
User Inputs:
Start Date and End Date: The strategy is applied only within this date range, ensuring that trading only occurs during the specified period.
Trade Conditions:
Buy Signal (Long Position):
A buy is triggered when the 50-period EMA crosses above the 150-period EMA (indicating the price is gaining upward momentum).
Sell Signal (Short Position):
A sell is triggered when the 50-period EMA crosses below the 150-period EMA (indicating the price is losing upward momentum and moving downward).
Stop-Loss for Long Positions:
If the price drops below the 150-period SMA, the strategy closes any long positions as a stop-loss mechanism to limit further losses.
Re-Entry After Stop-Loss:
After a stop-loss is triggered, the strategy monitors for a re-entry signal:
Re-buy: If the price crosses above the 150-period EMA from below, a new long position is triggered.
Re-sell: If the 50-period EMA crosses below the 150-period EMA, a new short position is triggered.
Trade Execution:
Buy or Sell: The strategy enters trades based on the conditions described and exits them if the stop-loss conditions are met.
Re-entry: After a stop-loss, the strategy tries to re-enter the market based on the same buy/sell conditions.
Risk Management:
Commission and Slippage: The strategy includes a 0.1% commission on each trade and allows for 3 pips of slippage to account for real market conditions.
Visuals:
The strategy plots the 50-period EMA (blue), 150-period EMA (red), and 150-period SMA (orange) on the chart, helping users visualize the key levels for decision-making.
Date Range Filter:
The strategy only executes trades during the user-defined date range, which helps limit trades to a specific period and avoid backtesting errors on irrelevant data.
Stop-Loss Logic:
The stop-loss is triggered when the price crosses below the 150-period SMA, closing the long position to protect against significant drawdowns.
Overall Strategy Goal:
The strategy aims to capture long-term trends using the EMAs for entry signals, while protecting profits through the stop-loss mechanism and offering a way to re-enter the market after a stop-loss.
Gaussian Channel with Stochastic RSI StrategyUsed this recenrly
Advantages:
The strategy combines multiple indicators to provide a more comprehensive view of the market.
The Gaussian channel helps to identify potential support and resistance levels.
The stochastic oscillator and RSI help to identify overbought and oversold conditions.
Disadvantages:
The strategy requires multiple indicators, which can increase the complexity of the analysis.
The Gaussian channel may not always provide accurate support and resistance levels.
The stochastic oscillator and RSI may provide false signals in certain market conditions.
Overall, the Gaussian Channel with Stochastic RSI Strategy is a complex trading strategy that requires careful analysis and risk management. It is essential to backtest the strategy and adjust the parameters to suit your trading style and risk tolerance.
Momentum-Volatility Fibonacci Oscillator with Stochastic RSIMomentum Volatility Fibonacci Oscillator with Stochastic RSI
Buy when %K crosses above %D under 20 (oversold).
Sell when %K crosses below %D over 80 (overbought).
Pre-Pump Strategy test 1 Key Features of the Script
RSI (Relative Strength Index) Conditions:
Detects when the RSI crosses below 35 (oversold condition) or above 75 (overbought condition).
These levels indicate potential reversal points or local tops/bottoms.
MACD (Moving Average Convergence Divergence) Crossover:
Identifies MACD crossovers on the 4-hour timeframe.
A bullish crossover (MACD line crossing above the signal line) suggests potential upward momentum.
Volume Spikes:
Detects when the current volume is >150% of the 24-hour average volume.
Volume spikes often indicate increased interest and potential price movement.
Price Touching Key EMAs (Exponential Moving Averages):
Monitors when the price touches or crosses key EMAs: 13, 48, and 200.
These EMAs act as dynamic support/resistance levels.
Bollinger Band Squeeze:
Identifies when the Bollinger Bands narrow significantly (a squeeze).
A squeeze often precedes a breakout or strong price movement.
Breakout of Key Support/Resistance Levels:
Alerts when the price breaks above a resistance level or below a support level with volume confirmation.
This indicates a potential trend continuation or reversal.
Custom Horizontal Ray Indicator//@version=5
indicator("Custom Horizontal Ray Indicator", overlay=true)
// تنظیم تعداد کندلهای بررسیشده
length = 7200
// متغیرهای ذخیره خطوط
var greenLines = array.new_line()
var redLines = array.new_line()
// تابعی برای رسم خط و افزودن به آرایه
draw_line(array, price, color) =>
var l = line.new(x1=bar_index, y1=price, x2=bar_index + 1000, y2=price, color=color, width=2)
array.push(array, l)
// بررسی کندلهای صعودی (A) و رسم خطوط سبز
if (close > open) and (high < (low + high) / 2)
draw_line(greenLines, high , color.green)
// بررسی کندلهای نزولی (B) و رسم خطوط قرمز
if (close < open) and (low > (low + high) / 2)
draw_line(redLines, low , color.red)
// تابعی برای حذف خطوط هنگام برخورد قیمت
remove_lines(array, is_green) =>
for i = array.size(array) - 1 to 0
var l = array.get(array, i)
var line_price = line.get_y1(l)
if (is_green and high >= line_price) or (not is_green and low <= line_price)
line.delete(l)
array.remove(array, i)
// حذف خطوط سبز هنگام برخورد قیمت
remove_lines(greenLines, true)
// حذف خطوط قرمز هنگام برخورد قیمت
remove_lines(redLines, false)
// تعریف شرایط اعلانها در بخش سراسری
greenLineCondition = array.size(greenLines) > 0 and high >= line.get_y1(array.get(greenLines, array.size(greenLines) - 1))
redLineCondition = array.size(redLines) > 0 and low <= line.get_y1(array.get(redLines, array.size(redLines) - 1))
// ایجاد اعلانها برای خطوط سبز
alertcondition(greenLineCondition, title="برخورد با خط سبز", message="قیمت به خط سبز برخورد کرد")
// ایجاد اعلانها برای خطوط قرمز
alertcondition(redLineCondition, title="برخورد با خط قرمز", message="قیمت به خط قرمز برخورد کرد")
Gaussian Channel with Stochastic RSI StrategyKeltner Channel with Stochastic RSI Strategy
The Keltner Channel with Stochastic RSI strategy is a technical trading approach that combines the Keltner Channel, a volatility-based indicator, with the Stochastic RSI, a momentum indicator. This strategy aims to identify trading opportunities by detecting overbought and oversold conditions in conjunction with volatility contractions and expansions.
Components:
Keltner Channel: A volatility-based indicator consisting of three bands: the upper band, lower band, and middle band (20-period moving average). The bands are set at 2 x Average True Range (ATR) above and below the middle band.
Stochastic RSI: A momentum indicator that measures the relative position of the RSI (Relative Strength Index) within its own range. The Stochastic RSI is set to 14 periods with overbought and oversold levels at 80 and 20, respectively.
Strategy Rules:
Long Entry:
The price touches or breaks below the lower Keltner Channel band.
The Stochastic RSI falls below 20, indicating oversold conditions.
The RSI must be below 30 to confirm the oversold condition.
Short Entry:
The price touches or breaks above the upper Keltner Channel band.
The Stochastic RSI rises above 80, indicating overbought conditions.
The RSI must be above 70 to confirm the overbought condition.
Exit Rules:
Profit Target: Set a profit target at 1:1 or 1:2 risk-reward ratio.
Stop Loss: Set a stop loss at the opposite side of the Keltner Channel band.
Trailing Stop: Use a trailing stop to lock in profits as the trade moves in your favor.
Additional Considerations:
Trend Filter: Use a trend filter, such as a 50-period moving average, to ensure that trades are taken in the direction of the underlying trend.
Risk Management: Always use proper risk management techniques, such as position sizing and stop-loss orders, to limit potential losses.
By combining the Keltner Channel and Stochastic RSI indicators, this strategy offers a unique approach to identifying trading opportunities in various markets.
Hourly & Daily Levels//@version=5
indicator("Hourly & Daily Levels", overlay=true, max_lines_count=500)
// ——————— 1-Hour High/Low ——————— //
var float hourHigh = na
var float hourLow = na
isNewHour = timeframe.change("60")
if isNewHour
hourHigh := high
hourLow := low
else
hourHigh := math.max(hourHigh, high)
hourLow := math.min(hourLow, low)
// ——————— Previous Day High/Low ——————— //
var float prevDayHigh = na
var float prevDayLow = na
isNewDay = timeframe.change("D")
prevDayHigh := ta.valuewhen(isNewDay, request.security(syminfo.tickerid, "D", high ), 0)
prevDayLow := ta.valuewhen(isNewDay, request.security(syminfo.tickerid, "D", low ), 0)
// ——————— Plotting ——————— //
// Current Hour Levels
plot(hourHigh, "1H High", color.new(#00FF00, 0), 2, plot.style_linebr)
plot(hourLow, "1H Low", color.new(#FF0000, 0), 2, plot.style_linebr)
// Previous Day Levels
plot(prevDayHigh, "Prev Day High", color.new(#006400, 0), 2, plot.style_circles)
plot(prevDayLow, "Prev Day Low", color.new(#8B0000, 0), 2, plot.style_circles)
// ——————— Background & Labels ——————— //
bgcolor(isNewHour ? color.new(color.blue, 90) : na, title="Hourly Separation")
bgcolor(isNewDay ? color.new(color.orange, 90) : na, title="Daily Separation")
var label lbl1 = na
var label lbl2 = na
var label lbl3 = na
var label lbl4 = na
if barstate.islast
lbl1 := label.new(bar_index, hourHigh, "Current Hour High " + str.tostring(hourHigh),
color=#00FF00, style=label.style_label_left, textcolor=color.white)
lbl2 := label.new(bar_index, hourLow, "Current Hour Low " + str.tostring(hourLow),
color=#FF0000, style=label.style_label_left, textcolor=color.white)
lbl3 := label.new(bar_index, prevDayHigh, "Prev Day High " + str.tostring(prevDayHigh),
color=#006400, style=label.style_label_right, textcolor=color.white)
lbl4 := label.new(bar_index, prevDayLow, "Prev Day Low " + str.tostring(prevDayLow),
color=#8B0000, style=label.style_label_right, textcolor=color.white)
SMA 9, SMA 33 y HMA PersonalizablesUn indicador con SMA 9, SMA 33 y HMA es ideal para analizar tendencias y detectar giros. La SMA 9 muestra la tendencia a corto plazo, mientras que la SMA 33 refleja el medio plazo. La HMA, más rápida y suave, destaca cambios de dirección sin tanto ruido. Los cruces entre las SMAs y la dirección de la HMA generan señales claras de entrada o salida.
Momentum, RSI, and MACD Strategy with Stop Loss//@version=5
strategy("Momentum, RSI, and MACD Strategy with Stop Loss", overlay=true, calc_on_every_tick=true)
// Input for Momentum
length = input(12, title="Momentum Length")
price = close
// Input for RSI
rsiLength = input(14, title="RSI Length")
rsiSource = close
rsiValue = ta.rsi(rsiSource, rsiLength)
// Input for MACD
fast_length = input(12, title="Fast Length")
slow_length = input(26, title="Slow Length")
src = close
signal_length = input.int(9, title="Signal Smoothing")
sma_source = input.string("EMA", title="Oscillator MA Type", options= )
sma_signal = input.string("EMA", title="Signal Line MA Type", options= )
// ATR Inputs and Calculation
atrLength = input.int(title="ATR Length", defval=14, minval=1)
smoothing = input.string(title="ATR Smoothing", defval="RMA", options= )
ma_function(source, length) =>
switch smoothing
"RMA" => ta.rma(source, length)
"SMA" => ta.sma(source, length)
"EMA" => ta.ema(source, length)
=> ta.wma(source, length)
atrValue = ma_function(ta.tr(true), atrLength)
// Calculating Momentum
momentum(seria, length) =>
mom = seria - seria
mom
mom0 = momentum(price, length)
mom1 = momentum(mom0, 1)
// Calculating MACD
fast_ma = sma_source == "SMA" ? ta.sma(src, fast_length) : ta.ema(src, fast_length)
slow_ma = sma_source == "SMA" ? ta.sma(src, slow_length) : ta.ema(src, slow_length)
macd = fast_ma - slow_ma
signal = sma_signal == "SMA" ? ta.sma(macd, signal_length) : ta.ema(macd, signal_length)
hist = macd - signal
// Long Entry Condition
longCondition = mom0 > 0 and mom1 > 0 and rsiValue > 50 and macd > 0
if (longCondition)
strategy.entry("MomRSIMACD Long", strategy.long, stop=high+syminfo.mintick, comment="MomRSIMACD Long")
strategy.exit("Exit Long", from_entry="MomRSIMACD Long", stop=price-15, limit=price+15)
// Short Entry Condition
shortCondition = mom0 < 0 and mom1 < 0 and rsiValue < 50 and macd < 0
if (shortCondition)
strategy.entry("MomRSIMACD Short", strategy.short, stop=low-syminfo.mintick, comment="MomRSIMACD Short")
strategy.exit("Exit Short", from_entry="MomRSIMACD Short", stop=price+15, limit=price-15)
Rolling 1H RSI (14) on 5M ChartThis indicator displays the 1 Hour RSI on 5 Minutes Chart on rolling basis
Order Block Strategy with LinesKey Changes:
Added recentBullishOB and recentBearishOB conditions that check if the order block occurred within the last 24 hours using timenow - time <= 86400000 (24 hours in milliseconds).
Modified all trade execution logic and line drawing to use these recent conditions instead of the original order block conditions.
Maintained original plotting of all order blocks (including older ones) using the unfiltered bullishOB and bearishOB variables.
This modification ensures that:
All order blocks are still visually marked on the chart
Trading levels are only calculated for recent order blocks
Trades are only executed on order blocks created within the last 24 hours
Support/resistance lines are only drawn for recent order blocks
Auto Buy-Sell Strategy with MA and RSIotomatik al sat otomatik al sat otomatik al sat otomatik al sat otomatik al satotomatik al satotomatik al satotomatik al satotomatik al satotomatik al satotomatik al satotomatik al satotomatik al satotomatik al satotomatik al sat
8 PM IST Breakout StrategyThis strategy works on US markets (US30,S&P500),forex(EUR/USD,GBP/USD,USD/JPY) AND GOLD as well no need to sit for hours and do remeber to exit the trade on or before 12AM IST as volumes decreas and book whatever you get
Keep practicing and connect with me if you have any new ideas.
KEEP HUSTLING KEEP GROWING UNTILL YOU ARE THE RICHEST OF YOUR BLOODLINE
20-Day Low % Diff for Screenercustom column in TradingView’s stock screener using Pine Script, but TradingView doesn’t allow direct integration of Pine Script indicators into the screener.
Simplified Doha Session High-Lowidentifies high and low of previous day as well as the premarket high and low to start trading London session
30MA Volatile Assets StrategyThis strategy features:
Gaussian Channel with SMA basis and standard deviation bands
Stochastic RSI filter for entries
Long-only trades with 100% equity allocation
0.1% commission and no slippage
Clear entry/exit conditions based on price and indicator positions
Defined trading period from 2024 to 2069