Calculus Free Trend Strategy for Crypto & StocksObjective :
The Correlation Channel Trading Strategy is designed to identify potential entry points based on the relationship between price movements and a correlation channel. The strategy aims to capture trends within the channel while managing risk effectively.
Parameters :
Length: Determines the period for calculating moving averages and the true range, influencing the sensitivity of the strategy to price movements.
Multiplier: Adjusts the width of the correlation channel, providing flexibility to adapt to different market conditions.
Inputs :
Asset Symbol: Allows users to specify the financial instrument for analysis.
Timeframe: Defines the timeframe for data aggregation, enabling customization based on trading preferences.
Plot Correlation Channel: Optional input to visualize the correlation channel on the price chart.
Methodology :
Data Acquisition: The strategy fetches OHLC (Open, High, Low, Close) data for the specified asset and timeframe. In this case we use COINBASE:BTCUSD
Calculation of Correlation Channel: It computes the squared values for OHLC data, calculates the average value (x), and then calculates the square root of x to derive the source value. Additionally, it calculates the True Range as the difference between high and low prices.
Moving Averages: The strategy calculates moving averages (MA) for the source value and the True Range, which form the basis for defining the correlation channel.
Upper and Lower Bands: Using the MA and True Range, the strategy computes upper and lower bands of the correlation channel, with the width determined by the multiplier.
Entry Conditions: Long positions are initiated when the price crosses above the upper band, signaling potential overbought conditions. Short positions are initiated when the price crosses below the lower band, indicating potential oversold conditions.
Exit Conditions: Stop-loss mechanisms are incorporated directly into the entry conditions to manage risk. Long positions are exited if the price falls below a predefined stop-loss level, while short positions are exited if the price rises above the stop-loss level.
Strategy Approach: The strategy aims to capitalize on trends within the correlation channel, leveraging systematic entry signals while actively managing risk through stop-loss orders.
Backtest Details : For the purpose of this test I used the entire data available for BTCUSD Coinbase, with 10% of capital allocation and 0.1% comission for entry/exit(0.2% total). Can be also used with other both directly correlated with current settings of BTC or with new ones
Advantages :
Provides a systematic approach to trading based on quantifiable criteria.
Offers flexibility through customizable parameters to adapt to various market conditions.
Integrates risk management through predefined stop-loss mechanisms.
Limitations :
Relies on historical price data and technical indicators, which may not always accurately predict future price movements.
May generate false signals during periods of low volatility or erratic price behavior.
Requires continuous monitoring and adjustment of parameters to maintain effectiveness.
Conclusion :
The Correlation Channel Trading Strategy offers traders a structured framework for identifying potential entry points within a defined price channel. By leveraging moving averages and true range calculations, the strategy aims to capture trends while minimizing risk through stop-loss mechanisms. While no strategy can guarantee success in all market conditions, the Correlation Channel Trading Strategy provides a systematic approach to trading that can enhance decision-making and risk management for traders.
Komut dosyalarını "high low" için ara
Extended Recursive Bands StrategyThe original indicator was created by alexgrover .
All credit goes to alexgrover for creating the indicator that this strategy uses.
This strategy was posted because there were multiple requests for it, and no strategy based on this indicator exists yet.
The Recursive Bands Indicator, an indicator specially created to be extremely efficient, I think you already know that calculation time is extra important in algorithmic trading, and this is the principal motivation for the creation of the proposed indicator. Originally described in Alex's paper "Pierrefeu, Alex (2019): Recursive Bands - A New Indicator For Technical Analysis", the indicator framework has been widely used in his previous uploaded indicators, however it would have been a shame to not upload it, however user experience being a major concern for me, I decided to add extra options, which explain the term "extended".
The Indicator
The indicator displays one upper and one lower band, every common usages applied to bands indicators such as support/resistance , breakout, trailing stop, etc, can also be applied to this one. Length controls how reactive the bands are, higher values will make the bands cross the price less often.
In order to provide more flexibility for the user alexgrover added the option to use various methods for the calculation of the indicator, therefore the indicator can use the average true range , standard deviation, average high-low range, and one totally exclusive method specially designed for this indicator.
Added logic:
We have implemented a logic that checks whether the bands have been following in the same direction for a set amount of bars. This logic must be true before it can enter trades. This is completely new code that was written by us entirely, and it makes a huge difference on strategy performance.
Strategy Long conditions:
1 — Price low is below the the lower band.
2 — The lower band keeps increasing in value until the 'lookback' setting amount of bars is reached.
Strategy Short conditions:
1 — Price high is above the upper band.
2 — The upper band keeps decreasing in value until the 'lookback' setting amount of bars is reached.
Strategy Properties:
We have set a default commission of 0.06% because these are Bybit's fees. The strategy uses an order size of 10% of equity, since drawdown is very low like this. We also use a 10 tick slippage to keep results realistic and account for this. All other settings were left as default apart from initial capital, just to decrease the size of the numbers.
Coral Trend Pullback Strategy (TradeIQ)Description:
Strategy is taken from the TradeIQ YouTube video called "I Finally Found 80% Win Rate Trading Strategy For Crypto".
Check out the full video for further details/clarification on strategy entry/exit conditions.
The default settings are exactly as TradeIQ described in his video.
However I found some better results by some tweaking settings, increasing R:R ratio and by turning off confirmation indicators.
This would suggest that perhaps the current confirmation indicators are not the best options. I'm happy to try add some other optional confirmation indicators if they look to be more effective.
Recommended timeframe: 1H
Strategy incorporates the following features:
Risk management:
Configurable X% loss per stop loss
Configurable R:R ratio
Trade entry:
Based on strategy conditions below
Trade exit:
Based on strategy conditions below
Backtesting:
Configurable backtesting range by date
Trade drawings:
Each entry condition indicator can be turned on and off
TP/SL boxes drawn for all trades. Can be turned on and off
Trade exit information labels. Can be turned on and off
NOTE: Trade drawings will only be applicable when using overlay strategies
Alerting:
Alerts on LONG and SHORT trade entries
Debugging:
Includes section with useful debugging techniques
Strategy conditions
Trade entry:
LONG
C1: Coral Trend is bullish
C2: At least 1 candle where low is above Coral Trend since last cross above Coral Trend
C3: Pullback happens and price closes below Coral Trend
C4: Coral Trend colour remains bullish for duration of pullback
C5: After valid pullback, price then closes above Coral Trend
C6: Optional confirmation indicators (choose either C6.1 or C6.2 or NONE):
C6.1: ADX and DI (Single indicator)
C6.1.1: Green line is above red line
C6.1.2: Blue line > 20
C6.1.3: Blue trending up over last 1 candle
C6.2: Absolute Strengeh Histogram + HawkEye Volume Indicator (Two indicators combined)
C6.2.1: Absolute Strengeh Histogram colour is blue
C6.2.2: HawkEye Volume Indicator colour is green
SHORT
C1: Coral Trend is bearish
C2: At least 1 candle where high is below Coral Trend since last cross below Coral Trend
C3: Pullback happens and price closes above Coral Trend
C4: Coral Trend colour remains bearish for duration of pullback
C5: After valid pullback, price then closes below Coral Trend
C6: Optional confirmation indicators (choose either C6.1 or C6.2 or NONE):
C6.1: ADX and DI (Single indicator)
C6.1.1: Red line is above green line
C6.1.2: Blue line > 20
C6.1.3: Blue trending up over last 1 candle
C6.2: Absolute Strengeh Histogram + HawkEye Volume Indicator (Two indicators combined)
C6.2.1: Absolute Strengeh Histogram colour is red
C6.2.2: HawkEye Volume Indicator colour is red
NOTE: All the optional confirmation indicators cannot be overlayed with Coral Trend so feel free to add each separately to the chart for visual purposes
Trade exit:
Stop Loss: Calculated by recent swing low over previous X candles (configurable with "Local High/Low Lookback")
Take Profit: Calculated from R:R multiplier * Stop Loss size
Credits
Strategy origin: TradeIQ's YouTube video called "I Finally Found 80% Win Rate Trading Strategy For Crypto"
It combines the following indicators for trade entry conditions:
Coral Trend Indicator by @LazyBear (Main indicator)
Absolute Strength Histogram | jh by @jiehonglim (Optional confirmation indicator)
Indicator: HawkEye Volume Indicator by @LazyBear (Optional confirmation indicator)
ADX and DI by @BeikabuOyaji (Optional confirmation indicator)
MZ Momentum Non Repainting HTF HFT Scalper BotThis is an original script meant to be a high frequency trader that works on higher time frame calculations. I came up with the idea that using calculus I can figure out the actual rate of change and momentum with different calculations than the momentum indicator that is provided by trading view. Once momentum is shifted on a small time frame, it will provide an entry signal. The script is meant to be used on an algorithmic trading system for scalping purposes. It should be run on a one minute time frame.
Set it up on a one minute chart - setup your bot on a one minute interval.
Find the source of your data. You can use any time frame, open, close. high, low, olc4. Open is pretty much guaranteed to not have any repainting issues - although all the other calcs use a custom isbarconfirmed security repaint calculation.
Set your rate of change period - typically I use a one minute time frame for this as well - but set my length fairly long (30-40).
Then set your period for momentum calculation. This will sample the rate of change data to figure out your momentum. I typically try a setting of 6-8. If that doesn't work, try setting it about the same as the rate of change period and add or subtract a few from there.
Unfortunately due to various plotting constraints in Pinescript, you cannot plot the rate of change and momentum and price in the same.
Set your trigger point. I try values -30, -20, -10, 0, 1. Then finesse to get an earlier entry signal. You should account for a slight delay from the signal to the actual entry. Your backtest should test well, but please note that does not gaurantee results. In my findings, I have seen that there is a slight minimal delay between signal to entry and that can make the difference whether your trade is profitable or not.
Use the show data to show you additional data when you are backtesting. This can allow you to try to filter out results or market conditions that do not work. I typically work with the RSI and use the 30 minute and 15 minute RSIs. I make sure that it is trading within a certain band - about 40-75. You can try the inverse and only buy during really low RSI's as well.
Use the enter and close messages to setup your webhook messages. But I recommend to allow the algo trading platform to close the trade for you based on their calcs since that platform knows the actual price level and when it has become profitable.
Filters have been setup for
Moving Average Variants - any time frame, any length.
RSI - Any time frame, any length,
Future Plans: ATR Filter so you can filter out low volatility periods.
Send me a message with any suggestions.
Double SupertrendThis strategy is based on a custom indicator that was created based on the Supertrend indicator. At its core, there are always 2 super trend indicators with different factors to reduce market noise (false signals).
The strategy/indicator has some parameters to improve the signals and filters.
TECHNICAL ANALYSIS
☑ Show Indicators
This option will enable/disable the Supertrend indicators on the chart.
☑ Length
The length will be used on the Supertrend Indicator to calculate its values.
☑ Dev Fast
The fast deviation or factor from one of the super trend indicators. This will be the leading indicator for entry signals, as well as for the exit signals.
☑ Dev Slow
The slow deviation or factor from one of the super trend indicators. This will be the confirmation indicator for entry and exit signals.
☑ Exit Type
It's possible to select from 4 options for the exit signals. Exit signals always take profit target.
☑ ⥹ Reversals
This option will make the strategy/indicator calculate the exit signals based on the difference between the given period's highest and lowest candle value (see Period on this list). It's displayed on the chart with the cross. As it's possible to verify in the image below, there are multiple exit spots for every entry.
☑ ⥹ ATR
Using ATR as a base indicator for exit signals will make the strategy/indicator place limit/stop orders. Candle High + ATR for longs, Candle Low - ATR for shorts. The strategy will show the ATR level for take profit and stick with it until the next signal. This way, the take profit value remains based on the candle of the entry signal.
☑ ⥹ Fast Supertrend
With this option selected, the exit signals will be based on the Fast Supertsignal value, mirrored to make a profit.
☑ ⥹ Slow Supertrend
With this option selected, the exit signals will be based on the Slow Supertsignal value, which is mirrored to take profit.
☑ Period
This will represent the number of candles used on the exit signals when Reversals is selected as Exit Type. It's also used to calculate the gradient used on the Fills and Supertrend signals.
☑ Multiplier
It's used on the take profit when the ATR option is selected on the Exit Type.
STRATEGY
☑ Use The Strategy
This will enable/disable the strategy to show the trades calculations.
☑ Show Use Long/Short Entries
Option to make the strategy show/use Long or Short signals. Available only if Use The Strategy is enabled
☑ Show Use Exit Long/Short
Option to make the strategy show/use Exit Long or Short signals (valid when Reversals option is selected on the Exit Type). Available only if Use The Strategy is enabled
☑ Show Use Add Long/Short
Option to make the strategy show/use Add Long or Short signals. With this option enabled, the strategy will place multiple trades in the same direction, almost the same concept as a pyramiding parameter. It's based on the Fast Supersignal when the candle fails to cross and reverses. Available only if Use The Strategy is enabled
☑ Trades Date Start/End
The date range that the strategy will check the market data and make the trades
HOW TO USE
It's very straightforward. A long signal will appear as a green arrow with a text Long below it. A short signal will appear as a red arrow with a text Short above it. It's ideal to wait for the candle to finish to validate the signal.
The exit signals are optional but give a good idea of the configuration used when backtesting. Each market and timeframe will have its own configuration for the best results. On average, sticking to ATR as an exit signal will have less risk than the other options.
☑ Entry Signals
Follow the arrows with Long/Short texts on them. Wait for the signal candle to close to validate the entry.
☑ Exit Signals
Use them to close your position or to trail stop your orders and maximize profits. Select the exit type suitable for each timeframe and market
☑ Add Entries
It's possible to increase the position following the add margin/contracts based on the Add signals. Not mandatory, but may work as reentries or late entries using the same signal.
☑ What about Stop Loss?
The stop-loss levels were not included as a separated signal because it's already in the chart. There are some possible ideas for the stop loss:
☑⥹ Candle High/Low (2nd recommend option)
When it's a Long signal from the entry signal candle, the stop loss can be the Low value of the same candle. Very tight stop loss in some cases, depending on the candle range
☑⥹ Local Top/Bottom
Selecting the local top/bottom as stop loss will give the strategy more room for false breakouts or reversals, keeping the trade open and minimizing noises. Increases the risk
☑⥹ Fast Supertrend (1st recommend option)
The fast supertrend can be used as stop-loss as well. making it a moving level and working close to trail stop management
☑⥹ Fixed Percentage
It's possible to use a fixed risk percentage for the trades, making the risk easier to control and project. Since the market volatility is not fixed, this may affect the accuracy of the trades
☑⥹ Based on the ATR (3rd recommend option)
When the exit type option ATR is selected, it will display the take profit level for that entry. Just mirror that value and put it as stop-loss, or multiply that amount by 1.5 to have more room for market noise.
EXAMPLE CONFIGURATIONS
Here are some configuration ideas for some markets (all of them are from crypto, especially futures markets)
BTCUSDT 15min - Default configuration
BTCUSDT 1h - Length 10 | Dev Fast 3 | Dev Slow 4 | Exit Type ATR | Period 50 | Multiplier 1
BTCUSDT 4h - Length 10 | Dev Fast 2 | Dev Slow 4 | Exit Type ATR | Period 50 | Multiplier 1
ETHUSDT 15min - Length 20 | Dev Fast 1 | Dev Slow 3 | Exit Type Fast Supertrend | Period 50 | Multiplier 1
IOTAUSDT 15min - Length 10 | Dev Fast 1 | Dev Slow 2 | Exit Type Slow Supertrend | Period 50 | Multiplier 1
OMGUSDT 15min - Length 10 | Dev Fast 1 | Dev Slow 4 | Exit Type Slow Supertrend | Period 50 | Multiplier 1
VETUSDT 15min - Length 10 | Dev Fast 3 | Dev Slow 4 | Exit Type Slow Supertrend | Period 50 | Multiplier 1
HOW TO FIND OTHER CONFIGURATIONS
Here are some steps to find suitable configurations
select a market and time frame
enable the Use This Strategy option on the strategy
open the strategy tester panel and select the performance summary
open the strategy configuration and go to properties
change the balance to the same price of the symbol (example: BTCUSDT 60.000, use 60.000 as balance)
go back to the inputs tab and keep changing the parameters until you see the net profit be positive and bigger than the absolute value of the drawdown
in case you can't find a suitable configuration, try other timeframes
Since the tester reflects what happened in the past candles, it's not guaranteed to give the same results. However, this indicator/Strategy can be used with other indicators as a leading signal or confirmation signal.
Alpha Candle Breakout Signal on Momentum from Support Resistance
Hello traders,
Let’s start with a brief description of what this strategy/indicator is and what it does and how we trade based on Alpha Candles.
The definition of an Alpha Candle is that it is mathematically calculated, and significantly bigger than the previous candles. This could be a green candle or a red candle, as long as the body is significantly bigger than the previous candles at the end of the calculation. All calculations are done in real time, we do NOT paint the candle sticks after the close of the candle and do not use offset values. This is extremely important. You will see the candle changing it's color as the body of the candle gets bigger with real time data feed. (Recalculate On Every Tick is ON by default). Now besides the mathematical calculations, an Alpha Candle also represents the emotion in the market for that stock in that moment. We can also say that an Alpha Candle is a change in the momentum.
Now that we’ve identified the Alpha candle, the second step is, to have a look at the chart and identify if the Alpha candle is breaking to a new high / low from a consolidation period, or from a good chart pattern (ascending / descending triangle , pennant , sideways consolidation) or a sudden direction change of the stock (bounce). Remember, the script will paint all Alpha candles regardless.
NVAX day trading example
Forex
Crypto
PLUG (Bounce example)
The script will identify the Alpha candles that are breaking to a new high / low from a user input look back period (default is 20 bars back, but this can be changed by the user input). An Alpha candle that breaks the look back period, will have a stop loss line below for Green Alpha or above for Red Alpha Candle and reward targets, like target1 or target2 (both are user input fields, can be adjusted to personal R values, default values are 2R and 3R)
A 2R means two times the reward (profit) of a 1-unit risk. If you are comfortable of loosing $50 per trade which will be considered 1-unit, then 2R means $100 reward (profit) target and a 3R is $150 reward (profit) target. Those R values will be plotted and/or labelled on the chart with dollar amounts if desired. You can change your R values from the user input area, even with decimal points, like 2.5R or 3.75R. If you shoot for at least 2R, you could be wrong 6 times out of 10, and still make 2R profit, as long as the other 4 trades give you a total of 8R. This is a basic trading concept. It will force the new traders to focus on risk/reward rather then a gambling attitude.
The script is meant to work with candle stick chart patterns only, it is NOT meant to work with ranges, line charts or point and figure charts. It will work with time frames like (seconds,1,2,3,5,10 minute or any minutes, daily, weekly). If you are trading IPOs , there might not be enough data for the script to do the calculation, so just be aware.
The script will identify the candles if they are Green Alpha (going up, bullish ) or Red Alpha (going down, bearish ). In order to see them clearly, we’ve greyed out the rest of the candles, and made Green Alpha candles white, and Red Alphas are left as red. You can change the colors from the user input area.
There is also a look back period, between 1-55 and the initial value is 20 for Green Alpha and 10 for Red Alpha. So, if the Alpha Candle breaks this look back period, it will be considered as an opportunity to take the trade. The code will put the stop loss area, possible target1 and target2 areas with a blue diamond and will draw the resistance/support lines for that Alpha candle. Depending on the individual’s risk tolerance, a label on the right side of the screen will show the risk tolerance (user input value) and the number of shares to be traded based on the risk tolerance (# of shares will be for the last Alpha Candle that is formed, it will constantly update itself with the new Alpha Candle)
For those who might be familiar with the three-bar play, we implemented something similar, so the code will find them in real time. Once an Alpha Candle is formed, if the following candle is a very small candle, also called pin bar , it will be painted to orange, so you can see it clearly. This pin bar is significantly smaller than the previous candles and formed right after an Alpha Candle.
Like anything in life, nothing is free. Meaning you have to work for it. So if you are looking to buy/sell blindly based on some indicators and signals, please do not consider this script. However, once you start using it, you will see how patterns repeat, when they repeat and how they repeat. It will identify the action, but you have to check the validity from the charts, so user discretionary is advised. As an example, if the Alpha candle is breaking from a consolidation period at $10. Let’s assume stop loss is at $9 so the 2R target will be $12, but if there is a possible resistance at $11, then the trader has to decide to take the trade for a possible 1R return, or skip the trade.
We try to approach the trading as a set of rules and processing the trades one by one, with a calculated risk and reward. This script will give you the Candle stick formation that is worth consideration and will draw the Stop Loss area (you can tweak this to your liking), will draw the 2-3R Targets, and will calculate the number of shares to be purchased based on the Risk Tolerance user entered in the user input area. The rest is to let the trade take care of it self.
Charts and patterns work better, when there is enough volume in a particular stock. If the stock is trading very low in volume , things will not work as expected. So, we must focus on the abnormal stocks, like gap gainers, volume gainer stocks, or heavily traded stocks (for intraday trading). For swing or long-term traders, one could look for a Green Alpha candle, assess the risk and possible return and trade the plan on a daily chart pattern (long term), or 15,30,60 min charts for swing trades.
If you are looking to short a stock, look for stocks that are weak (gap downs), so look for Red Alpha formations in that stock.
Once the back testing is turned on, code will generate buy/sell signals, otherwise it will work as an indicator. But please keep in mind….. For day trading, the stock has to be abnormally trading, so the chart patterns and the Alpha Candles work correctly. Volume has to be more than usual. It is the best way to have predictable results for day trading. If the volume of the stock is 2-5 times or more than the average of 20 days period (early in the morning), and even more later in the day, it is a good indication that the stock is trading on an abnormal volume with some news (pre-market abnormality is a good sign for possible abnormality for that stock).
For back testing, user can select from the user input area :
• Long or Short Trades or both or use the script as an indicator
• Close any open position if an Alpha candle forms in the opposite direction
• Pyramid the trades up to 4 levels (allow to buy/sell 4 times in the same direction every time another Alpha Candle forms)
• Breakout/breakdown look back period (every time an Alpha Candle forms and breaks this look back period, it will be a trade opportunity)
• Target Reward areas
• Stop Loss area
• Time frame (change the time frame and observe which time frame made good profit. Test the plan for future trades. Test it in as many abnormal stocks for the day they were behaving abnormal as possible). Time frame is not a user input field, just the time frame of the chart, 2,5,10 min, 1 hour etc.
• Selective date testing (between two dates/times). This is very important as most of the good opportunities comes from abnormal price action with volume . If you back test with the maximum amount of data for that abnormal stock on that day, it will produce unrealistic results, because the stock will have a normal course of trend before the news. Remember, we are looking for stocks that are trading abnormal in both price and volume or stocks like AAPL , TSLA which are trading heavily on each day. It is also a good way to learn, how and when to buy/sell, where to put stop losses by observing the chart with the Alpha Candles showing the results.
• All the above values will have an impact on the total profit / loss.
F (Ford Motors)
Now that we’ve covered what the script does, let’s plan the trade and trade the plan.
Side Note:
-------------
We started coding this as an indicator to show the Alpha Candles to find opportunities in the market. Later in the development, we implemented it as a Strategy, to be able to back test the ideas, to tweak some rules for entry/exit and see the effects on our profit/loss percentages in general. We kept the original idea being an Indicator, to show us the Alpha Candles in real time. This requires the option “Indicator Mode” is to be selected from the User Input area, and leaving the “Recalculate On Every Tick” is selected from the Properties tab of the strategy (as of Pine Script v5). Strategy is turning this “On” by default.
Disclaimer: This script is an educational and personal use only tool and should be used accordingly. User can not publish any images created with this code. Do your own due diligence, do not buy / sell stocks based on any indicator, always use stop losses. We do not make any promises as this indicator or any indicator will make you a profitable trader. Trading and technical analysis is difficult, it takes time to build confidence and experience. Study the charts and candlestick formations. Study support/resistance areas and how to identify them. This will help you to tweak the script’s stop loss areas and 2R-3R targets. Do not invest any money you are not comfortable loosing.
This is an invite only strategy. We will give ample time to test it out. After that you will need to subscribe. To get access to this strategy trader can send me an email from the links below.
All the Best
Happy Trading
Prop Firm Business SimulatorThe prop firm business simulator is exactly what it sounds like. It's a plug and play tool to test out any tradingview strategy and simulate hypothetical performance on CFD Prop Firms.
Now what is a modern day CFD Prop Firm?
These companies sell simulated trading challenges for a challenge fee. If you complete the challenge you get access to simulated capital and you get a portion of the profits you make on those accounts payed out.
I've included some popular firms in the code as presets so it's easy to simulate them. Take into account that this info will likely be out of date soon as these prices and challenge conditions change.
Also, this tool will never be able to 100% simulate prop firm conditions and all their rules. All I aim to do with this tool is provide estimations.
Now why is this tool helpful?
Most traders on here want to turn their passion into their full-time career, prop firms have lately been the buzz in the trading community and market themselves as a faster way to reach that goal.
While this all sounds great on paper, it is sometimes hard to estimate how much money you will have to burn on challenge fees and set realistic monthly payout expectations for yourself and your trading. This is where this tool comes in.
I've specifically developed this for traders that want to treat prop firms as a business. And as a business you want to know your monthly costs and income depending on the trading strategy and prop firm challenge you are using.
How to use this tool
It's quite simple you remove the top part of the script and replace it with your own strategy. Make sure it's written in same version of pinescript before you do that.
//--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$--//--------------------------------------------------------------------------------------------------------------------------$$$$$$
//--$$$$$--Strategy-- --$$$$$$--// ******************************************************************************************************************************
//--$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$--//--------------------------------------------------------------------------------------------------------------------------$$$$$$
length = input.int(20, minval=1, group="Keltner Channel Breakout")
mult = input(2.0, "Multiplier", group="Keltner Channel Breakout")
src = input(close, title="Source", group="Keltner Channel Breakout")
exp = input(true, "Use Exponential MA", display = display.data_window, group="Keltner Channel Breakout")
BandsStyle = input.string("Average True Range", options = , title="Bands Style", display = display.data_window, group="Keltner Channel Breakout")
atrlength = input(10, "ATR Length", display = display.data_window, group="Keltner Channel Breakout")
esma(source, length)=>
s = ta.sma(source, length)
e = ta.ema(source, length)
exp ? e : s
ma = esma(src, length)
rangema = BandsStyle == "True Range" ? ta.tr(true) : BandsStyle == "Average True Range" ? ta.atr(atrlength) : ta.rma(high - low, length)
upper = ma + rangema * mult
lower = ma - rangema * mult
//--Graphical Display--// *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-$$$$$$
u = plot(upper, color=#2962FF, title="Upper", force_overlay=true)
plot(ma, color=#2962FF, title="Basis", force_overlay=true)
l = plot(lower, color=#2962FF, title="Lower", force_overlay=true)
fill(u, l, color=color.rgb(33, 150, 243, 95), title="Background")
//--Risk Management--// *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-$$$$$$
riskPerTradePerc = input.float(1, title="Risk per trade (%)", group="Keltner Channel Breakout")
le = high>upper ? false : true
se = lowlower
strategy.entry('PivRevLE', strategy.long, comment = 'PivRevLE', stop = upper, qty=riskToLots)
if se and upper>lower
strategy.entry('PivRevSE', strategy.short, comment = 'PivRevSE', stop = lower, qty=riskToLots)
The tool will then use the strategy equity of your own strategy and use this to simulat prop firms. Since these CFD prop firms work with different phases and payouts the indicator will simulate the gains until target or max drawdown / daily drawdown limit gets reached. If it reaches target it will go to the next phase and keep on doing that until it fails a challenge.
If in one of the phases there is a reward for completing, like a payout, refund, extra it will add this to the gains.
If you fail the challenge by reaching max drawdown or daily drawdown limit it will substract the challenge fee from the gains.
These gains are then visualised in the calendar so you can get an idea of yearly / monthly gains of the backtest. Remember, it is just a backtest so no guarantees of future income.
The bottom pane (non-overlay) is visualising the performance of the backtest during the phases. This way u can check if it is realistic. For instance if it only takes 1 bar on chart to reach target you are probably risking more than the firm wants you to risk. Also, it becomes much less clear if daily drawdown got hit in those high risk strategies, the results will be less accurate.
The daily drawdown limit get's reset every time there is a new dayofweek on chart.
If you set your prop firm preset setting to "'custom" the settings below that are applied as your prop firm settings. Otherwise it will use one of the template by default it's FTMO 100K.
The strategy I'm using as an example in this script is a simple Keltner Channel breakout strategy. I'm using a 0.05% commission per trade as that is what I found most common on crypto exchanges and it's close to the commissions+spread you get on a cfd prop firm. I'm targeting a 1% risk per trade in the backtest to try and stay within prop firm boundaries of max 1% risk per trade.
Lastly, the original yearly and monthly performance table was developed by Quantnomad and I've build ontop of that code. Here's a link to the original publication:
That's everything for now, hope this indicator helps people visualise the potential of prop firms better or to understand that they are not a good fit for their current financial situation.
Breakouts With Timefilter Strategy [LuciTech]This strategy captures breakout opportunities using pivot high/low breakouts while managing risk through dynamic stop-loss placement and position sizing. It includes a time filter to limit trades to specific sessions.
How It Works
A long trade is triggered when price closes above a pivot high, and a short trade when price closes below a pivot low.
Stop-loss can be set using ATR, prior candle high/low, or a fixed point value. Take-profit is based on a risk-reward multiplier.
Position size adjusts based on the percentage of equity risked.
Breakout signals are marked with triangles, and entry, stop-loss, and take-profit levels are plotted.
moving average filter: Bullish breakouts only trigger above the MA, bearish breakouts below.
The time filter shades the background during active trading hours.
Customization:
Adjustable pivot length for breakout sensitivity.
Risk settings: percentage risked, risk-reward ratio, and stop-loss type.
ATR settings: length, smoothing method (RMA, SMA, EMA, WMA).
Moving average filter (SMA, EMA, WMA, VWMA, HMA) to confirm breakouts.
Kernel Regression Envelope with SMI OscillatorThis script combines the predictive capabilities of the **Nadaraya-Watson estimator**, implemented by the esteemed jdehorty (credit to him for his excellent work on the `KernelFunctions` library and the original Nadaraya-Watson Envelope indicator), with the confirmation strength of the **Stochastic Momentum Index (SMI)** to create a dynamic trend reversal strategy. The core idea is to identify potential overbought and oversold conditions using the Nadaraya-Watson Envelope and then confirm these signals with the SMI before entering a trade.
**Understanding the Nadaraya-Watson Envelope:**
The Nadaraya-Watson estimator is a non-parametric regression technique that essentially calculates a weighted average of past price data to estimate the current underlying trend. Unlike simple moving averages that give equal weight to all past data within a defined period, the Nadaraya-Watson estimator uses a **kernel function** (in this case, the Rational Quadratic Kernel) to assign weights. The key parameters influencing this estimation are:
* **Lookback Window (h):** This determines how many historical bars are considered for the estimation. A larger window results in a smoother estimation, while a smaller window makes it more reactive to recent price changes.
* **Relative Weighting (alpha):** This parameter controls the influence of different time frames in the estimation. Lower values emphasize longer-term price action, while higher values make the estimator more sensitive to shorter-term movements.
* **Start Regression at Bar (x\_0):** This allows you to exclude the potentially volatile initial bars of a chart from the calculation, leading to a more stable estimation.
The script calculates the Nadaraya-Watson estimation for the closing price (`yhat_close`), as well as the highs (`yhat_high`) and lows (`yhat_low`). The `yhat_close` is then used as the central trend line.
**Dynamic Envelope Bands with ATR:**
To identify potential entry and exit points around the Nadaraya-Watson estimation, the script uses **Average True Range (ATR)** to create dynamic envelope bands. ATR measures the volatility of the price. By multiplying the ATR by different factors (`nearFactor` and `farFactor`), we create multiple bands:
* **Near Bands:** These are closer to the Nadaraya-Watson estimation and are intended to identify potential immediate overbought or oversold zones.
* **Far Bands:** These are further away and can act as potential take-profit or stop-loss levels, representing more extreme price extensions.
The script calculates both near and far upper and lower bands, as well as an average between the near and far bands. This provides a nuanced view of potential support and resistance levels around the estimated trend.
**Confirming Reversals with the Stochastic Momentum Index (SMI):**
While the Nadaraya-Watson Envelope identifies potential overextended conditions, the **Stochastic Momentum Index (SMI)** is used to confirm a potential trend reversal. The SMI, unlike a traditional stochastic oscillator, oscillates around a zero line. It measures the location of the current closing price relative to the median of the high/low range over a specified period.
The script calculates the SMI on a **higher timeframe** (defined by the "Timeframe" input) to gain a broader perspective on the market momentum. This helps to filter out potential whipsaws and false signals that might occur on the current chart's timeframe. The SMI calculation involves:
* **%K Length:** The lookback period for calculating the highest high and lowest low.
* **%D Length:** The period for smoothing the relative range.
* **EMA Length:** The period for smoothing the SMI itself.
The script uses a double EMA for smoothing within the SMI calculation for added smoothness.
**How the Indicators Work Together in the Strategy:**
The strategy enters a long position when:
1. The closing price crosses below the **near lower band** of the Nadaraya-Watson Envelope, suggesting a potential oversold condition.
2. The SMI crosses above its EMA, indicating positive momentum.
3. The SMI value is below -50, further supporting the oversold idea on the higher timeframe.
Conversely, the strategy enters a short position when:
1. The closing price crosses above the **near upper band** of the Nadaraya-Watson Envelope, suggesting a potential overbought condition.
2. The SMI crosses below its EMA, indicating negative momentum.
3. The SMI value is above 50, further supporting the overbought idea on the higher timeframe.
Trades are closed when the price crosses the **far band** in the opposite direction of the trade. A stop-loss is also implemented based on a fixed value.
**In essence:** The Nadaraya-Watson Envelope identifies areas where the price might be deviating significantly from its estimated trend. The SMI, calculated on a higher timeframe, then acts as a confirmation signal, suggesting that the momentum is shifting in the direction of a potential reversal. The ATR-based bands provide dynamic entry and exit points based on the current volatility.
**How to Use the Script:**
1. **Apply the script to your chart.**
2. **Adjust the "Kernel Settings":**
* **Lookback Window (h):** Experiment with different values to find the smoothness that best suits the asset and timeframe you are trading. Lower values make the envelope more reactive, while higher values make it smoother.
* **Relative Weighting (alpha):** Adjust to control the influence of different timeframes on the Nadaraya-Watson estimation.
* **Start Regression at Bar (x\_0):** Increase this value if you want to exclude the initial, potentially volatile, bars from the calculation.
* **Stoploss:** Set your desired stop-loss value.
3. **Adjust the "SMI" settings:**
* **%K Length, %D Length, EMA Length:** These parameters control the sensitivity and smoothness of the SMI. Experiment to find settings that work well for your trading style.
* **Timeframe:** Select the higher timeframe you want to use for SMI confirmation.
4. **Adjust the "ATR Length" and "Near/Far ATR Factor":** These settings control the width and sensitivity of the envelope bands. Smaller ATR lengths make the bands more reactive to recent volatility.
5. **Customize the "Color Settings"** to your preference.
6. **Observe the plots:**
* The **Nadaraya-Watson Estimation (yhat)** line represents the estimated underlying trend.
* The **near and far upper and lower bands** visualize potential overbought and oversold zones based on the ATR.
* The **fill areas** highlight the regions between the near and far bands.
7. **Look for entry signals:** A long entry is considered when the price touches or crosses below the lower near band and the SMI confirms upward momentum. A short entry is considered when the price touches or crosses above the upper near band and the SMI confirms downward momentum.
8. **Manage your trades:** The script provides exit signals when the price crosses the far band. The fixed stop-loss will also close trades if the price moves against your position.
**Justification for Combining Nadaraya-Watson Envelope and SMI:**
The combination of the Nadaraya-Watson Envelope and the SMI provides a more robust approach to identifying potential trend reversals compared to using either indicator in isolation. The Nadaraya-Watson Envelope excels at identifying potential areas where the price is overextended relative to its recent history. However, relying solely on the envelope can lead to false signals, especially in choppy or volatile markets. By incorporating the SMI as a confirmation tool, we add a momentum filter that helps to validate the potential reversals signaled by the envelope. The higher timeframe SMI further helps to filter out noise and focus on more significant shifts in momentum. The ATR-based bands add a dynamic element to the entry and exit points, adapting to the current market volatility. This mashup aims to leverage the strengths of each indicator to create a more reliable trading strategy.
- Trading Bot – TopBot Anomaly LITE Robot Strategy -- Trading Bot - TopBot Anomaly LITE -
- Ready to use and automate robot strategy -
1 - Introduction
This strategy is based on a search for abnormal market price movements relative to a time-shifted basic moving average. Different variations of the basic moving average are created and shifted proportionally rather than linearly, giving the strategy greater reactivity to serve as position entry points. What's more, this strategy stands out with a major innovation, allowing position exits to be set on moving average variations (and not on the moving average itself, like all strategies that close positions on return to the moving average), which greatly improves actual results.
2 - Detailed operation of the strategy
It defines a function that calculates various moving averages (depending on the type of moving average defined by the user) and the length chosen. The function takes into account different types of moving averages: SMA, PCMA, EMA, WMA, DEMA, ZLEMA and HMA, and is offset in time so that it can be an entry or exit condition in real time. To do this, it sets up LIMIT positions which it monitors to place an order the instant the price is crossed (otherwise it would have to wait for the next candle for the moving average to be calculated).
It calculates shifted variants (“semi” parallels) as a percentage of this basic moving average, high and low, to define position entry points (depending on user settings, up to 2 shifted levels for 2 Long position entries). Because the offset is calculated as a percentage rather than a fixed value, the resulting deviations are not parallel to the basic moving average, but enable the detection of a sudden price contraction. By adjusting these deviations proportionally, we can more clearly observe variations relative to the basic moving average, enabling us to detect dynamic support and resistance zones that adapt to market fluctuations. The fact that they are not strictly parallel avoids too rigid an interpretation and gives a more nuanced reading of trends, capturing small divergences that could indicate more subtle changes in market dynamics.
The most distinctive feature of this strategy concerns position exits: the script calculates a new moving average shifted proportionally to the base moving average (adjustable) to define the position exit price level. A classic moving-average exit can also be used, leaving the deviation value at 0.
The strategy enters the position when one of the deviations from the position entry moving average is crossed, and exits the position when the deviation from the position exit moving average is crossed.
3 - “Ready to use” anduser-adjustable parameters
The strategy interface has been optimized for easy creation of trading robots, with all settings underlying the calculations and numerous options for optimization.
Here are the contents of the strategy settings interface:
Visually show/hide entry zones on the chart
Define position output deviation level (0 - 0.4%)
Define position entry deviation levels (up to 2 levels)
Define type of capital management (% available balance, % total capital or fixed amount in $)
Define the amount of each position entry (in % or $)
Define the leverage used
Define source of data used (ohlc4, open, high, low, close, hl2, hlc3, ohlc4, hlcc4)
Define type of moving average used for calculations (SMA, PCMA, EMA, WMA, DEMA, ZLEMA, HMA)
Define moving average length (period)
Define a message to be sent to a bot via the webhook for a LONG entry
Define a message to be sent to a bot via the webhook for a LONG output
Define a stoploss (optional for this type of strategy)
In addition, important information about strategy settings and results is displayed directly on the chart. The percentage profit displayed may differ slightly from that of the backtest, as it includes potential profits from open trades (strategy.openprofit) in its calculation.
4 - Chart and backtest display conditions, options and settings
Here are the conditions and settings of the graph presented on the screen:
Its result is obtained over 2 months. Position entry is in cash to balance the two entries, with 50% of capital per entry leveraged x2
L3USDT.P - BITGET - 5M - LONG - Backtest : 03/09/2024 - 09/11/2024 - CASH : 500 (1/2 Equity By Entry - x2 Leverage) - SMA Lenght : 33 – Exit Deviation : 0.004 - LONGS : 0.029 - 0.04 : Stop-Loss - 100% (none)
5 - How to adjust and apply the strategy?
Generally speaking, the strategy works well on a large proportion of cryptocurrencies. The recommended timeframes are: 5M - 15M - 30M - 45M - 1H - 2H - 3H - 4H and the most appropriate timeframe will vary according to the crypto-currency. It is also possible, with certain assets, to run the strategy on shorter timeframes such as 5M or 15M with success.
Generally speaking, if set “wide”, the winrate is usually very high and most result curves are nice and progressive, with good stability over time.
The strategy can be used with a single position entry level, maximizing the use of capital on each trade and/or having several strategies active on a single account at the same time.
It can also be used on a “safe” basis, using up to 2 successive entries to smooth out unforeseen market movements and minimize risk.
Recommended leverage is x1 or x2 for controlled long-term trading, especially with 2 levels of entries used, although sometimes higher leverage could be considered with controlled risk.
Here's how to set up the strategy:
Start by finding a cryptocurrency displaying a nice curve with the default settings. The SMA Lenght setting is very important and can vary greatly from asset to asset (between SMA 2 and SMA 80).
Then try the default settings on all timesframes, and select the timeframe with the best curve or the best result.
Set the first triggerlevel to the value that gives the best result
(optional): Change the moving average type, period and data source to find the most optimized setting before proceeding to the next step.
Set the 2nd inputlevel to the last value modifying the result.
Then set the output level, which can greatly improve the results.
Enter your bot's Enter_Long and Exit_Long commands
Create an alarm linked via webhook to your bot or trading intermediary (info below)
6 - How to program robots for automated trading using this strategy
If you want to use this strategy for automated trading, it's very simple. All you need is an account with a cryptocurrency broker that allows APIs, and an intermediary between TradinView and your broker who will manage your orders.
Here's how it works:
On your intermediary, create a bot that will manage the details of your orders (amount, single or multiple entries, exit conditions). This bot is linked to the broker via an API and will be able to place real orders. Each bot has four different signals that enable it to be activated via a webhook. When one of the signals is received, it executes the orders for you.
On TradingView, set the strategy to a suitable asset and timeframe. Once set, enter in the strategy parameters the signals specific to the bot you've created. Confirm and close the parameters.
Still on TradingView, create an alarm based on your set strategy (on the strategy tester). Give the alarm the name of your choice and in “Message” enter only{{strategy.order.comment}}.
In alarm notifications, activate the webhook and enter the webhook of your trading intermediary. Confirm the alarm.
As long as the alarm is activated in TradingView, the strategy will monitor the market and send an order to enter or exit a position as soon as the conditions are met. Your bot will receive the instruction and place orders with your broker. Subsequent changes to the strategy settings do not change those stored in the alarm. If you wish to change the settings for one of your bots, simply delete the old alarm and create a new one.
Note: In your bot settings, on your intermediary, make sure to allow: - Multiple entries - A single exit signal to close all positions - Stoploss disabled (if necessary, use the strategy one)
Happy automated trading!
Elliott Wave with Supertrend Exit - Strategy [presentTrading]## Introduction and How it is Different
The Elliott Wave with Supertrend Exit provides automated detection and validation of Elliott Wave patterns for algorithmic trading. It is designed to objectively identify high-probability wave formations and signal entries based on confirmed impulsive and corrective patterns.
* The Elliott part is mostly referenced from Elliott Wave by @LuxAlgo
Key advantages compared to discretionary Elliott Wave analysis:
- Wave Labeling and Counting: The strategy programmatically identifies swing pivot highs/lows with the Zigzag indicator and analyzes the waves between them. It labels the potential impulsive and corrective patterns as they form. This removes the subjectivity of manual wave counting.
- Pattern Validation: A rules-based engine confirms valid impulsive and corrective patterns by checking relative size relationships and fib ratios. Only confirmed wave counts are plotted and traded.
- Objective Entry Signals: Trades are entered systematically on the start of new impulsive waves in the direction of the trend. Pattern failures invalidate setups and stop out positions.
- Automated Trade Management: The strategy defines specific rules for profit targets at fib extensions, trailing stops at swing points, and exits on Supertrend reversals. This automates the entire trade lifecycle.
- Adaptability: The waveform recognition engine can be tuned by adjusting parameters like Zigzag depth and Supertrend settings. It adapts to evolving market conditions.
ETH 1hr chart
In summary, the strategy brings automation, objectivity and adaptability to Elliott Wave trading - removing subjective interpretation errors and emotional trading biases. It implements a rules-based, algorithmic approach for systematically trading Elliott Wave patterns across markets and timeframes.
## Trading Logic and Rules
The strategy follows specific trading rules based on the detected and validated Elliott Wave patterns.
Entry Rules
- Long entry when a new impulsive bullish (5-wave) pattern forms
- Short entry when a new impulsive bearish (5-wave) pattern forms
The key is entering on the start of a new potential trend wave rather than chasing.
Exit Rules
- Invalidation of wave pattern stops out the trade
- Close long trades on Supertrend downturn
- Close short trades on Supertrend upturn
- Use a stop loss of 10% of entry price (configurable)
Trade Management
- Scale out partial profits at Fibonacci levels
- Move stop to breakeven when price reaches 1.618 extension
- Trail stops below key swing points
- Target exits at next Fibonacci projection level
Risk Management
- Use stop losses on all trades
- Trade only highest probability setups
- Size positions according to chart timeframe
- Avoid overtrading when no clear patterns emerge
## Strategy - How it Works
The core logic follows these steps:
1. Find swing highs/lows with Zigzag indicator
2. Analyze pivot points to detect impulsive 5-wave patterns:
- Waves 1, 3, and 5 should not overlap
- Waves 3 and 5 must be longer than wave 1
- Confirm relative size relationships between waves
3. Validate corrective 3-wave patterns:
- Look for overlapping, choppy waves that retrace the prior impulsive wave
4. Plot validated waves and Fibonacci retracement levels
5. Signal entries when a new impulsive wave pattern forms
6. Manage exits based on pattern failures and Supertrend reversals
Impulsive Wave Validation
The strategy checks relative size relationships to confirm valid impulsive waves.
For uptrends, it ensures:
```
Copy code- Wave 3 is longer than wave 1
- Wave 5 is longer than wave 2
- Waves do not overlap
```
Corrective Wave Validation
The strategy identifies overlapping corrective patterns that retrace the prior impulsive wave within Fibonacci levels.
Pattern Failure Invalidation
If waves fail validation tests, the strategy invalidates the pattern and stops signaling trades.
## Trade Direction
The strategy detects impulsive and corrective patterns in both uptrends and downtrends. Entries are signaled in the direction of the validated wave pattern.
## Usage
- Use on charts showing clear Elliott Wave patterns
- Start with daily or weekly timeframes to gauge overall trend
- Optimize Zigzag and Supertrend settings as needed
- Consider combining with other indicators for confirmation
## Default Settings
- Zigzag Length: 4 bars
- Supertrend Length: 10 bars
- Supertrend Multiplier: 3
- Stop Loss: 10% of entry price
- Trading Direction: Both
Master Supertrend Strategy [Trendoscope]Here is the strategy version of the indicator - Master Supertrend
Options and variations are same throughout.
🎲 Variations
Following variations are provided in the form of settings.
🎯 Range Type
Instead of ATR, different types of ranges can be used for stop calculation. Here is the complete list used in the script.
Plus/Minus Range* - Calculates plus range and minus range for each candle and uses them for different sides of stop calculation
Ladder ATR - Based on the existing concept of Ladder ATR defined in Supertrend-Ladder-ATR
True Range - True range derived from standard function ta.tr
Standard Deviation - Standard deviation of close prices
🎯 Applied Calculation
In standard ATR, rma of TR is used for calculations. But, the application calculation provides option to users to use different mechanisms. It can be a type of moving average or few other types of calculations.
Available values are
sma
ema
hma
rma
wma
high
median
🎯 Other options
Few other options provided are
Use Close Price - If selected stops are calculated based on the close price instead of high/low prices
Wait for Close If selected, change of supertrend direction is calculated based on close price instead of high/low prices
Diminishing Stop Distance - When selected, stop distance for the trend direction can only reduce and cannot increase. This option is useful for keeping the tight stops on strong trends.
🎯 Plus Minus Range*
One of the range type used is Plus/Minus Range. What it means and how are these ranges calculated? Let's have a look.
Plus Range is an upward movement of a candle from its last price or open price whichever is lower.
Minus Range is a downward movement of a candle from its last price or open price whichever is higher.
This divides True Range into two separate range for positive and negative side.
Note : Effectiveness on daily charts are quire visible. However, if you want to use it for lower timeframes, please play around with settings before settling on suitable configuration.
*Backtesting System ⚉ OVERVIEW ⚉
One of the best Systems for Backtesting your Strategies.
Incredibly flexible, simple, fast and feature-rich system — will solve most of your queries without much effort.
Many systems for setting StopLoss, TakeProfit, Risk Management and advanced Filters.
All you need to do is plug in your indicator and start Backtesting .
I intentionally left the option to use my System on Full Power before you load your indicator into it.
The system uses the built-in simple and popular moving average crossover signal for this purpose. (EMA 50 & 200).
Also Highly Recommend that you Fully use ALL of the features of this system so that you understand how they work before you ask questions.
Also tried to leave TIPS for each feature everywhere, read Tips, activate them and see how they work.
But before you use this system, I Recommend you to read the following description in Full.
—————— How to connect your indicator in 2 steps:
Adapt your indicator by adding only 2 lines of code and then connect it to this Backtesting System.
Step 1 — Create your connector, For doing so:
• 1 — Find or create in your indicator where are the conditions printing the Long-Buy and Short-Sell signals.
• 2 — Create an additional plot as below
I'm giving an example with a Two moving averages cross.
Please replicate the same methodology for your indicator wether it's a MACD, RSI , Pivots, or whatever indicator with Clear Buy and Sell conditions.
//@version=5
indicator('Moving Average Cross', overlay = true)
MA200 = ta.𝚎𝚖𝚊(close, 200)
MA50 = ta.𝚎𝚖𝚊(close, 50)
// Generate Buy and Sell conditions
buy = ta.crossover (MA200, MA50)
sell = ta.crossunder (MA200, MA50)
plot(MA200, color=color.green)
plot(MA50 , color=color.red )
bgcolor(color = buy ? color.green : sell ? color.red : na, title='SIGNALS')
// ———————————————— SIGNAL FOR SYSTEM ————————————————
Signal = buy ? +1 : sell ? -1 : 0
plot(Signal, title='🔌Connector🔌', display = display.none)
// —————— 🔥 The Backtesting System expects the value to be exactly +1 for the 𝚋𝚞𝚕𝚕𝚒𝚜𝚑 signal, and -1 for the 𝚋𝚎𝚊𝚛𝚒𝚜𝚑 signal
Basically, I identified my Buy & Sell conditions in the code and added this at the bottom of my indicator code
Now you can connect your indicator to the Backtesting System using the Step 2
Step 2 — Connect the connector
• 1 — Add your updated indicator to a TradingView chart and Add the Backtesting System as well to the SAME chart
• 2 — Open the Backtesting System settings and in the External Source field select your 🔌Connector🔌 (which comes from your indicator)
_______________________________
⚉ MAIN SETTINGS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
𝐄𝐱𝐭𝐞𝐫𝐧𝐚𝐥 𝐒𝐨𝐮𝐫𝐜𝐞 — Select your indicator. Add your indicator by following the 2 steps described above and select it in the menu. To familiarize yourself with the system until you select your indicator, you will have an in-built strategy of crossing the two moving EMA's of 50 and 200.
Long Deals — Enable/Disable Long Deals.
Short Deals — Enable/Disable Short Deals.
Wait End Deal — Enable/Disable waiting for a trade to close at Stop Loss/Take Profit. Until the trade closes on the Stop Loss or Take Profit, no new trade will open.
Reverse Deals — To force the opening of a trade in the opposite direction.
ReEntry Deal — Automatically open the same new deal after the deal is closed.
ReOpen Deal — Reopen the trade if the same signal is received. For example, if you are already in the long and a new signal is received in the long, the trade will reopen. * Does not work if Wait End Deal is enabled.
𝐓𝐚𝐤𝐞 𝐏𝐫𝐨𝐟𝐢𝐭:
None — Disables take profit. Useful if you only want to use dynamic stoplosses such as MA, Fast-Trailing, ATR Trail.
FIXED % — Fixed take profit in percent.
FIXED $ — Fixed Take in Money.
ATR — Fixed Take based on ATR.
R:R — Fixed Take based on the size of your stop loss. For example, if your stop is 10% and R:R=1, then the Take would be 10%. R:R=3 Take would be 30%, etc.
HH / LL — Fixed Take based on the previous maximum/minimum (extremum).
𝐒𝐭𝐨𝐩 𝐋𝐨𝐬𝐬:
None — Disables Stop Loss. Useful if you want to work without a stop loss. *Be careful if Wait End Deal is enabled, the trade may not close for a long time until it reaches the Take.
FIXED % — Fixed Stop in percent.
FIXED $ — Fixed Stop in Money.
TRAILING — Dynamic Trailing Stop like on the stock exchanges.
FAST TRAIL — Dynamic Fast Trailing Stop moves immediately in profit and stays in place if the price stands still or the price moves in loss.
ATR — Fixed Stop based on the ATR.
ATR TRAIL — Dynamic Trailing Stop based on the ATR.
LO / HI — A Fixed Stop based on the last Maximum/Minimum extemum. Allows you to place a stop just behind or above the low/high candle.
MA — Dynamic Stop based on selected Moving Average. * You will have 8 types of MA (EMA, SMA, HMA, etc.) to choose from, but you can easily add dozens of other MAs, which makes this type of stop incredibly flexible.
Add % — If true, then with the "𝗦𝘁𝗼𝗽 %" parameter you can add percentages to any of the current SL. Can be especially useful when using Stop - 𝗔𝗧𝗥 or 𝗠𝗔 or 𝗟𝗢/𝗛𝗜. For example with 𝗟𝗢/𝗛𝗜 to put a stop for the last High/Low and add 0.5% additional Stoploss.
Fixed R:R — If the stop loss is Dynamic (Trailing or MA) then if R:R true can also be made Dynamic * Use it carefully, the function is experimental.
_________________________________________
⚉ TAKE PROFIT LEVELS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
A unique method of constructing intermediate Take Profit Levels will allow you to select up to 5 intermediate Take Profit Levels and one intermediate Stop Loss.
Intermediate Take Profit Levels are perfectly calculated into 5 equal parts in the form of levels from the entry point to the final Take Profit target.
All you need to do is to choose the necessary levels for fixing and how much you want to fix at each level as a percentage. For example, TP 3 will always be exactly between the entry point and the Take Profit target. And the value of TP 3 = 50 will close 50% of the amount of the remaining size of the position.
Note: all intermediate SL/TP are closed from the remaining position amount and not from the initial position size, as TV does by default.
SL 0 Position — works in the same way as TP 1-5 but it's Stop. With this parameter you can set the position where the intermediate stop will be set.
Breakeven on TP — When activated, it allows you to put the stop loss at Breakeven after the selected TP is reached. For this function to work as it should - you need to activate an intermediate Take. For example, if TP 3 is activated and Breakeven on TP = 3, then after the price reaches this level, the Stop loss will go to Breakeven.
* This function will not work with Dynamic Stoplosses, because it simply does not make sense.
CoolDown # Bars — When activated, allows you to add a delay before a new trade is opened. A new trade after CoolDown will not be opened until # bars pass and a new signal appears.
_____________________________
⚉ TIME FILTERS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Powerful time filter code that allows you to filter data based on specific time zones, dates, and session days. This code is ideal for those who need to analyze data from different time zones and weed out irrelevant data.
With Time Filter, you can easily set the starting and ending time zones by which you want to filter the data.
You can also set a start and end date for your data and choose which days of the week to include in the analysis. In addition, you can specify start and end times for a specific session, allowing you to focus your analysis on specific time periods.
_________________________________
⚉ SIGNAL FILTERS ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Signal Filters — allows you to easily customize and optimize your trading strategies based on 10 filters.
Each filter is designed to help you weed out inaccurate signals to minimize your risks.
Let's take a look at their features:
__________________________________
⚉ RISK MANAGEMENT ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
Risk management tools that allow you to set the maximum number of losing trades in a row, a limit on the number of trades per day or week and other filters.
Loss Streak — Set Max number of consecutive loss trades.
Win Streak — Max Winning Streak Length.
Row Loss InDay — Max of consecutive days with a loss in a row.
DrawDown % — Max DrawDown (in % of strategy equity).
InDay Loss % — Set Max Intraday Loss.
Daily Trades — Limit the number of MAX trades per day.
Weekly Trades — Limit the number of MAX trades per week.
* 🡅 I would Not Recommend using these functions without understanding how they work.
Order Size — Position Size
• NONE — Use the default position size settings in Tab "Properties".
• EQUITY — The amount of the allowed position as a percentage of the initial capital.
• Use Net Profit — On/Off the use of profit in the following trades. *Only works if the type is EQUITY.
• SIZE — The size of the allowed position in monetary terms.
• Contracts — The size of the allowed position in the contracts. 1 Сontract = Сurrent price.
________________
⚉ NOTES ⚉
‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
It is important to note that I have never worked with Backtesting and the functions associated with them before.
It took me about a month of slow work to build this system.
I want to say Big Thanks:
• The PineScripters🌲 group, the guys suggested how to implement some features. Especially @allanster
• Thanks to all those people who share their developments for free on TV and not only.
• I also thank myself for not giving up and finishing the project, and not trying to monetize the system by selling it. * Although I really want the money :)
I tried hard to make it as fast and convenient as possible for everyone who will use my code.
That's why I didn't use any libraries and dozens of heavy functions, and I managed to fit in 8+-functions for the whole code.
Absolutely every block of code I tried to make full-fledged modular, that it was easy to import/edit for myself (you).
I have abused the Ternary Pine operator a little (a lot) so that the code was as compact as possible.
Nevertheless, I tried very hard to keep my code very understandable even for beginners.
At last I managed to write 500 lines of code, making it one of the fastest and most feature-rich systems out there.
I hope everyone enjoys my work.
Put comments and write likes.
M0PB (Momentum Pullback)Long/short strategy that identifies extreme readings on the rsi as a *momentum signal*, unlike most RSI strategies the script will look to buy or sell the first pullback in the direction of the extreme RSI reading.
Enters positions on the first pullback to the 5ema(low)/ 5ema(high) and exits at rolling 12 bar high/ low. The rolling high/ low feature means that if the price enters into a prolonged consolidation the profit target will begin to reduce with each new bar. The best trades tend to work within 2-6 bars.
Built for use on 5 min intervals on FX, Indexes, and Crypto. Lower than 5 minute time frames tend to be noisier and mean more commissions and a higher risk of slippage so the suggested timeframe is 5 mins.
Hard stop is X ATR (users can experiment with this) from the position entry price. This can be adjusted in user inputs.
There is a lot of slack left in entries and exits but the overall strategy is fairly robust across timeframes and markets and has between 60%-70% win rate with larger winners.
Signals that occur from economic news volatility are best avoided.
Algonize Pivot Strategy (APS)This study is based on several Price Action parameters of :-
• Pivot Points,
• Higher High and Lower Lows,
• High Low Index ,
• Support and Resistance.
► How To Use This Strategy?
This is a pure scalping strategy and it is advised to use this only with algo trading systems. Due to high trade frequency.
► This Strategy has inbuilt custom time frame backtester, which enables you to test for performance between any date or check for a single day.
► To Create Alerts for algo trading in this strategy simply Check "Activate Algo" from Settings then Create new alert , select your strategy in condition box, and now scroll down to message box and write
{{strategy.order.comment}}
That's it , Just Click on Create Alert Button
Backtest Values Used:-
Initial Capital : 1000000
Order Size (Lots) : 1 (Contract) Lots
Pyramiding : 0 orders
Commission : 0.003%
Sharpe Ratio : 1.741
Profit Factor : 1.174
Test Yourself and give feedback.
PM us to obtain access.
Breakout Scalper (Session)This is a twist on my on my Breakout Scalper strategy that limits trading to a user-configurable session
Find the original "Continuous" version of the scalper here:
The breakout scalper is based on "slow" and "fast" donchian periods. In this version, the "slow" donchian is in fact the Day's high/low. This important difference means that we will always be entering our trades at the day's high or low, so you are exposed to the price making new highs/lows but not to oscillations within the day's range.
Furthermore, the scalper is modified to only enter trades after the start of the user-configured session. Any open trades are closed at the end of the user-configured session. The default session is set to 10:00 AM to 3:30 PM because that's when I like to trade.
RSI and Smoothed RSI Bull Div Strategy [BigBitsIO]This strategy focuses on finding a low RSI value, then targeting a low Smoothed RSI value while the price is below the low RSI in the lookback period to trigger a buy signal.
Features Take Profit, Stop Loss, and Plot Target inputs. As well as many inputs to manage how the RSI and Smoothed RSI are configured within the strategy.
Explanation of all the inputs
Take Profit %: % change in price from position entry where strategy takes profit
Stop Loss %: % change in price from position entry where strategy stops losses
RSI Lookback Period: # of candles used to calculate RSI
Buy Below Lowest Low In RSI Divergence Lookback Target %: % change in price from lowest RSI candle in divergence lookback if set
Source of Buy Below Target Price: Source of price (close, open, high, low, etc..) used to calculated buy below %
Smoothed RSI Lookback Period: # of candles used to calculate RSI
RSI Currently Below: Value the current RSI must be below to trigger a buy
RSI Divergence Lookback Period: # of candles used to lookback for lowest RSI in the divergence lookback period
RSI Lowest In Divergence Lookback Currently Below: Require the lowest RSI in the divergence lookback to be below this value
RSI Sell Above: If take profit or stop loss is not hit, the position will sell when RSI rises above this value
Minimum SRSI Downtrend Length: Require that the downtrend length of the SRSI be this value or higher to trigger a buy
Smoothed RSI Currently Below: Value the current SRSI must be below to trigger a buy
Enhanced Combo Strategy (HWM / SL / BE / Volume Filter)🧠 Trend Rider by Traddy
📲 Join our Telegram to build a powerful trading community!
I post new strategies regularly — don’t miss out on the next one!
👉 t.me
⚙️ How to Use This Strategy
⚠️ Use on Bybit with the pair AI16ZUSDT.P
⏱️ Timeframe: 15-minute chart
This strategy is optimized for fast-paced altcoin trends and built to work with automation platforms like 3Commas.
🚀 What Does It Do?
Trend Rider is a trend-following strategy that:
Detects strong market momentum
Waits for structural breakouts
Enters only when everything aligns
Manages risk dynamically
Keeps you in trades that actually move
🧠 What Makes It Special?
Filters out bad signals using volume, volatility, and chop filters
Waits for real breakouts instead of reacting to every noise
Automatically adjusts to changing volatility conditions
Protects capital with optional fixed SL, break-even, and HWM trailing stops
Fully modular — toggle any logic on/off to match your own trading style
Comes alert-ready for 3Commas automation (no manual coding needed)
⚙️ How Entry Signals Are Generated (Technical Breakdown)
To qualify for a Long entry, the following must be true (if enabled):
✅ Trader XO Cross – Fast EMA crosses above Slow EMA
✅ SALMA Trend – Custom moving average shows bullish direction
✅ Ripster EMA3 – Short EMA is above long EMA
✅ Multi-Timeframe Ripster – Higher timeframe trend agrees (optional)
✅ ADX Filter – Rising ADX above threshold confirms strength (optional)
✅ Volume Spike – Volume exceeds moving average * multiplier (optional)
✅ CHOP Filter – CHOP index confirms market is not ranging
✅ ATR Volatility Filter – Ensures enough price movement to justify entry
✅ Swing Breakout – Price breaks above recent swing high
If all active filters are passed → a long signal is printed and sent.
🔻 Short entries work the same way but in the opposite direction:
Trader XO bear cross
Bearish SALMA
Ripster 34 < 50
Price breaks below swing low
🛡️ Built-in Risk Management
🎯 Fixed SL – Stop loss % based on entry price
🟢 Break-Even Logic – Moves stop to entry once RR target is hit
📈 HWM Trailing Stop – Follows the trade as it makes new highs/lows
💸 Take-Profit Target – Based on user-defined risk/reward multiple
🔧 Suggested Starting Settings
Setting Recommended Value
Symbol AI16ZUSDT.P
Timeframe 15m
Leverage 1x to 5x
Risk % 100% or your choice
Fixed Stop Loss ✅ Enabled
Break-Even ✅ Enabled
Trailing Stop (HWM) ✅ Enabled
Swing Breakout ✅ Enabled
🤖 Automation Ready
The strategy includes customizable alert messages for TradingView → 3Commas.
Just set alerts on entry/exit events and plug in your bot.
Monday-Range Strategy This strategy takes range-breakout entries based on Monday’s daily open, high, low, and midpoint (EQ).
* - Entries:
* • Long when price crosses above Monday’s Open
* • Short when price crosses below Monday’s EQ (midpoint)
* - Exits:
* • Long exits at Monday’s High (limit) or Monday’s EQ (stop)
* • Short exits at Monday’s Low (limit) or Monday’s Open (stop)
US30 Stealth StrategyOnly works on US30 (CAPITALCOM) 5 Minute chart
📈 Core Concept:
This is a trend-following strategy that captures strong market continuations by entering on:
The 3rd swing in the current trend,
Confirmed by a volume-verified engulfing candle,
With adaptive SL/TP and position sizing based on risk.
🧠 Entry Logic:
✅ Trend Filter
Uses a 50-period Simple Moving Average (SMA).
Buy only if price is above SMA → Uptrend
Sell only if price is below SMA → Downtrend
✅ Swing Count Logic
For buy: Wait for the 3rd higher low
For sell: Wait for the 3rd lower high
Uses a 5-bar lookback to detect highs/lows
This ensures you’re not buying early — but after trend is confirmed with structure.
✅ Engulfing Candle Confirmation
Bullish engulfing for buys
Bearish engulfing for sells
Candle must engulf previous bar completely (body logic)
✅ Volume Filter
Current candle volume must be greater than the 20-period volume average
Ensures trades only occur with institutional participation
✅ MA Slope Filter
Requires the slope of the 50 SMA over the last 3 candles to exceed 0.1
Avoids chop or flat trends
Adds momentum confirmation to the trade
✅ Session Filter (Time Filter)
Trades only executed between:
2:00 AM to 11:00 PM Oman Time (UTC+4)
Helps avoid overnight chop and illiquidity
📊 Position Sizing & Risk Management
✅ Smart SL (Adaptive Stop Loss)
SL is based on full size of the signal candle (including wick)
But if candle is larger than 25 points, SL is cut to half the size
This prevents oversized risk from long signals during volatile moves.
Multi-Timeframe Wolfe Wave StrategyThis invite-only strategy implements an advanced multi-timeframe Wolfe Wave pattern recognition system specifically designed for institutional-grade algorithmic trading environments.
**Core Mathematical Framework:**
The strategy employs sophisticated mathematical calculations across 10 distinct timeframes (377, 233, 144, 89, 55, 34, 21, 13, 8, 5 periods), utilizing Elliott Wave ratio theory combined with proprietary algorithmic enhancements. Unlike standard Wolfe Wave implementations that rely on visual pattern recognition, this system uses quantitative analysis to identify precise entry and exit points.
**Technical Implementation:**
• **Pattern Detection Algorithm:** Calculates price relationships using configurable ratio sets including Fibonacci sequences, Elliott Wave ratios, Golden Ratio, Harmonic Patterns, Pi-based calculations, and custom mathematical progressions
• **Multi-Timeframe Confluence:** Simultaneously analyzes patterns across all timeframes to ensure signal reliability and reduce false positives
• **Dynamic Target Calculation:** Employs advanced mathematical modeling to project optimal profit targets based on historical price behavior and pattern completion theory
• **Risk Management Engine:** Implements position-based stop losses calculated as percentages of target profits, with liquidation price monitoring for leveraged positions
**Originality and Innovation:**
This implementation differs significantly from traditional Wolfe Wave indicators through several key innovations:
1. **Algorithmic Pattern Validation:** Uses mathematical confirmation across multiple timeframes rather than subjective visual analysis
2. **Adaptive Ratio Selection:** Offers 24 different ratio calculation methods, allowing optimization for various market conditions
3. **Institutional Integration:** Features comprehensive webhook messaging for automated execution via external trading systems
4. **Advanced Position Management:** Includes sophisticated position sizing controls with maximum concurrent position limits
**Strategy Logic:**
For bullish conditions, the algorithm identifies when price action meets specific mathematical criteria:
- Point validation through ratio analysis between swing highs/lows
- Confluence confirmation across multiple timeframes
- Minimum profit threshold filtering to ensure trade quality
- Dynamic stop-loss positioning based on pattern geometry
The mathematical approach uses proprietary calculations that extend beyond traditional Fibonacci levels, incorporating elements from chaos theory, fractal geometry, and advanced statistical analysis.
**Risk Management Features:**
• Configurable stop-loss percentages relative to profit targets
• Maximum position limits to control portfolio exposure
• Liquidation price monitoring for margin trading
• Time-based filtering options for market session control
• Minimum profit threshold settings to filter low-quality signals
**Intended Markets and Conditions:**
Optimized for cryptocurrency markets with high volatility and sufficient liquidity. Works effectively in trending and ranging market conditions due to its multi-timeframe approach. Best suited for assets with clear swing structure and adequate price movement.
**Performance Characteristics:**
The strategy is designed for active trading with frequent position entries across multiple timeframes. Position holding periods vary from short-term scalping to medium-term swing trading depending on pattern completion timeframes.
**Technical Requirements:**
Requires understanding of advanced pattern recognition theory, risk management principles, and algorithmic trading concepts. Users should be familiar with Wolfe Wave methodology and Elliott Wave theory fundamentals.
Volume and Volatility Ratio Indicator-WODI策略名称
交易量与波动率比例策略-WODI
一、用户自定义参数
vol_length:交易量均线长度,计算基础交易量活跃度。
index_short_length / index_long_length:指数短期与长期均线长度,用于捕捉中短期与中长期趋势。
index_magnification:敏感度放大倍数,调整指数均线的灵敏度。
index_threshold_magnification:阈值放大因子,用于动态过滤噪音。
lookback_bars:形态检测回溯K线根数,用于捕捉反转模式。
fib_tp_ratio / fib_sl_ratio:斐波那契止盈与止损比率,分别对应黄金分割(0.618/0.382 等)级别。
enable_reversal:反转信号开关,开启后将原有做空信号反向为做多信号,用于单边趋势加仓。
二、核心计算逻辑
交易量百分比
使用 ta.sma 计算 vol_ma,并得到 vol_percent = volume / vol_ma * 100。
价格波动率
volatility = (high – low) / close * 100。
构建复合指数
volatility_index = vol_percent * volatility,并分别计算其短期与长期均线(乘以 index_magnification)。
动态阈值
index_threshold = index_long_ma * index_threshold_magnification,过滤常规波动。
三、信号生成与策略执行
做多/做空信号
当短期指数均线自下而上突破长期均线,且 volatility_index 突破 index_threshold 时,发出做多信号。
当短期指数均线自上而下跌破长期均线,且 volatility_index 跌破 index_threshold 时,发出做空信号。
反转信号模式(可选)
若 enable_reversal = true,则所有做空信号反向为做多,用于在强趋势行情中加仓。
止盈止损管理
进场后自动设置斐波那契止盈位(基于入场价 × fib_tp_ratio)和止损位(入场价 × fib_sl_ratio)。
支持多级止盈:可依次以 0.382、0.618 等黄金分割比率分批平仓。
四、图表展示
策略信号标记:图上用箭头标明每次做多/做空(或反转加仓)信号。
斐波那契区间:在K线图中显示止盈/止损水平线。
复合指数与阈值线:与原版相同,在独立窗口绘制短、长期指数均线、指数曲线及阈值。
量能柱状:高于均线时染色,反转模式时额外高亮。
Strategy Name
Volume and Volatility Ratio Strategy – WODI
1. User-Defined Parameters
vol_length: Length for volume SMA.
index_short_length / index_long_length: Short and long MA lengths for the composite index.
index_magnification: Sensitivity multiplier for index MAs.
index_threshold_magnification: Threshold multiplier to filter noise.
lookback_bars: Number of bars to look back for pattern detection.
fib_tp_ratio / fib_sl_ratio: Fibonacci take-profit and stop-loss ratios (e.g. 0.618, 0.382).
enable_reversal: Toggle for reversal mode; flips short signals to long for trend-following add-on entries.
2. Core Calculation
Volume Percentage:
vol_ma = ta.sma(volume, vol_length)
vol_percent = volume / vol_ma * 100
Volatility:
volatility = (high – low) / close * 100
Composite Index:
volatility_index = vol_percent * volatility
Short/long MAs applied and scaled by index_magnification.
Dynamic Threshold:
index_threshold = index_long_ma * index_threshold_magnification.
3. Signal Generation & Execution
Long/Short Entries:
Long when short MA crosses above long MA and volatility_index > index_threshold.
Short when short MA crosses below long MA and volatility_index < index_threshold.
Reversal Mode (optional):
If enable_reversal is on, invert all short entries to long to scale into trending moves.
Fibonacci Take-Profit & Stop-Loss:
Automatically set TP/SL levels at entry price × respective Fibonacci ratios.
Supports multi-stage exits at 0.382, 0.618, etc.
4. Visualization
Signal Arrows: Marks every long/short or reversal-add signal on the chart.
Fibonacci Zones: Plots TP/SL lines on the price panel.
Index & Threshold: Same as v1.0, with MAs, index curve, and threshold in a separate sub-window.
Volume Bars: Colored when above vol_ma; extra highlight if a reversal-add signal triggers
SMPivot Gaussian Trend Strategy [Js.K]This open-source strategy combines a Gaussian-weighted moving average with “Smart Money” swing-pivot breaks (BoS = Break-of-Structure) to capture trend continuations and early reversals. It is intended for educational and research purposes only and must not be interpreted as financial advice.
How the logic works
-------------------
1. Gaussian Moving Average (GMA)
• A custom Gaussian kernel (length = 30 by default) smooths price while preserving turning points.
• A second pass (“Smoothed GMA”) further filters noise; only its direction is used for bias.
2. Swing-Pivot detection
• High/Low pivots are found with a symmetric look-back/forward window (Pivot Length = 20).
• The most recent confirmed pivot creates a dynamic structure level (UpdatedHigh / UpdatedLow).
3. Entry rules
Long
• Price closes above the most recent pivot high **and** above Smoothed GMA.
Short
• Price closes below the most recent pivot low **and** below Smoothed GMA.
4. Exit rules
• Fixed stop-loss and take-profit in percent of current price (user-defined).
• Separate parameters and on/off switches for longs and shorts.
5. Visuals
• GMA (dots) and Smoothed GMA (line).
• Structure break lines plus “BoS PH/PL” labels at the midpoint between pivot and break.
Inputs
------
Gaussian
• Gaussian Length (default 30) – smoothing window.
• Gaussian Scatterplot – toggle GMA dots.
Smart-Money Pivot
• Pivot Length (default 20).
• Bull / Bear colors.
Risk settings
• Long / Short enable.
• Individual SL % and TP % (default 1 % SL, 30 % TP).
• Strategy uses percent-of-equity sizing; initial capital defaults to 10 000 USD.
Adjust these to reflect your own account size, realistic commission and slippage.
Best practice & compliance notes
--------------------------------
• Test on a data sample that yields ≥ 100 trades to obtain statistically relevant results.
• Keep risk per trade below 5–10 % of equity; the default values comply with this guideline.
• Explain any custom settings you publish that differ from the defaults.
• Do **not** remove the code header or licence notice (MPL-2.0).
• Include realistic commission and slippage in your back-test before publishing.
• The script does **not** repaint; orders are processed on bar close.
Usage
-----
1. Add the script to any symbol / timeframe; intraday and swing timeframes both work—adjust lengths accordingly.
2. Configure SL/TP and position size to match your personal risk management.
3. Run “List of trades” and the performance summary to evaluate expectancy; forward-test before live use.
Disclaimer
----------
Trading involves substantial risk. Past performance based on back-testing is not necessarily indicative of future results. The author is **not** responsible for any financial losses arising from the use of this script.