POC-Candle-EMA-ATR-LongShadow-50percCandleThis is a script for those who trade based on volume and smart money strategies.
Some of the features of this script:
- Display "Time Price Opportunity Chart". These points help traders to identify price opportunities over time and have a better analysis of the market.
- Mark candles that have traded more volume than previous candles.
- Mark candles whose body is at least and not more than 50% of the total candle size, these candles can be found more easily in smart money strategies.
- Mark spike candles to find FVG faster
- Mark candles that have a shadow of at least more than 380 points and can be good reversal points.
- EMA indicator to check the market trend
- DonchianChannel indicator to check the price trend on the chart
Regards
Buscar en scripts para "donchian"
Optimal Length BackTester [YinYangAlgorithms]This Indicator allows for a ‘Optimal Length’ to be inputted within the Settings as a Source. Unlike most Indicators and/or Strategies that rely on either Static Lengths or Internal calculations for the length, this Indicator relies on the Length being derived from an external Indicator in the form of a Source Input.
This may not sound like much, but this application may allows limitless implementations of such an idea. By allowing the input of a Length within a Source Setting you may have an ‘Optimal Length’ that adjusts automatically without the need for manual intervention. This may allow for Traditional and Non-Traditional Indicators and/or Strategies to allow modifications within their settings as well to accommodate the idea of this ‘Optimal Length’ model to create an Indicator and/or Strategy that adjusts its length based on the top performing Length within the current Market Conditions.
This specific Indicator aims to allow backtesting with an ‘Optimal Length’ inputted as a ‘Source’ within the Settings.
This ‘Optimal Length’ may be used to display and potentially optimize multiple different Traditional Indicators within this BackTester. The following Traditional Indicators are included and available to be backtested with an ‘Optimal Length’ inputted as a Source in the Settings:
Moving Average; expressed as either a: Simple Moving Average, Exponential Moving Average or Volume Weighted Moving Average
Bollinger Bands; expressed based on the Moving Average Type
Donchian Channels; expressed based on the Moving Average Type
Envelopes; expressed based on the Moving Average Type
Envelopes Adjusted; expressed based on the Moving Average Type
All of these Traditional Indicators likewise may be displayed with multiple ‘Optimal Lengths’. They have the ability for multiple different ‘Optimal Lengths’ to be inputted and displayed, such as:
Fast Optimal Length
Slow Optimal Length
Neutral Optimal Length
By allowing for the input of multiple different ‘Optimal Lengths’ we may express the ‘Optimal Movement’ of such an expressed Indicator based on different Time Frames and potentially also movement based on Fast, Slow and Neutral (Inclusive) Lengths.
This in general is a simple Indicator that simply allows for the input of multiple different varieties of ‘Optimal Lengths’ to be displayed in different ways using Tradition Indicators. However, the idea and model of accepting a Length as a Source is unique and may be adopted in many different forms and endless ideas.
Tutorial:
You may add an ‘Optimal Length’ within the Settings as a ‘Source’ as followed in the example above. This Indicator allows for the input of a:
Neutral ‘Optimal Length’
Fast ‘Optimal Length’
Slow ‘Optimal Length’
It is important to account for all three as they generally encompass different min/max length values and therefore result in varying ‘Optimal Length’s’.
For instance, say you’re calculating the ‘Optimal Length’ and you use:
Min: 1
Max: 400
This would therefore be scanning for 400 (inclusive) lengths.
As a general way of calculating you may assume the following for which lengths are being used within an ‘Optimal Length’ calculation:
Fast: 1 - 199
Slow: 200 - 400
Neutral: 1 - 400
This allows for the calculation of a Fast and Slow length within the predetermined lengths allotted. However, it likewise allows for a Neutral length which is inclusive to all lengths alloted and may be deemed the ‘Most Accurate’ for these reasons. However, just because the Neutral is inclusive to all lengths, doesn’t mean the Fast and Slow lengths are irrelevant. The Fast and Slow length inputs may be useful for seeing how specifically zoned lengths may fair, and likewise when they cross over and/or under the Neutral ‘Optimal Length’.
This Indicator features the ability to display multiple different types of Traditional Indicators within the ‘Display Type’.
We will go over all of the different ‘Display Types’ with examples on how using a Fast, Slow and Neutral length would impact it:
Simple Moving Average:
In this example above have the Fast, Slow and Neutral Optimal Length formatted as a Slow Moving Average. The first example is on the 15 minute Time Frame and the second is on the 1 Day Time Frame, demonstrating how the length changes based on the Time Frame and the effects it may have.
Here we can see that by inputting ‘Optimal Lengths’ as a Simple Moving Average we may see moving averages that change over time with their ‘Optimal Lengths’. These lengths may help identify Support and/or Resistance locations. By using an 'Optimal Length' rather than a static length, we may create a Moving Average which may be more accurate as it attempts to be adaptive to current Market Conditions.
Bollinger Bands:
Bollinger Bands are a way to see a Simple Moving Average (SMA) that then uses Standard Deviation to identify how much deviation has occurred. This Deviation is then Added and Subtracted from the SMA to create the Bollinger Bands which help Identify possible movement zones that are ‘within range’. This may mean that the price may face Support / Resistance when it reaches the Outer / Inner bounds of the Bollinger Bands. Likewise, it may mean the Price is ‘Overbought’ when outside and above or ‘Underbought’ when outside and below the Bollinger Bands.
By applying All 3 different types of Optimal Lengths towards a Traditional Bollinger Band calculation we may hope to see different ranges of Bollinger Bands and how different lookback lengths may imply possible movement ranges on both a Short Term, Long Term and Neutral perspective. By seeing these possible ranges you may have the ability to identify more levels of Support and Resistance over different lengths and Trading Styles.
Donchian Channels:
Above you’ll see two examples of Machine Learning: Optimal Length applied to Donchian Channels. These are displayed with both the 15 Minute Time Frame and the 1 Day Time Frame.
Donchian Channels are a way of seeing potential Support and Resistance within a given lookback length. They are a way of withholding the High’s and Low’s of a specific lookback length and looking for deviation within this length. By applying a Fast, Slow and Neutral Machine Learning: Optimal Length to these Donchian Channels way may hope to achieve a viable range of High’s and Low’s that one may use to Identify Support and Resistance locations for different ranges of Optimal Lengths and likewise potentially different Trading Strategies.
Envelopes / Envelopes Adjusted:
Envelopes are an interesting one in the sense that they both may be perceived as useful; however we deem that with the use of an ‘Optimal Length’ that the ‘Envelopes Adjusted’ may work best. We will start with examples of the Traditional Envelope then showcase the Adjusted version.
Envelopes:
As you may see, a Traditional form of Envelopes even produced with a Machine Learning: Optimal Length may not produce optimal results. Unfortunately this may occur with some Traditional Indicators and they may need some adjustments as you’ll notice with the ‘Envelopes Adjusted’ version. However, even without the adjustments, these Envelopes may be useful for seeing ‘Overbought’ and ‘Oversold’ locations within a Machine Learning: Optimal Length standpoint.
Envelopes Adjusted:
By adding an adjustment to these Envelopes, we may hope to better reflect our Optimal Length within it. This is caused by adding a ratio reflection towards the current length of the Optimal Length and the max Length used. This allows for the Fast and Neutral (and potentially Slow if Neutral is greater) to achieve a potentially more accurate result.
Envelopes, much like Bollinger Bands are a way of seeing potential movement zones along with potential Support and Resistance. However, unlike Bollinger Bands which are based on Standard Deviation, Envelopes are based on percentages +/- from the Simple Moving Average.
We will conclude our Tutorial here. Hopefully this has given you some insight into how useful adding a ‘Optimal Length’ within an external (secondary) Indicator as a Source within the Settings may be. Likewise, how useful it may be for automation sake in the sense that when the ‘Optimal Length’ changes, it doesn’t rely on an alert where you need to manually update it yourself; instead it will update Automatically and you may reap the benefits of such with little manual input needed (aside from the initial setup).
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
OBV-MACDThe OBV-MACD indicator is a momentum-based technical analysis tool that helps traders identify trend reversals and trend strength. This Pine script is an implementation of the OBV-MACD indicator that uses the On-Balance Volume (OBV) and Moving Average Convergence Divergence (MACD) indicators to provide a momentum data of OBV.
The OBV-MACD indicator uses the OBV to calculate the cumulative volume, which is then smoothed using two moving averages - fast and slow. The difference between these moving averages is plotted as a histogram, with a signal line plotted over it. A buy signal is generated when the histogram crosses above the signal line, indicating a bullish trend, while a sell signal is generated when the histogram crosses below the signal line, indicating a bearish trend.
This Pine script also includes an OBV-MACD-Donchian version that incorporates Donchian channels for the OBV-MACD. The Donchian channel is a technical analysis indicator that helps traders identify the highs and lows of an asset's price over a certain period. The OBV-MACD-Donchian version uses the OBV-MACD indicator along with the Donchian channels to provide signals that the momentum of OBV is making new high/low during that period of time.
Traders can customize the input parameters of the OBV-MACD indicator, such as the timeframe, method of calculation for the moving averages, and the lengths of the moving averages and breakout lengths. The colors of the plot can also be customized to suit the trader's preferences.
Strategy Template - V2This is an educational script created to demonstrate few basic building blocks of a trend based strategy and how to achieve different entry and exit types. My initial intention was to create a comprehensive strategy template which covers all the aspects of strategy. But, ended up creating fully fledged strategy based on trend following.
This is an enhancement on Strategy-Template But this script is comparitively more complex. Hence I decided to create new version instead of updating the existing one.
Lets dive deep.
SIMPLE COMPONENTS OF TREND FOLLOWING STRATEGY
TREND BIAS - This defines the direction of trend. Idea is not to trade against the trend direction. If the bias is bullish, look for long opportunities and if bias is bearish, look for short opportunities. Stay out of the market when the bias is neutral.
Often, trend bias is determined based on longer timeframe conditions. Example - 200 Moving Average, Higher timeframe moving averages, Higher timeframe high-lows etc. can be used for determining the trend bias.
In this script, I am using Weekly donchian channels combined with daily donchian channels to define trend bias.
Long Bias - 40 Day donchian channel sits completely in upper portion of 40 Week dochnial channel.
Short Bias - 40 Day donchian channel sits completely in lower portion of 40 Week donchian channel.
ENTRY CONDITION - Entry signals are generated only in the direction of bias. Hence, when in LongBias, we only get Long signals and when in short bias, we only get short signals.
In our case, when in Long Bias - if price hits 40 day high for the first time, this creates our long entry signal. Similarly when in Short Bias , price hitting 40 day low will create signal for going short. Since we do not take trades opposite to trend, no entry conditions are formed when price hits 40 day high in Short Bias or 40 day low in Long Bias.
EXIT CONDITION - Exit conditions are formed when we get signals of trend failure.
In our case, when in long trade, price hitting 40 day low creates exit signal. Similarly when in short trade price hitting 40 day high creates exit signal for short trade.
DIFFERENT TYPES OF ENTRY AND EXIT
In this script, I have tried to demonstrate different entry and exit types.
Entry types
Market - Enter immediately when entry signal is received. That is, in this case when price crossover over high in long bias and crosses under low in short bias
Stop - This method includes estimating at what level new highs are made and creating a stop buy order at that level. This way, we do not miss if the break out is stronger. But, susciptible to fail during fakeouts.
Limit - This method includes executing a limit order to buy at lower price or sell at higher price. In trend following methods, downside of limit order is when there is genuine breakout, these limit orders may not hit and during trend failures the limit orders are likely to hit and go straight to stop.
Stop-Limit - this is same as stop order but will also place a limit condition to avoid buying on overextended breakout or with lots of slippage.
Exit types
Market - whether to keep the existing trade running or whether to close it is determined after close of each bar and exit orders are executed manually upon receiving exit signal.
Stop - We place stop loss orders beforehand when there is a trade in place. This can help in avoiding big movements against trade within bar. But, this may also stop on false signals or fakeouts.
Take profit
Stop - No take profits are configured.
Target - 30% of the positions are closed when take profit levels are hit. Take profit levels are defined by risk reward.
USING THE CODE AS TEMPLATE
As mentioned earlier, I intended to create a fully fledged strategy template. But, ended up creating a fully fledged stratgy. However, you can take some part of this code and use it to start your own strategy. Will explain what all things can be adopted without worrying about the strategy implementation within
Strategy definition : This can be copied as is and just change the title of strategy. This defines some of the commonly used parameters of strategy which can help with close to realistic backtesting results for your coded strategy and comparison with buy and hold.
Generic Strategy Parameters : The parameter which defines controlling alllowed trade direction and trading window are present here. This again can be copied as is and variable inDateRange can be directly used in entry conditions.
Generic Methods : f_getMovingAverage and f_secureSecurity are handy and can be used as is. atr method provideded by pine gives you ATR based on RMA. If you want SMA or any other moving average based ATR, you can use the method f_getCustomAtr
Trade Statements : This section has all types of trading instructions which includes market/stop/limit/stop-limit type of entries and exits and take profit statements. You can adopt the type of entry you are interested in and change when condition to suit your strategy.
Trade conditions and levels : This section is required. But, cannot be copied. All the trade logic goes here which also sets parameters which are used in when of Trade Statements.
Hope this helps.
Custom FIBOThis script shows 3 Donchian Channel 78.6% and 21.4% intermediary level lines to perform trade analysis. Besides those 6 lines it also optionally shows Fibonacci's retracements with 100%, 127%, 162%, 200% and 262% for one of the Donchian channels.
The 3 Donchian Channels used have default lengths 72, 305 and 1292, calculated after the first length default value of 72. For each of the 3 Donchian Channels only an upper line, set by default at 78.6%, is plotted in green and its complement, set to 21.4%, is plotted in red. When the closing price is above 3 green lines, we say it is Forbidden to Sell ( PV ), and when the closing price is below 3 red lines, we say it is Forbidden to Buy ( PC ). Those conditions are flagged on the chart. These PV-PC conditions were, up to my knowledge, first proposed by Bo Williams.
Fibonacci's retracements are show for the Donchian Channel with length 72 by default, but it can be changed to any length. They are colored as fuchsia (100%), blue (127%), orange (162%), yellow (200%) and navy (262%).
Adoptive Supertrend - BandsAnother adoption of supertrend. This time based on different channels - Bollinger Band, Keltner Channel, Donchian Channel and Pivot point based Donchian channel.
When price hits top of bands, it is considered as start or continuation of uptrend. When price hits bottom of the band it is considered as start or continuation of downtrend. Hence, supertrend is drawn based on these calculations. Use ATR Periods and ATR Multiplier to create stops certain ATR away from band's top and bottom.
Other supertrend adoptions published are here:
Pivot point based donchian channel is published here:
HiLo EMA Custom bandsHILo Ema custom bands
This advanced technical indicator is a powerful variation of "HiLo Ema squeeze bands" that combines the best elements of Donchian channels and EMAs. It's specially designed to identify price squeezes before significant market moves while providing dynamic support/resistance levels and predictive price targets.
Indicator Concept:
The indicator initializes EMAs at each new high or low - the upper EMA tracks highs while the lower EMA tracks lows. It draws maximum of 6 custom bands based on percentage, fixed value or Atr
Upper EM bands are drawn below uper ema, Lower EMA bands are drawn above lower ema
Customizable Options:
Ema length: 200 default
Calculation type: Ema (Default), HILO
Calculation type: Percent,Fixed Value, ATR
Band Value: Percent/Value/ATR multiple This is value to use for calculation type
Band Selection: Both,Upper,Lower
Key Features:
You can choose to draw either of one or both, the latter can be overwhelming initially but as you get used to it, it becomes a powerful tool.
When both bands are selected, upper and lower bands provide provides dual references and intersections
This creates a more trend-responsive alternative to traditional Donchian channels with clearly defined zones for trade planning.
If you select percaentage, note that the calulation is based FROM the respective EMA bands. So bands from lower EMA band will appear narrower compared to the those drawn from upper EMA band
Price targets or reversals:
Look of alignment of lines and price. The current level of one order could align with that of previous level of a different order because often markets move in steps
Settings Guide:
Recommended Settings:
Ema length: 200
Use one of the bands (not both) if using large length of say 1000
Calculation type: EMA
HILO will draw donchian like bands, this is useful if you only want flat price levels. In a rising market use upper and vise versa
Calculation type:
percentage for indices : 5, for symbols 10 or higher based on symbol volatility
Fixed value: about 10% of symbol value converted to value
Atr: 2 ideally
Perfect for swing traders and position traders looking for a more sophisticated volatility-based overlay that adapts to changing market conditions and provides predictive reversal levels.
Note: This indicator works well across multiple timeframes but is especially effective on H4, Daily and Weekly charts for trend trading.
ZigZag ChannelThis is recreation of Donchian Channel - Pivot High Low indicator present here:
But, instead of traditional pivot high lows, this is based on pivots created from zigzag indicator.
This indicator is created on top of existing Zigzag indicator using lines array:
Parameter HighLowLength refers to number of zigzag lines back which can be used to calculate top and bottom of donchian channel.
HILo Ema Double Squeeze BandsHILo Ema Double Squeeze Bands
This advanced technical indicator is a powerful variation of "HiLo Ema squeeze bands" that combines the best elements of Donchian channels and EMAs. It's specially designed to identify price squeezes before significant market moves while providing dynamic support/resistance levels and predictive price targets.
Indicator Concept:
The indicator initializes EMAs at each new high or low - the upper EMA tracks highs while the lower EMA tracks lows. The price range between upper and lower bands is divided into 4 equal zones by these lines:
Upper2 (uppermost line)
Upper1 (upper quartile)
Middle (center line)
Lower1 (lower quartile)
Lower2 (lowermost line)
This creates a more trend-responsive alternative to traditional Donchian channels with clearly defined zones for trade planning.
Key Features:
Dual EMA Band System: Utilizes both short-term and long-term EMAs to create adaptive price channels that respond to different market cycles
Quartile Divisions: Each band set includes middle lines and quartile divisions for more precise entry and exit points
Customizable Parameters: Easily adjust EMA periods and display options to suit your trading style and timeframe
Visual Color Zones: Clear color-coded zones help quickly identify bullish and bearish areas
Optional Extra Divisions: Add more granular internal lines (eighth divisions) for enhanced precision with longer EMA periods
Price Labels Option: Display exact price values for key levels directly on the chart
Price Target Prediction:
One of the most valuable features of this indicator is its ability to help predict potential reversal points:
When price breaks above the Upper2 level, look for potential reversals when the new Upper1 or Middle line aligns with previous Upper2 levels
When price breaks below the Lower2 level, look for potential reversals when the new Lower1 or Middle line aligns with previous Lower2 levels
Settings Guide:
Recommended Settings: 200 for Short EMA, 1000 for Long EMA works extremely well across most timeframes and symbols
Display options allow you to show/hide either band system based on your analysis preferences
The new option to divide the long EMA range into 8 parts instead of 4 is particularly useful when:
Long EMA period is >500
Short EMA is switched off and long EMA is used independently
Perfect for swing traders and position traders looking for a more sophisticated volatility-based overlay that adapts to changing market conditions and provides predictive reversal levels.
Note: This indicator works well across multiple timeframes but is especially effective on H4, Daily and Weekly charts for trend trading.
Equil BB 20 + EMA 180 + Ret 90 + DonchianEMAMix of :
- Bollinger Bands (MA20)
- Donchian Average 90
- EMA 180
- Donchian EMA
Queso Heat IndexQueso Heat Index (QHI) — ATR-Adaptive Edge-Pressure Gauge
QHI measures how strongly price is pressing the edges of a rolling consolidation window. It heats up when price repeatedly pushes the window up , cools down when it pushes down , and drifts back toward neutral when price wanders in the middle. Everything is ATR-normalized so it adapts across symbols and timeframes.
Output: a signed score from −100 … +100
> 0 = bullish pressure (hot)
< 0 = bearish pressure (cold)
≈ 0 = neutral (no side dominating)
What you’ll see on the chart
Rolling “box” (Donchian window): top, bottom, and midline.
Optional compact-box shading when the window height is small relative to ATR.
Background “thermals”: tinted red when Heat > Hot threshold, blue when Heat < Cold threshold (intensity scales with the score).
Optional Heat line (−100..+100), optional 0/±80 thresholds, and optional push markers (PU/PD).
Optional table showing the current Heat score, placeable in any corner.
How it works (under the hood)
Consolidation window — Over lookback bars we track highest high (top), lowest low (bottom), and midpoint. The window is called “compact” when box height ≤ ATR × maxRangeATR .
ATR-based push detection — A bar is a push-up if high > prior window high + (epsATR × ATR + tick buffer) . A push-down if low < prior window low − (epsATR × ATR + tick buffer) . We also measure how many ATRs beyond the edge the bar traveled.
Heat gains (symmetric) — Each push adds/subtracts Heat:
base gain + streak bonus × consecutive pushes + magnitude bonus × ATRs beyond edge .
Decay toward neutral — Each bar, Heat decays by a percentage. Decay is:
– higher in the middle band of the box, and
– adaptive : the farther (in ATRs) from the relevant band (top when hot, bottom when cold), the faster it decays; hugging the band slows decay.
Midpoint bias (optional) — Gentle drift toward hot when trading above mid, toward cold when below mid, with a dead-zone near mid so tiny wobbles don’t matter.
Reset on regime flip (optional) — First valid push from the opposite side can snap Heat back to 0 before applying new gains.
How to read it
Rising hot with slow decay → strong upside pressure; pullbacks that hold near the top band often continue.
Flip to cold after being hot → regime change risk; tighten risk or consider the other side.
Compact window + rising hot (or cold) → squeeze-and-go conditions.
Neutral (≈ 0) → edges aren’t being pressured; expect mean-reversion inside the box.
Key inputs (what they do)
Window & ATR
lookback : size of the Donchian window (longer = smoother, slower).
atrLen : ATR period for all volatility-scaled thresholds.
maxRangeATR : defines “compact” windows for optional shading.
topBottomFrac : how thick the top/bottom bands are (used for decay/pressure logic).
Push detection (ATR-based)
epsATR : how many ATRs beyond the prior edge to count as a real push.
tickBuff : fixed extra ticks beyond the ATR epsilon (filters micro-breaches).
Heat gains
gainBase : main fuel per push.
gainPerStreak : rewards consecutive pushes.
gainPer1ATRBrk : adds more for stronger breakouts past the edge.
resetOppSide : snap back to 0 on the first opposite-side push.
Decay
decayPct : baseline % removed each bar.
decayAccelMid : multiplies decay when price is in the middle band.
adaptiveDecay , decayMinMult , decayPerATR , decayMaxMult : scale decay with ATR distance from the nearest “target” band (top if hot, bottom if cold).
Midpoint bias
useMidBias : enable/disable drift above/below midpoint.
midDeadFrac : width of neutral (no-drift) zone around mid.
midBiasPerBar : max drift per bar at the box edge.
Visuals (all default to OFF for a clean chart)
Plot Heat line + Show 0/±80 lines (only shows thresholds if Heat line is on).
Hot/Cold thresholds & transparency floors for background shading.
Push markers (PU/PD).
Heat score table : toggle on; choose any corner.
Tuning quick-starts
Daily trending equities : lookback 40–60; epsATR 0.10–0.25; gainBase 12–18; gainPerStreak 0.5–1.5; gainPer1ATRBrk 1–2; decayPct 3–6; adaptiveDecay ON (decayPerATR 0.5–0.8).
Intraday / noisy : raise epsATR and tickBuff to filter noise; keep decayPct modest so Heat can build.
Weekly swing : longer lookback/atrLen; slightly lower decayPct so regimes persist.
Alerts (included)
New window HIGH (push-up)
New window LOW (push-down)
Heat turned HOT (crosses above your Hot threshold)
Heat turned COLD (crosses below your Cold threshold)
Best practices & notes
Use QHI as a pressure gauge , not a standalone system—combine with your entry/exit plan and risk rules.
On thin symbols, increase epsATR and/or tickBuff to avoid spurious pushes.
Gap days can register large pushes; ATR scaling helps but consider context.
Want the Heat in a separate pane? Use the companion panel version; keep this overlay for background/box visuals.
Pine v6. Warm-up: values appear as soon as one bar of window history exists.
TL;DR
QHI quantifies how hard price is leaning on a consolidation edge.
It’s ATR-adaptive, streak- and magnitude-aware, and cools off intelligently when momentum fades.
Watch for thermals (background), the score (−100..+100), and fresh push alerts to time entries in the direction of pressure.
Smart Breakout with ATR Stop-LossThe Smart Breakout indicator combines a classic 20-day Donchian channel breakout with a tight trailing stop, drawing green lines and “ENTRY” labels at the bar after a valid breakout, and red lines and “EXIT” label at the bar after a stop-loss breach.
By default it uses the chart’s timeframe to compute ATR and stops, but you can flip on Daily lock to freeze both ATR and price reads at the daily resolution—so your stops stay the same whether you view at 1s, 15 m, 4h or lower frequency bars.
Key features:
20-day Donchian breakout: entry when price closes above the highest high of the previous 20 bars
2 × ATR(14) trailing stop: initialized at entry and raised only when the new (close – 2 × ATR) exceeds the prior stop
Daily lock option: Ensures all ATR and close values are calculated on the daily timeframe, keeping stop levels consistent across resolutions
[3Commas] Turtle StrategyTurtle Strategy
🔷 What it does: This indicator implements a modernized version of the Turtle Trading Strategy, designed for trend-following and automated trading with webhook integration. It identifies breakout opportunities using Donchian channels, providing entry and exit signals.
Channel 1: Detects short-term breakouts using the highest highs and lowest lows over a set period (default 20).
Channel 2: Acts as a confirmation filter by applying an offset to the same period, reducing false signals.
Exit Channel: Functions as a dynamic stop-loss (wait for candle close), adjusting based on market structure (default 10 periods).
Additionally, traders can enable a fixed Take Profit level, ensuring a systematic approach to profit-taking.
🔷 Who is it for:
Trend Traders: Those looking to capture long-term market moves.
Bot Users: Traders seeking to automate entries and exits with bot integration.
Rule-Based Traders: Operators who prefer a structured, systematic trading approach.
🔷 How does it work: The strategy generates buy and sell signals using a dual-channel confirmation system.
Long Entry: A buy signal is generated when the close price crosses above the previous high of Channel 1 and is confirmed by Channel 2.
Short Entry: A sell signal occurs when the close price falls below the previous low of Channel 1, with confirmation from Channel 2.
Exit Management: The Exit Channel acts as a trailing stop, dynamically adjusting to price movements. To exit the trade, wait for a full bar close.
Optional Take Profit (%): Closes trades at a predefined %.
🔷 Why it’s unique:
Modern Adaptation: Updates the classic Turtle Trading Strategy, with the possibility of using a second channel with an offset to filter the signals.
Dynamic Risk Management: Utilizes a trailing Exit Channel to help protect gains as trades move favorably.
Bot Integration: Automates trade execution through direct JSON signal communication with your DCA Bots.
🔷 Considerations Before Using the Indicator:
Market & Timeframe: Best suited for trending markets; higher timeframes (e.g., H4, D1) are recommended to minimize noise.
Sideways Markets: In choppy conditions, breakouts may lead to false signals—consider using additional filters.
Backtesting & Demo Testing: It is crucial to thoroughly backtest the strategy and run it on a demo account before risking real capital.
Parameter Adjustments: Ensure that commissions, slippage, and position sizes are set accurately to reflect real trading conditions.
🔷 STRATEGY PROPERTIES
Symbol: BINANCE:ETHUSDT (Spot).
Timeframe: 4h.
Test Period: All historical data available.
Initial Capital: 10000 USDT.
Order Size per Trade: 1% of Capital, you can use a higher value e.g. 5%, be cautious that the Max Drawdown does not exceed 10%, as it would indicate a very risky trading approach.
Commission: Binance commission 0.1%, adjust according to the exchange being used, lower numbers will generate unrealistic results. By using low values e.g. 5%, it allows us to adapt over time and check the functioning of the strategy.
Slippage: 5 ticks, for pairs with low liquidity or very large orders, this number should be increased as the order may not be filled at the desired level.
Margin for Long and Short Positions: 100%.
Indicator Settings: Default Configuration.
Period Channel 1: 20.
Period Channel 2: 20.
Period Channel 2 Offset: 20.
Period Exit: 10.
Take Profit %: Disable.
Strategy: Long & Short.
🔷 STRATEGY RESULTS
⚠️Remember, past results do not guarantee future performance.
Net Profit: +516.87 USDT (+5.17%).
Max Drawdown: -100.28 USDT (-0.95%).
Total Closed Trades: 281.
Percent Profitable: 40.21%.
Profit Factor: 1.704.
Average Trade: +1.84 USDT (+1.80%).
Average # Bars in Trades: 29.
🔷 How to Use It:
🔸 Adjust Settings:
Select your asset and timeframe suited for trend trading.
Adjust the periods for Channel 1, Channel 2, and the Exit Channel to align with the asset’s historical behavior. You can visualize these channels by going to the Style tab and enabling them.
For example, if you set Channel 2 to 40 with an offset of 40, signals will take longer to appear but will aim for a more defined trend.
Experiment with different values, a possible exit configuration is using 20 as well. Compare the results and adjust accordingly.
Enable the Take Profit (%) option if needed.
🔸Results Review:
It is important to check the Max Drawdown. This value should ideally not exceed 10% of your capital. Consider adjusting the trade size to ensure this threshold is not surpassed.
Remember to include the correct values for commission and slippage according to the symbol and exchange where you are conducting the tests. Otherwise, the results will not be realistic.
If you are satisfied with the results, you may consider automating your trades. However, it is strongly recommended to use a small amount of capital or a demo account to test proper execution before committing real funds.
🔸Create alerts to trigger the DCA Bot:
Verify Messages: Ensure the message matches the one specified by the DCA Bot.
Multi-Pair Configuration: For multi-pair setups, enable the option to add the symbol in the correct format.
Signal Settings: Enable the option to receive long or short signals (Entry | TP | SL), copy and paste the messages for the DCA Bots configured.
Alert Setup:
When creating an alert, set the condition to the indicator and choose "alert() function call only".
Enter any desired Alert Name.
Open the Notifications tab, enable Webhook URL, and paste the Webhook URL.
For more details, refer to the section: "How to use TradingView Custom Signals".
Finalize Alerts: Click Create, you're done! Alerts will now be sent automatically in the correct format.
🔷 INDICATOR SETTINGS
Period Channel 1: Period of highs and lows to trigger signals
Period Channel 2: Period of highs and lows to filter signals
Offset: Move Channel 2 to the right x bars to try to filter out the favorable signals.
Period Exit: It is the period of the Donchian channel that is used as trailing for the exits.
Strategy: Order Type direction in which trades are executed.
Take Profit %: When activated, the entered value will be used as the Take Profit in percentage from the entry price level.
Use Custom Test Period: When enabled signals only works in the selected time window. If disabled it will use all historical data available on the chart.
Test Start and End: Once the Custom Test Period is enabled, here you select the start and end date that you want to analyze.
Check Messages: Check Messages: Enable this option to review the messages that will be sent to the bot.
Entry | TP | SL: Enable this options to send Buy Entry, Take Profit (TP), and Stop Loss (SL) signals.
Deal Entry and Deal Exit: Copy and paste the message for the deal start signal and close order at Market Price of the DCA Bot. This is the message that will be sent with the alert to the Bot, you must verify that it is the same as the bot so that it can process properly.
DCA Bot Multi-Pair: You must activate it if you want to use the signals in a DCA Bot Multi-pair in the text box you must enter (using the correct format) the symbol in which you are creating the alert, you can check the format of each symbol when you create the bot.
👨🏻💻💭 We hope this tool helps enhance your trading. Your feedback is invaluable, so feel free to share any suggestions for improvements or new features you'd like to see implemented.
__
The information and publications within the 3Commas TradingView account are not meant to be and do not constitute financial, investment, trading, or other types of advice or recommendations supplied or endorsed by 3Commas and any of the parties acting on behalf of 3Commas, including its employees, contractors, ambassadors, etc.
Turtle tradingA minimal breakout trend following indicator (Turtle trading). Entry is on the break of a Donchian channel and exit is on the reversal at a shorter-term Donchian channel (trailing stop).
Entry levels are hidden in an active trend, and only the active exit level is shown. Levels and entry/exit markers can be shown or hidden independently.
Reversal PointsHi , in this script i tried to find reversal points on big trends. For this purpose i have used Supertrend and Donchian channels. I combined both in a single indicator for finding reversal points. I am suggesting for using higher time frames like 4 hours or 1 day. It will be work in lower time frames too. But the signals will be less reliable than higher timeframes. Here is settings in this script:
New low sensitiity : this setting for donchian channels lookback. Bigger value result as less signals.
Atr Period: Period for Atr , it is for supertrend indicator in it.
Source: Source for supertrend indicator.
Atr Multiplier : Atr multiplier setting for Supertrend. Bigger value will be result as less signals.
Good luck.
Enes.
Bull Trend Filtered StochRSI (BTFS)Ride Bull Trends Via Stochastic with Special Rules for Heavy Bullish Bias
TLDR: Long Only Trend Indicator Where you are always entered Long if the stochastic is over the lower band line and the price is above the Donchian Chanel high. Exit when Stochastic RSI is below the lower band.
Indicators:
Filter = Trend/Bullish indicator is Donchian of ema(high) this is set as the highest ema(high, 6) in the last 30 candles. this can be adjusted to fit the market as desired.
**indicator prints green background when the filter condition is satisfied***
Entry Exit = enter when the Stoch RSI is above the given lower trend band. This value is set at 35 but can be adjusted according to risk tolerance and market conditions.
Logic:
this indicator allows a trader to be present during bullish/parabolic trends by only triggering if the close is > than the highest 6 candle average high over the last 30 candles. This filter requires the market to be in a generally bullish posture. If the market is in this condition the stochastic RSI indicator value offers a good gauge of price action and only goes significantly down if price trends below the average range of the rsi period. This filters out noise and keeps a trader from over trading on inconsequential corrections while responding fairly quickly to changes in general trend direction. the response is fast enough to produce an unprofitable amount of false signals if the bull market filter is not implemented. However when used in combination the signals return desirable results in bull trending markets.
Hope this Helps. Happy Trades.
-Snarky Puppy
Keltner Center Of Gravity Channel ( KeltCOG )I have the ambition to create a ‘landscape’ which enables the user to see the ‘mood’ of the market about the price of an instrument, simply by looking where the candles go. Prices are a simple phenomenon , they go up or down or stay the same. This is represented quite well for the short term by a candle. I recommend to study candle patterns. Prices not only fluctuate but also trend up, down or go sideways. The user should analyze this by determining the COG (Center Of Gravity) and the ‘normal’ current range by using the historical data in a lookback period.
As a COG the center line of a Donchian Channel is often used. I.m.o. a COG should be a zone, in this channel I use the gray zone of my Donchian Fibonacci Channel, The ‘normal’ range is a multiple of Average True Range, as used in a Keltner Channel. Combining the two can give a cumbersome result, as one can see in my Keltner Fibonacci Channel. In this KeltCOG channel I solved this by not using all Fibonacci levels and by making the Keltner lines strictly parallel to the nearest COG line. To do this, I use the fact that the COG lines have horizontal stretches, there I make the Keltner lines horizontal too. Only where the COG lines change value, the Keltner lines are recalculated. This way the channel gets a very regular shape with three clear zones.
Interpretation of a chart by using the KeltCOG channel.
Overbought: If the candles go higher then the blue zone, the market is hyper enthusiast, creating an overbought situation. This is often followed by a reversion to the COG.
Uptrend: If the candles form in the blue zone, the market is enthusiast and willing to pay more.
Hopeful: If the candles form in or near the upper uncolored zone, the market is hopeful and is thinking about paying more. Sometimes prices go a little up.
Content: If the candles form in the gray zone, which represents COG, the market is happy with the current prices, so these move sideways
Disappointed: If the candles form in or near the lower uncolored zone, the market is disappointed and contemplates paying less, sometimes prices go a little down.
Downtrend: If the candles form in red zone, the market doesn’t like the instrument at all, rejects the current price and is only prepared to pay less.
Oversold: If the candles form below the red zone, the market overdoes its disgust, creating an oversold situation, often followed by a reversion to the COG.
Motion To Attraction ChannelsIntroduction
Channels are used a lot on technical-analysis, however most of the them rely on adding/subtracting a volatility indicator to a central tendency indicator, sometimes the central tendency indicator can even be replaced by pure price. A great channel who does not rely on this kind of architecture is the Donchian channels or the quartiles bands. Here i propose a channel similar to the one made by Richard Donchian with some additional abilities.
The Channels
In my indicator, Motion To Attraction mean that the movement of an object a attract an object b , but we can resume this approach by saying that the longer a trend period is, the smaller the distance between each channels, for example if the price create a new highest then the lowest will move toward this new highest, each time coming closer. The philosophy behind this is that the longer a trend is the more probable it is that she will end.
The code reflect it this way :
here the parameter controlling the channel A (upper)
c = change(b) ? nz(c ) + alpha : change(a) ? 0 : nz(c )
this is traduced by : if channel b move then the parameter c become greater, if channel a move then reset the parameter , the parameter d do the same.
c is used to move the channel A, when c < 1 A is closer to the highest, when c = 1 A is in a central tendency point, when c > 1 A is closer to the lowest.
Slaving the Movement
It is possible to have a better control over the channels, this is done by making c and d always equal or lower than 1. Of course it could be another max value selected by the user.
In order to do that add c1 and d1 as parameter with c1 = c > 1 ? 1 : c , same with d1 but replace c by d.
Its safer to do this but i prefer how the channels act the other way, i will consider implementing this option in the future.
Conclusion
This channel indicator does not rely on past data thanks to recursion. The alpha variable at the start can also be adaptive, this let you make the channels adaptive even if such idea can add non desired results. Low length values can create effects where the lower channel can be greater than the higher one, this can be fixed directly in the code or using the method highlighted in the Slaving the Movement part.
[RS]Normalized Moving Average V0Experimental: using extreme donchians average to normalize price value.
method for Double Normalized MA also on the code:
NMA(NMA1, NMA2, LENGTH)
Momentum ChannelbandsThe "Momentum Channelbands" is indicator that measures and displays an asset's momentum. It includes options to calculate Bollinger Bands and Donchian Channels around the momentum. Users can customize settings for a comprehensive view of momentum-related insights. This tool helps assess trend strength, identify overbought/oversold conditions, and pinpoint highs/lows. It should be used alongside other indicators due to potential lag and false signals.
Auto-Length Adaptive ChannelsIntroduction
The key innovation of the ALAC is the implementation of dynamic length identification, which allows the indicator to adjust to the "market beat" or dominant cycle in real-time.
The Auto-Length Adaptive Channels (ALAC) is a flexible technical analysis tool that combines the benefits of five different approaches to market band and price deviation calculations.
Traders often tend to overthink of what length their indicators should use, and this is the main idea behind this script. It automatically calculates length based on pivot points, averaging the distance that is in between of current market highs and lows.
This approach is very helpful to identify market deviations, because deviations are always calculated and compared to previous market behavior.
How it works
The indicator uses a Detrended Rhythm Oscillator (DRO) to identify the dominant cycle in the market. This length information is then used to calculate different market bands and price deviations. The ALAC combines five different methodologies to compute these bands:
1 - Bollinger Bands
2 - Keltner Channels
3 - Envelope
4 - Average True Range Channels
5 - Donchian Channels
By averaging these calculations, the ALAC produces an overall market band that generalizes the approaches of these five methods into a single, adaptive channel.
How to Use
When the price is at the upper band, this might suggest that the asset is overbought and may be due for a price correction. Conversely, when the price is at the lower band, the asset may be oversold and due for a price increase.
The space between the bands represents the market's volatility. Wider bands indicate higher volatility, while narrower bands suggest lower volatility.
Indicator Settings
The settings of the ALAC allow for customization to suit different trading strategies:
Use Autolength?: This allows the indicator to automatically adjust the length of the dominant cycle.
Usual Length: If "Use Autolength?" is disabled, this setting allows the user to manually specify the length of the cycle.
Moving Average Type: This selects the type of moving average to be used in the calculations. Options include SMA, EMA, ALMA, DEMA, JMA, KAMA, SMMA, TMA, TSF, VMA, VAMA, VWMA, WMA, and ZLEMA.
Channel Multiplier: This adjusts the distance between the bands.
Channel Multiplier Step: This changes the step size of the channel multiplier. Each next market band will be multiplied by a previous one. You can potentially use values below 1, which will plot bands inside the first, main channel.
Use DPO instead of source data?: This setting uses the DPO for calculations instead of the source data. Basically, this is how you can add or eliminate trend from calculation of an average leg-up / leg-down move.
Fast: This adjusts the fast length of the DPO.
Slow: This adjusts the slow length of the DPO.
Zig-zag Period: This adjusts the period of the zig-zag pattern used in the DPO.
(!) For more information about DPO visit official TradingView description here: link
Also, I want to say thanks to @StockMarketCycles for initial idea of Detrended Rhythm Oscillator (DRO) that I use in this script.
The Adaptive Average Channel is a powerful and versatile indicator that combines the strengths of multiple technical analysis methods.
In summary, with the ALAC, you can:
1 - Dynamically adapt to any asset and price action with automatic calculation of dominant cycle lengths.
2 - Identify potential overbought and oversold conditions with the adaptive market bands.
3 - Customize your analysis with various settings, including moving average type and channel multiplier.
4 - Enhance your trading strategy by using the indicator in conjunction with other forms of analysis.
custom Bollinger bands with filters - indicator (AS)-----------Description-------------
This indicator is basically Bollinger bands with many ways to customize. It uses highest and lowest values of upper and lower band for exits. I think something is wrong with the script but cant find any mistakes – most probably smoothing. The ATR filter is implemented but is working incorrectly. In code you can also turn it into strategy but I do not recommend it for now as it is not ready yet.
So this is my first script and I am looking for any advice, ideas to improve this script, sets of parameters, markets to apply, logical mistakes in code or any ideas that you may have. Indicator was initially designed for EURUSD 5MIN but I would be interested in other ideas.
-----------SETTINGS--------------
---START - In starting settings we can choose
Line 1: what parts to use BB/DC/ATR
Line 2: what parts to plot on chart
Line 3 Whether or not apply smoothing to BB or ATR filter
Line 4 Calculate deviation for BB from price or Moving average
Line 5 Fill colors and plot other parts for debug (overlay=false)
Line 6:( for strategy) – enable Long/Short Trades
---BB and DC – here we modify Bollinger bands and Donchian
Line 1: Length and type of BB middle line and also length of DC from BB
Line 2: Length and type of BB standard deviation and multiplier
Line 3: Length and type of BB smoothing and %width for BB filter
---ATR filter – (not ready fully yet)
Line 1: type and length of ATR
Line 2: threshold and smoothing value of ATR
---DATE and SESSION
Line 1: apply custom date or session?
Line 2: session hours settings
Line 3:Custom starting date
Line 4: Custom Ending date
-----------HOW TO USE--------------
We open Long if BB width is bigger than threshold and close when upper band is no longer highest in the period set. Exact opposite with Short
Super 8 - 30M BTCWelcome to Super 8, the ultimate automatic trading script for Pine!
This bad boy is designed to go both long and short, and it's equipped with all the tools you need to maximize your profits. Whether you're looking to take profit, set a trailing stop, or protect yourself with a stop loss, Super 8 has you covered.
But that's not all! Super 8 is also loaded with 8 powerful indicators to help you make informed decisions. We've got the EMA, ADX, SAR, MACD, VOLUME, BOLLINGER BANDS, DONCHIAN, and ATR all working together to give you the best possible trading experience.
And if you want to take it to the next level, Super 8 also has a feature that lets you use stepped entries in normal mode or incremental 1,2,3,... to improve your average price. Plus, if you're using trailing stop, you can activate the Backtest precision to use lower timeframes.
But what's in a name? Super 8 is called that because it's just that... super! It's tailored specifically for the OKX:BTCUSDT.P pair, so you know you're getting the best possible results. it's highly adjustable and can be used with any other pair. So no matter what market you're trading in, Super 8 has got you covered.
So if you want to level up your trading game, give Super 8 a try. You won't be disappointed.
Certain Risks of Live Algorithmic Trading:
Backtesting Cannot Assure Actual Results.
The relevant market might fail or behave unexpectedly.
Your broker may experience failures in its infrastructure, fail to execute your orders in a correct or timely fashion or reject your orders.
The system you use for generating trading orders, communicating those orders to your broker, and receiving queries and trading results from your broker may fail.
Time lag at various point in live trading might cause unexpected behavior.
The systems of third parties in addition to those of the provider from which we obtain various services, your broker, and the applicable securities market may fail or malfunction.