MACD + MA HTF Strategy - Dynamic SmoothingMACD + MA HTF Strategy - Dynamic Smoothing
The MACD alone generally gives too many false signals and is therefore often used in combination with different indicators. The basic idea to combine the MACD with a moving average on a higher time frame is a commonly used technique to only enter Longs in a uptrend and only Shorts in a downtrend while trading on lower timeframe charts. However, the main issue in many strategy scripts is that the HTF indicator is not visible on lower timecharts. With this strategy example I used the Dynamic Smoothing code to visualise the HTF MA filter to display on you lower timechart. This way it is easier to optimize the strategy settings to the instrument chart.
Orginality and Usefulness - Dynamic Smoothing
Visualizing a higher time frame on a lower timechart often gives jagged lines on your chart. As the calculation is done on less bars, compared to the bars you have open on your timechart. The dynamic smoothing factor is derived by taking the ratio of minutes of the higher time frame to the current time frame. This ensures the moving average remains fluid and consistent across different time frames, eliminating 'jagged' lines on your chart. This new MA value is then used as HTF filter on top of the MACD entry settings. Always make sure the time chart is equal or lower than the timeframe settings in the configuration settings. The intention of the script is to visualise the higher time frame confirmations while trading on a lower timechart.
Code example how to achieve Dynamic Smoothing:
// Get minutes for current and higher timeframes
// Function to convert a timeframe string to its equivalent in minutes
timeframeToMinutes(tf) =>
multiplier = 1
if (str.endswith(tf, "D"))
multiplier := 1440
else if (str.endswith(tf, "W"))
multiplier := 10080
else if (str.endswith(tf, "M"))
multiplier := 43200
else if (str.endswith(tf, "H"))
multiplier := int(str.tonumber(str.replace(tf, "H", "")))
else
multiplier := int(str.tonumber(str.replace(tf, "m", "")))
multiplier
// Get minutes for current and higher timeframes
currentTFMinutes = timeframeToMinutes(timeframe.period)
higherTFMinutes = timeframeToMinutes(TimeFrame_Trend)
// Calculate the smoothing factor
dynamicSmoothing = math.round(higherTFMinutes / currentTFMinutes)
MA_Value_Smooth = ta.sma(MA_Value_HTF, dynamicSmoothing)
Complete Strategy
The MACD and HTF moving average is used to determine when to enter a new position. However a strategy should consider more factors than only the timing of entering a trade. To complete the strategy I included:
an option to choose from different MA types per indicator
a Risk Management Tool
a Take Profit Logic
a Trailing stop loss
a Hard Stoploss
a visual representation of TP and SL
This is merely an example how to structure a strategy and many different setups are possible.
The features in this script are explained below:
Different MA types
The script supports various MA types like EMA, SMA, DEMA, TEMA, WMA and HMA. You can select the MA type and different timeframe to your liking.
Risk Management Tool
Traders can choose to allocate their position size based on a percentage of equity or a fixed number of contracts. This feature ensures prudent risk management and helps traders align their position sizes with their risk tolerance. In the strategy -0.5 is equal to 50% of equity and 1.5 is 150% of equity used. Make sure to align the % of equity with your maxdrawn results with backtesting. Personally I don't want higher max drawdowns than 15%. For the strategy results the script considers 0.05 commission rate on each trade, to stay conservative. For a more detailed explanation I refer to my earlier published tradingviewblog about risk management:
Take Profit Logic
The take profit logic in this script is designed for optimization, offering three distinct exit levels. Traders can customize these levels based on their risk appetite. The script allows adjustment of both the percentage take profit level and the position size, catering to individual trading strategies and objectives. The default settings closes 33% of the position when TP target is hit. The TP levels are simply calculated by inputting a % of of the entryprice.
Trailing Stop and Hard Stoploss
To mitigate downside risks and protect profits, the script incorporates a well-thought-out trailing stop mechanism based on the Average True Range (ATR). This dynamic trailing stop adapts to market volatility, allowing traders to secure gains while letting profitable positions run. Additionally, to prevent significant losses, a fixed stop loss is implemented, providing an added layer of protection.
Visual Representation of Take Profit and Stoploss Levels
For enhanced visualization, take profit and stoploss levels are displayed on the chart. Take profit levels are depicted with green lines, providing a clear indication of potential exit points. Conversely, the trailing stop loss is presented by the red line, serving as visual cues for risk management. Visualizing indicators makes is easier to optimize settings to your liking.
Ideal Settings and Accessibility
This script is intended to be used on lower timeframe charts like 10 to 30 minutes. You can Align the MACD entry settings equal to your opened timechart or use a slightly higher timeframe. For the MA trend filters, higher timeframe settings such as 30 min, 1 hour, 4 hours, or 1 day are recommended for trading the trend.
Disclaimer
Trading involves significant risk and may not be suitable for all investors. The information provided in this script is for educational purposes only and should not be considered as financial advice. Past performance is not indicative of future results. By using this script, you acknowledge that you understand and accept these risks.
Cari dalam skrip untuk "take profit"
Price Action Pattern Breakout Strategy: Wedge,Triangle,ChannelIntroducing the Price Action Pattern Breakout Strategy: Wedge,Triangle,Channel 💹🚀
The "Price Action Pattern Breakout Strategy: Wedge, Triangle, Channel" is a dynamic and automated trading strategy that excels in recognizing and capitalizing on breakout opportunities within the realm of powerful price action patterns. It is finely tuned to achieve exceptional precision in detecting three distinct pattern types: Wedge, Triangle, and Channel. This diversity equips you to confidently navigate a wide range of market scenarios and opportunities.
This strategy automates trade entries and exits upon confirmed pattern breakouts, this eliminates human errors in correctly recognizing patterns and prevents emotional decisions. This strategy is designed to work across different time frames, making it suitable for both short-term and long-term traders. Whether you're a day trader, swing trader, or investor, this strategy provides the flexibility you need to thrive in diverse market conditions.
💎 How it Works:
▶️ In this strategy, three price action patterns have been utilized, one of which is the "Wedge" pattern. The Wedge pattern has consistently demonstrated a high level of credibility, typically resulting in sharp and rapid price movements following a confirmed breakout from this pattern. This characteristic makes the Wedge pattern highly noteworthy in our strategy. The second pattern is the "Triangle" pattern, which, depending on its formation, whether ascending or descending, can indicate a strong continuation or reversal of the trend. The last pattern is the "Channel" pattern. The reason for using the Channel pattern is its versatility in various market conditions and its tendency to produce reliable results.
In the snapshot below, you can observe the types of patterns that this strategy is capable of identifying at a glance:
▶️ This strategy employs two types of targeting systems: Fixed Targets and Trailing Targets.
Fixed Targets is the default targeting system of the strategy, incorporating two primary targets: TP1 (Target Point 1) and TP2 (Target Point 2). These targets are thoughtfully adjusted in alignment with specific rules for each pattern. With Fixed Targets, you have the flexibility to designate the position size percentage for your exits at TP1 and TP2. For instance, should you opt to allocate 60% of your position size to TP1, as soon as the price triggers the first take profit level, 60% of your initial position is gracefully closed, leaving the remaining 40% to exit the trade upon reaching TP2.
Trailing Targets represent the strategy's alternative targeting system. With this system, the trailing stop becomes active once the price reaches the specified trigger point. The strategy then exits the trade based on the defined offset percentage and price retracement from the trailing limit.
▶️ This strategy relies on a single type of stop loss, determined by previous pivot points and adjusted based on the trade's direction, whether long or short, placing the stop loss above or below the prior pivot. This stop loss approach has demonstrated reliability when used alongside price action patterns.
In addition to this fixed stop loss, you can specify a percentage buffer, offering protection against potential stop hunting due to market fluctuations. This buffer helps protect your positions from sudden price swings. For example, selecting a 1% buffer means your stop loss will be positioned 1% higher or lower concerning the last pivot, depending on your trade's direction. This added layer of security ensures your trades remain resilient and less vulnerable to market volatility.
▶️ A practical feature of this strategy is the "Risk-Free" option. Once activated, it continuously monitors price movements, and as soon as the price progresses in the trade's direction and surpasses the designated Risk-Free Trigger Point in percentage, the stop loss is dynamically shifted from its initial position to the entry price, effectively making the trade "risk-free." This means that if the trade doesn't go as expected, we exit at the entry point, incurring neither profit nor loss from the trade.
Additionally, you have the flexibility to fine-tune the modified stop loss, positioning it slightly above or below the entry price through the configuration of a specified percentage. This allows for effective consideration of commission fees in your trading strategy.
▶️ Risk management is a crucial concept in trading, playing a significant role in a trader's long-term success. This strategy introduces a unique feature called "Fixed Loss Position Sizing", where upon activation, you can limit the risk exposure to a specified percentage of your capital per trade. Set your preferred risk percentage along with the intended leverage. The strategy independently considers your available capital and designated leverage, determining the position size before executing any trade.
In the case of a stop loss, your loss is limited to the specified risk percentage. For instance, with a $1000 account and a 1% risk set, the strategy adjusts each trade's size to ensure a maximum loss of $10 if the stop loss is triggered. Enabling this feature will ensure disciplined risk management, aligning potential losses precisely with your predetermined risk percentage, contingent upon your total available capital.
▶️ Another feature of this strategy is a sophisticated mechanism called "Loss Compensation". When enabled, Loss Compensation dynamically adjusts the position size after a loss, aiming to recover from previous losses in subsequent trades. This adaptive mechanism continually modifies the position size to mitigate the impact of consecutive losses until reaching a user-defined limit for consecutive loss compensations.
The feature's configurability allows users to set the maximum number of consecutive losses to compensate for and also includes an option to factor in trading fees from prior trades into the compensation calculation. Loss Compensation operates in conjunction with the 'Fixed Loss Position Sizing' setting, ensuring that once losses are sufficiently compensated, subsequent entries revert to the predefined configurations within the 'Fixed Loss Position Sizing' settings.
This advanced tool ensures a stable risk management approach by changing trade sizes dynamically according to past results during consecutive loss periods.
▶️ This strategy incorporates a feature known as the "Counter-Pattern Breakout", altering its approach to wedge, triangle, and channel pattern breakouts. Normally, the strategy relies on standard pattern signals to determine whether to enter long or short positions based on breakout directions.
For example, in an ascending channel or a rising wedge pattern, the strategy typically seeks a short position opportunity upon a confirmed breakout in the lower line, and breakouts from the upper line are disregarded by the strategy. But with this feature enabled, strategy disregards the conventional pattern signals, seizing breakouts from upper or lower lines to open corresponding positions. For instance, in the ascending channel or the rising wedge pattern example, the strategy might enter a long position if the upper line breaks or a short position if the lower line breaks.
This introduces a more adaptive and opportunistic trading style, allowing you to capitalize on price movements, irrespective of the typical signal direction indicated by the pattern.
▶️ This strategy is fully compatible with third-party trading bots, allowing for easy connectivity to popular trading platforms. By leveraging the TradingView webhook functionality, you can effortlessly link the strategy to your preferred bot and receive accurate signals for position entry and exit. The strategy provides all the necessary alert message fields, ensuring a smooth and user-friendly trading experience. With this integration, you can automate the execution of trades, saving time and effort while enjoying the benefits of this powerful strategy.
⚙️ How to Use & Configure User Settings:
To fully utilize the "Price Action Pattern Breakout Strategy: Wedge, Triangle, Channel," it's essential to consider and comprehend the following steps. They play a crucial role in enhancing its functionality and achieving its utmost potential outcomes:
1. General Strategy Settings:
Enable Dark Mode if using a dark TradingView theme for improved chart visibility.
Select the Strategy's Trade Direction: Long, Short, or Both.
Choose Pattern Recognition Accuracy: High for precise recognition but fewer positions, Low for more positions with slightly less accuracy.
Enable 'Prevent New Entry on Opposite Signal While In Position' to avoid new trades if the opposite signal occurs.
Switch to Indicator Mode if solely using the strategy as an indicator or in combination with other strategies.
2. Pattern and Pivot Configuration:
Consider configuring the Number of Patterns and Pivot Lookback Lengths. Here, you can personalize the pivot lookback lengths for wedge, triangle, and channel patterns across eight different settings on your chart. For lower time frames, consider larger lengths to reduce chart noise. Alternatively, to maintain clarity on your chart, you can disable multiple patterns with different lengths while ensuring at least one pattern remains enabled.
Note that enabling more patterns doesn't always equate to increased potential profit. Sometimes, fewer patterns result in greater profit potential, and vice versa. Experiment with lengths and the number of patterns to determine the most profitable and optimal outcome for your trading symbol and timeframe.
3. Targeting System Selection:
Choose between 'Fixed Targets' or 'Trailing Targets' for your targeting system.
'Fixed Targets' is the default setting, operational when 'Trailing Targets' are turned off.
Set the TP1 Position Size as a percentage, defining the size for TP1, and the rest exits at TP2.
Optionally activate 'Skip Entry if TP1 is Passed' to bypass entering positions if the price has exceeded TP1.
Alternatively, opt for the 'Trailing Target' for dynamic exits based on trigger points and offsets. Note that this option disables fixed targets.
4. Stop Loss Configuration:
Determine the number of candles to consider for stop loss placement based on the last pivot.
Optionally add a percentage to the stop loss to create a buffer against market fluctuations, guarding your positions from sudden price swings.
5. Risk Management Configuration:
You can activate the 'Risk-Free' feature, making your trades risk-free by moving the stop loss to the entry price upon reaching a specified trigger point.
You have the possibility to enable 'Fixed Loss Position Sizing' to limit risk to a percentage of total capital per trade, ensuring prudent risk management.
You can employ 'Use Real-Time Balance for Each Entry' to precisely calculate fixed loss position sizing according to the real-time balance for every entry.
The 'Loss Compensation' feature can be activated to automatically adjust trade sizes during consecutive losses and compensate for prior incurred losses.
Loss compensation continues adjusting trade sizes until it reaches the defined limit of consecutive losses specified in the 'Maximum Consecutive Losses To Compensate' field.
You can factor in commission fees by specifying a percentage in the 'Include Trading Fees in Compensation (%)' field, providing an option for more accurate loss compensation calculations.
You have the option to enable 'Limit Compensation to Real-Time Balance' to prevent consecutive loss compensation from exceeding your current real-time account balance.
It's important to note that for the 'Loss Compensation' feature to operate, the 'Fixed Loss Position Sizing' must be enabled.
6. Counter-Pattern Breakout Configuration:
In this section you have the option to enable the "Counter-Pattern Breakout" feature to adjust the strategy's approach to wedge, triangle, and channel pattern breakouts. Once enabled, the strategy disregards traditional pattern signals and capitalizes on breakouts from either the upper or lower lines, initiating corresponding positions accordingly.
Choose between 'Fixed Target' or 'Trailing Target' for your targeting system. If you opt for the 'Fixed Target', set a specific target point as a percentage, serving as the default target for counter-pattern breakouts. Alternatively, choose the 'Trailing Target' for dynamic exits based on trigger points and offsets. Do keep in mind that selecting the 'Trailing Target' option disables the fixed target setting.
Keep in mind that for standard, non-counter-pattern breakouts, the target point settings in their respective sections remain applicable, distinct from the settings configured for targeting within this section.
Note that the stop loss configurations are shared across standard pattern and counter-pattern breakouts and can be adjusted within the stop loss section.
7. Info Tables:
In the info tables section, you can show or hide different tables on the charts. This includes the backtest table, the current balance table displaying available funds, and a table showcasing Maximum Consecutive Wins or Losses. Choose which to display according to your preferences and specific needs.
8.Date & Time Range Filter:
Utilize the Date & Time Range filter feature to precisely select a start and end date, including time, to filter data within the chosen range.
When connecting this strategy to a trading bot for automated trades, ensure to set the start date and time to the intended initiation moment to avoid undesired outcomes as this directly affects the real-time balance calculations of the strategy.
8. Integration with Third-Party Bots:
To automate trading, leverage the strategy's compatibility with third-party trading bots. Seamlessly integrate the strategy into well-known trading platforms by using alert message fields to input commands from third-party trading bots, enabling automated trade execution for both long and short positions.
By furnishing these adjustable settings, the strategy empowers you to personalize it according to your unique requirements, thereby bolstering the adaptability and efficacy of your trading approach.
🔐 Source Code Protection:
The 'Price Action Pattern Breakout Strategy: Wedge, Triangle, Channel' source code is engineered for precision, reliability, and effectiveness. Its original and innovative design warrants protection and restricted access, preserving the strategy's exclusivity. Safeguarding the code maintains the strategy's integrity and distinctiveness, providing users with a competitive advantage in their trading endeavors.
YinYang RSI Volume Trend StrategyThere are many strategies that use RSI or Volume but very few that take advantage of how useful and important the two of them combined are. This strategy uses the Highs and Lows with Volume and RSI weighted calculations on top of them. You may be wondering how much of an impact Volume and RSI can have on the prices; the answer is a lot and we will discuss those with plenty of examples below, but first…
How does this strategy work?
It’s simple really, when the purchase source crosses above the inner low band (red) it creates a Buy or Long. This long has a Trailing Stop Loss band (the outer low band that's also red) that can be adjusted in the Settings. The Stop Loss is based on a % of the inner low band’s price and by default it is 0.1% lower than the inner band’s price. This Stop Loss is not only a stop loss but it can also act as a Purchase Available location.
You can get back into a trade after a stop loss / take profit has been hit when your Reset Purchase Availability After condition has been met. This can either be at Stop Loss, Entry or None.
It is advised to allow it to reset in case the stop loss was a fake out but the call was right. Sometimes it may trigger stop loss multiple times in a row, but you don’t lose much on stop loss and you gain lots when the call is right.
The Take Profit location is the basis line (white). Take Profit occurs when the Exit Source (close, open, high, low or other) crosses the basis line and then on a different bar the Exit Source crosses back over the basis line. For example, if it was a Long and the bar’s Exit Source closed above the basis line, and then 2 bars later its Exit Source closed below the basis line, Take Profit would occur. You can disable Take Profit in Settings, but it is very useful as many times the price will cross the Basis and then correct back rather than making it all the way to the opposing zone.
Longs:
If for instance your Long doesn’t need to Take Profit and instead reaches the top zone, it will close the position when it crosses above the inner top line (green).
Please note you can change the Exit Source too which is what source (close, open, high, low) it uses to end the trades.
The Shorts work the same way as the Long but just opposite, they start when the purchase source crosses under the inner upper band (green).
Shorts:
Shorts take profit when it crosses under the basis line and then crosses back.
Shorts will Stop loss when their outer upper band (green) is crossed with the Exit Source.
Short trades are completed and closed when its Exit Source crosses under the inner low red band.
So, now that you understand how the strategy works, let’s discuss why this strategy works and how it is profitable.
First we will discuss Volume as we deem it plays a much bigger role overall and in our strategy:
As I’m sure many of you know, Volume plays a huge factor in how much something moves, but it also plays a role in the strength of the movement. For instance, let’s look at two scenarios:
Bitcoin’s price goes up $1000 in 1 Day but the Volume was only 10 million
Bitcoin’s price goes up $200 in 1 Day but the Volume was 40 million
If you were to only look at the price, you’d say #1 was more important because the price moved x5 the amount as #2, but once you factor in the volume, you know this is not true. The reason why Volume plays such a huge role in Price movement is because it shows there is a large Limit Order battle going on. It means that both Bears and Bulls believe that price is a good time to Buy and Sell. This creates a strong Support and Resistance price point in this location. If we look at scenario #2, when there is high volume, especially if it is drastically larger than the average volume Bitcoin was displaying recently, what can we decipher from this? Well, the biggest take away is that the Bull’s won the battle, and that likely when that happens we will see bullish movement continuing to happen as most of the Bears Limit Orders have been fulfilled. Whereas with #2, when large price movement happens and Bitcoin goes up $1000 with low volume what can we deduce? The main takeaway is that Bull’s pressured the price up with Market Orders where they purchased the best available price, also what this means is there were very few people who were wanting to sell. This generally dictates that Whale Limit orders for Sells/Shorts are much higher up and theres room for movement, but it also means there is likely a whale that is ready to dump and crash it back down.
You may be wondering, what did this example have to do with YinYang RSI Volume Trend Strategy? Well the reason we’ve discussed this is because we use Volume multiple times to apply multiplications in our calculations to add large weight to the price when there is lots of volume (this is applied both positively and negatively). For instance, if the price drops a little and there is high volume, our strategy will move its bounds MUCH lower than the price actually dropped, and if there was low volume but the price dropped A LOT, our strategy will only move its bounds a little. We believe this reflects higher levels of price accuracy than just price alone based on the examples described above.
Don’t believe us?
Here is with Volume NOT factored in (VWMA = SMA and we remove our Volume Filter calculation):
Which produced -$2880 Profit
Here is with our Volume factored in:
Which produced $553,000 (55.3%)
As you can see, we wen’t from $-2800 profit with volume not factored to $553,000 with volume factored. That's quite a big difference! (Please note previous success does not predict future success we are simply displaying the $ amounts as example).
Now how about RSI and why does it matter in this strategy?
As I’m sure most of you are aware, RSI is one of the leading indicators used in trading. For this reason we figured it would only make sense to incorporate it into our calculations. We fiddled with RSI for quite awhile and sometimes what logically seems to be the right way to use it isn’t. Now, because of this, our RSI calculation is a little odd, but basically what we’re doing is we calculate the RSI, then turn it into a percentage (between 0-1) that can easily be multiplied to the price point we need. The price point we use is the difference between our high purchase zone and our low purchase zone. This allows us to see how much price movement there is between zones. We multiply our zone size with our RSI multiplication and we get the amount we will add +/- to our basis line (white line). This officially creates the NEW high and low purchase zones that we are actually using and displaying in our trades.
If you found that confusing, here are some examples to why it is an important calculation for this strategy:
Before RSI factored in:
Which produced 27.8% Profit
After RSI factored in:
Which produced 553% Profit
As you can see, the RSI makes not only the purchase zones more accurate, but it also greatly increases the profit the strategy is able to make. It also helps ensure an relatively linear profit slope so you know it is reliable with its trades.
This strategy can work on pretty much anything, but you should tweak the values a bit for each pair you are trading it with for best results.
We hope you can find some use out of this simple but effective strategy, if you have any questions, comments or concerns please let us know.
HAPPY TRADING!
Premium VWAP Trendfollow Strategy [wbburgin]This is a strongly-revised version of my VWAP Trendfollow Strategy, which follows a substantial reworking to address various structural inefficiencies with the script, such as the narrowing of the standard deviation band upon anchor reset. I will continue updating the original script with planned adjustments, this is a different proof-of-concept that builds off of the original script thesis with a different calculation method and execution.
This strategy is not built for any specific asset or timeframe, and has been backtested on crypto and equities from 1 min-1 day. The previous experimental strategy was heavily-correlated with the actual movement of the asset, which added unpalatable risk to the strategy and increased drawdown. This revised form has a more stable backtesting curve, but I want to heavily emphasize that I cannot guarantee that the strategy will be profitable for your circumstances. Backtesting only goes so far and every exchange has a different fee schedule, which can substantially eat into your profits. At the bottom I will explain the parameters behind the strategy results.
**********
The VWAP Trendfollow Strategy begins with a simple premise: to enter long when the price breaks above the upper standard deviation of a VWAP, and to close the position when the price breaks below the lower standard deviation of the VWAP. This is more effective than initiating the same strategy for a VWMA because the VWAP resets its anchor depending on your chosen anchor period, and the act of resetting its anchor also resets its standard deviation value. As a consequence, in sustained uptrends, the standard deviation is pulled upward to meet the price when the anchor resets, instead of requiring the price to fall all the way back down, as in the lower standard deviation band of the VWMA. This essentially acts as the VWAP itself raising the stop loss at each anchor period, which works well for the overall trend-following strategy.
However, this narrowing can still have consequences for a simple breakout strategy; as the price gradually oscillates towards above or below its standard deviation band, it may cross over the other and produce false signals. This oscillation is worrisome especially when fees are taken into account.
Thus, the premium VWAP Trendfollow strategy has a variable width which detects abnormal narrowing of the band, and adjusts it until it is reasonable to close the variability period. Additionally, a filter is added to the open/close signals to soften the frequency of signals without impacting performance significantly.
This script contains an ATR stop loss and an ATR take profit (which is also a difference between it and the original experimental script), with customizable inputs. The strategy results shown below are with initial capital of $1000, qty entry of 10%, and commissions of 0.06%. It works best on 24/7 instruments, like crypto, but I have found it also works with FAANG stocks or other high volatility / high volume assets. The issue with stocks, however, is that the price can jump/plummet because of abnormal events after-hours, which the strategy cannot pick up on until pre-trading begins the next morning. For that reason I suggest it be used on crypto and, because of its low % profitable (but high average winning trade in relation to its average losing trade), be used on an exchange that has minimal fees or volume-based discounts. In the unfortunate case that you cannot find a minimal fee or volume-discounted fee exchange (such as fellow Americans following the liquidity-retreat on Binance.US), I encourage you to test out the higher anchor periods for the higher timeframes, which will reduce the number of trades and increase the average % per trade.
Additionally, this is a long-term strategy used best for accumulation. It is currently long-only; that may change based off of user input.
**********
Disclaimer
Copyright by wbburgin.
The information contained in my Scripts/Indicators/Algorithms does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Volatility Compression Breakout - LeafAlgo Pro StrategyThe Volatility Compression Breakout strategy is designed to identify periods of low volatility followed by potential breakout opportunities in the market. It aims to capture moments when the price consolidates within a narrow range, indicating a decrease in volatility, and anticipates a subsequent expansion in price movement. This strategy is based on our indicator of the same name (), but differs by offering many more options for the band/channel type and trend filters in addition to implementing the ability to use this strategy with algorithmic plug-ins (see details at the bottom).
This strategy features six types of bands/channels and five types of trend filters, for a total of 30 combinations. The six band/channel types are the Adaptive Gaussian MA channel (based on the Adaptive Gaussian MA that we previously published ()), standard Bollinger Bands, smoothed Bollinger Bands (basis is an EMA of the typical Bollinger Basis), Keltner Channels, a Quadratic Regression Channel (based on the channel that we previously published in the LeafAlgo Pro indicator ()), and Volatility-Based Mean Reversion Bands (). The five trend filters include an EMA, SMA, Weighted MA, McGinley Dynamic, and the Adaptive Gaussian MA itself.
Examples of the different band/channel types (all with EMA as the trend filter):
Adaptive Gaussian MA Channel:
Bollinger Bands:
Smoothed Bollinger Bands:
Keltner Channels:
Quadratic Regression Channel:
Volatility-Based Mean Reversion Bands:
Examples of the different trend filters (all with Keltner Channels):
EMA:
SMA:
WMA:
McGinley Dynamic:
Adaptive Gaussian MA:
How the Long/Short Entry Signals are Calculated:
A breakout signal upwards, accompanied by a long entry, is created when the high is greater than the secondary upper band (the upper band plus a standard deviation or with a multiplier, depending on which band/channel type is selected), the latest close is above the trend filter line, and the previous close was below the trend filter line. A break downwards, accompanied by a short entry, is created when the low is below the secondary lower band, the close is below the trend filter line, and the previous close was above the trend filter line. These conditions, along with a confirmed barstate, make up the strategy entry signals.
Coloration:
When the close price is above both the middle/basis and the trend filter, the bars are colored lime green, indicating a potential bullish market sentiment. When the close price is positioned above the basis but below the trend filter, or below the basis but above the trend filter, the bars are colored yellow, signifying a neutral or indecisive market condition. Conversely, when the close price falls below both the basis and the trend filter, the bars are colored fuchsia, suggesting a potential bearish market sentiment. Additionally, the coloration of the middle/basis line and the trend filter provides further visual cues for assessing the trend. When the close price is above the basis, the line is colored lime green, indicating a bullish trend. Conversely, when the close price is below the basis, the line is colored fuchsia, highlighting a bearish trend. Similarly, the trend line is colored lime green when the close price is above it, representing a bullish trend, and fuchsia when the close price is below it, indicating a bearish trend. The fill between the primary and secondary upper bands is colored lime and the fill between the primary and secondary lower bands is colored fuchsia. These colorations can be toggled on/off in the strategy settings menu.
How Changing Parameters Can Be Beneficial:
Modifying the parameters allows you to adapt the indicator to different market conditions and trading styles. For example, with Keltner Channels, increasing the compression period can help identify broader volatility patterns and major market shifts. On the other hand, decreasing the compression period provides more precise and timely signals for short-term traders. Adjusting the compression multiplier affects the width of the Keltner Channels. Higher multipliers increase the breakout threshold, filtering out smaller price movements and providing more reliable signals during significant market shifts. Lower multipliers make the indicator more sensitive to smaller price ranges, generating more frequent but potentially less reliable signals.
Changing the type of trend filter can drastically change your results. Test out each trend filter type and determine which one will work best for your purposes. Further, the MA periods in the trend filter settings can help you align your trades with the prevailing market direction. Increasing the period smoothes out the trend, filtering out shorter-term fluctuations and focusing on more sustained moves. Decreasing the period allows for quicker responses to changes in trend, capturing shorter-term price swings.
By adjusting the parameters and incorporating additional analysis techniques, you can customize the strategy to suit your trading style and preferences. However, it is crucial to exercise caution, conduct thorough analysis, and practice proper risk management to increase the likelihood of successful trades. Remember that no strategy can guarantee profits, and continuous learning and adaptation are key to long-term trading success.
Take Profit/Stop Loss Settings:
Take profit, stop loss, and trailing percentages are also included, found at the bottom of the Input tab under “TT and TTP” as well as “Stop Loss”. The take profit and stop loss levels will be reflected as green and red lines respectively on the chart as they occur. Make sure to understand the TP/SL ratio that you desire before use, as the desired hit rate/profitability percentage will be affected accordingly. The option for adding in a trailing stop has also been included, with options to choose between an ATR-based trail or a percentage-based trail. This strategy does NOT guarantee future returns. Apply caution in trading regardless of discretionary or algorithmic. Understand the concepts of risk/reward and the intricacies of each strategy choice before utilizing them in your personal trading.
Profitview/Pineconnector Settings:
If you wish to utilize Profitview’s automation system, find the included “Profitview Settings” under the Input tab of the strategy settings menu. If not, skip this section entirely as it can be left blank. Options will be “OPEN LONG TITLE”, “OPEN SHORT TITLE”, “CLOSE LONG TITLE”, and “CLOSE SHORT TITLE”. If you wished to trade SOL, for example, you would put “SOL LONG”, “SOL SHORT”, “SOL CLOSE LONG”, and “SOL CLOSE SHORT” in these areas. Within your Profitview extension, ensure that your Alerts all match these titles. To set an alert for use with Profitview, go to the “Alerts” tab in TradingView, then create an alert. Make sure that your desired asset and timeframe are currently displayed on your screen when creating the alert. Under the “Condition” option of the alert, select the strategy, then select the expiration time. If using TradingView Premium, this can be open-ended. Otherwise, select your desired expiration time and date. This can be updated whenever desired to ensure the strategy does not expire. Under “Alert actions”, nothing necessarily needs to be selected unless so desired. Leave the “Alert name” option empty. For the “Message”, delete the generated message and replace it with {{strategy.order.alert_message}} and nothing else. If using Pineconnector, follow the same directions for setting up an alert, but use the ",buy,,risk=" syntax as noted in the tooltips.
Additional Sample Settings (for ETHUSDT-Binance 45M):
Band/Channel Type - Keltner Channels (Compression Period of 20, Multiplier of 1.8x)
Trend Filter - WMA (50 length, no offset, close as the source)
TP/SL - 3.0% TP / 2.0% SL, 0.005 trailed TP, no trailed SL
Premium MTF Layered RSI - Bitcoin Bot [wbburgin]This the premium version of my MTF Layered RSI strategy, which improves significantly on the original strategy (publicly available on my profile). Improvements are below. This strategy will also appear as an overlay on your chart. It is completely non-repainting.
The MTF Layered RSI strategy uses the current timeframe and two configurable higher timeframes to enter a long position when Bitcoin is oversold on all three timeframes, and exit the long position when Bitcoin is overbought on the current timeframe. This hedges against situations where the RSI on higher timeframes never reaches the overbought level and we are left "holding the bag" so to speak with the classic "enter long at oversold and enter short at overbought" strategy.
IMPORTANT: This strategy does not work on ranges. It will work on all timeframes and assets, but does not work on ranges (Renko blocks and some other advanced types of charts).
********** My Background
I am an investor, trader, and entrepreneur with 10 years of cryptocurrency and equity trading experience and founder of two fintech startups. I am a graduate of a prestigious university in the United States and carry broad and inclusive interests in mathematical finance, computer science, machine learning / artificial intelligence, as well as other fields.
**********
Improvements over the original MTF RSI strategy include:
Filters for Uptrends and Downtrends → The Premium RSI strategy will adjust its buy and sell thresholds depending on whether the instrument is trending. This means that, in uptrends, the Premium strategy will buy more frequently, bringing in potentially greater profit, and in downtrends, the strategy will stop buying altogether. These filters and dynamic buy/sell thresholds have made this strategy more profitable in my backtesting across random timeframes, but I cannot guarantee that the strategy will be profitable for you on the default settings. To that end, I have enabled a number of different configurations that you can change in the settings of the strategy.
Stop Loss / Take Profit Calculation Per Tick → Stop loss and take profit are now both enabled in the script and each has their own alerts. You can specify what type of stop loss or take profit you want: percentage or ATR. If you have alerts configured, you will be alerted mid-bar, instead of at close. This helps prevent loss from abrupt falls in price between closing price and next bar open.
Customizable Alert Messages In-Strategy → In the settings, there will be text boxes where you can create your own alerts. All you will need to do is create an alert in the alert panel on Tradingview and leave the message box blank - if you fill out the alert boxes in the settings, these will automatically populate into your alerts. There are in total eight different customizable alerts messages: Entry, Exit, Stop loss, and Take profit alerts for both Long and Short sides. If you disable stop loss and/or take profit, these alerts will also be disabled. Similarly, if you disable shorts, all short alerts will be disabled.
**********
Display
Configuring Stop Loss or Take Profit will make their corresponding displays appear.
Separately from the trading boxes, background colors (green, red) signify extended uptrends and downtrends, respectively.
Configuring Alerts
In TradingView desktop, go to the ‘Alerts’ tab on the right panel. Click the “+” button to create a new alert. Select this strategy for the condition and one of the two options that includes alert() function calls. Name the alert what you wish and clear the default message, because your text in the settings will replace this message.
Now that the alert is configured, you can go to the settings of the strategy and fill in your chosen text for the specific alert condition. You will need to check “Long and Short” in the “Trade Direction” setting in order for any Short Alerts to become active. Similarly, you will need to check “Enable Stop Loss” for stop loss alerts to become active and “Enable Take Profit” for take profit alerts to become active.
**********
Disclaimer
Copyright by wbburgin.
The information contained in my Scripts/Indicators/Algorithms does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
**********
Notes on the Strategy Performance below: This is 3% of equity per trade, with a pyramiding number of 3. I did not include fees because Binance US on Bitcoin/USD does not charge fees on the instrument; however, I heavily encourage you to include fees in your backtesting if you use a different brokerage. To mitigate fees, this strategy is designed with a high average %/trade. If your current fees are greater than the strategy's average %/trade, I encourage you to choose a higher RSI period, such as 14 or 28, which will result in less trades but potentially a higher %/trade.
LowFinder_PyraMider_V2This strategy is a result of an exploration to experiment with other ways to detect lows / dips in the price movement, to try out alternative ways to exit and stop positions and a dive into risk management. It uses a combination of different indicators to detect and filter the potential lows and opens multiple positions to spread the risk and opportunities for unrealized losses or profits. This script combines code developed by fellow Tradingview community_members.
LowFinder
The lows in the price movement are detected by the Low finder script by RafaelZioni . It finds the potential lows based on the difference between RSI and EMA RSI. The MTF RSI formula is part of the MTFindicators library developed by Peter_O and is integrated in the Low finder code to give the option to use the RSI of higher timeframes. The sensitivity of the LowFinder is controlled by the MA length. When potential lows are detected, a Moving Average, a MTF Stochastic (based the the MTFindiicators by Peter_O) and the average price level filter out the weak lows. In the settings the minimal percentage needed for a low to be detected below the average price can be specified.
Order Sizing and Pyramiding
Pyramiding, or spreading multiple positions, is at the heart of this strategy and what makes it so powerful. The order size is calculated based on the max number of orders and portfolio percentage specified in the input settings. There are two order size modes. The ‘base’ mode uses the same base quantity for each order it opens, the ‘multiply’ mode multiplies the quantity with each order number. For example, when Long 3 is opened, the quantity is multiplied by 3. So, the more orders the bigger the consecutive order sizes. When using ‘multiply’ mode the sizes of the first orders are considerably lower to make up for the later bigger order sizes. There is an option to manually set a fixed order size but use this with caution as it bypasses all the risk calculations.
Stop Level, Take Profit, Trailing Stop
The one indicator that controls the exits is the Stop Level. When close crosses over the Stop Level, the complete position is closed and all orders are exited. The Stop Level is calculated based on the highest high given a specified candle lookback (settings). There is an option to deviate above this level with a specified percentage to tweak for better results. You can activate a Take Profit / Trailing Stop. When activated and close crosses the specified percentage, the Stop Level logic changes to a trailing stop to gain more profits. Another option is to use the percentage as a take profit, either when the stop level crosses over the take profit or close. With this option active, you can make this strategy more conservative. It is active by default.
And finally there is an option to Take Profit per open order. If hit, the separate orders close. In the current settings this option is not used as the percentage is 10%.
Stop Loss
I published an earlier version of this script a couple of weeks ago, but it got hidden by the moderators. Looking back, it makes sense because I didn’t pay any attention to risk management and save order sizing. This resulted in unrealistic results. So, in this script update I added a Stop Loss option. There are two modes. The ‘average price’ mode calculates the stop loss level based on a given percentage below the average price of the total position. The ‘equity’ mode calculates the stop loss level based on a given percentage of your equity you want to lose. By default, the ‘equity’ mode is active. By tweaking the percentage of the portfolio size and the stop loss equity mode, you can achieve a quite low risk strategy set up.
Variables in comments
To sent alerts to my exchange I use a webhook server. This works with a sending the information in the form of a comment. To be able to send messages with different quantities, a variable is added to the comment. This makes it possible to open different positions on the exchange with increasing quantities. To test this the quantities are printed in the comment and the quantities are switched off in the style settings.
This code is a result of a study and not intended for use as a worked out and full functioning strategy. Use it at your own risk. To make the code understandable for users that are not so much introduced into pine script (like me), every step in the code is commented to explain what it does. Hopefully it helps.
Enjoy!
*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.
Strategy Template + Performance & Returns table + ExtrasA script I've been working on since summer 2022. A template for any strategy so you just have to write or paste the code and go straight into risk management settings
Features:
>Signal only Longs/only Shorts/Both
>Leverage system
>Proper fees calculation (even with leverage on)
>Different Stop Loss systems: Simple percentage, 4 different "move to Break Even" systems and Scaling SL after each TP order (read the disclaimer at the bottom regarding this and the TV % profitable metric)
>2 Take Profit systems: Simple percentages, or Risk/reward ratios based on SL level
>Additional option on TP so last one "rides free" until closure of position or Stoploss is hit (for more than 1 orders)
>Up to 5 TP orders
>Show or hide SL/TP levels on demand
>2 date filters. Manual filter is nothing new, enter two dates/hours and filter will turn on. BUT automatic filter is another thing (thanks to user @bfr_ for his help in codingthis feature)
>AUTOMATIC DATE FILTER. Allows you to split all historical data on the chart in X periods, then choose the range of periods used. Up to 10 but that can be changed, instructions included. Useful for WalkForward simulations, haven't seen a script in TradingView that allows you to do this and test your strategy on "unseen data" automatically
EXTRA SETTINGS
Besides, some additions I like to add to my codes:
>Returns table for monthly and weekly performance. Requires recalculation on every tick. This is a modified version of @QuantNomad's work. May add lower TF options later on
>Volume Based S/R system. Original work from @shtcoinr
>One feature that was made by me, the "portfolio table". Yields info and metrics of your strategy, current position and balance. You're able to turn it off and change its size
Should anyone find an error, or have any idea on how to improve this code, please contact me. Future updates could come, stay tuned
DISCLAIMER:
In order to have accurate StopLoss hit, I had to change the previous system, which was a "close position on candle close" instead at actual stoploss level. It was fixed, but resulted on inflation of the number of trading orders, thus reducing the percent profitable and making it strongly biased and unreal. Keep that in mind, that "real" profitability could be 2x or 3x the metric TradingView says. If your strategy has a really high trading frequency, resulting in 3000+ orders, might be a problem. Try to make use of the automatic/manual date filter as workaround, I have no means of changing this, seems it is not a bug but an intended design of the PineScript Code
Broadview Economic StudioThank you for taking the time to read this description. We'll be taking a look at the Broadview Economic Studio. This has been a work-in-progress for years and is a very powerful tool for planning trades with complex volume scaling strategies. We will be talking about many indicators and types of indicators used in the public domain, but it is NOT recommended to reverse engineer our scripts as there is quite a bit of logic in the code that works to make each common approach entirely unique. So although you may understand quite a bit about oscillators, the way they work with the rest of the logic within the script may change the way you know them to work from elsewhere.
In the chart snapshot above you'll see a mild configuration where I only had to tweak a few settings. Commissions are set to 0.1%, starting capital is set to $10,000, and slippage is off. In my tests orders came through less than a penny off. Generally speaking, there are really only two situations in which you should be concerned about slippage. The first is if you trade really low timeframe charts like the 1 second. This tool, while it works for any timeframe, is programmed on the 45 minute timeframe and works best there. The other situation in which you should be prepared for slippage is if you're using extremely high volume trades in the hundreds of thousands or millions depending on the market cap and liquidity of the asset you're studying. Large orders like that have to be split up among several deals and that can cause slippage.
There are 31 primary inputs for users to tweak. Each input is grouped within a module called a Suite. Each suite has a focus like filtering signals or strategically allocating volume according to your strategy. Everything starts with the Origin Suite. The Origin Suite is a group of inputs that generates Tops & Bottoms from price action. It uses math like Rate of Change, where one can specify a required rate of change before an Origin signal can be made, and users can specify how much lower in price a bar must be compared to previous bars. So with the Origin Suite, users can control how often they want to see originating signals and under what conditions they can appear.
We used to use WVF and CVI to produce top and bottom signals, but our Origin Suite works much better for systematically generating profitable configurations.
The triangles you see on the chart represent markers, potential signals, or Prop Signals as they're referred to within the script. The blue arrows represent trades where Prop Signals were allowed to pass as true long signals. There are two ways to ignore Prop Signals. You can filter the markers entirely, or you can reduce their volume scaling to the minimum which is usually $10 for most exchanges. We're first going to be talking about some of the primary DCA inputs before we talk about the technology we use to filter and overload signals.
Here are some important features found within the script:
Base Orders
Safety Orders
Take Profits
Change-Based Volume Scaling
Ignoring Low or Medium Changes
Overloading
Filtering
Alert Messages w/ Volume Scaling
Let's walk through each of these features in more depth.
The Base Order is the initial Long position within a series. It comes in first and is followed by all of its Safety Orders. The Base Order is set to $25 within the script by default. Keeping the base order low allows one to reserve more of their capital for Safety Orders that are lower within a dip, and thus, lower the user's Position Average. The primary feature of this script is to help users plan their volume scaling strategically, and this is where we start. It's this kind of due diligence and effort in protecting trades that makes this script unique.
So we start with a low Base Order. Then, we follow with a lot of Safety Orders. Typically in DCA this is done in consistent time intervals and in consistent amounts. So in regular DCA one may invest the same amount bi-weekly on pay day. They use the financial instrument as a sort of savings and average their position over their consistent investments. This is not where the bleeding edge of DCA is today though. In modern Doller Cost Averaging, I would expect to see signals and volume scaling based on logic.. as opposed to being consistent intervals.
This sets up the explanation of the primary means of volume scaling within the script. Mathematically, we start with the net balance. This is your specified starting balance plus any wins or losses. Users specify what % of their Available Balance they would like to start with when volume scaling. This percent of capital is then multiplied by a Safety Order Multiplier. The safety order multiplier is made up of a number specified by the user, multiplied by the number of the Safety Order you're on. So user's can control this equation/algorithm and scale their investments as the number of Safety Orders increases and drops in price become more opportune.
The Take Profit within the script lets users specify their desired ROI from a series. So if a user sets a 60% take profit, the script will set a price from the position average that when reached will give the user a 60% ROI for the series including its Base Order and all its Safety Orders.
Before moving on, let's talk about the amazing internal reporting found in the script. When you zoom in on the blue arrows, you can see each trade is accompanied by some extremely helpful information. This is just another feature that makes this script unique, it is the feature that gives us accurate reporting and ultimately allows us to connect with TradingView's Strategy Tester in a way that provides instant backtests with good merit. With this reporting not only can users get reports and information on trades made on different assets with different configurations, but user's can perform a deep dive on each configuration and know exactly what was going on for each trade. The first number is the number of the safety order the script is on. Remember, this is used in the primary volume scaling math. The second number is the amount the script spent on the current trade. The third number denotes the cumulative spending for the series. The final number displays the script's available balance at that time. With these numbers, the TradingView Strategy Tester, and the List of Trades feature, users can practice as much due diligence as they need during their studies.
Let's move on to talking about my favorite suite within the script, the Volume Scaling Suite. Here there are two primary means of controlling volume scaling. Although, in the near future there will be more.
In this suite you'll find Change-Based Volume Scaling and Position Average Volume Scaling. Position Average Volume Scaling is quite easy to explain. This feature only allows signals to pass if they are lower in price than your base order. In this way, users can apply most of their capital to trades that lower their position average. Simply having the money in the market can boost profits, but having a lower Position Average is the entire reason we DCA. Change-Based Volume Scaling is quite a bit more complex.
In theory, one could argue that every moment is a great moment to buy. It's just that some moments are more opportune than others. So it's not about perfect signals as much as it's about proper volume scaling.
Change-Based Volume Scaling allows us to set rules that dictate how much volume scaling is used based on the asset's current delta, or Rate of Change.
Using CBVS, one can downscale capital applied to signals with a low ROC, or simply ignore them. So if a signal comes in and the price hasn't changed very much then you can automatically use less volume for the trade. One can do the same thing for medium changes, and the user can specify what quantifies as a low or medium change. Users can give extra volume to signals with a greater rate of change, or overload signals with a high rate of change! So the CBVS feature gives users the ability to allocate volume based on logic rooted in the asset's rate of change. If a signal has dropped a lot in price, then generally, it is deserving of more capital and that's what makes this feature unique and so powerful.
There are two kinds of Overloading found in the script. There's overloading from CBVS, and then overloading from the 4 signal filtering suites. There's an important difference to note before we move on. Overloading performed by CBVS is based on ignored signals. So if you ignore low or medium change signals, and you have CBVS Overloading on, the script will allocate more capital to High Change signals. When signals are ignored, they are downscaled to $10. Whereas with the filtering suites, if a signal is filtered the Prop Signal triangle marker is removed entirely. The overloading in that scenario is simply applied to signals that aren't filtered. The reason it's done this way is because allowing ignored signals to still come in, with the lowest volume scaling possible, keeps the Safety Order count rising which works in the volume scaling math. This math is intrinsic to getting capital deep within dips and crashes.
So in future versions we may allow ignored signals to be filtered out entirely but for the time being, simply scaling them down to the lowest possible amount is what produces the best and most consistent configurations.
Let's talk about filtering signals, and the overloading provided within each filtering suite.
Here you can see our Overbought & Oversold Heatmap V3. This is a unique indicator that takes 15 common oscillators and visualizes them in a way that clearly denotes confluence. Looking at this indicator makes it easer to read cycles and trends. It is quite common for investors to base their entire scripts on one or more of the oscillators found within the OBOS Heatmap V3. So the OBOS Heatmap V3 is an awesome way to ensure your signals follow an oversold trend! The orange represents an oscillator being oversold, while the yellow represents it being overbought. Generally, when an asset is oversold it is a better time to buy. One can filter signals based on this information and use the Heatmap's unique ability to quantify confluences. In this script users can set a sensitivity and that sets the number of oscillators that must be in agreement before a signal is allowed to pass.
Here are the oscillators found within the OBOS Heatmap:
*Please keep in mind that although some of these oscillators may have big names, the code and math in the script may work differently than you're used to. This is because the code and math is changed quite a bit, and the overall intended functionality of the OBOS Heatmap has a larger scope than any one indicator. It's also important to note that the lengths for these oscillators are set low and are meant to classify the individual signal as either overbought or oversold, and not the entire period. So while the OBOS Heatmap is awesome for trends and cycles, it's ultimately meant to classify individual price bars as either overbought or oversold according to a consensus.*
Relative Strength Index
Money Flow Index
Commodity Channel Index
Aroon Oscillator
Relative Volatility Index
Fast Stochastic Detrended Price Oscillator
Fast Stochastic Elders Force Index
Fast Stochastic Relative Strength Index
Fast Stochastic Relative Vigor Index
Fast Stochastic Klinger Oscillator
Fast Stochastic Awesome Oscillator
Fast Stochastic Ultimate Oscillator
Fast Stochastic Chande Momentum Oscillator
Fast Stochastic On Balance Volume Oscillator
Fast Stochastic Moving Average Convergence/Divergence
Each band of the Overbought & Oversold Heatmap represents an oscillator. When it's orange it's said to be oversold. When it's yellow it's said to be overbought. The indicator turns purple during trends and reversals where it is neither overbought nor oversold. It can differentiate between uptrends and downtrends with differing colors of purple, but the OBOS Heatmap is not used for trends or cycles in this script. It is used to quantify oversold confluence.
Let's talk about the Dominance Suite.
First note in the top portion of the screenshot above, you will see various colors in the script. It replaces the price line with something we call Price Flow bars. So when you add the script it's best to make the stock price line invisible in TV settings. The Price Flow Bars use a preset EMA to color price action as being in either a downward momentum or upward momentum. The triangular signals represent dark teal for the initial long marker within a series, dark green for long orders and long signals that convert into safety orders, and light green for safety orders. This is more logic that makes this script really unique. The dark green initial long marker signals are rarely seen. You can find them at the beginning of a new series of signals and they work to establish when a new series of signals should begin. The dark green signals actually denote a long base order opportunity, but if a series has already started then these signals are converted into Safety Orders. The Safety Orders then come in light green, and red for Prop Shorts. Prop Shorts work with Initial Longs to establish the start of a new series. More on that math I cannot tell.
In the bottom half of the screenshot is the Dominance Suite itself. It's another one of the four filtering suites found in the script. It is made up of 7 oscillators that work to classify a price bar as being controlled by either the bears or the bulls. If a price bar is controlled by the bears it is said to be a better investment. The Dominance Suite works by applying a moving average to the balance of power. This is the way TradingView has intended the balance of power to be used, and works quite nicely in classifying individual price bars as either bearish or bullish. It's not an overall trend indicator as much as it states whether a bar is mostly controlled by the bears or the bulls.
Here are the oscillators found within the Dominance Suite:
SMA of BOP
EMA of BOP
HMA of BOP
WMA of BOP
VWMA of BOP
TEMA of BOP
LSMA of BOP
Within the script, there is an input for a negative threshold. When each of these 7 oscillators is in confluence and below this set threshold, the Prop Long will be allowed to pass as a real trade.
Keep in mind that each filtering suite also has the option to overload signals.
So not only can you filter signals based on these suites but you can also apply additional volume scaling to signals that don't get filtered.
Here we have the True Oscillator. The True Oscillator is a brand new oscillator. It's similar to things like the RSI or DPO, but technically speaking it considers many more factors into its average than other oscillators. It considers balance of power, sentiment, volume, momentum, gravity, and places special-strategic weighting on price data based on whether it's opening, closing, high, or low. If you stack the True Oscillator up with the RSI you'll notice right away they look similar, but each movement is quite different. Overall the movements are more balanced, the individual bars are more consistent with price data, and the swings are more clearly pronounced while simultaneously having a better register of strength in momentum. We use this indicator to filter and overload signals, to trade according to momentum, and to provide a 16th independent oscillator that can check the OBOS Heatmap without having to be confluent.
The final filtering suite is based on Net Volume. It classifies signals as oversold when there is a significant negative trend in net volume. If Net Volume is under 0, and trends downward for either 3, 4, or 5 bars in a row then it will mark a signal as oversold and allow it to pass. Then, if overloading for this suite is turned on it will allocate more volume to signals it does not filter out.
There is a lot that can be said about this strategy. The primary takeaway though is that it's not just one strategy. It's a tool for everyone, to help them plan their approach to different assets in different market climates. This tool can help you study current market conditions. It can allow you to plan a strategic approach to market segments, and see how your strategy would fare if new market data performed similarly. It's not just one strategy, but more of a strategy printer.
The Origin Suite allows users to plan the positioning of their signals. The Overbought & Oversold Suite allows users to filter their signals based on whether or not they are oversold. The Dominance Suite allows users to filter signals based on whether the market is being controlled by the bears or the bulls. The True Oscillator gives users the ability to filter signals based on a deep and powerful momentum oscillator. The Net Volume Suite lets users filter signals based on volume trends. When signals are filtered, signals that pass, can be overloaded with additional volume scaling. Features like Change-Based Volume Scaling and Position Average Volume Scaling give users plenty of inputs to create complex volume scaling strategies. Common-sense DCA inputs allow users to scale into markets the way pros do.
The Broadview Economic Studio is a powerful tool for planning trades with complex volume scaling strategies.
Users can plan their approach to different kinds of markets. They can link the script with their bot or broker like 3Commas, and the script will automatically send the correct volume scaling through to the bot.
Thank you for your time, and for reading the description of the Broadview Economic Studio.
Simple SuperTrend Strategy for BTCUSD 4HHello guys!, If you are a swing trader and you are looking for a simple trend strategy, you should check this one. Based in the supertrend indicator, this strategy will help you to catch big movements in BTCUSD 4H and avoid losses as much as possible in consolidated situations of the market
This strategy was designed for BTCUSD in 4H timeframe
Backtesting context: 2020-01-02 to 2023-01-05 (The strategy has also worked in previous years)
Trade conditions:
Rules are actually simple, the most important thing is the risk and position management of this strategy
For long:
Once Supertrend changes from a downtrend to a uptrend, you enter into a long position. The stop loss will be defined by the atr stop loss
The first profit will be of 0.75 risk/reward ratio where half position will be closed. When this happens, you move the stop loss to break even.
Now, just will be there two situations:
Once Supertrend changes from a uptrend to a downtrend, you close the other half of the initial long position.
If price goes againts the position, the position will be closed due to breakeven.
For short:
Once Supertrend changes from a uptrend to a downtrend, you enter into a short position. The stop loss will be defined by the atr stop loss
The first profit will be of 0.75 risk/reward ratio where half position will be closed. When this happens, you move the stop loss to break even.
Like in the long position, just will be there two situations:
Once Supertrend changes from a downtrend to a uptrend, you close the other half of the initial short position.
If price goes againts the position, the position will be closed due to breakeven.
Risk management
For calculate the amount of the position you will use just a small percent of your initial capital for the strategy and you will use the atr stop loss for this.
Example: You have 1000 usd and you just want to risk 2,5% of your account, there is a long signal at price of 20,000 usd. The stop loss price from atr stop loss is 19,000. You calculate the distance in percent between 20,000 and 19,000. In this case, that distance would be of 5,0%. Then, you calculate your position by this way: (initial or current capital * risk per trade of your account) / (stop loss distance).
Using these values on the formula: (1000*2,5%)/(5,0%) = 500usd. It means, you have to use 500 usd for risking 2.5% of your account.
We will use this risk management for apply compound interest.
Script functions
Inside of settings, you will find some utilities for display atr stop loss, supertrend or positions.
You will find the settings for risk management at the end of the script if you want to change something. But rebember, do not change values from indicators, the idea is to not over optimize the strategy.
If you want to change the initial capital for backtest the strategy, go to properties, and also enter the commisions of your exchange and slippage for more realistic results.
Signals meanings:
L for long position. CL for close long position.
S for short position. CS for close short position.
Tp for take profit (it also appears when the position is closed due to stop loss, this due to the script uses two kind of positions)
Exit due to break even or due to stop loss
Some things to consider
USE UNDER YOUR OWN RISK. PAST RESULTS DO NOT REPRESENT THE FUTURE.
DEPENDING OF % ACCOUNT RISK PER TRADE, YOU COULD REQUIRE LEVERAGE FOR OPEN SOME POSITIONS, SO PLEASE, BE CAREFULL AND USE CORRECTLY THE RISK MANAGEMENT
The amount of trades closed in the backtest are not exactly the real ones. If you want to know the real ones, go to settings and change % of trade for first take profit to 100 for getting the real ones. In the backtest, the real amount of opened trades was of 194.
Indicators used:
Supertrend
Atr stop loss by garethyeo
This is the fist strategy that I publish in tradingview, I will be glad with you for any suggestion, support or advice for future scripts. Do not doubt in make any question you have and if you liked this content, leave a boost. I plan to bring more strategies and useful content for you!
Wunder Trend Reversal botWunder Trend Reversal bot
1. Wunder Trend Reversal Bot - this has only one goal to find a reversal of the trend.
2. The strategy determines, based on the specified value for the filter, a market reversal based on the price actions of the previous bars.
3. A short EMA is used to filter false signals after the reversal signal was received. Crossing the EMA and changing its direction confirms the trend change.
4. There are 2 ways to calculate stop loss and take profit. You can choose one of them:
- Classic stop loss and take profit in a fixed percentage
- ATR stop loss and take pro
5. ATR uses risk reward (R:R) to calculate take profit. The script calculates the risk-reward based on a certain stop loss level and uses it to calculate the take profit
6. A function for calculating risk on the portfolio (your deposit) has been added to the script. When this option is enabled, you get a calculation of the entry amount in dollars relative to your Stop Loss. In the settings, you can select the risk percentage on your portfolio. The loss will be calculated from the amount that will be displayed on the chart.
For example. Deposit - $1000, you set the risk to 1%. SL 5%. Entry volume will be $200. The loss at SL will be $10.10$ this is your 1% risk or 1% of the deposit.
Important! The risk per trade must be less than the Stop Loss value. If the risk is greater than SL, then you should use leverage.
The amount of funds entering the trade is calculated in dollars. This option was created if you want to send the dollar amount from Tradingview to the exchange. However, putting your volume in dollars you get the incorrect net profit and drawdown indication in the backtest results, as TradingView calculates the backtest volume in contracts.
To display the correct net profit and drawdown values in Tradingview Backtest results, use the ”Volume in contracts” option.
Strategy Myth-Busting #20 - HalfTrend+HullButterfly - [MYN]#20 on the Myth-Busting bench, we are automating the " I Found Super Easy 1 Minute Scalping System And Backtest It 100 Times " strategy from " Jessy Trading " who claims 30.58% net profit over 100 trades in a couple of weeks with a 51% win rate and profit factor of 1.56 on EURUSD .
This one surprised us quite a bit. Despite the title of this strategy indicating this is on the 1 min timeframe, the author demonstrates the backtesting manually on the 5 minute timeframe. Given the simplicity of this strategy only incorporating a couple of indicators, it's robustness being able to be profitable in both low and high timeframes and on multiple symbols was quite refreshing.
The 3 settings which we need to pay most attention to here is the Hull Butterfly length, HalfTrend amplitude and the Max Number Of Bars Between Hull and HalfTrend Trigger. Depending on the timeframe and symbol, these settings greatly impact the performance outcomes of the strategy. I've listed a couple of these below.
And as always, If you know of or have a strategy you want to see myth-busted or just have an idea for one, please feel free to message me.
This strategy uses a combination of 3 open-source public indicators:
Hull Butterfly Oscillator by LuxAlgo
HalfTrend by Everget
Trading Rules
5 min candles but higher / lower candles work too.
Stop loss at swing high/low
Take Profit 1.5x the risk
Long
Hull Butterfly gives us green column, Wait for HalfTrend to present an up arrow and enter trade.
Short
Hull Butterfly gives us a red column , Wait for HalfTrend to present a down arrow and enter trade.
Alternative Trading Settings for different time frames
1 Minute Timeframe
Move the Hull Butterfly length from the default 11 to 9
Move the HalfTrend Amplitude from the default 2 to 1
Enabling ADX Filter with a 25 threshold
2 Hour Timeframe
Move the HalfTrend Amplitude from the default 2 to 1
Laddered Take Profits from 14.5% to 19% with an 8% SL
The Flower - Multiple Strategy Options in OneStrategy Overview
This strategy code currently includes four separate strategies to be used to either aid in discretionary trading or to be used algorithmically through the third-party system Profitview (profitview.app). Support for Pineconnector for use with MetaTrader 4 is in the works. The strategies have been designed with cryptocurrency trading in mind, however, the fundamentals apply to other assets.
The four strategies currently included are labeled “TSI Cross” (the default setting), “Oscillator Bands”, “Scalping”, and “McG/MA Cross”. Detailed information for each independent strategy can be found below, including sample settings configurations for each. A dropdown menu to select the strategy can be found under the “Strategy Options” set of settings under the Input tab of the strategy settings menu.
Additionally, the option to receive only long or short signals can be found alongside the Strategy Choice menu.
Take profit, stop loss, and trailing percentages are also included, found at the bottom of the Input tab under “TT and TTP” as well as “Stop Loss”. Make sure to understand the TP/SL ratio that you desire before use, as the desired hit rate/profitability percentage will be affected accordingly.
The only visuals associated with the strategy are two McGinley Dynamic lines, red (slow length) and green (fast length). These are relevant to the McGinley Cross strategy, but can be used alongside the other strategies if desired.
When viewing the backtesting data in the TradingView Strategy Tester, ensure that “use bar magnifier” is activated. This option can be found in the Properties tab of the strategy settings menu.
Profitview Settings
If you wish to utilize Profitview’s automation system, find the included “Profitview Settings” under the Input tab of the strategy settings menu. If not, skip this section entirely as it can be left blank. Options will be “OPEN LONG TITLE”, “OPEN SHORT TITLE”, “CLOSE LONG TITLE”, and “CLOSE SHORT TITLE”. If you wished to trade SOL, for example, you would put “SOL LONG”, “SOL SHORT”, “SOL CLOSE LONG”, and “SOL CLOSE SHORT” in these areas. Within your Profitview extension, ensure that your Alerts all match these titles. A sample of our Profitview syntax can be found below.
To set an alert for use with Profitview, go to the “Alerts” tab in TradingView, then create an alert. Make sure that your desired asset and timeframe are currently displayed on your screen when creating the alert. Under the “Condition” option of the alert, select the strategy, then select the expiration time. If using TradingView Premium, this can be open-ended. Otherwise, select your desired expiration time and date. This can be updated whenever desired to ensure the strategy does not expire. Under “Alert actions”, nothing necessarily needs to be selected unless so desired. Leave the “Alert name” option empty. For the “Message”, delete the generated message and replace it with {{strategy.order.alert_message}} and nothing else.
Strategy Choices
As mentioned above, this strategy code contains four separate strategy options. A detailed breakdown of each follows below:
Total Strength Index (TSI) Cross
This strategy option is the default choice. The main signal involved in this strategy is a crossover or crossunder of the TSI value line and TSI signal line, however, there are a few other signals involved in the creation of a long or short entry. In addition to the TSI, the strategy includes an Average Directional Index (ADX) threshold value, Jurik Volatility Bands (JVB), a Stoch RSI threshold, and an oscillator of choice in conjunction with a threshold of 0. This oscillator choice can be selected under the “Signal Options” menu in the Input tab of the strategy settings. The default oscillator is the Detrended Price Oscillator (DPO), though the option for Chande Momentum (CMO) or Rate of Change (RoC) are both viable for this strategy.
Individual settings for these can be found in the Input tab under “Oscillator Settings” (TSI, Stoch RSI, DPO, CMO, ROC), “Band/Channel Settings” (Jurik Volatility Bands Length/Smoothing), and “Directional Settings” (ADX Smoothing Long, DI Length Short, ADX Threshold).
Sample settings for SOLUSDT using the 20M timeframe:
- Oscillator Settings -- DPO Length (21), DPO *not* centered, RSI (Stoch) Length (4), Stochastic Length (4), TSI Long Length (25), TSI Short Length (13), TSI Signal Length (13), K (3), D (3)
- Band/Channel Settings -- Jurik Volatility Bands Length (25), Jurik Volatility Bands Smoothing (5)
- Directional Settings – JVB Price Threshold (0), ADX Smoothing Long (5), DI Length Short (5), ADX Threshold (23)
- Take Profit/Stop Loss – 0.85% TP, 0.005% TTP, 1.3% SL
Oscillator Bands
This strategy involves the usage of bands or channels that use oscillators as a source input. The main signal for this strategy derives from a cross of the band or channel and a hline of 0. Additionally, this includes a “Directional Filter” and a “MA Filter”. The selections for all of these can be found in the “Signal Options” section of the Input tab.
First option is for Oscillator Choice and includes DPO, CMO, ROC, RSI, TSI, and the Jurik price line. The individual settings for these can be found in the “Oscillator Settings” section. Different channels can be selected for the upper or lower bands, though it is not necessary for them to differ. These current options include Bollinger Bands and Jurik Volatility Bands, the individual settings for each found in the “Band/Channel Settings” section. Next is the MA Filter, of which you can select SMA, EMA, SMMA, WMA, VWMA, KAMA, JMA, or McGinley Dynamic. All options for these settings can be found in the “MA Filter Settings” section. Lastly, the Directional Filters can be selected for either direction like the upper/lower band selection. These filters include the ADX, Bull-Bear Power (BBP), Parabolic SAR (PSAR), or Jurik.
Sample settings for WAVESUSDT using the 20M timeframe:
- Oscillator Choice – DPO (Length – 30, uncentered)
- Upper and Lower Band – JVB Upper/Lower (Jurik Volatility Bands Length – 25; Smoothing – 10)
- MA Filter – VWMA – (MA Length – 40; Source – Open)
- Directional Filter – ADX (ADX Smoothing Long – 14; DI Length Short – 5; ADX Threshold – 22)
- Take Profit/Stop Loss – 0.85% TP, 0.005% TTP, 1.3% SL
Scalping
This strategy heavily relies on the usage of Parabolic SAR, accompanied by a “Directional Filter” (as discussed in the previous section) other than PSAR. This strategy can provide a higher frequency of trades as opposed to the other strategies available, however, it comes with slightly higher risk inherently. A riskier take profit/stop loss spread is recommended here, though risk should always be managed. The settings required for this strategy are all found under the “Directional Settings” section of the strategy inputs.
Sample settings for NEARUSDT using the 20M timeframe:
- Directional Filter set to ADX
- Directional Settings – ADX Smoothing Long (5), DI Length Short (5), ADX Threshold (22), PSAR Start Value (0.02), PSAR Increment (0.005), PSAR Max Value (0.15), PSAR Source (Close)
- Take Profit/Stop Loss – 0.75% TP, 0.005% TTP, 1.5% SL
McGinley Cross
This strategy revolves around the crossing of two McGinley Dynamic lines of varying lengths alongside an ADX filter as well as a DPO filter. McGinley is used as opposed to a standard moving average cross strategy as it adjusts for shifts in market speed and can better gauge market trends. The McGinley length settings can be found with the “MA Filter” settings, labeled as Fast Length and Slow Length. The fast length number should be smaller than the slow length.
Sample settings for SOLUSDT using the 20M timeframe:
- Oscillator Settings – DPO Length (30), uncentered
- MA Filter Settings – McGinley Fast Length (4), McGinley Slow Length (21)
- Take Profit/Stop Loss – 0.85% TP, 0.005% TTP, 1.4% SL
Comprehensive Settings List
Date and Time: From date and to date, adjustable for backtesting purposes.
Signal Options:
Oscillator Choices: Chande Momentum Oscillator (CMO), Detrended Price Oscillator (DPO), Rate of Change (ROC), Relative Strength Index (RSI), True Strength Index (TSI), Jurik Volatility Bands Priceline (JVB) – *** for use with TSI Cross or Oscillator Bands strategies only ***
Upper and Lower Band/Channel Choices: Bollinger Bands (BB) or Jurik Volatility Bands (JVB) -- *** for use with Oscillator Bands strategy only ***
MA/McG Filter: SMA, EMA, RMA, WMA, VWMA, Kaufmann MA, Jurik MA, McGinley Dynamic -- *** for use with Oscillator Bands strategy only ***
Directional Filter Long/Short: Average Directional Index (ADX), Bull/Bear Power (BBP), Parabolic SAR (PSAR), Jurik -- *** for use with Oscillator Bands strategy only ***
Profitview Settings: *** For use with ProfitView extension only, otherwise ignore ***
Oscillator Settings: *** For use with TSI Cross, Oscillator Bands, and McGinley Cross strategies ***
CMO Length, CMO Source – for Chande Momentum Oscillator
DPO Length, DPO Centered – for Detrended Price Oscillator
RoC Length, RoC Source – for Rate of Change
RSI Length, RSI MA Length – for Relative Strength Index
RSI (Stoch) Length, Stochastic Length, Stoch RSI Source, K, D – for Stochastic RSI
TSI Long Length, TSI Short Length, TSI Signal Length – for True Strength Index
Band/Channel Settings: *** For use with Oscillator Bands strategy ***
Jurik Volatility Bands Length, Jurik Volatility Bands Smoothing – for Jurik Volatility Bands
Bollinger Band Length, Bollinger Band Multiplier – for Bollinger Bands
Directional Settings: *** For use with Scalping and Oscillator Bands strategies ***
JVB Price Threshold – for Jurik Volatility as a directional setting
ADX Smoothing Long, DI Length Short, ADX Threshold – for Average Directional Index
PSAR Start Value, PSAR Increment, PSAR Max Value, PSAR Source – for Parabolic SAR
MA Filter Settings: *** For use with Oscillator Bands and McGinley Cross strategies ***
McGinley Fast/Slow Length – for McGinley Dynamic
MA Length, MA Source, MA Offset – for any other moving average
TP and TTP / Stop Loss: *** For use with ALL strategies ***
Long/Short Take Profit % -- for standard take profit settings
Enable Trailing, Trailing Take Profit % -- for trailing settings
Stop Loss % -- for standard stop loss settings; trailing can be enabled or disabled for stop loss
Disclaimers:
Some open-source code has been included -- Jurik Volatility Bands (by "ProValueTrader") and Trailing Take Profit/Stop Loss code (by jason5480). Additional code was used from the TradingView built-ins.
These strategies do NOT guarantee future returns. Apply caution in trading regardless of discretionary or algorithmic. Understand the concepts of risk/reward and the intricacies of each strategy choice before utilizing them in your personal trading.
Invites to the strategy will only be disseminated to those with express consent and knowledge of the invite prior to the action itself.
Wunder Keltner botWunder Keltner bot
1. Wunder Keltner bot is based on the breakout of the Keltner channel. For calculation, 2 channels are used, one for long trades, and the other for short trades. The division into 2 channels is used for more accurate entry calculations depending on trend directions.
2. The ADX indicator is used to filter signals and determine the trend strength. ADX determines the strength of the trend and confirms the entry into the strategy if the value is greater than the level indicated in the settings.
3. There are 3 ways to calculate Stop Loss and Take Profit. You can choose one of them:
Classic Stop Loss and Take Profit in a fixed percentage
ATR Stop Loss
Keltner. Stop Loss, which is set on the opposite Keltner’s Channel Band from Keltner breakout.
4. ATR and Keltner use Risk Reward (R:R) to calculate Take Profit. The script calculates Risk Reward based on the determined Stop loss level and uses the ration to calculate Take Profit.
5. A function for calculating risk on the portfolio (your deposit) has been added to the script. When this option is enabled, you get a calculation of the entry amount in dollars relative to your Stop Loss. In the settings, you can select the risk percentage on your portfolio. The loss will be calculated from the amount that will be displayed on the chart.
For example. Deposit - $1000, you set the risk to 1%. SL 5%. Entry volume will be $200. The loss at SL will be $10.10$ this is your 1% risk or 1% of the deposit.
Important! The risk per trade must be less than the Stop Loss value. If the risk is greater than SL, then you should use leverage.
The amount of funds entering the trade is calculated in dollars. This option was created if you want to send the dollar amount from Tradingview to the exchange. However, putting your volume in dollars you get the incorrect net profit and drawdown indication in the backtest results, as TradingView calculates the backtest volume in contracts.
To display the correct net profit and drawdown values in Tradingview Backtest results, use the ”Volume in contract” option.
MACD MTF Strategy [JoseMetal]============
ENGLISH
============
- Description:
This strategy uses my indicator MACD MTF (check my profile) to generate entries, it also has ATR to define Stop Loss and Take Profit if needed.
The strategy has several customizable options, which allows you to refine the strategy for your asset and timeframe.
You can customize settings for ALL indicator settings (MACD MTF and ATR).
- CUSTOM CONDITIONS TO ENTER A POSITION:
1. Both MACDs agree (current timeframe and higher timeframe).
2. Current timeframe MACD crossover.
3. Higher timeframe MACD crossover.
4. MACDs no longer agree with each other.
- EXIT CONDITION:
1. Predefined Stop Loss and Take Profit based on ATR (stop can be previous wick).
2. MACDs no longer agree with each other.
3. Opposite position entry.
- STOP LOSS TYPE:
1. ATR.
2. Previous wick.
- OTHER OPTIONS:
You can customize any setting for my MACD MTF and ATR.
- Visual:
ATR is shown for the Stop Loss / Take Profit.
The script prints the Take Profit as a green line, Stop Loss as a red line and entry price with a white line.
- Recommendations:
Recommended on 8H or 12H timeframe for the CURRENT timeframe, while using DAILY for the higher timeframe on the MACD MFT (by default).
Entry when BOTH MACDs agree and exit on opposite entry, this has NO TAKE PROFIT or STOP LOSS, so be careful, but gives the BEST profit overall, and being on 8H/12H + Daily lets you relax.
- Customization:
As you can see, almost everything is customizable, for colors and plotting styles check the "Style" tab.
Enjoy!
============
ESPAÑOL
============
- Descripción:
Esta estrategia utiliza mi indicador MACD MTF (revisa mi perfil) para generar entradas, también cuenta con ATR para definir Stop Loss y Take Profit si es necesario.
La estrategia tiene varias opciones personalizables, lo te le permiten refinar la estrategia para te activo y temporalidad.
Puedes personalizar la configuración de TODOS los indicadores (MACD MTF y ATR).
- CONDICIONES PERSONALIZADAS PARA ENTRAR EN UNA POSICIÓN:
1. Ambos MACDs coinciden (temporalidad actual y temporalidad superior).
2. Cruce del MACD en el marco de tiempo actual.
3. Cruce del MACD en el marco temporal superior.
4. Los MACD ya no coinciden entre sí (están en desacuerdo).
- CONDICIÓN DE SALIDA:
1. Stop Loss y Take Profit predefinidos basados en el ATR (el stop puede ser la mecha anterior).
2. Los MACDs ya no coinciden entre sí (están en desacuerdo).
3. Entrada en posición contraria.
- TIPO DE STOP LOSS:
1. ATR.
2. Mecha anterior.
- OTRAS OPCIONES:
Puede personalizar cualquier ajuste para mi MACD MTF y ATR.
- Visual:
El ATR se muestra para el Stop Loss / Take Profit.
El script imprime el Take Profit como una línea verde, el Stop Loss como una línea roja y el precio de entrada con una línea blanca.
- Recomendaciones:
Se recomienda en el marco de tiempo 8H o 12H para el marco de tiempo ACTUAL, mientras que se utiliza DIARIO para el marco de tiempo superior en el MACD MFT (por defecto).
Entrar cuando AMBOS MACDs están de acuerdo y salir en la entrada opuesta, esto no tiene TAKE PROFIT o STOP LOSS, así que tenga cuidado, pero da el MEJOR beneficio en general, y estar en 8H/12H + Diario le permite relajarse.
- Personalización:
Como puedes ver, casi todo es personalizable, para colores y estilos de trazado revisa la pestaña "Estilo".
¡Que lo disfrutes!
3c Ultimate reversal strategy With scanner and backtester v2This might just be the ultimate strategy to identify reversals.
This strategy includes a scanner, a backtester and ability to connect it with you 3 commas bot(See adviced settings below)
Strategy:
-Signals reversal that happened in the last bar. This signal DO NOT repaint.
-Identifies potential reversal that might happen in the current bar but can also not happen depending upon the timeframe closing price.
-The strategy combines the Moving Average Trend Changer, SuperTrend (ATR price detection) and ADX.
-It reduces the number of false signals in sideways market conditons and give more reliable trade signals.
-The signal does not repaint and can be used in any market condition. It determines the trend with high precision.
Take profit:
-Set 2 separate TP conditions.
-You can take profit using percentage, ATR, or RR(Risk Reward), aswell as using Trailing Take Profit.
- Use sell signal from the strategy(I often find way better results using that)
Stoploss:
-You can use either ATR, Percentage or sell signal from the strategy
(For now to let the strategy itself decide when to TP or SL, just set these parameters really high.)
Scanner:
-Identifies coins that are currently in the sell zone
-Identifies coins that are currently in the buy zone
-Screener explores up to 20 pairs in current graph's time frame.
-Optimize the strategy to your liking and use the built in backtester to see if it is a viable strategy.
3commas settings:
-For now you can only use simple bots.
-Create LONG and SHORT bots for the coins you like to trade and set up alerts(You can send long and short signal from the same alert)
-Set TP to 50% the strategy will handle buys and exits based on your inputs.
-Set safety orders to 0. I might add DCA to the strategy if testing proves that to be a good solution.
-When you have made the bots input the bot ID and token adress in the settings of the strategy.
-When creating the alert use this webhook :https://3commas.io/trade_signal/trading_view
-In the message field you use {{strategy.order.alert_message}} as the placeholder.
In the future this signal might make it to the 3commas marketplace. You can then subscribe to that signal where I have cherrypicked coins based on thorough backtesting and optimization.
Bitcoin Scalping Strategy (Sampled with: PMARP+MADRID MA RIBBON)
DISCLAIMER:
THE CONTENT WITHIN THIS STRATEGY IS CREATED FROM TWO INDICATORS CREATED BY TWO PINESCRIPTER'S. THE STRATEGY WAS EXECUTED BY MYSELF AND REVERSE-ENGINEERED TO MEET THE CONDITIONS OF THE INTENDED STRATEGY REQUESTOR. I DO NOT TAKE CREDIT FOR THE CONTENT WITHIN THE ESTABLISHED LINES MADE CLEAR BY MYSELF.
The Sampled Scripts and creators:
PMAR/PMARP by @The_Caretaker Link to original script:
Madrid MA RIBBON BAR by @Madrid Link to original script:
Cheat Code's strategy notes:
This sampled strategy (Requested by @elemy_eth) is one combining previously created studies. I reverse-engineered the local scope for the Madrid moving average color plots and set entry and exit conditions for certain criteria met. This strategy is meant to deliver an extremely high hit rate on a daily time frame. This is made possible because of the very low take profit percentage, during the context of a macro downtrend it is made easier to hit 1-3% scalps which is made visible with the strategy using sampled scripts I created here.
How it works:
Entry Conditions:
-Enter Long's if the lime color conditions are met true using the script detailed by Marid's MA
- No re-entry into positions needs to be met true (this prevents pyramiding of orders due to conditions being met true) applicable to both long and short side entries.
- To increase hit rate and prevent traps both the parameters of rsi being sub 80 and no previously engulfing candles need to be met true to enter a long position.
- Enter Short's if the red color conditions of Madrid's moving average are met true.
- Closing Long positions are typically not met within this indicator, however, it still sometimes triggers if necessary. This consists of a pmarp sub 99 and a position size greater than 0.0
- Closing Short positions are typically not met within this indicator, however, it still sometimes triggers if necessary. This consists of a pmarp over 01 and a position size less than 0.0
- Stop Loss: 27.75% Take Profit: 1% (Which does not trigger on ticks over 1% so you will see average trade profits greater than 1%)
BYBIT:BTCUSDT BINANCE:BTCUSDT COINBASE:BTCUSD
Best Of Luck :)
-CheatCode1
Squeeze Momentum Strategy [LazyBear] Buy Sell TP SL Alerts-Modified version of Squeeze Momentum Indicator by @LazyBear.
-Converted to version 5,
-Taken inspiration from @KivancOzbilgic for its buy sell calculations,
-Used @Bunghole strategy template with Take Profit, Stop Loss and Enable/Disable Toggles
-Added Custom Date Backtesting Module
------------------------------------------------------------------------------------------------------------------------
All credit goes to above
Problem with original version:
The original Squeeze Momentum Strategy did not have buy sell signals and there was alot of confusion as to when to enter and exit.
There was no proper strategy that would allow backtesting on which further analysis could be carried out.
There are 3 aspects this strategy:
1 ) Strategy Logic (easily toggleable from the dropdown menu from strategy settings)
- LazyBear (I have made this simple by using Kivanc technique of Momentums Moving Average Crossover, BUY when MA cross above signal line, SELL when crossdown signal line)
- Zero Crossover Line (BUY signal when crossover zero line, and SELL crossdown zero line)
2) Long Short TP and SL
- In strategies there is usually only 1 SL and 1 TP, and it is assumed that if a 2% SL giving a good profit %, then it would be best for both long and short. However this is not the case for many. Many markets/pairs, go down with much more speed then they go up with. Hence once we have a profitable backtesting setting, then we should start optimizing Long and Short SL's seperately. Once that is done, we should start optimizing for Long and Short TP's separately, starting with Longs first in both cases.
3) Enable and Disable Toggles of Long and Short Trades
- Many markets dont allow short trades, or are not suitable for short trades. In this case it would be much more feasible to disable "Short" Trading and see results of Long Only as a built in graphic view of backtestor provides a more easy to understand data feed as compared to the performance summary in which you have to review long and short profitability separately.
4) Custom Data Backtesting
- One of most crucial aspects while optimizing for backtesting is to check a strategies performance on uptrends, downtrend and sideways markets seperately as to understand the weak points of strategy.
- Once you enable custom date backtesting, you will see lines on the chart which can be dragged left right based on where you want to start and end the backtesting from and to.
Note:
- Not a financial advise
- Open to feedback, questions, improvements, errors etc.
- More info on how the squeeze momentum works visit LazyBear indicator link:
Happy Trading!
Cheers
M Tahreem Alam @mtahreemalam
The Ultimate Backtest - Fontiramisu█ OVERVIEW
The Ultimate Backtest allows you to create an infinite number of trading strategies and backtest them easily and quickly.
You can leverage the trading setup you created with the tradingview's real-time alert system.
The tool is constantly being improved to accommodate more in-house indicators in order to imagine more trading strategies.
█ HOW IT WORKS.
The tool is divided into 3 main parts:
1. The indicators:
These are the indicators that you will be able to set up to create your setups.
Example: rsi, exponential moving average, home made resistance/support indicator etc.
We are working to add more and more in-house indicators to multiply the trading strategies.
2. The entry/exit strategy:
The entry/exit trades management is a central point of the strategy.
Here we propose several ways to take profits and in-house optimizations to enter a position.
3. The setup: the combination of indicators
Here it is up to you to create your own recipe.
You combine the different indicators set up above to make a real strategy.
Example: RSI Divergence + Location on a support.
Let's look at this in more detail.
Below is a description of all sections
█ 1. THE INDICATORS
TREND: MA (moving average) -->
Set up a moving average from multiple methods (sma, ema, smma...) of the type and length you want.
> A long is taken if the price is above the MA.
> A short is taken if the price comes below the MA.
You can set up a smoothing MA from the existing moving average and use it in the same way.
ENVELOPE: SUPER TREND -->
The supertrend is a trend following indicator. It clearly describes the distinction between downtrends and uptrends with a red or green direction. It is calculated according to the ATR and a factor.
> A long is taken when the direction is green and the price touches the supertrend support line.
> A short is taken when the direction is red and the price touches the supertrend resistance line.
ENVELOPE: BOLLINGER BAND -->
Bollinger bands are used to evaluate the volatility and probable evolution of prices, here we exploit the envelope
> A long is taken if the price crosses the lower band.
> A short is taken if the price crosses the upper band.
CLOUD: ICHIMOKU -->
The Ichimoku cloud aims to identify the direction and reversal points of dominant market trends. It displays support and resistance levels.
> A long is taken when the price enters the green ichimoku cloud.
> A short is taken when the price enters the red ichimoku cloud.
MOMENTUM: MACD ZERO LAG / MACD / RSI -->
RSI (Relative Strength Index) reflects the relative strength of upward movements, compared to downward movements.
MACD (Moving Average Convergence Divergence) is a momentum indicator that follows the trend and shows the correlation between two moving averages of the asset price.
MACD ZERO LAG is calculated in the same way except that the exponential moving averages that make up the calculation do not lag.
> A long is taken on a potential bullish divergence.
> A short is taken on a potential bearish divergence.
For now, with these indicators, we only take a trade based on divergences but we will add overbuy/oversell etc.
MOMENTUM: MA SLOPE -->
This house indicator allows you to use the slope of a moving average as a measure of momentum.
Define the length of the moving average whose slope we will take.
We then take a fast ma of the slope then a slow ma (You define the lengths with the parameters)
The tool foresees a subtraction between the slow and fast ma to have another interpretation of the slope.
This indicator is available and can be viewed freely on my tradingview profile.
> A long is taken when there is a potential bullish divergence on the fast/slow MA or the difference.
> A short is taken when there is a potential bear divergence on the fast/slow MA or the difference.
RESISTANCE: R/S FONTIRAMISU -->
An in-house indicator that shows resistances and supports according to the chosen parameters.
Indicator available and can be viewed freely on my tradingview profile.
> A long is taken when the price arrives on a support.
> A short is taken when the price arrives on a resistance.
-----
MOMENTUM DIVERGENCE -->
Section used to set the divergence detection.
The first field allows you to select which momentum you want to calculate the divergence on.
PIVOT DETECTION -->
Used to calculate top and dip on the chart, it is used with divergences/resistances/enter-exit optimizations....
Default parameters are: Deviation: 2.5, Depth: 10.
█ 2. STRATEGY FOR ENTERING/EXITING TRADES.
STRATEGY: TP/SL -->
Enter/Exit Trade Mode" field: The first field allows you to choose between two modes:
1. TP/SL Mode:
This mode allows you to take entries with take profits that you define afterwards with the TP1 and TP2 parameters .
> The stop loss is calculated automatically by taking the last dip if it is a long and the last top if it is a short.
> You can add a "Stop Loss % Offset" which will increase the size of the stop loss by the % value you set.
> If you activate TP2, the profit taking is split between TP1 and TP2, you can select the percentage of profit taking split between TP1 and TP2 via the "Percent Exit Profit TP1" field.
> The "TPX Multiplier" fields allow you to define the desired Risk Reward, if = 1 then RR = 1/1.
> A Trailing stop option is available, if active then the profit take will be split between TP1 and Trailing stop.
For the moment you can choose between the two MA's set up above to serve as trailing stop:
> In long, if the price goes below the MA then you take the profit (or the loss)
> In short, if the price goes above the MA then you take the profit (or the loss)
2. ONLY BUY/SELL:
Here the take profits are not taken into account, we only have an alternation between the long and the shorts.
The trailing stop applies to this mode and can be interesting depending on the use.
STRATEGY: SETUP OPTIMIZER (FP) -->
Here we have 3 home made optimization tools to take more relevant trades.
1. FAVORABLE ENTRY FROM PIVOT.
Here the tool will favor entries with interesting locations depending on dips and tops before.
A red cross with "FP" will appear on the chart each time a trade does not meet this condition.
2.STOP LOSS MAX (SL).
Will only take trades where the stop loss is maximum at X%.
A red cross with "%SL" will appear on the chart each time a trade does not meet this condition.
3. MOVE ALREADY TRADED.
Will not take several trades in the same move.
This can avoid cascading losing trades on some setups.
A red cross with "MT" will appear on the chart each time a trade does not meet this condition.
█ 3. THE SETUP: THE COMBINATION OF INDICATORS
Here, let your creativity speak.
You are free to assemble the indicators in the following way:
The conditions defined inside a group (group1/group2/group3) are combined to each other via an OR operator .
Example, if "cond01 = Momentum DIv" and "cond02 = Res/Sup Location", then trades will be triggered if one of the two conditions is met.
The conditions defined between several groups are multiplied via the AND operator .
Example, if "cond01 = Momentum DIv" and "cond12 = Res/Sup Location", then trades are taken if both conditions are met at the same time.
ALL CONDITIONS:
> NONE
No conditions selected.
> Momentum Div
Triggers when a potential divergence occurs on the selected momentum (in the divergence section).
> Momentum Div UT Sup
Triggers when a potential divergence occurs on the selected momentum (in the divergence section) in the upper timeframe.
The upper timeframe of the momentum is calculated directly in the code by multiplying the set parameters by 4 (fastlenght/slowlenght...).
> Multi MA
It is set in the "Trend: MA" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Smooting MA
Is set in the "Trend: MA" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Super Trend Env
Is set in the "ENVELOPE: SUPER TREND" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> BB Env
It is set in the "ENVELOPE: BOLLINGER BAND" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Ichimoku Cloud
Is set in the "CLOUD: ICHIMOKU" section and is triggered by the conditions mentioned in the "INDICATORS" section.
> Res/Sup Location
Is set in the "RESISTANCE: R/S" section and is triggered by the conditions mentioned in the "INDICATORS" section.
[XBotUniverse] TREND 1.0 XBotUniverse is an automated crypto trading platform that allows you to start trading and investing in cryptocurrencies seamlessly, by implementing a fully automated trading bot using TradingView
The TREND Strategy version is a signal indicator following the direction of the trend with a fully technical method, without fundamentals, without the need for manual trading. Uses eleven Technical Indicators to measure trend strength. There are six breakouts and crosses to confirm open positions.
Runs well when the market is moving uptrend or downtrend. This strategy uses good risk management, where every open position takes a take profit of around 1.6% and a stop loss of around 1.3%, this is possible, because this strategy applies a "Smart Quantity", where the amount or quantity will adjust so that the profit and loss according to the calculation risk management, this will prevent your funds from being eroded
When the market is running very sideways, the strategy reduces the risk of loss by reducing open positions, by measuring the strength of the trend and measuring the shallowness of the average candle bar mixed with the "Smart Quantity" technique.
This strategy is applied to the Binance Futures Exchange, uses API Management, and can only be applied to the ETHUSDTPERP pair, so if it is used on another pair, the strategy will not work.
The main point of this platform is to reduce risk in trading digital instruments, by maintaining transactions with good risk management, namely preventing trading in a brutal way that will erode funds in an immeasurable way. Another important thing is that there is no risk of fundraising which results in funds or deposits being unable to be taken, such as in the case of forex trading robots where the biggest risk is with the broker, where our funds may not necessarily return due to non-transparent and poorly regulated mechanisms.
No business in this world can measure with certainty when the return on investment or can generate consistent profits, so also take care of the risk from our side as users, please analyze this strategy by paying attention to the strategy tester to measure NetProfit, Percent Profitable and Maximum Drawdown, from trading history that has occurred the previous month, because the results are relatively the same as what happened in real trading. Also remember that past profits do not guarantee future profits
Every business has risks, so use cold money so that we are comfortable when trading, don't use debt / borrow money, pawn money, kitchen money or hot money.
If you are interested in using this strategy for automated and real-time trading, please contact the owner of this strategy or the founders who can provide education on how to use it.
CryptoAlgo DCA / AccumulationThis is a Dollar Cost Average (DCA) / Accumulation strategy. Every time there is a long signal it will buy a fixed USD amount that you have specified in the settings and keep buying at the dips and corrections in the market. This strategy is low-risk, however it assumes you have a long time horizon of at least 2+ years. The longer your holding-period, the better your returns.
There is 3 different entry conditions you can choose from:
The first entry condition is bollinger bands. Bollinger bands is a set of trendlines plotted two standard deviations (positively and negatively) away from a simple moving average (SMA) of an assets price. Every time a candle closes below the lower trendline the strategy will buy.
The second entry condition is the Relative Strength Index (RSI). The RSI is a momentum indicator used in technical analysis that measures the magnitude of recent price changes to evaluate overbought or oversold conditions in the price of a stock or other asset. Every time the RSI is meaning oversold and goes below a point of your choosing the strategy will buy.
The third entry condition is based on pivot points and moving averages that will determine small term trend changes in the market and low price points. Every time there is a bullish trend reversal the strategy will buy.
All three of these entry conditions can be controlled by a higher timeframe RSI that will stop entries when the RSI is above a certain point where the market is overbought and not ideal for accumulation.
The take profits in this strategy is dynamic and will signal trend changes like the third entry condition by using pivot points and moving averages. Since this is a DCA/ Accumulation strategy and will accumulate for the long term it will only exit a small percentage of the accumulated position. This will ensure that you take profit as the asset is appreciating in price while keeping the majority of the position for greater profit in the future.
At the bottom right corner of the chart you will be able to see the key results of the DCA
The first reading is the Average amount USD that the strategy is investing on average every month. This value will help you identify the best settings for you and what USD amount the strategy should enter at the signals so that it stays below the amount you are willing to invest every month. Keep in mind that this is an average and that there will be a lot of deviation up or down based on where the market is going. If the market is having a correction the strategy will signal a lot more entries than when it is going up.
The second reading is the average profit per month. This is also an average and the result will go up exponentially from the starting point as the strategy accumulates and the market appreciates in price.
The third reading is the position average price. This is the average price all the accumulated USD in the asset.
The fourth reading is the total profit. This is the result of both the realised profit from taking profit and the accumulated usd amount left in the position.
The last reading is the performance score. This is a scoring system that i created that looks at the data from the readings and weighs it based on importance and then spits out a number that will help identify the best settings. The higher the number the better the performance, meaning more profit and better DCA.
When you have found the right settings you can insert the messages from your automatic trading platform at the bottom of the inputs and then create an alert with your unique webhook address along with the alert message below:
{{strategy.order.alert_message}}
You will be able to adjust all parameters in the settings.
Enjoy!
Dynamic length MA Strategy [Dynamic Signal Lab]Dear TV'ers,
Hereby the strategy for the dynamic moving average crossover, with some flexible taking profit options.
All moving averages have the option to dynamically change lengths and different source options. They include:
* Hull MA
* volume-weighted Hull MA
* Simple MA
* Money Flow Index
* Chande Momentum Oscilator
* Arnaud Legoux MA
* Weighted MA
* Linear regression
What makes this strategy special is the fact that you can dynamically shorten the length of moving average length depending on how much you are in profit. The more you are in profit, the shorter the length of the MA will become.
The current default properties should be modified to make this strategy cost-effective, but typically 30minutes and higher timeframes seem to work well for larger (top10 cap) crypto projects. Dont use this script for small-caps as it will get you rekt.
Additionally, you'll also be able to continuously take profit, making sure you lock in all those sweet profits.
Use this script for doing backtesting and the indicator compagnon to fire your alerts.