expected range STUDYThis is an indicator that measures how much price movement (low to high) we've seen in a set of 1 bar back, 2 bars back, 3 bars back, 5 bars back, 8 bars back using the Fibonacci sequence up to 89 bars back, and then measures how low or high within each range we are, sort of like giving a rating of 0 for sitting on the lower Bollinger Band and a rating of 100 for sitting on the higher Bollinger band. It combines all the data and weights the data by the historical strength of signal from each length of bands. It's been tuned to a 2 hour XBTUSD chart, but it could be used on other things and other timeframes too. Some tweaking would be needed, though. The final result works more like a trend following indictor than and indicator that tries to pick an exact trend reversal point. However, you're free to use it how you want. Frequently you get a nice red or green spike up showing you when the bottom or top is in, but sometimes those spikes are just the start of an extended down move or up move.
On the chart, a buy (long) signal is generated when the green line crosses up above the orange line. To make it extra clear the background is green when you should be long. A sell (short) signal is generated with the red line crosses up above the yellow line. The background will be red when you should be short. If the background is black, it's indicating a profit of over 53% was taken and it's waiting for another trade to start. Up to you to take profit or keep riding your trade.
For XBTUSD trades, a full take profit on any trade exceeding 53% gains works nice (on 1x leverage) and a stoploss of -7% works quite nicely too. One could use this on up to 2x leverage but I wouldn't recommend going much higher. Have fun. Trade carefully. Don't get rekt.
I will release the "expected range STRATEGY" to go along with this so you can do your own backtesting.
Disclaimer: I haven't tested the alerts, but they should work. Use at your own risk.
Wyszukaj w skryptach "backtesting"
NoNonsense Forex - high timeframe trading absurd NON-REPAINTINGSome time ago I bumped into NoNonsense Forex - pretty good-looking course with well-designed videos, reasonable rules, etc. Nice explanatory videos, not selling anything, building indicators-only strategy. But there was one thing that really annoyed me - it was supposed to work only on Daily timeframe. What is the point in trading such high timeframe, if decisions changing market direction are playing out within 1 minute? What is the point in evaluating trades from 1994 if we are 25 years later?
Anyway, I have developed this strategy, which is:
- non-repainting
- not using trailing-stop
- not using any other known TradingView backtest bugs
And I'm showing it as an example of OVERFITTING. Backtesting results look absurd: 100% profitable. But if you change any of the many parameters in the Settings popup, they will turn into disaster. It means, the rules of this strategy are very fragile. Don't trade this! Remember about backtesting rule #1: past results do not guarantee success in the future.
I'm giving this strategy out with the source code. Feel free to do anything you want with it. But if you find parameters or modifications on, which allow profitable trading on lower timeframes, don't be shy, let me know :)
*********
Forex / Indices / Commodities traders who want to start AUTO-TRADING might want to take a look at "TradingConnector", which allows no-latency trades execution from TradingView to MT4/MT5.
Heiken-Ashi CandlesSimple script to view Heiken-Ashi candles below a normal candles chart.
Could also be useful for using HA calcs in strategy scripts on normal candles chart for proper backtesting.
I adapted this to v4 from original v2 script by @samtsui. If you like please remember to give him a Thumbs Up for his original version! ->
Visual RSI [LucF]Visual RSI offers a different way of looking at RSI by providing a composite representation of 9 different RSI-generated components. Instead of focusing on one line only, this approach blends multiple sources to provide the viewer with a larger context RSI-based picture.
For those who don’t want to read
• Green in bullish (>50) zone is the most bullish.
• Red in bullish zone doesn’t necessarily mean bearish—it just means bullish strength is weakening. It may be just a pause before a reprise or exhaustion signalling a reversal—impossible to tell.
• The same in inverse applies to the bearish zone (<50).
For those who want to understand
The nine components making up Visual RSI are:
• a current timeframe RSI
• a higher timeframe RSI
• the delta between these two RSI lines
• for each of these three basic components, two independent Bollinger band: one calculated for the bullish section of the scale (>50) and a separate one calculated for the lower bearish region.
Dual BBs
In my view, RSI’s position with regards to the centerline is much more important than its position in extreme areas. Why? Because the building block of RSI is the ratio of the averages of up/down moves during the RSI period. When the average of ups is greater, RSI is > 50. So while a rising signal starting from 20 let’s say, indicates that the rate of change is increasing, only when it crosses 50 can we say that sentiment balance has truly become bullish, and this information is more reliable than the signal being at a level corresponding to whatever estimate we make of what constitutes an extreme value. In my landscape, the general balance of a ratio provides more valuable information than the ratio’s exact value.
The idea behind the dual BBs is to provide independent tracking information for both halves of the indicator’s space, which I find more useful than the normal method of simply adding a multiple of the standard deviation on both sides of the mean. With dual BBs, the upper BB will never go lower than the indicator’s centerline, and the lower BB will never go higher. The upper BB focuses on upper-bound volatility when the signal is bearish, and the lower BB focuses on downside volatility when the signal is bearish.
The functions used to calculate the independent BBs are reusable on other signals if a centerline can be defined for them. A clamping percentage is implemented, so that when a BB line is hugging the centerline it clamps to it. This helps in providing earlier signals when they use the BB line states.
Providing context to RSI
What RSI measures indirectly is the balance in the rate of change—or the speed of price movement, but not its instant value, otherwise RSI would be even noisier. More precisely, RSI represents the relative strength of the up/down movement in the last n bars of RSI’s length, with 14 often used because that’s what Wilder proposed (Visual RSI’s defaults are 20 for the current timeframe and 40 for the higher timeframe). At every bar, a new value is added to the equation and an old value carrying equal weight is dropped, so a large dropped off value will have more impact on RSI’s value if the new bar’s move is small. This accounts for some of RSI’s speed in identifying exhaustion after important moves, but almost for some of its noise.
Visual RSI is the result of trying to drown RSI’s noise in the context of other informational streams, while simultaneously providing even faster information than RSI alone, by giving more visual weight to the delta between the current and higher timeframe RSI’s.
How to read Visual RSI
The default settings show all 9 basic components as green/red areas of intensities varying with their importance. The most intense colors are reserved for the delta RSI and the BBs have the lightest intensities. The individual lines of components are intentionally difficult to distinguish so that focus is first on the general picture, including the all-important six-state background, and then on the delta RSI.
One entry setup could be reversals in a larger trend context, so low pivots of the delta in a fully bullish context (a green background in the upper section of the indicator), and inversely, high pivots in a fully bearish context (a red background in the lower section of the indicator).
Please resist the common misconception, when interpreting RSI, that a reversal in the signal will necessarily lead to a reversal in price. Each trend has its rhythm. Only machine-generated price action can progress regularly. It’s normal for trends to take a breather for some time before they continue or reverse, as traders driving the trend experience emotional fatigue and gradual fear. RSI reversals merely signify that such a breather has occurred—nothing more. Only the larger context can provide information that can situate that pause and put more meaningful odds on it having more probability of continuing in one direction or the other. This is the reasoning behind the setup just described.
Features
• All components can be hidden, displayed as a simple line, a uniformly colored fill, or a green/red fill (the default).
• The background can be colored using 9 different methods, including 3 six-state methods using the rising/falling BB lines of the 3 basic components. These six states allow for bullish/bearish/neutral sentiment in both the upper and lower regions of the indicator. A bearish (dark red) background in the bullish (>50) section of the indicator represents decreasing bullishness. A bearish (slightly brighter red) in the bearish (<50) section of the indicator means incresingly bearish sentiment. The six-state backgrounds allow for neutral (no color) sentiment when no compelling signs can be found to conclude anything with meaningful odds. The default background uses the six-state method on the higher timeframe RSI’s BBs because I find it the most useful, as it represents the largest—and slowest—context sentiment among all the indicator’s components.
• A thin status bar in the top part of the indicator also allows selection of the same 9 methods to color it. The default is a triple-state system using the rising/falling characteristics of the current timeframe RSI’s BBs to provide a short-term counterbalance to the long-term background.
• Three different markers can be configured using approximately 70 permutations each, each filtered by 20 different filter permutations. When modification of the relevant parameters in the script’s Settings/Settings/Parameters section is added, possibilities are almost endless. If the generated signals are then fed into the PineCoders Engine and combined with the Engine’s own options, the permutations go up another order of magnitude, and changes to any setting can be instantly evaluated using the Engine’s backtesting results.
• Five simple filters can be combined. They are additive. They include volume-related conditions and a chandelier, which I find useful because both volume and volatility (the chandelier using highs/lows and ATR) are sensible complementary sources to RSI’s momentum information. The filter’s state can be shown as a thin line at the bottom of the indicator.
• Alerts can be configured using any of the marker/filter combinations mentioned. As usual, once your markers/filters are set up the way you want, create your alert from the chart/timeframe you want the alert to run on and be sure to use the “Once Per Bar Close” triggering condition. Use an alert message that will remind you of which combination of markers were used when creating the alert.
• A plot providing entry signals for the PineCoders Backtesting & Trading Engine is supplied. It will use whichever marker/filter configuration is active to generate signals.
• All higher timeframe information is non-repainting. Higher timeframe lines can be smoothed (the default). The selection of the higher timeframe can be made using 3 different methods:
1. By steps (if current timeframe <= 1 minute: 60 min, <= 60 min: 1D, <= 6H: 3D, <= 1D: 1W, <=1W: 1M, >1W: 12M)
2. By a user-defined multiple of the current timeframe
3. Using a fixed timeframe
Thanks to:
• Alex Orekhov aka @everget for the chandelier code.
• @RicardoSantos who through a small remark early on, unknowingly put me on the track of eliminating noise through visual crowding.
• The brilliant guys in the PineCoders Pro room for your knowledge, limitless creativity and constant companionship.
Golden Cross by -Westy-Quick Guide
- Yellow cross and green MA on top = Potential uptrend
- Yellow cross and red MA on top = Potential downtrend
A simple golden cross indicator of the green 50 and red 200 SMA with a yellow cross for ease of visibility and backtesting.
Generally, longer time frames more powerful signals but are less frequent. I typically use it on the 4 hour, daily and weekly.
WOW no repainting and no security() call! 100% real results!If you couldn't tell by the title, this is a joke lmao.
TV has an awful backtesting engine and I just wanted to prove this with a super simple script.
We buy when close > open
and sell when close < open.
That's it.
There is also some risk management and trade closing when we reach a certain drawdown, but wait!
TradingView doesn't know what equity drawdown is because they don't use tick data or any lower timeframe data! Wowow!
Ps - all tickdata for Forex & CFD historical data is free from Dukascopy if you want to perform your own backtesting ;)
Dukascopy Data
Enjoy
-DasanC
Complete turtles strategy based on the donchian channelsDear Traders and investor,
I want to demonstrate scrypt of the iconic "trend following strategy" coded by my
The main idea was borrowed from the book "Way of the Turtle: The Secret Methods that Turned Ordinary People into Legendary". The strategy is based on the donchian channels and is one of the oldest and easiest strategy in the using. Also strategy include risk managment and trends filter which prevent false entries and high drawndowns. The results are based on the period from 2006 to present, but you can also change timeframe and period of backtesting.
Best regards,
Vlad
Multiple Moving Averages Alerts ScriptAlerts script that has triggers on multiple moving average crossovers so that profit is maximised, it also has an optional control moving average, enabled by default, that when active will stop trading when the price (first ma) is below the control moving average.
Source code is open so that others can use and modify
Click Below for Backtesting version:
Disclaimers, not an expert, not intended to be financial advise.
Biffy
SimpleCrossOver_BotThis is a simple example of how you can compile your own strategy
This script contains the code for alerts and for backtesting.
In order to use the backtester, comment out the sections to be used for signals, and comment in the sections to be used on the back tester, and visa versa for using the script for alerts in order to automate your own bot.
Awesome Oscillator.MMouse_Lager_BCEAwesome Oscillator with added options for turning short trades on and off, as well as a start date for backtesting.
Two Bar Break Line Alerts R1.0 by JustUncleLThis indicator with default settings is designed for BINARY OPTIONS trading. The indicator can also be used for Forex trading with some setting changes. The script shows Two Bar Pullback Break lines and alerts when those Break lines are Touched (broken) creating a short term momentum entry condition.
For a Bullish Break (Green Up Arrow) to occur: first must have two (or three) consecutive bear (red) candles which is followed by a bull (green) candle creating a pivot point. The breakout occurs then the High of the current Bull (green) exceeds the highest point of the previous two (or three) pivotal bear candles. The green channel Line shows where the current Bullish BreakOut occurs.
For a Bearish Break (Red Down Arrow) to occur: first must have two (or three) consecutive bull (green) candles which is followed by a bear (red) candle creating a pivot point. The breakout occurs when the Low of the current Bear (red) drops below the lowest point of the previous two (or three) pivotal Bull candles. The red channel Line shows where the current Bearish BreakOut occurs.
The break Line Arrows can optionally be filtered by the Coloured MA (enabled by default), a longer term directional MA (disabled by default) and/or a MACD condition (enabled by default) as a momentum filter.
You can optionally select three Bar break lines instead of two. The three bar break lines are actually equivalent to Guppy's Three Bar Count Back Line method for trade entries (see Guppy's video reference below).
Included in this indicator is an ability to display some basic Binary Option statistics, when enabled (enabled by default) it shows Successful Bars in Yellow and failed Bars in Black and the last Nine numbers on the script title line represent the Binary option Statistics in order:
%ITM rate
Total orders
Successful Orders
Failed Orders
Total candles tested
Candles per Day
Trades per Day
Max Consecutive Wins
Max Consecutive Losses
You can start the Binary Option statistics from a specific Date, which is handy for checking more recent history.
HINTS:
BINARY OPTIONS trading: use 5min, 15m, 1hr or even Daily charts. Trade after the price touches one of the Breakout lines and the Arrow first appears. Wait for the price to come back from Break Line by 1 or 2 pips, the alert arrow must stay on and candle change to black, then take Binary trade expiry End of Candle. If price pull back and arrow turns off, don't trade this candle, move on you probably don't have momentum, there will be plenty of other trigger events. The backtesting results are good with ITM rates 65% to 72% on many currency pairs, commodities and indices. Realtime trading has confirmed the backtesting results and they could even be bettered, provided you are selective on which signals to trade (strong MACD support etc), that you are patient and disciplined to this trading method.
FOREX trading: the default settings should work with scalping. For longer term trades try with settings change to a more standard MACD filter or slower to catch the longer term momentum swings and the idea would be to trade the first Break Line alert that occurs after a decent Pullback in the direction of the trend. Setting the SL to just above/below the Pivot High/Low and set target to two or three times SL.
References:
"Fundamentals of Price Action Trading for Forex, Stocks, Options and Futures" video:
www.youtube.com
Other videos by "basecamptrading" on Naked Trading.
"Taking Profits in Today's Market by Daryl Guppy" video:
www.youtube.com
Pivot Reversal Strategy - TimeFramedThis is Pivot Reversal Strategy including the time frames for backtesting.
Updated TurtlesThis script has been updated to prevent double orders (short/long) from occurring and modifying backtests results.
This is an update to the script that was written a few years ago to prevent double longs/shorts from occurring and skewin backtesting results. Check out the updated indicator here and let me know what you think.
I also added:
- date range inputs if you want to do some backtesting on a particular set of dates.
- the ability to toggle shorting
3 Duck's Trading System from Babypips.comThe 3 Duck's Trading System from Babypips.com
The 3 Duck's Trading System is the most popular and active trading system thread on the the babypips.com forum. It is a system that is mainly for beginners because it teaches you discipline, learning to cope with price moving against your position and learning to stay in a trade and keep profits running. For the thread and more info on the 3 Duck's Trading System click here
How does it work?
The system is a very simple enter/exit based on the 60 SMA of 3 different time frames: 4 hour, 1 hour and 5 minute.
The Rules, er, the Ducks! The Ducks must all be in a row for a trade to take place!
Duck 1 - To go long, price must be above the 60 SMA on the 4 hour chart.
Duck 2 - To go long, price must be above the 60 SMA on the 1 hour chart.
Duck 3 - To go long, price must cross above the 60 SMA on the 5 minute chart and the 60 SMA of the 5 minute chart must be below that of the 4 hour and 1 hour chart. (obviously the reverse for shorting)
YOU MUST USE THIS SYSTEM ONLY ON THE 5 MINUTE CHART.
I say this because I have already charted all of the Ducks into the 5 minute chart so you don't have to flip back and forth.
I have also added some inputs for profit targets, stop targets, trailing stops and times to trade for backtesting.
If you have any questions or comments, please let me know! If you see I messed up on something, please let me know!
Also a VERY special thanks to the babypips.com user Captain_Currency . He wrote this strategy 10 years ago (2007 was 10 years ago?!) and he is still active on the thread and posting results and offering help!
Adam Smith - MovingAvg CrossSimple Moving Average Cross script. Test on stocks and currency. For stocks test shorter time periods, meaning intra-day time periods such as 3min to 30min and so on to fit what is best. For currency, try longer periods with this model such as day to weeks depending on which currency.
NOTE: Take a look at your Max Drawdowns when testing. This will be the main indicator once you figure out your time period for backtesting. This will also let you know how much money to save and/or hold back in savings for down periods.
Adding some essential components to a prebuilt RSI strategyThis is more to be used as a blank_slate for any strategy build adding more effective backtesting with a period selector and inputs like TS, TP, SL that can all be used as plots for alerts.
It has the BackTest Component created by Pbergden
It also includes the standard long/short with trailing stop, take profit, stop loss and margin call.
Here is a video using the blank_slate to add in the built-in RSI Strategy.
youtu.be
We hope this brings good results and helps speed things up for everyone.
Trend v4.0 Another updateYet another update, default settings can be customized to your needs. Be aware that while this is similar to the other versions, this can only repaint an active bar, but that slows it down by one period. You are warned. Be that as it may, the basic idea is the same; trying to capture the really strong moves into overbought or oversold territory as defined by Relative Strength index. In RSI mode, you can see the smoothing has slowed it down a bit, but warrants backtesting.
First green bar go long, First red bar go short, first white bar possible trend exhaustion. Or use crossovers and such, play with the inputs OB/OS, RSI length, signal length, tick length, swing length, as I said customize to your tastes. I offer no surety as to its efficacy, but we all learn.
Trade Responsibly,
Shiroki
CM Stochastic POP Method 2-Jake Bernstein_V1Yesterday Jake Bernstein authorized me to post his updated results with the Stochastic Pop Trading System he developed many years ago.
You can take a look at the Original System with Updated Settings at
This indicator is a different set of rules Jake mentioned in the PDF he allowed me to post.
To view the PDF use this link:
dl.dropboxusercontent.com
Today we’re releasing the version described in the PDF that uses the StochK values of 55, 50, and 45. The rules are discussed in the PDF but here is a simple breakdown:
Enter Long when StochK is below 50 and Crosses Above 55
Exit Long on Cross Below 55
Enter Short when StochK is Above 50 and crosses Below 45
Exit Short on Cross Above 45
Two Important Items to understand about this method:
To code the rules Precisely we need a function that will be available when Strategy Capabilities are released on TradingView.
There is one of Jakes Profit Maximizing Strategies that needs to be integrated with this code…which again we need the Strategy based Function that will be coming soon.
To Compare this system to the Stochastic Pop Method 1 System shown yesterday at I used the same Symbol and dates for you to compare…but remember to give this Method 2 System a Fair Look/Evaluation…we need the Soon To Be Released…TradingView Strategy Capabilities.
BackTesting Results Example: EUR-USD Daily Chart Since 01/01/2005
Strategy 1 – Stochastic Pop Method 2 System:
Go Long When Stochasticis below 50 and Crosses Above 55. Go Short When Stochastic is above 50 and Crosses Below 45. Exit Long/Short When Stochastic has a Reverse Cross of Entry Value.
Results:
Total Trades = 151
Profit = 40,758 Pips
Win% = 37.1%
Profit Factor = 1.26
Avg Trade = 270 Pips Profit
***Most Consecutive Wins = 4 ... Most Consecutive Losses = 7
Strategy 2:
Rules - Proprietary Optimization Jake Will Teach. Only Added 1 Additional Exit Rule.
Results:
Total Trades = 151
Profit = 60.305 Pips
Win% = 37.1%
Profit Factor = 1.38
Avg Trade = 399 Pips Profit
***Most Consecutive Wins = 4 ... Most Consecutive Losses = 7
Indicator Includes:
-Ability to Color Candles (CheckBox In Inputs Tab)
Green = Long Trade
Blue = No Trade
Red = Short Trade
Jake Bernstein will be a contributor on TradingView when Backtesting/Strategies are released. Jake is one of the Top Trading System Developers in the world with 45+ years experience and he is going to teach TradingView.com’s community how to create Trading Systems and how to Optimize the correct way.
Link To PDF:
dl.dropboxusercontent.com
Link to Original Version of Indicator with Updated Settings.
CM Stochastic POP Method 1 - Jake Bernstein_V1A good friend ucsgears recently published a Stochastic Pop Indicator designed by Jake Bernstein with a modified version he found.
I spoke to Jake this morning and asked if he had any updates to his Stochastic POP Trading Method. Attached is a PDF Jake published a while back (Please read for basic rules, which also Includes a New Method). I will release the Additional Method Tomorrow.
Jake asked me to share that he has Updated this Method Recently. Now across all symbols he has found the Stochastic Values of 60 and 30 to be the most profitable. NOTE - This can be Significantly Optimized for certain Symbols/Markets.
Jake Bernstein will be a contributor on TradingView when Backtesting/Strategies are released. Jake is one of the Top Trading System Developers in the world with 45+ years experience and he is going to teach how to create Trading Systems and how to Optimize the correct way.
Below are a few Strategy Results....Soon You Will Be Able To Find Results Like This Yourself on TradingView.com
BackTesting Results Example: EUR-USD Daily Chart Since 01/01/2005
Strategy 1:
Go Long When Stochastic Crosses Above 60. Go Short When Stochastic Crosses Below 30. Exit Long/Short When Stochastic has a Reverse Cross of Entry Value.
Results:
Total Trades = 164
Profit = 50, 126 Pips
Win% = 38.4%
Profit Factor = 1.35
Avg Trade = 306 Pips Profit
***Most Consecutive Wins = 3 ... Most Consecutive Losses = 6
Strategy 2:
Rules - Proprietary Optimization Jake Will Teach. Only Added 1 Additional Exit Rule.
Results:
Total Trades = 164
Profit = 62, 876 Pips!!!
Win% = 38.4%
Profit Factor = 1.44
Avg Trade = 383 Pips Profit
***Most Consecutive Wins = 3 ... Most Consecutive Losses = 6
Strategy 3:
Rules - Proprietary Optimization Jake Will Teach. Only added 1 Additional Exit Rule.
Results:
Winning Percent Increases to 72.6%!!! , Same Amount of Trades.
***Most Consecutive Wins = 21 ...Most Consecutive Losses = 4
Indicator Includes:
-Ability to Color Candles (CheckBox In Inputs Tab)
Green = Long Trade
Blue = No Trade
Red = Short Trade
-Color Coded Stochastic Line based on being Above/Below or In Between Entry Lines.
Link To Jakes PDF with Rules
dl.dropboxusercontent.com
Long Only EMA Strategy (9/20 with 200 EMA Filter)Details:
This strategy is built around a very simple idea: follow the primary trend and enter only when momentum supports it.
It uses three EMAs on a standard candlestick chart:
1. 9‑period EMA – short‑term momentum
2. 20‑period EMA – medium‑term structure
3. 200‑period EMA – long‑term trend filter
The strategy is ** long‑only ** and is mainly designed for swing trading and positional trading.
It avoids counter‑trend trades by taking entries only when price is trading ** above the 200 EMA **, which is commonly used as a long‑term trend reference.
The rules are deliberately kept simple so that they are easy to understand, modify, and test on different markets and timeframes.
---
Key Features
1. **Trend‑Filtered Entries**
- Fresh long positions are considered only when:
- The 9 EMA crosses above the 20 EMA
- The closing price is **above** the 200 EMA
- This attempts to combine short‑term momentum with a higher‑timeframe trend filter.
2. **Clean Exit Logic**
- The long position is exited when the closing price crosses **below** the 20 EMA.
- This creates an objective, rule‑based way to trail the trade as long as the medium‑term structure remains intact.
3. **Long‑Only, No Short Selling**
- The script intentionally ignores short setups.
- This makes it suitable for markets or accounts where short selling is restricted, or for traders who prefer to participate only on the long side of the market.
4. **Simple Visuals**
- All three EMAs are plotted directly on the chart:
- 9 EMA (fast)
- 20 EMA (medium)
- 200 EMA (trend)
- Trade entries and exits are handled by TradingView’s strategy engine, so users can see results in the Strategy Tester as well as directly on the chart.
5. **Backtest‑Friendly Structure**
- Uses TradingView’s built‑in `strategy()` framework.
- Can be applied to different symbols, timeframes, and markets (equities, indices, crypto, etc.).
- Works on standard candlestick charts, which are supported by TradingView’s backtesting engine.
6. **Configurable in Code**
- The EMA periods are defined in the code and can be easily adjusted.
- Users can tailor the parameters to fit their own style (for example, faster EMAs for intraday trading, slower EMAs for positional trades).
---
How to Use
1. **Add the Strategy to Your Chart**
1. Open any symbol and select a **standard candlestick chart**.
2. Apply the strategy from your “My Scripts” section.
3. Make sure it is enabled so that the trades and results appear.
2. **Select Timeframe**
- The logic can be tested on various timeframes:
- Higher timeframes (1H, 4H, 1D) for swing and positional setups.
- Lower timeframes (5m, 15m) for more active trading, if desired.
- Users should experiment and see where the strategy behaves more consistently for their chosen market.
3. **Read the Signals**
- **Entry:**
- A long trade is opened when the 9 EMA crosses above the 20 EMA while the closing price is above the 200 EMA.
- **Exit:**
- The open long position is closed when the closing price crosses below the 20 EMA.
- All orders are generated automatically once the strategy is attached to the chart.
4. **Use the Strategy Tester**
- Go to the **Strategy Tester** tab in TradingView.
- Check:
- Net profit / drawdown
- Win rate and average trade
- List of trades and the equity curve
- Change the date range and timeframe to see how stable the results are over different periods.
5. **Adjust Parameters if Needed**
- Advanced users can open the code and experiment with:
- EMA lengths (for example 8/21 with 200, or 10/30 with 200)
- Risk sizing and capital settings within the `strategy()` call
- Any changes should be thoroughly re‑tested before considering real‑world application.
---
Practical Applications
1. **Swing Trading on Daily Charts**
- Can be applied to stocks, indices, or ETFs on the daily timeframe.
- The 200 EMA acts as a trend filter to stay aligned with the broad direction, while the 9/20 crossover helps catch medium‑term swings inside that trend.
2. **Positional Trades on Higher Timeframes**
- On 4H or 1D charts, this approach can help in holding trades for several days to weeks.
- The exit rule based on the 20 EMA crossing helps avoid emotional decisions and provides a rules‑based way to trail the trend.
3. **Trend‑Following Filter**
- Even if used purely as a filter, the 200 EMA condition can help traders:
- Avoid taking long trades when the market is in a clear downtrend.
- Focus only on instruments that are trading above their long‑term average.
4. **Educational Use**
- The script is intentionally kept straightforward so that newer users can:
- Learn how a moving average crossover strategy works.
- See how to combine a short‑term signal with a long‑term filter.
- Understand how TradingView’s strategy engine handles entries and exits.
5. **Basis for Further Development**
- This can serve as a starting point for more advanced systems.
- Traders can extend it by adding:
- Additional filters (RSI, volume, volatility filters, time‑of‑day filters, etc.)
- Risk management rules (fixed stop loss, take profit, trailing stops).
- The current version is kept minimal on purpose, so modifications are easy to implement and test.
---
Important Notes & Disclaimer
1. This strategy is provided **for testing, research, and educational purposes only**.
2. It is ** not ** a recommendation to buy or sell any financial instrument.
3. Past performance on historical data does not guarantee similar results in live markets.
4. Markets are risky and trading can lead to financial loss; users should always do their own research, manage risk appropriately, and consult a qualified financial professional if needed.
5. Before using any strategy with real capital, it is strongly advised to:
- Forward test it on a demo / paper trading account.
- Check how it behaves during different market phases (trending, sideways, high‑volatility conditions).
You are free to modify the parameters and logic to better align it with your own trading style and risk tolerance.
Multi-Tool VWAP + EMAs (Multi-Timeframe) + Key LevelsDescription
This indicator combines several commonly used technical analysis tools into a single script, especially useful for traders using the free version of TradingView or anyone looking to reduce the number of indicators on their chart.
The goal is to provide clear visual references for trend, structure, and key levels—without generating buy/sell signals or automated trading functions.
Included Features
1. VWAP (session-anchored)
Source: HLC3
Purple line, thickness 2
Useful as a reference for daily institutional average price.
2. EMAs of the current timeframe
EMA 200 (red, thickness 3)
EMA 9 (green, thickness 1)
These EMAs help visualize long-term trend and short-term momentum.
3. Dynamic EMAs (MTF – Multi-Timeframe)
The indicator displays the 200 EMA from higher timeframes as dynamic horizontal levels:
5 minutes
15 minutes
30 minutes
1 hour
4 hours
1 day
Each level includes a descriptive label such as “15 min EMA 200”.
These EMAs serve as reference points for potential support/resistance areas coming from higher timeframes.
4. Automatic Key Levels
The indicator plots several important price levels:
Previous day:
PDH (Previous Day High)
PDL (Previous Day Low)
Previous Day 50% Fibonacci level
Pre-market (04:00–09:30 exchange time):
PMH (Pre-Market High)
PML (Pre-Market Low)
Current session:
Open (session opening price)
Previous Close (prior day’s closing price)
Purpose and Scope
This script is designed to provide basic visual reference points to support discretionary analysis.
It does not generate signals or trading suggestions, and it is not intended to predict future price movements.
How to Use It
Enable or disable each block in the Inputs section according to your analysis style.
Observe how the levels, EMAs, and VWAP interact with market structure.
Use it as a visual complement to your personal technical analysis.
Limitations
This indicator is not a trading system and does not guarantee results.
It does not include alerts, backtesting, or entry/exit logic.
Some values (such as PMH/PML) depend on the symbol’s exchange trading hours.
Credits
Designed as an educational and analytical tool for traders seeking to simplify their charts without losing key information.
FPT - DCA ModelFPT - DCA Model is a simple but powerful tool to backtest a weekly “buy the dip” DCA plan with dynamic position sizing and partial profit-taking.
🔹 Core Idea
- Invest a fixed amount every week (on Friday closes)
- Buy more aggressively when price trades at a discount from its 52-week high
- Take partial profits when price stretches too far above the daily EMA50
- Track the performance of your DCA plan vs a simple buy-and-hold from the same start date
⚙ How it works
1. Weekly DCA (on Daily timeframe)
- On each Friday after the Start Date:
- Add the “Weekly contribution” to the cash pool.
- If the close is below the “Discount from 52W high” level:
→ FULL DCA: use the full weekly contribution + an extra booster from your stash (up to “Max extra stash used on dip”).
→ Marked on the chart with a small green triangle under the bar.
- Otherwise:
→ HALF DCA: invest only 50% of the weekly contribution and keep the other 50% as stash (uninvested cash).
→ Marked with a small blue triangle under the bar.
2. 52-Week High Discount Logic
- The script computes the 52-week high as the highest daily high of the last 252 trading days.
- The “discount level” is: 52W high × (1 – Discount%).
- When price is at or below this level, dips are treated as buying opportunities and the model allocates more.
3. Selling Logic (Partial Take Profit)
- When the close is above the daily EMA50 by the selected percentage:
→ Sell the given “Sell portion of qty (%)” of your current holdings.
→ Marked with a small red triangle above the bar.
- This behaves like a gradual profit-taking system: if price stays extended above EMA50, multiple partial sells can occur over time.
📊 Panel (top-right)
The panel summarizes the state of your DCA plan:
- Weeks: number of DCA weeks since Start Date
- Total deposit: total money contributed (sum of all weekly contributions)
- Shares qty: total number of shares accumulated
- Avg price: volume-weighted average entry price
- Shares value: current market value of all shares (qty × close)
- Cash: uninvested cash (including saved stash)
- Total equity: Shares value + Cash
- DCA % PnL: performance of the DCA plan vs total deposits
- Stock % since start: performance of the underlying asset since the Start Date
✅ Recommended Use
- Timeframe: Daily (the DCA engine is designed to run on daily bars and Friday closes).
- Works best on stocks, ETFs or indices where a 52-week high is a meaningful reference.
- You can tune:
- Weekly contribution
- Discount from 52W high
- Booster amount
- EMA50 extension threshold and sell portion
⚠ Notes & Disclaimer
- This script is a backtesting and educational tool. It does not place real orders.
- Past performance does not guarantee future results.
- Always combine DCA and risk management with your own research and judgment.
Built by FPT (Funded Pips Trading) for long-term, rules-based DCA planning.
Elliott Wave Full Fractal System CleanElliott Wave: Full Fractal System (Automated)
This script is a complete Fractal Trading System that automates Elliott Wave analysis. It moves beyond simple wave counting by combining multi-degree wave detection (Primary, Intermediate, Minor) with an automated "Sniper" entry strategy based on high-probability Wave 4 pullbacks.
1. Idea of the Script This tool acts as an educational Elliott Wave assistant that automatically:
Detects Swings: Uses a pivot engine (ZigZag-like logic) to identify key market structure.
Identifies Impulses: Scans for valid 1–5 motive waves across multiple timeframes.
Visualizes Corrections: Detects and labels A-B-C corrective phases after an impulse.
Executes Strategy: Adds a strategy layer on the Intermediate degree to backtest optimal entry zones.
2. How it Works: The "Fractal Sniper" Strategy The script applies strict algorithmic logic to Elliott Wave Theory. It analyzes the Intermediate (Green) degree to generate signals:
Step 1: The Setup (Wave 3 Identification) The script scans for a valid Wave 3 impulse. It ensures Wave 3 is not the shortest and the structure respects fractal rules.
Step 2: The "Wait" Phase (Target Zone) Once Wave 3 is confirmed, the script projects a Box (Green for Long, Red for Short). You will see a label: WAIT FOR DIP. Logic: We wait for price to retrace to the 50% Fibonacci level (The Golden Zone). We do not chase the top of Wave 3.
Step 3: The Trigger ("Sniper" Entry) A trade is triggered only when price touches the specific entry zone while maintaining structure. Signal: Sniper Long 🚀 or Sniper Short 🔻.
Step 4: Automated Risk Management
Stop Loss (SL): Placed at the extremum of Wave 1 (Theory: Wave 4 cannot overlap Wave 1).
Take Profit (TP): Placed at the 1.618 Fibonacci Extension of Wave 5.
3. 📊 Visual Legend (Fractal Degrees) The script analyzes three timeframes simultaneously. Use this guide to read the chart:
🔵 Blue (Primary Degree): Macro Trend. Marked with Circles (①, ②...). Use this for overall market bias.
🟢 Green (Intermediate Degree): The Trading Layer. Marked with Parentheses ((1), (2)...). All Strategy Signals are generated from this degree.
🔴 Red (Minor Degree): Micro Structure. Marked with Roman Numerals (i, ii...). Useful for seeing the sub-waves inside larger moves.
4. 📉 A-B-C Corrections (Visual Only) The script automatically detects and labels corrective phases (A, B, C) following a 5-wave impulse.
Function: These labels indicate that the trend is correcting or resting.
Note: The "Strategy" (Buy/Sell logic) ignores these A-B-C labels. It sees the correction and draws it for your awareness, but it does not risk money on counter-trend moves.
5. ⚠️ CRITICAL NOTE ON BACKTESTING & LAG This strategy uses ta.pivothigh and ta.pivotlow to identify wave structures.
The Lag: Pivot points are lagging indicators. A pivot is only mathematically confirmed X bars after the peak or valley has occurred.
The Backtest: While the labels are drawn historically on the correct bars, the strategy logic strictly waits for the pivot confirmation before generating a signal. This prevents "repainting" in live trading, but users must understand that the signal occurs after the pivot is locked in.
6. Settings Included
Degrees: Customizable lookback lengths for Primary, Intermediate, and Minor waves.
Strict Rules: Toggle to enforce standard Elliott rules (e.g., No Overlap).
Realistic Simulation: Commission and slippage are enabled in the strategy settings to provide realistic results.
Disclaimer: This script is for educational and research purposes only. It applies strict algorithmic logic to Elliott Wave Theory, but wave counting is inherently subjective. Past performance does not guarantee future results.






















