Strategic Multi-Step Supertrend - Strategy [presentTrading]The code is mainly developed for me to stimulate the multi-step taking profit function for strategies. The result shows the drawdown can be reduced but at the same time reduced the profit as well. It can be a heuristic for futures leverage traders.
█ Introduction and How it is Different
The "Strategic Multi-Step Supertrend" is a trading strategy designed to leverage the power of multiple steps to optimize trade entries and exits across the Supertrend indicator. Unlike traditional strategies that rely on single entry and exit points, this strategy employs a multi-step approach to take profit, allowing traders to lock in gains incrementally. Additionally, the strategy is adaptable to both long and short trades, providing a comprehensive solution for dynamic market conditions.
This template strategy lies in its dual Supertrend calculation, which enhances the accuracy of trend detection and provides more reliable signals for trade entries and exits. This approach minimizes false signals and increases the overall profitability of trades by ensuring that positions are entered and exited at optimal points.
BTC 6h L/S Performance
█ Strategy, How It Works: Detailed Explanation
The "Strategic Multi-Step Supertrend Trader" strategy utilizes two Supertrend indicators calculated with different parameters to determine the direction and strength of the market trend. This dual approach increases the robustness of the signals, reducing the likelihood of entering trades based on false signals. Here is a detailed breakdown of how the strategy operates:
🔶 Supertrend Indicator Calculation
The Supertrend indicator is a trend-following overlay on the price chart, typically used to identify the direction of the trend. It is calculated using the Average True Range (ATR) to ensure that the indicator adapts to market volatility. The formula for the Supertrend indicator is:
Upper Band = (High + Low) / 2 + (Factor * ATR)
Lower Band = (High + Low) / 2 - (Factor * ATR)
Where:
- High and Low are the highest and lowest prices of the period.
- Factor is a user-defined multiplier.
- ATR is the Average True Range over a specified period.
The Supertrend changes its direction based on the closing price in relation to these bands.
🔶 Entry-Exit Conditions
The strategy enters long positions when both Supertrend indicators signal an uptrend, and short positions when both indicate a downtrend. Specifically:
- Long Condition: Supertrend1 < 0 and Supertrend2 < 0
- Short Condition: Supertrend1 > 0 and Supertrend2 > 0
- Long Exit Condition: Supertrend1 > 0 and Supertrend2 > 0
- Short Exit Condition: Supertrend1 < 0 and Supertrend2 < 0
🔶 Multi-Step Take Profit Mechanism
The strategy features a multi-step take profit mechanism, which allows traders to lock in profits incrementally. This is achieved through four user-configurable take profit levels. For each level, the strategy specifies a percentage increase (for long trades) or decrease (for short trades) in the entry price at which a portion of the position is exited:
- Step 1: Exit a portion of the trade at Entry Price * (1 + Take Profit Percent1 / 100)
- Step 2: Exit a portion of the trade at Entry Price * (1 + Take Profit Percent2 / 100)
- Step 3: Exit a portion of the trade at Entry Price * (1 + Take Profit Percent3 / 100)
- Step 4: Exit a portion of the trade at Entry Price * (1 + Take Profit Percent4 / 100)
This staggered exit strategy helps in locking profits at multiple levels, thereby reducing risk and increasing the likelihood of capturing the maximum possible profit from a trend.
BTC Local
█ Trade Direction
The strategy is highly flexible, allowing users to specify the trade direction. There are three options available:
- Long Only: The strategy will only enter long trades.
- Short Only: The strategy will only enter short trades.
- Both: The strategy will enter both long and short trades based on the Supertrend signals.
This flexibility allows traders to adapt the strategy to various market conditions and their own trading preferences.
█ Usage
1. Add the strategy to your trading platform and apply it to the desired chart.
2. Configure the take profit settings under the "Take Profit Settings" group.
3. Set the trade direction under the "Trade Direction" group.
4. Adjust the Supertrend settings in the "Supertrend Settings" group to fine-tune the indicator calculations.
5. Monitor the chart for entry and exit signals as indicated by the strategy.
█ Default Settings
- Use Take Profit: True
- Take Profit Percentages: Step 1 - 6%, Step 2 - 12%, Step 3 - 18%, Step 4 - 50%
- Take Profit Amounts: Step 1 - 12%, Step 2 - 8%, Step 3 - 4%, Step 4 - 0%
- Number of Take Profit Steps: 3
- Trade Direction: Both
- Supertrend Settings: ATR Length 1 - 10, Factor 1 - 3.0, ATR Length 2 - 11, Factor 2 - 4.0
These settings provide a balanced starting point, which can be customized further based on individual trading preferences and market conditions.
Cari dalam skrip untuk "profit"
Candlestick Patterns detection and backtester [TrendX_]INTRODUCTION:
The Candlestick Patterns detection and backtester is designed to empower traders by identifying and analyzing candlestick patterns. Leveraging the robust Pine Script's add-in “All Candlestick Patterns”, this indicator meticulously scans the market for candlestick formations, offering insights into potential market movements. With its backtesting capabilities, we evaluate historical data to present traders with performance metrics such as win rates, net profit, and profit factors for each pattern. This allows traders to make informed decisions based on empirical evidence. The customizable settings, including trend filters and exit conditions, provide a tailored experience, adapting to various trading styles and strategies.
CREDIT:
This indicator is powered by the Pinescript add-in, *All Candlestick Patterns*, which provides a comprehensive library of candlestick formations.
TABLE USAGE:
The indicator features a detailed usage table that presents backtested results of all candlestick patterns. This includes:
Win Rates: The percentage of trades that resulted in a profit.
Net Profit: The total profit after subtracting losses from gains.
Profit Factor: A measure of the indicator’s profitability (gross profit / gross loss).
Total Trades: The total number of trades taken for every candlestick pattern's appearance.
CHART CANDLESTICK USAGE:
The indicator integrates candlestick pattern detections directly into the chart, displaying:
Pattern Detections: Each detected pattern is marked on the chart.
Win Rates: The win rate of each pattern is shown in brackets next to the detection.
CHART SETTINGS:
Users can customize the indicator with a variety of trend filters and settings:
Trend Filters: Apply filters based on SMA50, SMA200, Supertrend, and RSI threshold to refine pattern detections.
Exit Condition: Set an exit condition based on the crossing of a simple moving average of customizable length.
Visibility: Choose to show or hide the candlestick patterns’ detections on the chart.
Day/Week/Month Metrics (Zeiierman)█ Overview
The Day/Week/Month Metrics (Zeiierman) indicator is a powerful tool for traders looking to incorporate historical performance into their trading strategy. It computes statistical metrics related to the performance of a trading instrument on different time scales: daily, weekly, and monthly. Breaking down the performance into daily, weekly, and monthly metrics provides a granular view of the instrument's behavior.
The indicator requires the chart to be set on a daily timeframe.
█ Key Statistics
⚪ Day in month
The performance of financial markets can show variability across different days within a month. This phenomenon, often referred to as the "monthly effect" or "turn-of-the-month effect," suggests that certain days of the month, especially the first and last days, tend to exhibit higher than average returns in many stock markets around the world. This effect is attributed to various factors including payroll contributions, investment of monthly dividends, and psychological factors among traders and investors.
⚪ Edge
The Edge calculation identifies days within a month that consistently outperform the average monthly trading performance. It provides a statistical advantage by quantifying how often trading on these specific days yields better returns than the overall monthly average. This insight helps traders understand not just when returns might be higher, but also how reliable these patterns are over time. By focusing on days with a higher "Edge," traders can potentially increase their chances of success by aligning their strategies with historically more profitable days.
⚪ Month
Historically, the stock market has exhibited seasonal trends, with certain months showing distinct patterns of performance. One of the most well-documented patterns is the "Sell in May and go away" phenomenon, suggesting that the period from November to April has historically brought significantly stronger gains in many major stock indices compared to the period from May to October. This pattern highlights the potential impact of seasonal investor sentiment and activities on market performance.
⚪ Day in week
Various studies have identified the "day-of-the-week effect," where certain days of the week, particularly Monday and Friday, show different average returns compared to other weekdays. Historically, Mondays have been associated with lower or negative average returns in many markets, a phenomenon often linked to the settlement of trades from the previous week and negative news accumulation over the weekend. Fridays, on the other hand, might exhibit positive bias as investors adjust positions ahead of the weekend.
⚪ Week in month
The performance of markets can also vary within different weeks of the month, with some studies suggesting a "week of the month effect." Typically, the first and the last week of the month may show stronger performance compared to the middle weeks. This pattern can be influenced by factors such as the timing of economic reports, monthly investment flows, and options and futures expiration dates which tend to cluster around these periods, affecting investor behavior and market liquidity.
█ How It Works
⚪ Day in Month
For each day of the month (1-31), the script calculates the average percentage change between the opening and closing prices of a trading instrument. This metric helps identify which days have historically been more volatile or profitable.
It uses arrays to store the sum of percentage changes for each day and the total occurrences of each day to calculate the average percentage change.
⚪ Month
The script calculates the overall gain for each month (January-December) by comparing the closing price at the start of a month to the closing price at the end, expressed as a percentage. This metric offers insights into which months might offer better trading opportunities based on historical performance.
Monthly gains are tracked using arrays that store the sum of these gains for each month and the count of occurrences to calculate the average monthly gain.
⚪ Day in Week
Similar to the day in the month analysis, the script evaluates the average percentage change between the opening and closing prices for each day of the week (Monday-Sunday). This information can be used to assess which days of the week are typically more favorable for trading.
The script uses arrays to accumulate percentage changes and occurrences for each weekday, allowing for the calculation of average changes per day of the week.
⚪ Week in Month
The script assesses the performance of each week within a month, identifying the gain from the start to the end of each week, expressed as a percentage. This can help traders understand which weeks within a month may have historically presented better trading conditions.
It employs arrays to track the weekly gains and the number of weeks, using a counter to identify which week of the month it is (1-4), allowing for the calculation of average weekly gains.
█ How to Use
Traders can use this indicator to identify patterns or trends in the instrument's performance. For example, if a particular day of the week consistently shows a higher percentage of bullish closes, a trader might consider this in their strategy. Similarly, if certain months show stronger performance historically, this information could influence trading decisions.
Identifying High-Performance Days and Periods
Day in Month & Day in Week Analysis: By examining the average percentage change for each day of the month and week, traders can identify specific days that historically have shown higher volatility or profitability. This allows for targeted trading strategies, focusing on these high-performance days to maximize potential gains.
Month Analysis: Understanding which months have historically provided better returns enables traders to adjust their trading intensity or capital allocation in anticipation of seasonally stronger or weaker periods.
Week in Month Analysis: Identifying which weeks within a month have historically been more profitable can help traders plan their trades around these periods, potentially increasing their chances of success.
█ Settings
Enable or disable the types of statistics you want to display in the table.
Table Size: Users can select the size of the table displayed on the chart, ranging from "Tiny" to "Auto," which adjusts based on screen size.
Table Position: Users can choose the location of the table on the chart
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems 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.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
NY Open Breakout Strategy - High Liquidity & Favorable RRR Pine Description:
The NY Open Breakout Strategy is an advanced Pine Script indicator tailored for the TradingView platform. This strategy is specifically designed to exploit the high liquidity found during the New York session opening in the Forex market. Its primary goal is to provide traders with an opportunity to engage in positions with lower risk and higher potential profits, thereby ensuring an advantageous risk-to-reward ratio (RRR).
Core Objectives:
Leveraging High Liquidity: Capitalizes on the significant market movements at the New York session opening, known for its high liquidity, to identify strong breakout signals.
Achieving Favorable RRR: By setting strategic stop-loss and take-profit levels, the strategy aims for a higher RRR. This approach can lead to overall profitability, even if the win rate is lower than the loss rate.
Functionality:
Dynamic Breakout Identification: Uses the first 15-minute candle’s high and low after NY open as benchmarks for detecting potential breakouts.
Customizable Stop-Loss & Take-Profit: Provides options to configure stop-loss at the last swing or the previous candle’s close. The take-profit levels are determined based on a favorable risk-reward ratio.
Visual Session Indicators: Includes distinct background coloring and vertical lines to mark the New York session for easy visibility.
Methodology:
This strategy hinges on the premise that the opening of the New York session often triggers key price movements due to an influx of trading activity. By focusing on these moments, our indicator aims to capture strong trends and breakout patterns. The carefully calibrated stop-loss and take-profit settings ensure that each trade aims for a higher potential reward compared to the risk undertaken.
Unique Features:
Enhanced Risk Management: With adaptable risk-reward settings, traders can tailor their trading strategies to align with individual risk appetites.
Personalized User Experience: Offers a range of customizable settings for visual elements, allowing traders to adjust the look and feel of the indicator to their preferences.
Usage Guidelines:
Customize the indicator settings, including the stop-loss reference and risk-reward ratio, to match your trading style.
Watch for 'Buy Enter' and 'Sell Enter' signals during the New York session opening.
Utilize the displayed stop-loss and take-profit levels to effectively manage each trade.
This NY Open Breakout Strategy is ideal for traders who prioritize efficient risk management while aiming to capitalize on the high liquidity periods of the Forex market. The strategy is designed to be robust, providing a pathway to profitability even in scenarios where the number of losing trades surpasses winning ones, thanks to its emphasis on a high risk-to-reward ratio.
Good Mode RSI v2► Description:
"Good Mode RSI v2" is a powerful trading strategy designed to provide informed trading decisions. This script utilizes the popular RSI (Relative Strength Index) indicator to identify potential buying and selling opportunities in the market. It goes beyond the traditional use of RSI by incorporating carefully selected parameters to enhance its effectiveness. The strategy stands out for its customized combination of RSI levels and stop-loss/take-profit thresholds, allowing for precise trade entries and exits while effectively managing risk.
► How to Use:
To utilize the "Good Mode RSI v2" strategy, follow these steps:
1. Apply the script to your desired trading instrument and timeframe in TradingView.
2. Monitor the chart for trade signals generated by the strategy.
3. When the RSI reaches the sell level of 96, a sell signal is generated. Consider placing a sell order to take advantage of potential downward price movements.
4. take-profit level at 60 to secure profits in a strong downtrend.
5. When the RSI drops below the buy level of 4, a buy signal is generated. Consider placing a buy order to enter the market at a favorable price.
6. take-profit level at 30 to secure profits in a strong uptrend.
7. Monitor the RSI indicator on the chart to stay updated on its current value and anticipate potential trade signals.
Please note that trading decisions should be made based on a comprehensive analysis of multiple factors, including market conditions, trend analysis, and risk management. The "Good Mode RSI v2" strategy can serve as a valuable tool in your trading journey, but it should be used in conjunction with your own research and analysis.
► About it:
The "Good Mode RSI v2" strategy is not a mere replication or slight modification of existing strategies or indicators. It has been carefully crafted to provide traders with an original and purposeful approach to trading using the RSI indicator. The strategy's unique configuration of RSI levels and stop-loss/take-profit thresholds allows for improved performance and profitability. Backtesting results have shown impressive metrics, including a gain factor of 2.445 and a compelling profitability of 78.07% during the testing period.
► Referrals:
If you have any questions or need further assistance with the "Good Mode RSI v2" strategy, feel free to ask. Good luck with your trading endeavors!
Moving Average Rainbow (Stormer)This strategy is based and shown by trader and investor Alexandre Wolwacz "Stormer".
Overview
The strategy uses 12 moving averages (default EMA) to identify trends and generate trading signals opening positions.
Allowing to select the type of moving average and length to be used.
The conditions includes relationship between moving averages, the position of the current price relative to the moving averages, and the occurrence of certain price patterns.
Calculation
The mean moving averages is calculated by adding all the 12 moving averages and dividing by 12, the value is used to help to identify trend and possible condition to open position.
The 12 moving averages is spliced by 3 ranges, initial range (moving average lines 1 to 4), middle range (moving average lines 5 to 8) and end range (moving average lines 9 to 12). These ranges helps to identify potential trend and market turn over.
The moving average touch price is a relationship between the low price (uptrend) or high price (downtrend) with the moving average lines, it identifies where the price (low/high) has reached the the moving average line. Fetching the value to help for opening position, set stop loss and take profit.
Since the stop loss is based and set from the previous moving average touch price value, when position is about to be open and setting the stop loss value, there is a verification to check both current and previous moving average touch price to recalculate the stop loss value.
The turnover trend checks for a possible market turnover event, setting up a new profit target, this setting when enabled is to be helpful when a turnover occurs against the position to exit position with some profit based on highest high price if long or lowest low price if short.
The turnover signal is similar to turnover trend. The difference is that when this setting is enabled and it triggers, it simply exit the current position and opens up a reverse position, long goes short and short goes long. And there is an complement optional that checks current price exit profitable.
Entry Position
Long Position:
Price is higher than the mean moving averages. Meaning possible uptrend.
The lines of the middle range from the moving averages are in increasing order. Meaning possible uptrend.
The current high pierced up previous high.
Fetch the previous value of the moving average touch price. Meaning the low price has touched one of the moving average lines, which that value is conditioning to open position.
Short Position:
Price is lower than the mean moving averages. Meaning possible downtrend.
The lines of the middle range from the moving averages are in decreasing order. Meaning possible downtrend.
The current low pierced down previous low.
Fetch the previous value of the moving average touch price. Meaning the high price has touched one of the moving average lines, which that value is conditioning to open position.
Risk Management
Stop Loss:
The stop loss is based from the previous moving average touch price value, high price for short and low price for long or occurs an verification to check for both current and previous moving average touch price value and a recalculation is done to set the stop loss.
Take Profit:
According to the author, the profit target should be at least 1:1.6 the risk, so to have the strategy mathematically positive.
The profit target is configured input, can be increased or decreased.
It calculates the take profit based on the price of the stop loss with the profit target input.
Turnover Trend
Long Position:
The moving averages initial range lines signals a possible market turnover. Meaning long might be going short.
Fetches the highest high hit since the opening of the position, setting that value to the new profit target.
Short Position:
The moving averages initial range lines signals a possible market turnover. Meaning short might be going long.
Fetches the lowest low hit since the opening of the position, setting that value to the new profit target.
Range BreakerStrategy Description: Range Breaker
The Range Breaker strategy is a breakout trading strategy that aims to capture profits when the price of a financial instrument moves out of a defined range. The strategy identifies swing highs and swing lows over a specified lookback period and enters long or short positions when the price breaks above the swing high or below the swing low, respectively. It also employs stop targets based on a percentage to manage risk and protect profits.
Beginner's Guide:
Understand the concepts:
a. Swing High: A swing high is a local peak in price where the price is higher than the surrounding prices.
b. Swing Low: A swing low is a local trough in price where the price is lower than the surrounding prices.
c. Lookback Period: The number of bars or periods the strategy analyzes to determine swing highs and swing lows.
d. Stop Target: A predetermined price level at which the strategy will exit the position to manage risk and protect profits.
Configure the strategy:
a. Set the initial capital, order size, commission, and pyramiding as needed for your specific trading account.
b. Choose the desired lookback period to identify the swing highs and lows.
c. Set the stop target multiplier and stop target percentage as desired to manage risk and protect profits.
Backtest the strategy:
a. Set the backtest start date to analyze the strategy's historical performance.
b. Observe the backtesting results to evaluate the strategy's effectiveness and adjust the parameters if necessary.
Implement the strategy:
a. Apply the strategy to your preferred financial instrument on the TradingView platform.
b. Monitor the strategy's performance and adjust the parameters as needed to optimize its effectiveness.
Risk management:
a. Always use a stop target to protect your trading capital and manage risk.
b. Don't risk more than a small percentage of your trading capital on a single trade.
c. Be prepared to adjust the strategy or stop trading it if the market conditions change significantly.
Adjusting the Lookback Period and Timeframes for Optimal Strategy Performance
The Range Breaker strategy uses a lookback period to identify swing highs and lows, which serve as the basis for determining entry and exit points for long and short positions. By adjusting the lookback period and analyzing different timeframes, you can potentially find the best strategy configuration for each specific asset.
Adjusting the lookback period:
The lookback period is a critical parameter that affects the sensitivity of the strategy to price movements. A shorter lookback period will make the strategy more sensitive to smaller price fluctuations, resulting in more frequent trading signals. On the other hand, a longer lookback period will make the strategy less sensitive, generating fewer signals but potentially capturing larger price movements.
To optimize the lookback period for a specific asset, you can test different lookback values and compare their performance in terms of risk-adjusted returns, win rate, and other relevant metrics. Keep in mind that using an overly short lookback period may lead to overtrading and increased transaction costs, while an overly long lookback period may cause the strategy to miss profitable trading opportunities.
Analyzing different timeframes:
Timeframes refer to the duration of each bar or candlestick on the chart. Shorter timeframes (e.g., 5-minute, 15-minute, or 30-minute) focus on intraday price movements, while longer timeframes (e.g., daily, weekly, or monthly) capture longer-term trends. The choice of timeframe affects the number of trading signals generated by the strategy and the length of time each position is held.
To find the best strategy for each asset, you can test the Range Breaker strategy on different timeframes and analyze its performance. Keep in mind that shorter timeframes may require more active monitoring and management due to the increased frequency of trading signals. Longer timeframes, on the other hand, may require more patience as positions are held for extended periods.
Finding the best strategy for each asset:
Every asset has unique price characteristics that may affect the performance of a trading strategy. To find the best strategy for each asset, you should:
a. Test various lookback periods and timeframes, observing the strategy's performance in terms of profitability, risk-adjusted returns, and win rate.
b. Consider the asset's historical price behavior, such as its volatility, liquidity, and trend-following or mean-reverting tendencies.
c. Evaluate the strategy's performance during different market conditions, such as bullish, bearish, or sideways markets, to ensure its robustness.
d. Keep in mind that each asset may require a unique set of strategy parameters for optimal performance, and there may be no one-size-fits-all solution.
By experimenting with different lookback periods and timeframes, you can fine-tune the Range Breaker strategy for each specific asset, potentially improving its overall performance and adaptability to changing market conditions. Always practice proper risk management and be prepared to make adjustments as needed.
Remember that trading strategies carry inherent risk, and past performance is not indicative of future results. Always practice proper risk management and consider your own risk tolerance before trading with real money.
3Commas Bot DCA Backtester & Signals FREEThis is a DCA Strategy backtester + signals, built to emulate the 3Commas DCA bots. It uses your choice of 4 different buy signals, 2 of which can be adjusted in the settings. Everything is customizable so you can backtest specific settings with different buy signals and find the best performing strategy for your risk tolerance and capital. It can be used to backtest strategies on stocks as well, but just make sure your base order is larger than the share price for the entire backtesting range or it will not calculate properly.
You can use this template to code your own buy signals and then backtest them as a DCA strategy if you know some basic pine script.
The indicator shows all of your backtesting orders on the chart. The red line is your take profit level, the blue line is your average price level, the white line is your first order and the green lines are your average down orders. If you enable a stop loss in the settings your stop loss will be shown as an orange line once all of your average down orders have been hit, it will not be set until price has dipped below your covered trading range.
These levels update when things change during backtesting so you can visualize your strategy and how it would perform as well as see if your percentage deviation is large enough to cover dips. When backtesting trades are taken, the chart will show where they were taken(in backtesting) along with info on those trades such as the number each order is, the size of that order and the percentage deviation that order is from the initial buy.
SENDING SIGNALS TO 3COMMAS
Tradingview cannot sync this backtester to 3Commas and with the way alerts are setup for strategies on Tradingview, the best option for you to give signals to your bot would be to use this backtester to figure out what trigger you want to use and then setup that indicator separately to send alerts to your bot. All of the indicators used for signals in this backtester are available for free and can be configured to match this backtester and send alerts to 3Commas for you. Just make sure you set your alerts to once per bar close and don’t use less than a 15 second timeframe because then you could trigger the Tradingview threshold for alerts and get your alerts shut off.
You can also use this backtester with your own buy triggers if you know a little pine script. Just make copy of the script and code in your own buy signals and see how it backtests.
INFO PANEL FOR ANALYZING YOUR STRATEGY
The right hand side of the screen will show an info panel that shows a lot of different information so you can quickly see your bot settings and how it performed right on the screen.
In the top right corner you will see in purple your bot settings. These include your stoploss % if turned on, take profit %, average down order %, average down order % multiplier, volume multiplier, max number of orders allowed and size of your base order.
The top section of the first column “Current Trade” shows these stats: the open trade’s average price, the open trade’s take profit price, the open trade’s PNL, how far price is from your open tarde’s take profit level in percentage, your open position size and number of open orders.
The bottom section of the first column “Overall Performance” shows these stats: total number of trades taken during backtesting range, the largest amount of trades that were open at one time during backtesting, the max drawdown, the average number of bars per trade, gross profit, net profit, percent profit from your initial capital, current portfolio value and your initial capital.
CUSTOMIZABLE OPTIONS TO FIND THE PERFECT STRATEGY
Stoploss On/Off
This will turn your stoploss on or off. By default it is set to off and will not affect anything unless turned on.
Stoploss Percentage
This is the percentage below your final average down order price that will be set as a stoploss to keep your account from going too far in the red on big dips.
Take Profit Percentage - This is the percentage of profit you want the trade to hit before taking profit on your entire DCA trade. This level updates everytime you average down.
Average Down Percentage - This is the percentage that price has to drop from your initial order to initiate your first safety order. If the Average Down Percent Multiplier is set to 1 then this percentage will be the same for every average down order.
Average Down Percentage Multiplier - This multiplies your Average Down Percentage so each safety order needs a larger percentage deviation than the previous one. This keeps your buys closer together at the beginning and further apart when you hit more orders so you can extend your trading range but still be aggressive when price is going sideways.
Volume Multiplier Per New Order - This multiplies the size of each trade based on your base order. If you set it to a 2x multiplier then each average down order will be 2 times the size of the last one. So for example, a $100 base order with a 2x multiplier would have these values for the first 3 average down orders: 200, 400, 800.
Size Of Base Order - This is the size of your first position entry and will be used as a starting point for the volume multiplier. If your base order is $100 then it will buy $100 worth of whatever crypto you are backtesting this on. If you are looking at stock charts, you need to make sure your base order is higher than the share price across the entire backtesting range or it will not perform correctly.
Max Number Of Orders - This is the maximum number of orders the bot can take, including your base order. Adjust this to suit the amount of capital you are willing to allocate to your bot based on how much money it will require to run according to your bot settings.
TIPS ON HOW TO USE FOR BEST RESULTS
If you don’t have a lot of capital to work with, then use longer timeframes with a reasonable take profit percentage so that you don’t need a lot of average down orders. You can also try keeping the volume multiplier close to 1.
You can use the 3Commas dca bot settings page to see how much capital you will need for your strategy if you match it to the settings you have on this indicator. You can also check to see how much of a percentage deviation your bot is covering to make sure you have a reasonable range to trade in and orders to cover big dips. You can also check your coverage by seeing how far down the chart the green lines cover, which are your average down orders.
Make sure the initial capital in the properties tab of the settings has enough to cover all of your orders otherwise you will get unrealistic backtesting results. Also, make sure you leave the order size in the properties tab on contracts so it calculates your trades correctly. The only settings you need to touch in the properties tab is the initial capital. Unless you are trading somewhere that has lower commission fees, then you can change that to match, but leave all the other settings as is for it to function properly.
Increasing the volume multiplier will make your average price and take profit target follow the price action a lot closer as price falls, but it can also lead to having very large orders very quickly once you get into the 1.5-3x multiple range. Try using a high volume multiplier with less safety orders and you will get better results, however you need to have money on the sidelines to add on major dips to keep your bot turning a profit. Be very careful with this as greed and impatience will hurt your overall performance. This bot is meant to make money with lots of small wins so don’t get greedy and make sure you have enough money to cover large dips. If you are being aggressive with your bot, then I recommend only using 25% or less of your portfolio to trade aggressively and then use the smart trade feature on 3commas to add chunks of funds to your trades when price dips below your last safety order. Or if you want it to run without any supervision, then use lower volume multipliers and have lots of safety orders that can cover entire bear markets and still keep buying lower.
It’s a good idea to have some capital on the sidelines that you can add in when price dips quickly. This will help lower your average price and allow your bot to get out in profit quicker. 3Commas bot has a smart trade feature that will allow you to track your average price when adding extra funds and it will automatically update your other orders which is very convenient. Look at the longer timeframes when price dips and only add chunks at major areas where price is very likely to bounce. Or you can be aggressive when trading and add to your position when price dips and is at a likely bounce zone to maximize profits.
Only trade coins that have a good amount of liquidity as the larger your orders get, the harder it will be to sell if there isn’t much liquidity. Also, beware of how large your first order is as it will usually be a market order and can move the market if there is not much liquidity.
Since this bot takes a lot of trades and performs best when taking small profits consistently, you will need to factor in exchange fees. The bot is set to .5% commission(you can change this) on the buy and sell orders as most exchanges charge that amount. Some exchanges offer no fee trading on certain coins so be sure to look around for those so you can keep the commissions and maximize profits.
I strongly encourage you to try out a lot of different setting combinations across multiple different coins and do it across a few months to see how it would have performed under various market conditions. This will help you get a better idea of how much of a percentage deviation you’ll need to be able to cover to keep your bot running and making constant profits. You can also use the deep backtesting feature of the strategy panel to see how it would have done, but just beware that the info panel of the indicator will not reflect deep backtesting results, only the normal backtesting range.
MARKETS
This backtester can be used on any market including crypto, stocks, forex & futures. You just need to make sure your base order is larger than the share price when using this on things besides crypto.
TIMEFRAMES
This backtester can be used on all timeframes.
[MT] Strategy Backtest Template| Initial Release | | EN |
An update of my old script, this script is designed so that it can be used as a template for all those traders who want to save time when programming their strategy and backtesting it, having functions already programmed that in normal development would take you more time to program, with this template you can simply add your favorite indicator and thus be able to take advantage of all the functions that this template has.
🔴Stop Loss and 🟢Take Profit:
No need to mention that it is a Stop Loss and a Take Profit, within these functions we find the options of: fixed percentage (%), fixed price ($), ATR, especially for Stop Loss we find the Pivot Points, in addition to this, the price range between the entry and the Stop Loss can be converted into a trailing stop loss, instead, especially for the Take Profit we have an option to choose a 1:X ratio that complements very well with the Pivot Points.
📈Heikin Ashi Based Entries:
Heikin Ashi entries are trades that are calculated based on Heikin Ashi candles but their price is executed to Japanese candles, thus avoiding false results that occur in Heikin candlestick charts, this making in certain cases better results in strategies that are executed with this option compared to Japanese candlesticks.
📊Dashboard:
A more visual and organized way to see the results and necessary data produced by our strategy, among them we can see the dates between which our operations are made regardless if you have activated some time filter, usual data such as Profit, Win Rate, Profit factor are also displayed in this panel, additionally data such as the total number of operations, how many were gains and how many losses, the average profit and loss for each operation and finally the maximum profits and losses followed, which are data that will be very useful to us when we elaborate our strategies.
Feel free to use this template to program your own strategies, if you find errors or want to request a new feature let me know in the comments or through my social networks found in my tradingview profile.
| Update 1.1 | | EN |
➕Additions: '
Time sessions filter and days of the week filter added to the time filter section.
Option to add leverage to the strategy.
5 Moving Averages, RSI, Stochastic RSI, ADX, and Parabolic Sar have been added as indicators for the strategy.
You can choose from the 6 available indicators the way to trade, entry alert or entry filter.
Added the option of ATR for Take Profit.
Ticker information and timeframe are now displayed on the dashboard.
Added display customization and color customization of indicator plots.
Added customization of display and color plots of trades displayed on chart.
📝Changes:
Now when activating the time filter it is optional to add a start or end date and time, being able to only add a start date or only an end date.
Operation plots have been changed from plot() to line creation with line.new().
Indicator plots can now be controlled from the "plots" section.
Acceptable and deniable range of profit, winrate and profit factor can now be chosen from the "plots" section to be displayed on the dashboard.
Aesthetic changes in the section separations within the settings section and within the code itself.
The function that made the indicators give inputs based on heikin ashi candles has been changed, see the code for more information.
⚙️Fixes:
Dashboard label now projects correctly on all timeframes including custom timeframes.
Removed unnecessary lines and variables to take up less code space.
All code in general has been optimized to avoid the use of variables, unnecessary lines and avoid unnecessary calculations, freeing up space to declare more variables and be able to use fewer lines of code.
| Lanzamiento Inicial | | ES |
Una actualización de mi antiguo script, este script está diseñado para que pueda ser usado como una plantilla para todos aquellos traders que quieran ahorrar tiempo al programar su estrategia y hacer un backtesting de ella, teniendo funciones ya programadas que en el desarrollo normal te tomaría más tiempo programar, con esta plantilla puedes simplemente agregar tu indicador favorito y así poder aprovechar todas las funciones que tiene esta plantilla.
🔴Stop Loss y 🟢Take Profit:
No hace falta mencionar que es un Stop Loss y un Take Profit, dentro de estas funciones encontramos las opciones de: porcentaje fijo (%), precio fijo ($), ATR, en especial para Stop Loss encontramos los Pivot Points, adicionalmente a esto, el rango de precio entre la entrada y el Stop Loss se puede convertir en un trailing stop loss, en cambio, especialmente para el Take Profit tenemos una opción para elegir un ratio 1:X que se complementa muy bien con los Pivot Points.
📈Entradas Basadas en Heikin Ashi:
Las entradas Heikin Ashi son operaciones que son calculados en base a las velas Heikin Ashi pero su precio esta ejecutado a velas japonesas, evitando así́ los falsos resultados que se producen en graficas de velas Heikin, esto haciendo que en ciertos casos se obtengan mejores resultados en las estrategias que son ejecutadas con esta opción en comparación con las velas japonesas.
📊Panel de Control:
Una manera más visual y organizada de ver los resultados y datos necesarios producidos por nuestra estrategia, entre ellos podemos ver las fechas entre las que se hacen nuestras operaciones independientemente si se tiene activado algún filtro de tiempo, datos usuales como el Profit, Win Rate, Profit factor también son mostrados en este panel, adicionalmente se agregaron datos como el número total de operaciones, cuantos fueron ganancias y cuantos perdidas, el promedio de ganancias y pérdidas por cada operación y por ultimo las máximas ganancias y pérdidas seguidas, que son datos que nos serán muy útiles al elaborar nuestras estrategias.
Siéntete libre de usar esta plantilla para programar tus propias estrategias, si encuentras errores o quieres solicitar una nueva función házmelo saber en los comentarios o a través de mis redes sociales que se encuentran en mi perfil de tradingview.
| Actualización 1.1 | | ES |
➕Añadidos:
Filtro de sesiones de tiempo y filtro de días de la semana agregados al apartado de filtro de tiempo.
Opción para agregar apalancamiento a la estrategia.
5 Moving Averages, RSI, Stochastic RSI, ADX, y Parabolic Sar se han agregado como indicadores para la estrategia.
Puedes escoger entre los 6 indicadores disponibles la forma de operar, alerta de entrada o filtro de entrada.
Añadido la opción de ATR para Take Profit.
La información del ticker y la temporalidad ahora se muestran en el dashboard.
Añadido personalización de visualización y color de los plots de indicadores.
Añadido personalización de visualización y color de los plots de operaciones mostradas en grafica.
📝Cambios:
Ahora al activar el filtro de tiempo es opcional añadir una fecha y hora de inicio o fin, pudiendo únicamente agregar una fecha de inicio o solamente una fecha de fin.
Los plots de operaciones han cambiados de plot() a creación de líneas con line.new().
Los plots de indicadores ahora se pueden controlar desde el apartado "plots".
Ahora se puede elegir el rango aceptable y negable de profit, winrate y profit factor desde el apartado "plots" para mostrarse en el dashboard.
Cambios estéticos en las separaciones de secciones dentro del apartado de configuraciones y dentro del propio código.
Se ha cambiado la función que hacía que los indicadores dieran entradas en base a velas heikin ashi, mire el código para más información.
⚙️Arreglos:
El dashboard label ahora se proyecta correctamente en todas las temporalidades incluyendo las temporalidades personalizadas.
Se han eliminado líneas y variables innecesarias para ocupar menos espacio en el código.
Se ha optimizado todo el código en general para evitar el uso de variables, líneas innecesarias y evitar los cálculos innecesarios, liberando espacio para declarar más variables y poder utilizar menos líneas de código.
Moon Phases Strategy [LuxAlgo]Trading moon phases has become quite popular among traders, believing that there exists a relationship between moon phases and market movements. This strategy is based on an estimate of moon phases with the possibility to use different methods to determine long/short positions based on moon phases.
Note that we assume moon phases are perfectly periodic with a cycle of 29.530588853 days (which is not realistically the case), as such there exists a difference between the detected moon phases by the strategy and the ones you would see. This difference becomes less important when using higher timeframes.
Settings
New Moon Reference Date: Date of a new moon to be used as starting point for the cycle calculation. Buy: Determine the condition to be used to open a long position Sell: Determine the condition to be used to open a short position
Description
The strategy can use different buy/sell conditions, these are determined in the Buy/Sell settings drop-down menu.
By default, the strategy goes long on a new moon and short on a full moon. This setup is common since full moons are said to be related to depressed mood. However, it is possible to use inverse conditions.
Users can also go long on higher moons (new moons or full moons occurring at a price that is higher than the previous one when a new/full moon occurred) and short on lower moons, this would return a trend following strategy, using the inverse conditions (buy lower moons/sell higher moons) would return a contrarian strategy.
The above chart displays the strategy using default conditions.
The above chart displays the strategy of going long on a higher moon and selling on a lower moon.
Quick Summary
We provide a quick summary of the strategy using default conditions (buy on a new moon, sell on a full moon) on various tickers using the 4h timeframe (note that using a lower timeframe would return a backtest executing a lower number of trades).
Constant position sizing is used and no frictional costs are considered.
BTCUSD
The moon phases strategy has been regularly tested with BTCUSD, with traders highlighting how moon phases tend to occur during tops/bottoms. We test the strategy from 2019-01-06 00:00.
Net Profit: $68544.86 Closed Trades : 67 % Profitability : 50.75 Max Drawdown : $18541.24 Max
TSLA
The strategy is tested from 2011-01-04 14:30
Net profit: $349.17 Closed Trades : 265 % Profitability : 54.34 Max Drawdown : $262.72
EURUSD
The strategy is tested from 2018-01-16 14:00.
Net profit: $-0.18 Closed Trades : 91 % Profitability : 50.55 Max Drawdown : 0.36
Portfolio Backtester Engine█ OVERVIEW
Portfolio Backtester Engine (PBTE). This tool will allow you to backtest strategies across multiple securities at once. Allowing you to easier understand if your strategy is robust. If you are familiar with the PineCoders backtesting engine , then you will find this indicator pleasant to work with as it is an adaptation based on that work. Much of the functionality has been kept the same, or enhanced, with some minor adjustments I made on the account of creating a more subjectively intuitive tool.
█ HISTORY
The original purpose of the backtesting engine (`BTE`) was to bridge the gap between strategies and studies . Previously, strategies did not contain the ability to send alerts, but were necessary for backtesting. Studies on the other hand were necessary for sending alerts, but could not provide backtesting results . Often, traders would have to manage two separate Pine scripts to take advantage of each feature, this was less than ideal.
The `BTE` published by PineCoders offered a solution to this issue by generating backtesting results under the context of a study(). This allowed traders to backtest their strategy and simultaneously generate alerts for automated trading, thus eliminating the need for a separate strategy() script (though, even converting the engine to a strategy was made simple by the PineCoders!).
Fast forward a couple years and PineScript evolved beyond these issues and alerts were introduced into strategies. The BTE was not quite as necessary anymore, but is still extremely useful as it contains extra features and data not found under the strategy() context. Below is an excerpt of features contained by the BTE:
"""
More than `40` built-in strategies,
Customizable components,
Coupling with your own external indicator,
Simple conversion from Study to Strategy modes,
Post-Exit analysis to search for alternate trade outcomes,
Use of the Data Window to show detailed bar by bar trade information and global statistics, including some not provided by TV backtesting,
Plotting of reminders and generation of alerts on in-trade events.
"""
Before I go any further, I want to be clear that the BTE is STILL a good tool and it is STILL very useful. The Portfolio Backtesting Engine I am introducing is only a tangental advancement and not to be confused as a replacement, this tool would not have been possible without the `BTE`.
█ THE PROBLEM
Most strategies built in Pine are limited by one thing. Data. Backtesting should be a rigorous process and researchers should examine the performance of their strategy across all market regimes; that includes, bullish and bearish markets, ranging markets, low volatility and high volatility. Depending on your TV subscription The Pine Engine is limited to 5k-20k historical bars available for backtesting, which can often leave the strategy results wanting. As a general rule of thumb, strategies should be tested across a quantity of historical bars which will allow for at least 100 trades. In many cases, the lack of historical bars available for backtesting and frequency of the strategy signals produces less than 100 trades, rendering your strategy results inconclusive.
█ THE SOLUTION
In order to be confident that we have a robust strategy we must test it across all market regimes and we must have over 100 trades. To do this effectively, researchers can use the Portfolio Backtesting Engine (PBTE).
By testing a strategy across a carefully selected portfolio of securities, researchers can now gather 5k-20k historical bars per security! Currently, the PTBE allows up to 5 securities, which amounts to 25k-100k historical bars.
█ HOW TO USE
1 — Add the indicator to your chart.
• Confirm inputs. These will be the most important initial values which you can change later by clicking the gear icon ⚙ and opening up the settings of the indicator.
2 — Select a portfolio.
• You will want to spend some time carefully selecting a portfolio of securities.
• Each security should be uncorrelated.
• The entire portfolio should contain a mix of different market regimes.
You should understand that strategies generally take advantage of one particular type of market regime. (trending, ranging, low/high volatility)
For example, the default RSI strategy is typically advantageous during ranging markets, whereas a typical moving average crossover strategy is advantageous in trending markets.
If you were to use the standard RSI strategy during a trending market, you might be selling when you should be buying.
Similarily, if you use an SMA crossover during a ranging market, you will find that the MA's may produce many false signals.
Even if you build a strategy that is designed to be used only in a trending market, it is still best to select a portfolio of all market regimes
as you will be able to test how your strategy will perform when the market does something unexpected.
3 — Test a built-in strategy or add your own.
• Navigate to gear icon ⚙ (settings) of strategy.
• Choose your options.
• Select a Main Entry Strat and Alternate Entry Strat .
• If you want to add your own strategy, you will need to modify the source code and follow the built-in example.
• You will only need to generate (buy 1 / sell -1/ neutral 0) signals.
• Select a Filter , by default these are all off.
• Select an Entry Stop - This will be your stop loss placed at the trade entry.
• Select Pyamiding - This will allow you to stack positions. By default this is off.
• Select Hard Exits - You can also think of these as Take Profits.
• Let the strategy run and take note of the display tables results.
• Portfolio - Shows each security.
• The strategy runs on each asset in your portfolio.
• The initial capital is equally distributed across each security.
So if you have 5 securities and a starting capital of 100,000$ then each security will run the strategy starting with 20,000$
The total row will aggregate the results on a bar by bar basis showing the total results of your initial capital.
• Net Profit (NP) - Shows profitability.
• Number of Trades (#T) - Shows # of trades taken during backtesting period.
• Typically will want to see this number greater than 100 on the "Total" row.
• Average Trade Length (ATL) - Shows average # of days in a trade.
• Maximum Drawdown (MD ) - Max peak-to-valley equity drawdown during backtesting period.
• This number defines the minimum amount of capital required to trade the system.
• Typically, this shouldn’t be lower than 34% and we will want to allow for at least 50% beyond this number.
• Maximum Loss (ML) - Shows largest loss experienced on a per-trade basis.
• Normally, don’t want to exceed more than 1-2 % of equity.
• Maximum Drawdown Duration (MDD) - The longest duration of a drawdown in equity prior to a new equity peak.
• This number is important to help us psychologically understand how long we can expect to wait for a new peak in account equity.
• Maximum Consecutive Losses (MCL) - The max consecutive losses endured throughout the backtesting period.
• Another important metric for trader psychology, this will help you understand how many losses you should be prepared to handle.
• Profit to Maximum Drawdown (P:MD) - A ratio for the average profit to the maximum drawdown.
• The higher the ratio is, the better. Large profits and small losses contribute to a good PMD.
• This metric allows us to examine the profit with respect to risk.
• Profit Loss Ratio (P:L) - Average profit over the average loss.
• Typically this number should be higher in trend following systems.
• Mean reversion systems show lower values, but compensate with a better win %.
• Percent Winners (% W) - The percentage of winning trades.
• Trend systems will usually have lower win percentages, since statistically the market is only trending roughly 30% of the time.
• Mean reversion systems typically should have a high % W.
• Time Percentage (Time %) - The amount of time that the system has an open position.
• The more time you are in the market, the more you are exposed to market risk, not to mention you could be using that money for something else right?
• Return on Investment (ROI) - Your Net Profit over your initial investment, represented as a percentage.
• You want this number to be positive and high.
• Open Profit (OP) - If the strategy has any open positions, the floating value will be represented here.
• Trading Days (TD) - An important metric showing how many days the strategy was active.
• This is good to know and will be valuable in understanding how long you will need to run this strategy in order to achieve results.
█ FEATURES
These are additional features that extend the original `BTE` features.
- Portfolio backtesting.
- Color coded performance results.
- Circuit Breakers that will stop trading.
- Position reversals on exit. (Simulating the function of always in the market. Similar to strategy.entry functionality)
- Whipsaw Filter
- Moving Average Filter
- Minimum Change Filter
- % Gain Equity Exit
- Popular strategies, (MACD, MA cross, supertrend)
Below are features that were excluded from the original `BTE`
- 2 stage in-trade stops with kick-in rules (This was a subjective decision to remove. I found it to be complex and thwarted my use of the `BTE` for some time.)
- Simple conversion from Study to Strategy modes. (Not possible with multiple securities)
- Coupling with your own external indicator (Not really practical to use with multiple securities, but could be used if signals were generated based on some indicator which was not based on the current chart)
- Use of the Data Window to show detailed bar by bar trade information and global statistics.
- Post Exit Analysis.
- Plotting of reminders and generation of alerts on in-trade events.
- Alerts (These may be added in the future by request when I find the time.)
█ THANKS
The whole PineCoders team for all their shared knowledge and original publication of the BTE and Richard Weismann for his ideas on building robust strategies.
═════════════════════════════════════════════════════════════════════════
STRATEGY TESTER ENGINE - ON CHART DISPLAY - PLUG & PLAYSo i had this idea while ago when @alexgrover published a script and dropped a nugget in between which replicates the result of strategy tester on chart as an indicator.
So it seemed fair to use one of his strategy to display the results.
This strategy tester can now be used in replay mode like an indicator and you can see what happen at a particular section of the chart which was is not possible in default strategy tester results of TV.
Please read how each result is calculated so you will know what you are using.
This engine shows most common results of strategy tester in a single screen, which are as follows:
1. Starting Capital
2. Current Profit Percentage
3. Max Profit Percentage
4. Gross Profit
5. Gross Loss
6. Total Closed Trades
7. Total Trades Won
8. Total Trades Lost
9. Percentage Profitable
10. Profit Factor
11. Current Drawdown
12. Max Drawdown
13. Liquidation
So elaborating on what is what:
1. Starting Capital - This stays 0, which signifies your starting balance as 0%. It is set to 0 so we can compare all other results without any change in variables. If set to 100, then all the results will be increased by 100. Some users might find it useful to set it to 100, then they can change code on line 41 from to and it should show starting balance as 100%.
2. Current Profit Percentage - This shows your current profit adjusted to current price of the candle, not like TV which shows after candle is close. There is a comment on the line 38 which can be removed and your can see unrealized profit as well in this section. Please note that this will affect Draw-down calculations later in this section.
3. Max Profit Percentage - This will show you your max profit achieved during your strategy run, which was not possible yet to see via strategy tester. So, now you can see how much profit was achieved by your strategy during the run and you can compare it with chart to see what happens during bull-run or bear-run, so you can further optimize your strategy to best suit your desired results.
4. Gross Profit - This is total percentage of profit your strategy achieved during entire run as if you never had any losses.
5. Gross Loss - This is total percentage of loss your strategy achieved during entire run as if you never had any profits.
6. Total Closed Trades - This is total number of trades that your strategy has executed so far.
7. Total Trades Won - This is the total number of trades that your strategy has executed that resulted in positive increase in equity.
8. Totals Trades Lost - This is the total number of trades that your strategy has executed that resulted in decrease in equity.
9. Percentage Profitable - This is the ratio between your current total winning trades divided by total closed trades, and finally multiplied by 100 to get percentage results.
10. Profit Factor - This is the ratio between Gross Profit and Gross Loss, so if profit factor is 2, then it indicates that you are set to gain 2 times per your risk per trade on average when total trades are executed.
11. Current Drawdown - This is important section and i want you to read this carefully. Here draw-down is calculated very differently than what TV shows. TV has access to candle data and calculates draw-down accordingly as per number of trades closed, but here DD is calculated as difference between max profit achieved and current profit. This way you can see how much percentage you are down from max peak of equity at current point in time. You can do back-test of the data and see when peak was achieved and how much your strategy did a draw-down candle by candle.
12. Max Drawdown - This is also calculated differently same as above, current draw-down. Here you can see how much max DD your strategy did from a peak profit of equity. This is not set as max profit percentage is set because you will see single number on display, while idea is to keep it custom. I will explain.
So lets say, your max DD on TV is 30%. Here this is of no use to see Max DD , as some people might want to see what was there max DD 1000 candles back or 10 candle back. So this will show you your max DD from the data you select. TV shows 25000 candle data in a chart if you go back, you can set the counter to 24999 and it will show you max DD as shown on TV, but if you want custom section to show max DD , it is now possible which was not possible before.
Also, now let's say you put DD as 24999 and open a chart of an asset that was listed 1 week ago, now on 1H chart max DD will never show up until you reach 24999 candle in data history, but with this you can now enter a manual number and see the data.
13. Liquidation - This is an interesting feature, so now when your equity balance is less than 0 and your draw-down goes to -100, it will show you where and at what point in time you got liquidated by adding a red background color in the entire section. This is the most fun part of this script, while you can only see max DD on TV.
------------------------------------------------------------------------------
How to Use -
1 word, plug and play. Yes. Actual codes start from line 33.
select overlay=false or remove it from the title in your strategy on first line,
Just copy the codes from line 33 to 103,
then go to end section of your strategy and paste the entire code from line 33 to line 103,
see if you have any duplicate variable, edit it,
Add to chart.
What you see above is very contracted view. Here is how it looks when zoomed in.
imgur.com
----------------------------------------------------------------------------------
Feel free to edit and share and use. If you use it in your scripts, drop me tag. Cheers.
Step-Based Trailing Stop-Loss IndicatorThis indicator is built for momentum traders who want to maximize winning trades and minimize losses through a smart, step-based trailing stop-loss system. Instead of using a fixed Take Profit, this tool dynamically protects profits once the trade reaches a favorable RR (Risk-to-Reward) level.
How It Works:
Manual Entry Input
You enter your Entry Price and select Buy/Sell in the settings.
This flexibility allows backtesting or live trade tracking.
Initial Setup
Default SL: 50 ticks(Tested on us30,but works on any pair you just need to adjust SL)
TP for reference: 4R — can be used for benchmarking, but we don't limit profits with a hard TP.
Trailing Logic
Once price reaches 3R in profit:
The SL begins trailing.
It starts at 2R, keeping a 1R cushion behind the max profit.
For every 0.5R gain, SL also moves up by 0.5R:
Example: At 3.5R → SL is at 2.5R
At 5.0R → SL is at 4.0R
This trailing continues until the SL is hit or the trend exhausts.
Chart Features
🟧 Entry Line
🔴 Initial SL
🟢 Reference TP (4R, optional)
🟣 Dynamic Trailing SL
🏷️ Labels for Entry & SL levels
EMA 34 Crossover with Break Even Stop LossEMA 34 Crossover with Break Even Stop Loss Strategy
This trading strategy is based on the 34-period Exponential Moving Average (EMA) and aims to enter long positions when the price crosses above the EMA 34. The strategy is designed to manage risk effectively with a dynamic stop loss and take-profit mechanism.
Key Features:
EMA 34 Crossover:
The strategy generates a long entry signal when the closing price of the current bar crosses above the 34-period EMA, with the condition that the previous closing price was below the EMA. This crossover indicates a potential upward trend.
Risk Management:
Upon entering a trade, the strategy sets a stop loss at the low of the previous bar. This helps in controlling the downside risk.
A take profit level is set at a 10:1 risk-to-reward ratio, meaning the potential profit is ten times the amount risked on the trade.
Break-even Stop Loss:
As the price moves in favor of the trade and reaches a 3:1 risk-to-reward ratio, the strategy moves the stop loss to the entry price (break-even). This ensures that no loss will be incurred if the market reverses, effectively protecting profits.
Exit Conditions:
The strategy exits the trade when either the stop loss is hit (if the price drops below the stop loss level) or the take profit target is reached (if the price rises to the take profit level).
If the price reaches the break-even level (entry price), the stop loss is adjusted to lock in profits and prevent any loss.
Visualization:
The stop loss and take profit levels are plotted on the chart for easy visualization, helping traders track the status of their trade.
Trade Management Summary:
Long Entry: When price crosses above the 34-period EMA.
Stop Loss: Set to the low of the previous candle.
Take Profit: Set to a 10:1 risk-to-reward ratio.
Break-even: Stop loss is moved to entry price when a 3:1 risk-to-reward ratio is reached.
Exit: The trade is closed either when the stop loss or take profit levels are hit.
This strategy is designed to minimize losses by employing a dynamic stop loss and to maximize gains by setting a favorable risk-to-reward ratio, making it suitable for traders who prefer a structured, automated approach to risk management and trend-following.
Momentum Volume Divergence (MVD) EnhancedMomentum Volume Divergence (MVD) Enhanced is a powerful indicator that detects price-momentum divergences and momentum suppression for reversal trading. Optimized for XRP on 1D charts, it features dynamic lookbacks, ATR-adjusted thresholds, and SMA confirmation. Signals include strong divergences (triangles) and suppression warnings (crosses). Includes a detailed user guide—try it out and share your feedback!
Setup: Add to XRP 1D chart with defaults (mom_length_base=8, vol_length_base=10). Signals: Red triangle (sell), Green triangle (buy), Orange cross (bear warning), Yellow cross (bull warning). Confirm with 5-day SMA crossovers. See full guide for details!
Disclaimer: This indicator is for educational purposes only, not financial advice. Trading involves risk—use at your discretion.
Momentum Volume Divergence (MVD) Enhanced Indicator User Guide
Version: Pine Script v6
Designed for: TradingView
Recommended Use: XRP on 1-day (1D) chart
Date: March 18, 2025
Author: Herschel with assistance from Grok 3 (xAI)
Overview
The Momentum Volume Divergence (MVD) Enhanced indicator is a powerful tool for identifying price-momentum divergences and momentum suppression patterns on XRP’s 1-day (1D) chart. Plotted below the price chart, it provides clear visual signals to help traders spot potential reversals and trend shifts.
Purpose
Detect divergences between price and momentum for buy/sell opportunities.
Highlight momentum suppression as warnings of fading trends.
Offer actionable trading signals with intuitive markers.
Indicator Components
Main Plot
Volume-Weighted Momentum (vw_mom): Blue line showing momentum adjusted by volume.
Above 0 = bullish momentum.
Below 0 = bearish momentum.
Zero Line: Gray dashed line at 0, separating bullish/bearish zones.
Key Signals
Strong Bearish Divergence:
Marker: Red triangle at the top.
Meaning: Price makes a higher high, but momentum weakens, confirmed by a drop below the 5-day SMA.
Action: Potential sell/short signal.
Strong Bullish Divergence:
Marker: Green triangle at the bottom.
Meaning: Price makes a lower low, but momentum strengthens, confirmed by a rise above the 5-day SMA.
Action: Potential buy/long signal.
Bearish Suppression:
Marker: Orange cross at the top + red background.
Meaning: Strong bullish momentum with low volume in a volume downtrend, suggesting fading strength.
Action: Warning to avoid longs or exit early.
Bullish Suppression:
Marker: Yellow cross at the bottom + green background.
Meaning: Strong bearish momentum with low volume in a volume uptrend, suggesting fading weakness.
Action: Warning to avoid shorts or exit early.
Debug Plots (Optional)
Volume Ratio: Gray line (volume vs. its MA) vs. yellow line (threshold).
Momentum Threshold: Purple lines (positive/negative momentum cutoffs).
Smoothed Momentum: Orange line (raw momentum).
Confirmation SMA: Purple line (price trend confirmation).
Labels
Text labels (e.g., "Bear Div," "Bull Supp") mark detected patterns.
How to Use the Indicator
Step-by-Step Trading Process
1. Monitor the Chart
Load your XRP 1D chart with the indicator applied.
Observe the blue vw_mom line and signal markers.
2. Spot a Signal
Primary Signals: Look for red triangles (strong_bear) or green triangles (strong_bull).
Warnings: Note orange crosses (suppression_bear) or yellow crosses (suppression_bull).
3. Confirm the Signal
For Strong Bullish Divergence (Buy):
Green triangle appears.
Price closes above the 5-day SMA (purple line) and a recent swing high.
Optional: Volume ratio (gray line) exceeds the threshold (yellow line).
For Strong Bearish Divergence (Sell):
Red triangle appears.
Price closes below the 5-day SMA and a recent swing low.
Optional: Volume ratio (gray line) falls below the threshold (yellow line).
4. Enter the Trade
Long:
Buy at the close of the signal bar.
Stop loss: Below the recent swing low or 2 × ATR(14) below entry.
Short:
Sell/short at the close of the signal bar.
Stop loss: Above the recent swing high or 2 × ATR(14) above entry.
5. Manage the Trade
Take Profit:
Aim for a 2:1 or 3:1 risk-reward ratio (e.g., risk $0.05, target $0.10-$0.15).
Or exit when an opposite suppression signal appears (e.g., orange cross for longs).
Trailing Stop:
Move stop to breakeven after a 1:1 RR move.
Trail using the 5-day SMA or 2 × ATR(14).
Early Exit:
Exit if a suppression signal appears against your position (e.g., suppression_bull while short).
6. Filter Out Noise
Avoid trades if a suppression signal precedes a divergence within 2-3 days.
Optional: Add a 50-day SMA on the price chart:
Longs only if price > 50-SMA.
Shorts only if price < 50-SMA.
Example Trades (XRP 1D)
Bullish Trade
Signal: Green triangle (strong_bull) at $0.55.
Confirmation: Price closes above 5-SMA and $0.57 high.
Entry: Buy at $0.58.
Stop Loss: $0.53 (recent low).
Take Profit: $0.63 (2:1 RR) or exit on suppression_bear.
Outcome: Price hits $0.64, exit at $0.63 for profit.
Bearish Trade
Signal: Red triangle (strong_bear) at $0.70.
Confirmation: Price closes below 5-SMA and $0.68 low.
Entry: Short at $0.67.
Stop Loss: $0.71 (recent high).
Take Profit: $0.62 (2:1 RR) or exit on suppression_bull.
Outcome: Price drops to $0.61, exit at $0.62 for profit.
Tips for Success
Combine with Price Levels:
Use support/resistance zones (e.g., weekly pivots) to confirm entries.
Monitor Volume:
Rising volume (gray line above yellow) strengthens signals.
Adjust Sensitivity:
Too many signals? Increase div_strength_threshold to 0.7.
Too few signals? Decrease to 0.3.
Backtest:
Review 20-30 past signals on XRP 1D to assess performance.
Avoid Choppy Markets:
Skip signals during low volatility (tight price ranges).
Troubleshooting
No Signals:
Lower div_strength_threshold to 0.3 or mom_threshold_base to 0.2.
Check if XRP’s volatility is unusually low.
False Signals:
Increase sma_confirm_length to 7 or add a 50-SMA filter.
Indicator Not Loading:
Ensure the script compiles without errors.
Customization (Optional)
Change Colors: Edit color.* values (e.g., color.red to color.purple).
Add Alerts: Use TradingView’s alert menu for "Strong Bearish Divergence Confirmed," etc.
Test Other Assets: Experiment with BTC or ETH, adjusting inputs as needed.
Disclaimer
This indicator is for educational purposes only and not financial advice. Trading involves risk, and past performance does not guarantee future results. Use at your own discretion.
Setup: Use on XRP 1D with defaults (mom_length_base=8, vol_length_base=10). Signals: Red triangle (sell), Green triangle (buy), Orange cross (bear warning), Yellow cross (bull warning). Confirm with 5-day SMA cross. Stop: 2x ATR(14). Profit: 2:1 RR or suppression exit. Full guide available separately!
AO Smart Scalper – 5M Dynamic SL Edition📈 AO Signals with Fixed and Dynamic SL – Optimized for 5-Minute Charts 📉
This indicator is built for 5-minute timeframe trading, combining powerful momentum signals from the Awesome Oscillator (AO) with both Fixed and Dynamic Stop Loss (SL) levels to enhance trade management and risk control.
✅ Buy/Sell Signals:
The indicator generates clear BUY and SELL signals based on the AO crossing above or below the zero line, helping traders capture momentum shifts early.
🛑 Fixed Stop Loss:
Each trade signal comes with a Fixed SL, calculated based on the high (for shorts) or low (for longs) of the previous candle, with a customizable percentage offset. This SL is plotted with a red line, providing a clear initial risk level.
⚡ Dynamic Stop Loss: Continuous Presence, Strategic Use:
A secondary Dynamic SL line is plotted, which is continuously present on the chart. This dynamic level responds to market conditions and can serve as a trailing stop or key decision point.
💡 Recommended Use: It is recommended to actively start using the Dynamic SL once the trade has moved into profit. This allows protecting obtained profits and minimizing the risk of losses in case of a market reversal.
🛡️ Enhanced Dynamic Stop-Loss Strategy:
🔒 Initial Protection: Utilize the Fixed SL as the initial stop-loss, placed below relevant lows (for longs) or above relevant highs (for shorts), or as provided by the fixed SL indicator.
🛤️ Dynamic Tracking:
🟢 Long Trades: Once in profit, the Dynamic SL will dynamically adjust, moving upwards as higher lows are formed, effectively trailing the price and securing profits.
🔴 Short Trades: Conversely, in short trades, once in profit, the Dynamic SL will move downwards as lower highs are formed, protecting gains.
🔄 Alternatively the dynamic stop loss will follow the dynamic SL line provided by the indicator.
🚪 Exiting Trades: When the price crosses below the Dynamic SL line in a LONG trade, or above it in a SHORT trade, the recommended action is to exit the trade.
↩️ Re-entry Consideration: You may consider re-entering only if the price clearly returns above the Dynamic SL (for longs) or below it (for shorts).
⚠️ IMPORTANT - 5-Minute Strategy Guidance ⏱️
This tool is specifically optimized for the 5-minute timeframe. This approach helps filter out weak setups and maintain discipline in volatile market conditions.
✨ Additional Features:
👁️ Visual and editable SL levels
📊 200-period SMA for trend context
💻 Simple and effective interface for intraday trading setups
🎯 Ideal for traders seeking a clean, rule-based system that combines momentum entry signals with layered stop loss protection.
🔑 Key Changes:
It was emphasized that the Dynamic SL is always present, but its active use is recommended once the trade is in profit.
It was clarified the use of the Fixed SL, giving the option to use the one provided by the indicator, or to place it according to the price action.
Mile Runner - Swing Trade LONGMile Runner - Swing Trade LONG Indicator - By @jerolourenco
Overview
The Mile Runner - Swing Trade LONG indicator is designed for swing traders who focus on LONG positions in stocks, BDRs (Brazilian Depositary Receipts), and ETFs. It provides clear entry signals, stop loss, and take profit levels, helping traders identify optimal buying opportunities with a robust set of technical filters. The indicator is optimized for daily candlestick charts and combines multiple technical analysis tools to ensure high-probability trades.
Key Features
Entry Signals: Visualized as green triangles below the price bars, indicating a potential LONG entry.
Stop Loss and Take Profit Levels: Automatically plotted on the chart for easy reference.
Stop Loss: Based on the most recent pivot low (support level).
Take Profit: Calculated using a Fibonacci-based projection from the entry price to the stop loss.
Trend and Momentum Filters: Ensures trades align with the prevailing trend and have sufficient momentum.
Volume and Volatility Confirmation: Verifies market interest and price movement potential.
How It Works
The indicator uses a combination of technical tools to filter and confirm trade setups:
Exponential Moving Averages (EMAs):
A short EMA (default: 9 periods) and a long EMA (default: 21 periods) identify the trend.
A bullish crossover (EMA9 crosses above EMA21) signals a potential upward trend.
Money Flow Index (MFI):
Confirms buying pressure when MFI > 50.
Average True Range (ATR):
Ensures sufficient volatility by checking if ATR exceeds its 20-period moving average.
Volume:
Confirms market interest when volume exceeds its 20-period moving average.
Pivot Lows:
Identifies recent support levels (pivot lows) to set the stop loss.
Ensures the pivot low is recent (within the last 10 bars by default).
Additional Trend Filter:
Confirms the long EMA is rising, reinforcing the bullish trend.
Inputs and Customization
The indicator is highly customizable, allowing traders to tailor it to their strategies:
EMA Periods: Adjust the short and long EMA lengths.
ATR and MFI Periods: Modify lookback periods for volatility and momentum.
Pivot Lookback: Control the sensitivity of pivot low detection.
Fibonacci Level: Adjust the Fibonacci retracement level for take profit.
Take Profit Multiplier: Fine-tune the aggressiveness of the take profit target.
Max Pivot Age: Set the maximum bars since the last pivot low for relevance.
Usage Instructions
Apply the Indicator:
Add the "Mile Runner - Swing Trade LONG" indicator to your TradingView chart.
Best used on daily charts for swing trading.
Look for Entry Signals:
A green triangle below the price bar signals a potential LONG entry.
Set Stop Loss and Take Profit:
Stop Loss: Red dashed line indicating the stop loss level.
Take Profit: Purple dashed line showing the take profit level.
Monitor the Trade:
The entry price is marked with a green dashed line for reference.
Adjust trade management based on the plotted levels.
Set Alerts:
Use the built-in alert condition to get notified of new LONG entry signals.
Important Notes
For LONG Positions Only : Designed exclusively for swing trading LONG positions.
Timeframe: Optimized for daily charts but can be tested on other timeframes.
Asset Types: Works best with stocks, BDRs, and ETFs.
Risk Management: Always align stop loss and take profit levels with your risk tolerance.
Why Use Mile Runner?
The Mile Runner indicator simplifies swing trading by integrating trend, momentum, volume, and volatility filters into one user-friendly tool. It helps traders:
Identify high-probability entry points.
Establish clear stop loss and take profit levels.
Avoid low-volatility or low-volume markets.
Focus on assets with strong buying pressure and recent support.
By following its signals and levels, traders can make informed decisions and enhance their swing trading performance. Customize the inputs and test it on your favorite assets—happy trading!
Cash And Carry Arbitrage BTC Compare Month 6 by SeoNo1Detailed Explanation of the BTC Cash and Carry Arbitrage Script
Script Title: BTC Cash And Carry Arbitrage Month 6 by SeoNo1
Short Title: BTC C&C ABT Month 6
Version: Pine Script v5
Overlay: True (The indicators are plotted directly on the price chart)
Purpose of the Script
This script is designed to help traders analyze and track arbitrage opportunities between the spot market and futures market for Bitcoin (BTC). Specifically, it calculates the spread and Annual Percentage Yield (APY) from a cash-and-carry arbitrage strategy until a specific expiry date (in this case, June 27, 2025).
The strategy helps identify profitable opportunities when the futures price of BTC is higher than the spot price. Traders can then buy BTC in the spot market and short BTC futures contracts to lock in a risk-free profit.
1. Input Settings
Spot Symbol: The real-time BTC spot price from Binance (BTCUSDT).
Futures Symbol: The BTC futures contract that expires in June 2025 (BTCUSDM2025).
Expiry Date: The expiration date of the futures contract, set to June 27, 2025.
These inputs allow users to adjust the symbols or expiry date according to their trading needs.
2. Price Data Retrieval
Spot Price: Fetches the latest closing price of BTC from the spot market.
Futures Price: Fetches the latest closing price of BTC futures.
Spread: The difference between the futures price and the spot price (futures_price - spot_price).
The spread indicates how much higher (or lower) the futures price is compared to the spot market.
3. Time to Maturity (TTM) and Annual Percentage Yield (APY) Calculation
Current Date: Gets the current timestamp.
Time to Maturity (TTM): The number of days left until the futures contract expires.
APY Calculation:
Formula:
APY = ( Spread / Spot Price ) x ( 365 / TTM Days ) x 100
This represents the annualized return from holding a cash-and-carry arbitrage position if the trader buys BTC at the spot price and sells BTC futures.
4. Display Information Table on the Chart
A table is created on the chart's top-right corner showing the following data:
Metric: Labels such as Spread and APY
Value: Displays the calculated spread and APY
The table automatically updates at the latest bar to display the most recent data.
5. Alert Condition
This sets an alert condition that triggers every time the script runs.
In practice, users can modify this alert to trigger based on specific conditions (e.g., APY exceeds a threshold).
6. Plotting the APY and Spread
APY Plot: Displays the annualized yield as a blue line on the chart.
Spread Plot: Visualizes the futures-spot spread as a red line.
This helps traders quickly identify arbitrage opportunities when the spread or APY reaches desirable levels.
How to Use the Script
Monitor Arbitrage Opportunities:
A positive spread indicates a potential cash-and-carry arbitrage opportunity.
The larger the APY, the more profitable the arbitrage opportunity could be.
Timing Trades:
Execute a buy on the BTC spot market and simultaneously sell BTC futures when the APY is attractive.
Close both positions upon futures contract expiry to realize profits.
Risk Management:
Ensure you have sufficient margin to hold both positions until expiry.
Monitor funding rates and volatility, which could affect returns.
Conclusion
This script is an essential tool for traders looking to exploit price discrepancies between the BTC spot market and futures market through a cash-and-carry arbitrage strategy. It provides real-time data on spreads, annualized returns (APY), and visual alerts, helping traders make informed decisions and maximize their profit potential.
Enhanced Bollinger Bands Strategy with SL/TP// Title: Enhanced Bollinger Bands Strategy with SL/TP
// Description:
// This strategy is based on the classic Bollinger Bands indicator and incorporates Stop Loss (SL) and Take Profit (TP) levels for automated trading. It identifies potential long and short entry points based on price crossing the lower and upper Bollinger Bands, respectively. The strategy allows users to customize several parameters to suit different market conditions and risk tolerances.
// Key Features:
// * **Bollinger Bands:** Uses Simple Moving Average (SMA) as the basis and calculates upper and lower bands based on a user-defined standard deviation multiplier.
// * **Customizable Parameters:** Offers extensive customization, including SMA length, standard deviation multiplier, Stop Loss (SL) in pips, and Take Profit (TP) in pips.
// * **Long/Short Position Control:** Allows users to independently enable or disable long and short positions.
// * **Stop Loss and Take Profit:** Implements Stop Loss and Take Profit levels based on pip values to manage risk and secure profits. Entry prices are set to the band levels on signals.
// * **Visualizations:** Provides options to display Bollinger Bands and entry signals on the chart for easy analysis.
// Strategy Logic:
// 1. **Bollinger Bands Calculation:** The strategy calculates the Bollinger Bands using the specified SMA length and standard deviation multiplier.
// 2. **Entry Conditions:**
// * **Long Entry:** Enters a long position when the closing price crosses above the lower Bollinger Band and the `Enable Long Positions` setting is enabled.
// * **Short Entry:** Enters a short position when the closing price crosses below the upper Bollinger Band and the `Enable Short Positions` setting is enabled.
// 3. **Exit Conditions:**
// * **Stop Loss:** Exits the position if the price reaches the Stop Loss level, calculated based on the input `Stop Loss (Pips)`.
// * **Take Profit:** Exits the position if the price reaches the Take Profit level, calculated based on the input `Take Profit (Pips)`.
// Input Parameters:
// * **SMA Length (length):** The length of the Simple Moving Average used to calculate the Bollinger Bands (default: 20).
// * **Standard Deviation Multiplier (mult):** The multiplier applied to the standard deviation to determine the width of the Bollinger Bands (default: 2.0).
// * **Enable Long Positions (enableLong):** A boolean value to enable or disable long positions (default: true).
// * **Enable Short Positions (enableShort):** A boolean value to enable or disable short positions (default: true).
// * **Pip Value (pipValue):** The value of a pip for the traded instrument. This is crucial for accurate Stop Loss and Take Profit calculations (default: 0.0001 for most currency pairs). **Important: Adjust this value to match the specific instrument you are trading.**
// * **Stop Loss (Pips) (slPips):** The Stop Loss level in pips (default: 10).
// * **Take Profit (Pips) (tpPips):** The Take Profit level in pips (default: 20).
// * **Show Bollinger Bands (showBands):** A boolean value to show or hide the Bollinger Bands on the chart (default: true).
// * **Show Entry Signals (showSignals):** A boolean value to show or hide entry signals on the chart (default: true).
// How to Use:
// 1. Add the strategy to your TradingView chart.
// 2. Adjust the input parameters to optimize the strategy for your chosen instrument and timeframe. Pay close attention to the `Pip Value`.
// 3. Backtest the strategy over different periods to evaluate its performance.
// 4. Use the `Enable Long Positions` and `Enable Short Positions` settings to customize the strategy for specific market conditions (e.g., only long positions in an uptrend).
// Important Notes and Disclaimers:
// * **Backtesting Results:** Past performance is not indicative of future results. Backtesting results can be affected by various factors, including market volatility, slippage, and transaction costs.
// * **Risk Management:** This strategy is provided for informational and educational purposes only and should not be considered financial advice. Always use proper risk management techniques when trading. Adjust Stop Loss and Take Profit levels according to your risk tolerance.
// * **Slippage:** The strategy takes into account slippage by specifying a slippage parameter on the `strategy` declaration. However, real-world slippage may vary.
// * **Market Conditions:** The performance of this strategy can vary significantly depending on market conditions. It may perform well in trending markets but poorly in ranging or choppy markets.
// * **Pip Value Accuracy:** **Ensure the `Pip Value` is correctly set for the specific instrument you are trading. Incorrect pip value will result in incorrect stop loss and take profit placement.** This is critical.
// * **Broker Compatibility:** The strategy's performance may vary depending on your broker's execution policies and fees.
// * **Disclaimer:** I am not a financial advisor, and this script is not financial advice. Use this strategy at your own risk. I am not responsible for any losses incurred while using this strategy.
Forex Hammer and Hanging Man StrategyThe strategy is based on two key candlestick chart patterns: Hammer and Hanging Man. These chart patterns are widely used in technical analysis to identify potential reversal points in the market. Their relevance in the Forex market, known for its high liquidity and volatile price movements, is particularly pronounced. Both patterns provide insights into market sentiment and trader psychology, which are critical in currency trading, where short-term volatility plays a significant role.
1. Hammer:
• Typically occurs after a downtrend.
• Signals a potential trend reversal to the upside.
• A Hammer has:
• A small body (close and open are close to each other).
• A long lower shadow, at least twice as long as the body.
• No or a very short upper shadow.
2. Hanging Man:
• Typically occurs after an uptrend.
• Signals a potential reversal to the downside.
• A Hanging Man has:
• A small body, similar to the Hammer.
• A long lower shadow, at least twice as long as the body.
• A small or no upper shadow.
These patterns are a manifestation of market psychology, specifically the tug-of-war between buyers and sellers. The Hammer reflects a situation where sellers tried to push the price down but were overpowered by buyers, while the Hanging Man shows that buyers failed to maintain the upward movement, and sellers could take control.
Relevance of Chart Patterns in Forex
In the Forex market, chart patterns are vital tools because they offer insights into price action and market sentiment. Since Forex trading often involves large volumes of trades, chart patterns like the Hammer and Hanging Man are important for recognizing potential shifts in market momentum. These patterns are a part of technical analysis, which aims to forecast future price movements based on historical data, relying on the psychology of market participants.
Scientific Literature on the Relevance of Candlestick Patterns
1. Behavioral Finance and Candlestick Patterns:
Research on behavioral finance supports the idea that candlestick patterns, such as the Hammer and Hanging Man, are relevant because they reflect shifts in trader psychology and sentiment. According to Lo, Mamaysky, and Wang (2000), patterns like these could be seen as representations of collective investor behavior, influenced by overreaction, optimism, or pessimism, and can often signal reversals in market trends.
2. Statistical Validation of Chart Patterns:
Studies by Brock, Lakonishok, and LeBaron (1992) explored the profitability of technical analysis strategies, including candlestick patterns, and found evidence that certain patterns, such as the Hammer, can have predictive value in financial markets. While their study primarily focused on stock markets, their findings are generally applicable to the Forex market as well.
3. Market Efficiency and Candlestick Patterns:
The efficient market hypothesis (EMH) posits that all available information is reflected in asset prices, but some studies suggest that markets may not always be perfectly efficient, allowing for profitable exploitation of certain chart patterns. For instance, Jegadeesh and Titman (1993) found that momentum strategies, which often rely on price patterns and trends, could generate significant returns, suggesting that patterns like the Hammer or Hanging Man may provide a slight edge, particularly in short-term Forex trading.
Testing the Strategy in Forex Using the Provided Script
The provided script allows traders to test and evaluate the Hammer and Hanging Man patterns in Forex trading by entering positions when these patterns appear and holding the position for a specified number of periods. This strategy can be tested to assess its performance across different currency pairs and timeframes.
1. Testing on Different Timeframes:
• The effectiveness of candlestick patterns can vary across different timeframes, as market dynamics change with the level of detail in each timeframe. Shorter timeframes may provide more frequent signals, but with higher noise, while longer timeframes may produce more reliable signals, but with fewer opportunities. This multi-timeframe analysis could be an area to explore to enhance the strategy’s robustness.
2. Exit Strategies:
• The script incorporates an exit strategy where positions are closed after holding them for a specified number of periods. This is useful for testing how long the reversal patterns typically take to play out and when the optimal exit occurs for maximum profitability. It can also help to adjust the exit logic based on real-time market behavior.
Conclusion
The Hammer and Hanging Man patterns are widely recognized in technical analysis as potential reversal signals, and their application in Forex trading is valuable due to the market’s high volatility and liquidity. This strategy leverages these candlestick patterns to enter and exit trades based on shifts in market sentiment and psychology. Testing and optimization, as offered by the script, can help refine the strategy and improve its effectiveness.
For further refinement, it could be valuable to consider combining candlestick patterns with other technical indicators or using multi-timeframe analysis to confirm patterns and increase the probability of successful trades.
References:
• Lo, A. W., Mamaysky, H., & Wang, J. (2000). Foundations of Technical Analysis: Computational Algorithms, Statistical Inference, and Empirical Implementation. The Journal of Finance, 55(4), 1705-1770.
• Brock, W., Lakonishok, J., & LeBaron, B. (1992). Simple Technical Trading Rules and the Stochastic Properties of Stock Returns. The Journal of Finance, 47(5), 1731-1764.
• Jegadeesh, N., & Titman, S. (1993). Returns to Buying Winners and Selling Losers: Implications for Stock Market Efficiency. The Journal of Finance, 48(1), 65-91.
This provides a theoretical basis for the use of candlestick patterns in trading, supported by academic literature and research on market psychology and efficiency.
Dynamic Support and Resistance Pivot Strategy The Dynamic Support and Resistance Pivot Strategy is a flexible and adaptive tool designed to identify short-term support and resistance levels using the concept of price pivots.
### Key Elements of the Strategy
1. Pivot points as support and resistance levels
Pivots are significant turning points on the price chart, often marking local highs and lows where the price has reversed direction. A pivot high occurs when the price forms a local peak, while a pivot low occurs when the price forms a local trough. When a new pivot high is formed, it creates a resistance level. Conversely, when a new pivot low is formed, it creates a support level.
The strategy continuously updates these levels as new pivots are detected, ensuring they remain relevant to the current market conditions. By identifying these price levels, the strategy dynamically adjusts to market conditions, allowing it to adapt to both trending and ranging markets, since it has a long target and can perform reversal operations.
2. Entry Criteria
- Buy (Long): A long position is triggered when the price is near the support level and then crosses it from below to above. This suggests that the price has found support and may start moving upwards.
- Sell (Short): A short position is triggered when the price is near the resistance level and then crosses it from above to below. This indicates that the price may be reversing and moving downward.
3. Support/Resistance distance (%)
- This parameter establishes a percentage range around the identified support and resistance level. For example, if the Support Resistance Distance is 0.4% (default), the closing price must be within a range of 0.4% above support or below the resistance to be considered "close" and trigger a trade.
4. Exit criteria
- Take profit = 27 %
- Stop loss = 10 %
- Reversal if a new entry point is identified in the opposite direction
5. No Repainting
- The Dynamic Support and Resistance Pivot Strategy is not subject to repainting.
6. Position Sizing by Equity and risk management
- This strategy has a default configuration to operate with 35% of the equity. The stop loss is set to 10% from the entry price. This way, the strategy is putting at risk about 10% of 35% of equity, that is, around 3.5% of equity for each trade. The percentage of equity and stop loss can be adjusted by the user according to their risk management.
7. Backtest results
- This strategy was subjected to backtest and operations in replay mode on **1000000MOGUSDT.P**, with the inclusion of transaction fees at 0.12% and slipagge of 5 ticks, and the past results have shown consistent profitability. Past results are no guarantee of future results. The strategy's backtest results may even be due to overfitting with past data.
8. Chart Visualization
- Support and resistance levels are displayed as green (support) and red (resistance) lines.
- Pivot prices are displayed as green (pivot low) and red (pivot high) labels.
In this image above, the Support/Resistance distance (%) parameter was set to 0.8.
9. Default Configuration
Chart Timeframe: 1h
Pivot Lengh: 2
Support/Resistance distance (%): 0.4*
Stop Loss: 10 %
Take Profit: 27 %
* This parameter can alternatively be set to 0.8.
10. Alternative Configuration
Chart Timeframe: 20 min
Pivot Lengh: 4
Support/Resistance distance (%): 0.1
Stop Loss: 10 %
Take Profit: 25 %
BYBIT:1000000MOGUSDT.P
BullBear with Volume-Percentile TP - Strategy [presentTrading] Happy New Year, everyone! I hope we have a fantastic year ahead.
It's been a while since I published an open script, but it's time to return.
This strategy introduces an indicator called Bull Bear Power, combined with an advanced take-profit system, which is the main innovative and educational aspect of this script. I hope all of you find some useful insights here. Welcome to engage in meaningful exchanges. This is a versatile tool suitable for both novice and experienced traders.
█ Introduction and How it is Different
Unlike traditional strategies that rely solely on price or volume indicators, this approach combines Bull Bear Power (BBP) with volume percentile analysis to identify optimal entry and exit points. It features a dynamic take-profit mechanism based on ATR (Average True Range) multipliers adjusted by volume and percentile factors, ensuring adaptability to diverse market conditions. This multifaceted strategy not only improves signal accuracy but also optimizes risk management, distinguishing it from conventional trading methods.
BTCUSD 6hr performance
Disable the visualization of Bull Bear Power (BBP) to clearly view the Z-Score.
█ Strategy, How it Works: Detailed Explanation
The BBP Strategy with Volume-Percentile TP utilizes several interconnected components to analyze market data and generate trading signals. Here's an overview with essential equations:
🔶 Core Indicators and Calculations
1. Exponential Moving Average (EMA):
- **Purpose:** Smoothens price data to identify trends.
- **Formula:**
EMA_t = (Close_t * (2 / (lengthInput + 1))) + (EMA_(t-1) * (1 - (2 / (lengthInput + 1))))
- Usage: Baseline for Bull and Bear Power.
2. Bull and Bear Power:
- Bull Power: `BullPower = High_t - EMA_t`
- Bear Power: `BearPower = Low_t - EMA_t`
- BBP:** `BBP = BullPower + BearPower`
- Interpretation: Positive BBP indicates bullish strength, negative indicates bearish.
3. Z-Score Calculation:
- Purpose: Normalizes BBP to assess deviation from the mean.
- Formula:
Z-Score = (BBP_t - bbp_mean) / bbp_std
- Components:
- `bbp_mean` = SMA of BBP over `zLength` periods.
- `bbp_std` = Standard deviation of BBP over `zLength` periods.
- Usage: Identifies overbought or oversold conditions based on thresholds.
🔶 Volume Analysis
1. Volume Moving Average (`vol_sma`):
vol_sma = (Volume_1 + Volume_2 + ... + Volume_vol_period) / vol_period
2. Volume Multiplier (`vol_mult`):
vol_mult = Current Volume / vol_sma
- Thresholds:
- High Volume: `vol_mult > 2.0`
- Medium Volume: `1.5 < vol_mult ≤ 2.0`
- Low Volume: `1.0 < vol_mult ≤ 1.5`
🔶 Percentile Analysis
1. Percentile Calculation (`calcPercentile`):
Percentile = (Number of values ≤ Current Value / perc_period) * 100
2. Thresholds:
- High Percentile: >90%
- Medium Percentile: >80%
- Low Percentile: >70%
🔶 Dynamic Take-Profit Mechanism
1. ATR-Based Targets:
TP1 Price = Entry Price ± (ATR * atrMult1 * TP_Factor)
TP2 Price = Entry Price ± (ATR * atrMult2 * TP_Factor)
TP3 Price = Entry Price ± (ATR * atrMult3 * TP_Factor)
- ATR Calculation:
ATR_t = (True Range_1 + True Range_2 + ... + True Range_baseAtrLength) / baseAtrLength
2. Adjustment Factors:
TP_Factor = (vol_score + price_score) / 2
- **vol_score** and **price_score** are based on current volume and price percentiles.
Local performance
🔶 Entry and Exit Logic
1. Long Entry: If Z-Score crosses above 1.618, then Enter Long.
2. Short Entry: If Z-Score crosses below -1.618, then Enter Short.
3. Exiting Positions:
If Long and Z-Score crosses below 0:
Exit Long
If Short and Z-Score crosses above 0:
Exit Short
4. Take-Profit Execution:
- Set multiple exit orders at dynamically calculated TP levels based on ATR and adjusted by `TP_Factor`.
█ Trade Direction
The strategy determines trade direction using the Z-Score from the BBP indicator:
- Long Positions:
- Condition: Z-Score crosses above 1.618.
- Short Positions:
- Condition: Z-Score crosses below -1.618.
- Exiting Trades:
- Long Exit: Z-Score drops below 0.
- Short Exit: Z-Score rises above 0.
This approach aligns trades with prevailing market trends, increasing the likelihood of successful outcomes.
█ Usage
Implementing the BBP Strategy with Volume-Percentile TP in TradingView involves:
1. Adding the Strategy:
- Copy the Pine Script code.
- Paste it into TradingView's Pine Editor.
- Save and apply the strategy to your chart.
2. Configuring Settings:
- Adjust parameters like EMA length, Z-Score thresholds, ATR multipliers, volume periods, and percentile settings to match your trading preferences and asset behavior.
3. Backtesting:
- Use TradingView’s backtesting tools to evaluate historical performance.
- Analyze metrics such as profit factor, drawdown, and win rate.
4. Optimization:
- Fine-tune parameters based on backtesting results.
- Test across different assets and timeframes to enhance adaptability.
5. Deployment:
- Apply the strategy in a live trading environment.
- Continuously monitor and adjust settings as market conditions change.
█ Default Settings
The BBP Strategy with Volume-Percentile TP includes default parameters designed for balanced performance across various markets. Understanding these settings and their impact is essential for optimizing strategy performance:
Bull Bear Power Settings:
- EMA Length (`lengthInput`): 21
- **Effect:** Balances sensitivity and trend identification; shorter lengths respond quicker but may generate false signals.
- Z-Score Length (`zLength`): 252
- **Effect:** Long period for stable mean and standard deviation, reducing false signals but less responsive to recent changes.
- Z-Score Threshold (`zThreshold`): 1.618
- **Effect:** Higher threshold filters out weaker signals, focusing on significant market moves.
Take Profit Settings:
- Use Take Profit (`useTP`): Enabled (`true`)
- **Effect:** Activates dynamic profit-taking, enhancing profitability and risk management.
- ATR Period (`baseAtrLength`): 20
- **Effect:** Shorter period for sensitive volatility measurement, allowing tighter profit targets.
- ATR Multipliers:
- **Effect:** Define conservative to aggressive profit targets based on volatility.
- Position Sizes:
- **Effect:** Diversifies profit-taking across multiple levels, balancing risk and reward.
Volume Analysis Settings:
- Volume MA Period (`vol_period`): 100
- **Effect:** Longer period for stable volume average, reducing the impact of short-term spikes.
- Volume Multipliers:
- **Effect:** Determines volume conditions affecting take-profit adjustments.
- Volume Factors:
- **Effect:** Adjusts ATR multipliers based on volume strength.
Percentile Analysis Settings:
- Percentile Period (`perc_period`): 100
- **Effect:** Balances historical context with responsiveness to recent data.
- Percentile Thresholds:
- **Effect:** Defines price and volume percentile levels influencing take-profit adjustments.
- Percentile Factors:
- **Effect:** Modulates ATR multipliers based on price percentile strength.
Impact on Performance:
- EMA Length: Shorter EMAs increase sensitivity but may cause more false signals; longer EMAs provide stability but react slower to market changes.
- Z-Score Parameters:*Longer Z-Score periods create more stable signals, while higher thresholds reduce trade frequency but increase signal reliability.
- ATR Multipliers and Position Sizes: Higher multipliers allow for larger profit targets with increased risk, while diversified position sizes help in securing profits at multiple levels.
- Volume and Percentile Settings: These adjustments ensure that take-profit targets adapt to current market conditions, enhancing flexibility and performance across different volatility environments.
- Commission and Slippage: Accurate settings prevent overestimation of profitability and ensure the strategy remains viable after accounting for trading costs.
Conclusion
The BBP Strategy with Volume-Percentile TP offers a robust framework by combining BBP indicators with volume and percentile analyses. Its dynamic take-profit mechanism, tailored through ATR adjustments, ensures that traders can effectively capture profits while managing risks in varying market conditions.
MACD Aggressive Scalp SimpleComment on the Script
Purpose and Structure:
The script is a scalping strategy based on the MACD indicator combined with EMA (50) as a trend filter.
It uses the MACD histogram's crossover/crossunder of zero to trigger entries and exits, allowing the trader to capitalize on short-term momentum shifts.
The use of strategy.close ensures that positions are closed when specified conditions are met, although adjustments were made to align with Pine Script version 6.
Strengths:
Simplicity and Clarity: The logic is straightforward and focuses on essential scalping principles (momentum-based entries and exits).
Visual Indicators: The plotted MACD line, signal line, and histogram columns provide clear visual feedback for the strategy's operation.
Trend Confirmation: Incorporating the EMA(50) as a trend filter helps avoid trades that go against the prevailing trend, reducing the likelihood of false signals.
Dynamic Exit Conditions: The conditional logic for closing positions based on weakening momentum (via MACD histogram change) is a good way to protect profits or minimize losses.
Potential Improvements:
Parameter Inputs:
Make the MACD (12, 26, 9) and EMA(50) values adjustable by the user through input statements for better customization during backtesting.
Example:
pine
Copy code
macdFast = input(12, title="MACD Fast Length")
macdSlow = input(26, title="MACD Slow Length")
macdSignal = input(9, title="MACD Signal Line Length")
emaLength = input(50, title="EMA Length")
Stop Loss and Take Profit:
The strategy currently lacks explicit stop-loss or take-profit levels, which are critical in a scalping strategy to manage risk and lock in profits.
ATR-based or fixed-percentage exits could be added for better control.
Position Size and Risk Management:
While the script uses 50% of equity per trade, additional options (e.g., fixed position sizes or risk-adjusted sizes) would be beneficial for flexibility.
Avoid Overlapping Signals:
Add logic to prevent overlapping signals (e.g., opening a new position immediately after closing one on the same bar).
Backtesting Optimization:
Consider adding labels or markers (label.new or plotshape) to visualize entry and exit points on the chart for better debugging and analysis.
The inclusion of performance metrics like max drawdown, Sharpe ratio, or profit factor would help assess the strategy's robustness during backtesting.
Compatibility with Live Trading:
The strategy could be further enhanced with alert conditions using alertcondition to notify the trader of buy/sell signals in real-time.