ComboTrade V.2.1 (BuySell Signals,Take profit,4MA,Fibo,Ichi+QL)A WORD WITH ESTEEMED TRADERS:
The type of indicator that a trader uses to create a strategy depends on the type of strategy he intends to employ; this is related to the trading style and the trader's loss tolerance.
A trader looking for a long-term trade with high profits may adopt a follow-up strategy, and on the other hand, a trader who decides to make short-term trades with frequent but low profits may be eager to use a strategy based on price fluctuations. Different types of indicators can be used to confirm the results.
Indicators alone should not be used as a tool to make trading decisions. Instead, every trader should use indicators to receive trading signals and formulate trading strategies and determine his or her exact method.
Brief and essential description:
With the above description, traders are advised to use the ComboTrade indicator as a trading assistant. Using the tools embedded in this trading assistant makes it easy for traders and depending on the trading strategy, you can get the best result for positioning.
Note 1: The trading time frame for ComboTrade with over one hour (1H) will achieve best result. Checking out the lower time frame to buy or sell as a confirmation is recommended.
Note 2: At Trading View home screen choose “ Candles or ...” as “Bar’s Style”.
Once you added ComboTrade into to your chart, go to the setting gear of the ComboTrade indicator, which includes two sections: “Input” and “Style”.
The “Input” section is for the input values of the indicators and the “Style” section is for activating and deactivating the tools.
Activate Moving Average 7, 21, 50 and 200 with close (Default)
Activate Combo Cloud by tick the “Show ichimoku” if you use it (Default)
By activating ichimoku, three components will be added to the Como Cloud with below details:
1- The “Quality Line” shows the quality line (26 Kijun-sen future candlesticks) which helps the trader to understand the direction of the trend and will help the trader to make a decision.
2. The “Period Line” shows the 103-day period and can act as a support and resistance tool. In addition, this number can be changed.
3- The intersection of various Como cloud lines has also been installed.
The TP (Take Profit) signal indicates a similar buy or sell area using the RSI and Stochastic oscillators, and be sure to pay special attention to it. Be sure to tick the related box (TP) at “Style” section.
The “Trailing Stop” at “Style” section acts as a support and resistance line. It acts as a support when the price candle is placed above the Trailing Stop line and as a resistance if the price candle is placed below the Trailing Stop line.
At “Bot Key Value” in “Input” section, the number is adjustable from 0.25 to any number. According to the trader's strategy, the number of input and output signals in this section can be adjusted. The best number for BTC is 0.78 and for Altcoins is 0.78 to 1.
At “Bot ATR Period” in “Input” section, the best default number is 8. The best values for Altcoins is 8 to 10, which has a significant effect on the regulation of signaling and support and authority lines.
The “Bot Buy” and “Bot Sell” at “Style” section are the main and most important parts of the indicator that you must tick in order to active them both.
“Plot Background” can activate the Como Cloud and set it to green (ascending) and red (descending).
The “Labels” and “Lines” are related to the important Fibonacci tool, which by displaying the lines of the Fibonacci lines and by activating the label, the numbers related to the price and the Fibonacci numbers are displayed. It helps traders to extract data from the last few days.
DISCLAIMER:
ALL DECISIONS AND RISK MANAGEMENT, ETC. ARE THE FULL RESPONSIBILITY OF THE TRADER AND THE AUTHOR IS NOT RESPONSIBLE FOR THE POSITIONS AND THE RESULTS OF THE TRADES (POSSIBLE LOSSES) IN ANY WAYS. DO YOUR OWN RESEARCH (DYOR) BEFORE ENTERING/ EXISTING IN TO/ FROM ANY POSITIONS.
Please like and use your comments after using the indicator.
Always be Profitable!
JebraTrade
14 April 2021
Komut dosyalarını "bot" için ara
Dankland Playground DCAing multi-strategy OPThis is essentially a script that I made for myself before deciding it may be good enough for you all as well.
How it works basically is this... you have 18 oscillators which can all be used as independently as you wish. That means there are 20 groups which they can be split amongst as you choose.
When in separate groups they should not be able to sell eachothers positions without triggering a stop loss. Every single oscillator has its own position sizing and exit sizing which can be stated as either a percent of balance or a flat amount of contracts. Each oscillator has a minimum amount of profit you can tell it to sell it, which is calculated from the average cost of your current position, which does include all groups. This works out to help you average out better entry and exit prices, essentially a method of DCAing.
You can set the minimum sale amount, which is to keep it from placing orders below your exchanges minimum dollar trade cost.
The included oscillators are as follows:
Chande Momentum cross
Moving Average Cross
MACD cross
%B Bollinger cross
Stochastic cross + region filter
Stochastic RSI cross + region filter
SMII cross and region
Three RMIs
Standard RSI
LSMA-smoothed RSI
Know Sure Thing
RSI of KST
Coppock Curve
RSI of Curve
PPO
RSI of PPO
Trix
RSI of Trix
So the idea is that this is essentially multiple strategies combined into one backtestable house. Balance is calculated for all position sizes in order to try to prevent false entries that plague so many scripts (IE, you set pyramiding to 2, each buy $1000, initial balance $1000, and yet it buys two orders off the bat for $2000 total and nets 400% profit because the second was considered free)/
You tune each side and position size them so that they work together as well as you can and in doing so you are able to create a single backtest that is capable of running a bot, essentially, between multiple strategies - you can run a slower Moving Average cross, a faster SMI cross or MACD, or Bollinger that grabs big moves only, all the while having MACD trade small bonuses along the way. This way you can weight the Risk to Reward of each against eachother.
I will not try to claim this is something you can open and with no work have the best bot on the planet. This scripts intention is to take a lot of relatively common trading strategies and combine them under on roof with some risk management and the ability to weigh each against eachother.
If you are looking for a super advanced singular algorithm that tries to capture every peak and valley exactly on the dot, this is not for you. If you are looking for a tool with a high level of customizability, with a publisher who intends to update it to the best of his ability in accordance to seeking to make the best product that I personally can make for both myself and the community (because I will be using this myself of course!) that was specifically designed with the intention of performing well in spot markets by averaging low entry costs and high exit costs, this is for you! That is the exact intention here.
I do not trade margin currently, I trade spot. I am sure this script can be tuned to work on margin but this is not my intention or area so if this is you and there is something you need for margin specifically implemented, ask, because I likely don't know what you need yet.
The current backtest shown is hand-optimized by myself for BTC/USD 1hr market with NO stop loss enabled and all sales weighed to be around 0% minimum profit from the total average entry cost.
I chose to run it myself with no stop losses because Bitcoin is so bullish to me. The stop losses can still be very profitable, but not 1495% net profit. This style of automation is not for everyone as when running with no stop loss and the requirement every sale is somewhat profitable, or at least no very noticeable loss, you wind up relying on yourself to manually stop out if things crash too much and the bot has to stop trading to wait for market to go back up. The thing to do here if you are playing without a stop loss is to have your own alerts set at your fear level, a % drop in a period of time or something like that, and when you reach that point I would consider resetting the bot so it continues to take trades. I personally will accept a temporary drop in USD as long as I can keep my BTC holdings up overall as the goal should always be to have as many BTC as possible by the start and end of the bull run.
[astropark] 4h Crypto/USDT Strategy [alarms]Dear Followers,
today a new Swing and Scalper Tool , which works great for Cryptocurrencies on the USDT market on 4h timeframe .
This tool has some cool features:
it works on many timeframes, but best one is 4H timeframe : so you can enjoy both manual and bot trading by using a 24/7 running bot;
it comes in three working mode : default, alternative and high frequency ;
auto-stoploss: you can enable an stoploss in trade, bot will follow
It's always suggested to use a proper money and risk management in trades. This is not the "Holy Grail", it does not exist.
Strategy results are calculated from the beginning of 2018 till now, so more than 2 years, using 10000$ as initial capital and working at 1x leverage (no leverage at all!) and 0.1% trading fee already applied.
You can always DM me if you need any help to configure it on your preferred chart or if you want a customization of this bot for a specific pair.
This script will let you set all notification alerts you may need in order to be alerted on each triggered signals.
The one for backtesting purpose can be found by searching for the astropark's "4h Crypto/USDT Strategy" and then choosing the indicator with "strategy" suffix in the name, or you can find here below
This is a premium indicator , so send me a private message in order to get access to this script.
Theft Indicator - BOOM Buy/Sell SignalsWhat is our indicator?
Theft Indicator - BOOM is a script that shows entry levels on a condition that is met with our special algo. The algo consists of crossovers, which are not visible but we take pride in the effort we have put to make this indicator have a high success rate as long as you have a scalping target price set.
Does it Repaint?
Our indicator does NOT re-paint. Although while setting an alert it may pop up the repaint alert, please take into consideration that once a signal is fired on a "CLOSED BAR", our signal will never disappear, they do not repaint.
What Markets is it usable with?
You can use it in any market, Forex, Stocks, Crypto, Indices. All time frames work, not all trades will be profitable (this is how trading is, you can take a loss sometimes). But the Majority is profitable if you use a stop loss and target price.
How to use:
Simple plug and play it to your chart, in addition to a few other indicators we will recommend to you (we still have not published them yet), and this will confirm your trades. You can also connect TV alerts with a bot and let it run. Please be aware that SLIPPAGE time is important, If you run a bot on this indicator you HAVE to know that the buy/sell price will be on the bar AFTER the Candle close (For example: the BUY/SELL alert is on a candle, the buy/sell your bot or you will execute WILL be in the following candle depending on your trading system. We advise you to not leave the bot to trade on its own, you have to monitor and have a specific syntax that we will help you with creating according to your trading style.
P.S: This is not financial advice, we are just sharing our indicator that we know has good results, and it will take time for people in -ve profiles to recover losses and for the profiting to be more profitable. We use a specific trading method that only works with it
You can contact me for more information about the indicator, Goodluck :)
Theft Indicator - Pip GainerWhat is our indicator?
Theft Indicator - Pip Gainer is one of our recent published scripts that shows price action on a certain period of time (We Use a modified version of ATR). We take pride in enabling trading to become easier for the experienced and the non-experienced traders around the globe. Buy & Sell alerts will be fired once a condition in our algo is met.
Does it Repaint?
Our indicator does NOT re-paint. Although while setting an alert it may pop up the repaint alert, please take into consideration that once a signal is fired on a "CLOSED BAR", our signal will never disappear, they do not repaint.
What Markets is it usable with?
This version is dedicated to FOREX markets, we encourage using it for low timeframes starting the 3 minute to the 15 minute timeframe. WE RECOMMEND USING THIS IN THE FOREX MARKET, ESPECIALLY WITH CURRENCY PAIRS.
How to use:
Simple plug and play it to your chart, in addition to a few other indicators we will recommend to you (we still have not published them yet), and this will confirm your trades. You can also connect TV alerts with a bot and let it run. Please be aware that SLIPPAGE time is important, If you run a bot on this indicator you HAVE to know that the buy/sell price will be on the bar AFTER the Candle close (For example: the BUY/SELL alert is on a candle, the buy/sell your bot or you will execute WILL be in the following candle depending on your trading system. We advise you to not leave the bot to trade on its own, you have to monitor and have a specific syntax that we will help you with creating according to your trading style.
How are the Buy/Sell Alerts fired?
We use the simple ATR (Average True Range) indicator. However we have modified the indicator to serve our trading system. Check below for a definition of what ATR is:
What is Average True Range - ATR?
The average true range (ATR) is a technical analysis indicator that measures market volatility by decomposing the entire range of an asset price for that period. Specifically, ATR is a measure of volatility introduced by market technician J. Welles Wilder Jr. The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The average true range is then a moving average, generally using 14 days, of the true ranges.
Why is our indicator special and different from the normal ATR indicators?
We have modified the mathematical equation and changed it slightly to give more accurate signals, we do not promise all trades are profitable, the use of this indicator is up to your own judgement and liability. We believe that we have an indicator like no other ATR.
P.S: This is not financial advice, we are just sharing our indicator that we know has good results, and it will take time for people in -ve profiles to recover losses and for the profiting to be more profitable. We use a specific trading method that only works with it
You can contact me for more information about the indicator, Goodluck :)
Theft Indicator - Buy/Sell Options Trading 1-3Mins ScalpingWhat is our indicator?
Theft Indicator - Buy/Sell Options Trading Signals is our third published script that shows price action on a certain period of time (We Use ATR indicator). We take pride in enabling trading to become easier for the experienced and the non-experienced traders around the globe. Buy & Sell alerts will be fired once a condition in our algo is met.
Does it Repaint?
Our indicator does NOT re-paint. Although while setting an alert it may pop up the repaint alert, please take into consideration that once a signal is fired on a "CLOSED BAR", our signal will never disappear, they do not repaint.
What Markets is it usable with?
You can use it in any market, Forex, Stocks, Crypto, Indices. All time frames are profitable, not all trades. But the Majority is profitable if you use a stop loss and target price. Although this one is for STOCK OPTIONS, it can work for other markets as well, but it will best perform with STOCKS & OPTIONS TRADING
How to use:
Simple plug and play it to your chart, in addition to a few other indicators we will recommend to you (we still have not published them yet), and this will confirm your trades. You can also connect TV alerts with a bot and let it run. Please be aware that SLIPPAGE time is important, If you run a bot on this indicator you HAVE to know that the buy/sell price will be on the bar AFTER the Candle close (For example: the BUY/SELL alert is on a candle, the buy/sell your bot or you will execute WILL be on the following candle depending on your trading system) THIS IS WITH EVERY SCRIPT, NOT MINE ONLY. We advise you to not leave the bot to trade on its own, you have to monitor and have a specific syntax that we will help you with creating according to your trading style.
How are the Buy/Sell Alerts fired?
We use the simple ATR (Average True Range) indicator. However we have modified the indicator to serve our trading system. Check below for a definition of what ATR is:
What is Average True Range - ATR?
The average true range (ATR) is a technical analysis indicator that measures market volatility by decomposing the entire range of an asset price for that period. Specifically, ATR is a measure of volatility introduced by market technician J. Welles Wilder Jr. The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The average true range is then a moving average, generally using 14 days, of the true ranges.
Why is our indicator special and different from the normal ATR indicators?
We have modified the uniqueness of ATR and changed it slightly to give more accurate signals, we do not promise all trades are profitable, the use of this indicator is up to your own judgement and liability. We believe that we have an indicator like no other ATR.
P.S: This is not financial advice, we are just sharing our indicator that we know has good results, and it will take time for people in -ve profiles to recover losses and for the profiting to be more profitable. We use a specific trading method that only works with it
You can contact me for more information about the indicator, Goodluck :)
Theft Indicator - 5Min Scalping SystemWhat is our indicator?
Theft Indicator - Buy & Sell Alert System is our first published script that shows price action on a certain period of time (We Use ATR indicator). We take pride in enabling trading to become easier for the experienced and the non-experienced traders around the globe. Buy & Sell alerts will be fired once a condition in our algo is met.
Does it Repaint?
Our indicator does NOT re-paint. Although while setting an alert it may pop up the repaint alert, please take into consideration that once a signal is fired on a "CLOSED BAR", our signal will never disappear, they do not repaint.
What Markets is it usable with?
You can use it in any market, Forex, Stocks, Crypto, Indices. All time frames are profitable, not all trades. But the Majority is profitable if you use a stop loss and target price.
How to use:
Simple plug and play it to your chart, in addition to a few other indicators we will recommend to you (we still have not published them yet), and this will confirm your trades. You can also connect TV alerts with a bot and let it run. Please be aware that SLIPPAGE time is important, If you run a bot on this indicator you HAVE to know that the buy/sell price will be on the bar AFTER the Candle close (For example: the BUY/SELL alert is on a candle, the buy/sell your bot or you will execute WILL be in the following candle depending on your trading system. We advise you to not leave the bot to trade on its own, you have to monitor and have a specific syntax that we will help you with creating according to your trading style.
How are the Buy/Sell Alerts fired?
We use the simple ATR (Average True Range) indicator. However we have modified the indicator to serve our trading system. Check below for a definition of what ATR is:
What is Average True Range - ATR?
The average true range (ATR) is a technical analysis indicator that measures market volatility by decomposing the entire range of an asset price for that period. Specifically, ATR is a measure of volatility introduced by market technician J. Welles Wilder Jr. The true range indicator is taken as the greatest of the following: current high less the current low; the absolute value of the current high less the previous close; and the absolute value of the current low less the previous close. The average true range is then a moving average, generally using 14 days, of the true ranges.
Why is our indicator special and different from the normal ATR indicators?
We have modified the mathematical equation and changed it slightly to give more accurate signals, we do not promise all trades are profitable, the use of this indicator is up to your own judgement and liability. We believe that we have an indicator like no other ATR.
P.S: This is not financial advice, we are just sharing our indicator that we know has good results, and it will take time for people in -ve profiles to recover losses and for the profiting to be more profitable. We use a specific trading method that only works with it
You can contact me for more information about the indicator, Goodluck :)
Backtesting & Trading Engine [PineCoders]The PineCoders Backtesting and Trading Engine is a sophisticated framework with hybrid code that can run as a study to generate alerts for automated or discretionary trading while simultaneously providing backtest results. It can also easily be converted to a TradingView strategy in order to run TV backtesting. The Engine comes with many built-in strats for entries, filters, stops and exits, but you can also add you own.
If, like any self-respecting strategy modeler should, you spend a reasonable amount of time constantly researching new strategies and tinkering, our hope is that the Engine will become your inseparable go-to tool to test the validity of your creations, as once your tests are conclusive, you will be able to run this code as a study to generate the alerts required to put it in real-world use, whether for discretionary trading or to interface with an execution bot/app. You may also find the backtesting results the Engine produces in study mode enough for your needs and spend most of your time there, only occasionally converting to strategy mode in order to backtest using TV backtesting.
As you will quickly grasp when you bring up this script’s Settings, this is a complex tool. While you will be able to see results very quickly by just putting it on a chart and using its built-in strategies, in order to reap the full benefits of the PineCoders Engine, you will need to invest the time required to understand the subtleties involved in putting all its potential into play.
Disclaimer: use the Engine at your own risk.
Before we delve in more detail, here’s a bird’s eye view of the Engine’s features:
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.
By combining your own strats to the built-in strats supplied with the Engine, and then tuning the numerous options and parameters in the Inputs dialog box, you will be able to play what-if scenarios from an infinite number of permutations.
USE CASES
You have written an indicator that provides an entry strat but it’s missing other components like a filter and a stop strategy. You add a plot in your indicator that respects the Engine’s External Signal Protocol, connect it to the Engine by simply selecting your indicator’s plot name in the Engine’s Settings/Inputs and then run tests on different combinations of entry stops, in-trade stops and profit taking strats to find out which one produces the best results with your entry strat.
You are building a complex strategy that you will want to run as an indicator generating alerts to be sent to a third-party execution bot. You insert your code in the Engine’s modules and leverage its trade management code to quickly move your strategy into production.
You have many different filters and want to explore results using them separately or in combination. Integrate the filter code in the Engine and run through different permutations or hook up your filtering through the external input and control your filter combos from your indicator.
You are tweaking the parameters of your entry, filter or stop strat. You integrate it in the Engine and evaluate its performance using the Engine’s statistics.
You always wondered what results a random entry strat would yield on your markets. You use the Engine’s built-in random entry strat and test it using different combinations of filters, stop and exit strats.
You want to evaluate the impact of fees and slippage on your strategy. You use the Engine’s inputs to play with different values and get immediate feedback in the detailed numbers provided in the Data Window.
You just want to inspect the individual trades your strategy generates. You include it in the Engine and then inspect trades visually on your charts, looking at the numbers in the Data Window as you move your cursor around.
You have never written a production-grade strategy and you want to learn how. Inspect the code in the Engine; you will find essential components typical of what is being used in actual trading systems.
You have run your system for a while and have compiled actual slippage information and your broker/exchange has updated his fees schedule. You enter the information in the Engine and run it on your markets to see the impact this has on your results.
FEATURES
Before going into the detail of the Inputs and the Data Window numbers, here’s a more detailed overview of the Engine’s features.
Built-in strats
The engine comes with more than 40 pre-coded strategies for the following standard system components:
Entries,
Filters,
Entry stops,
2 stage in-trade stops with kick-in rules,
Pyramiding rules,
Hard exits.
While some of the filter and stop strats provided may be useful in production-quality systems, you will not devise crazy profit-generating systems using only the entry strats supplied; that part is still up to you, as will be finding the elusive combination of components that makes winning systems. The Engine will, however, provide you with a solid foundation where all the trade management nitty-gritty is handled for you. By binding your custom strats to the Engine, you will be able to build reliable systems of the best quality currently allowed on the TV platform.
On-chart trade information
As you move over the bars in a trade, you will see trade numbers in the Data Window change at each bar. The engine calculates the P&L at every bar, including slippage and fees that would be incurred were the trade exited at that bar’s close. If the trade includes pyramided entries, those will be taken into account as well, although for those, final fees and slippage are only calculated at the trade’s exit.
You can also see on-chart markers for the entry level, stop positions, in-trade special events and entries/exits (you will want to disable these when using the Engine in strategy mode to see TV backtesting results).
Customization
You can couple your own strats to the Engine in two ways:
1. By inserting your own code in the Engine’s different modules. The modular design should enable you to do so with minimal effort by following the instructions in the code.
2. By linking an external indicator to the engine. After making the proper selections in the engine’s Settings and providing values respecting the engine’s protocol, your external indicator can, when the Engine is used in Indicator mode only:
Tell the engine when to enter long or short trades, but let the engine’s in-trade stop and exit strats manage the exits,
Signal both entries and exits,
Provide an entry stop along with your entry signal,
Filter other entry signals generated by any of the engine’s entry strats.
Conversion from strategy to study
TradingView strategies are required to backtest using the TradingView backtesting feature, but if you want to generate alerts with your script, whether for automated trading or just to trigger alerts that you will use in discretionary trading, your code has to run as a study since, for the time being, strategies can’t generate alerts. From hereon we will use indicator as a synonym for study.
Unless you want to maintain two code bases, you will need hybrid code that easily flips between strategy and indicator modes, and your code will need to restrict its use of strategy() calls and their arguments if it’s going to be able to run both as an indicator and a strategy using the same trade logic. That’s one of the benefits of using this Engine. Once you will have entered your own strats in the Engine, it will be a matter of commenting/uncommenting only four lines of code to flip between indicator and strategy modes in a matter of seconds.
Additionally, even when running in Indicator mode, the Engine will still provide you with precious numbers on your individual trades and global results, some of which are not available with normal TradingView backtesting.
Post-Exit Analysis for alternate outcomes (PEA)
While typical backtesting shows results of trade outcomes, PEA focuses on what could have happened after the exit. The intention is to help traders get an idea of the opportunity/risk in the bars following the trade in order to evaluate if their exit strategies are too aggressive or conservative.
After a trade is exited, the Engine’s PEA module continues analyzing outcomes for a user-defined quantity of bars. It identifies the maximum opportunity and risk available in that space, and calculates the drawdown required to reach the highest opportunity level post-exit, while recording the number of bars to that point.
Typically, if you can’t find opportunity greater than 1X past your trade using a few different reasonable lengths of PEA, your strategy is doing pretty good at capturing opportunity. Remember that 100% of opportunity is never capturable. If, however, PEA was finding post-trade maximum opportunity of 3 or 4X with average drawdowns of 0.3 to those areas, this could be a clue revealing your system is exiting trades prematurely. To analyze PEA numbers, you can uncomment complete sets of plots in the Plot module to reveal detailed global and individual PEA numbers.
Statistics
The Engine provides stats on your trades that TV backtesting does not provide, such as:
Average Profitability Per Trade (APPT), aka statistical expectancy, a crucial value.
APPT per bar,
Average stop size,
Traded volume .
It also shows you on a trade-by-trade basis, on-going individual trade results and data.
In-trade events
In-trade events can plot reminders and trigger alerts when they occur. The built-in events are:
Price approaching stop,
Possible tops/bottoms,
Large stop movement (for discretionary trading where stop is moved manually),
Large price movements.
Slippage and Fees
Even when running in indicator mode, the Engine allows for slippage and fees to be included in the logic and test results.
Alerts
The alert creation mechanism allows you to configure alerts on any combination of the normal or pyramided entries, exits and in-trade events.
Backtesting results
A few words on the numbers calculated in the Engine. Priority is given to numbers not shown in TV backtesting, as you can readily convert the script to a strategy if you need them.
We have chosen to focus on numbers expressing results relative to X (the trade’s risk) rather than in absolute currency numbers or in other more conventional but less useful ways. For example, most of the individual trade results are not shown in percentages, as this unit of measure is often less meaningful than those expressed in units of risk (X). A trade that closes with a +25% result, for example, is a poor outcome if it was entered with a -50% stop. Expressed in X, this trade’s P&L becomes 0.5, which provides much better insight into the trade’s outcome. A trade that closes with a P&L of +2X has earned twice the risk incurred upon entry, which would represent a pre-trade risk:reward ratio of 2.
The way to go about it when you think in X’s and that you adopt the sound risk management policy to risk a fixed percentage of your account on each trade is to equate a currency value to a unit of X. E.g. your account is 10K USD and you decide you will risk a maximum of 1% of it on each trade. That means your unit of X for each trade is worth 100 USD. If your APPT is 2X, this means every time you risk 100 USD in a trade, you can expect to make, on average, 200 USD.
By presenting results this way, we hope that the Engine’s statistics will appeal to those cognisant of sound risk management strategies, while gently leading traders who aren’t, towards them.
We trade to turn in tangible profits of course, so at some point currency must come into play. Accordingly, some values such as equity, P&L, slippage and fees are expressed in currency.
Many of the usual numbers shown in TV backtests are nonetheless available, but they have been commented out in the Engine’s Plot module.
Position sizing and risk management
All good system designers understand that optimal risk management is at the very heart of all winning strategies. The risk in a trade is defined by the fraction of current equity represented by the amplitude of the stop, so in order to manage risk optimally on each trade, position size should adjust to the stop’s amplitude. Systems that enter trades with a fixed stop amplitude can get away with calculating position size as a fixed percentage of current equity. In the context of a test run where equity varies, what represents a fixed amount of risk translates into different currency values.
Dynamically adjusting position size throughout a system’s life is optimal in many ways. First, as position sizing will vary with current equity, it reproduces a behavioral pattern common to experienced traders, who will dial down risk when confronted to poor performance and increase it when performance improves. Second, limiting risk confers more predictability to statistical test results. Third, position sizing isn’t just about managing risk, it’s also about maximizing opportunity. By using the maximum leverage (no reference to trading on margin here) into the trade that your risk management strategy allows, a dynamic position size allows you to capture maximal opportunity.
To calculate position sizes using the fixed risk method, we use the following formula: Position = Account * MaxRisk% / Stop% [, which calculates a position size taking into account the trade’s entry stop so that if the trade is stopped out, 100 USD will be lost. For someone who manages risk this way, common instructions to invest a certain percentage of your account in a position are simply worthless, as they do not take into account the risk incurred in the trade.
The Engine lets you select either the fixed risk or fixed percentage of equity position sizing methods. The closest thing to dynamic position sizing that can currently be done with alerts is to use a bot that allows syntax to specify position size as a percentage of equity which, while being dynamic in the sense that it will adapt to current equity when the trade is entered, does not allow us to modulate position size using the stop’s amplitude. Changes to alerts are on the way which should solve this problem.
In order for you to simulate performance with the constraint of fixed position sizing, the Engine also offers a third, less preferable option, where position size is defined as a fixed percentage of initial capital so that it is constant throughout the test and will thus represent a varying proportion of current equity.
Let’s recap. The three position sizing methods the Engine offers are:
1. By specifying the maximum percentage of risk to incur on your remaining equity, so the Engine will dynamically adjust position size for each trade so that, combining the stop’s amplitude with position size will yield a fixed percentage of risk incurred on current equity,
2. By specifying a fixed percentage of remaining equity. Note that unless your system has a fixed stop at entry, this method will not provide maximal risk control, as risk will vary with the amplitude of the stop for every trade. This method, as the first, does however have the advantage of automatically adjusting position size to equity. It is the Engine’s default method because it has an equivalent in TV backtesting, so when flipping between indicator and strategy mode, test results will more or less correspond.
3. By specifying a fixed percentage of the Initial Capital. While this is the least preferable method, it nonetheless reflects the reality confronted by most system designers on TradingView today. In this case, risk varies both because the fixed position size in initial capital currency represents a varying percentage of remaining equity, and because the trade’s stop amplitude may vary, adding another variability vector to risk.
Note that the Engine cannot display equity results for strategies entering trades for a fixed amount of shares/contracts at a variable price.
SETTINGS/INPUTS
Because the initial text first published with a script cannot be edited later and because there are just too many options, the Engine’s Inputs will not be covered in minute detail, as they will most certainly evolve. We will go over them with broad strokes; you should be able to figure the rest out. If you have questions, just ask them here or in the PineCoders Telegram group.
Display
The display header’s checkbox does nothing.
For the moment, only one exit strategy uses a take profit level, so only that one will show information when checking “Show Take Profit Level”.
Entries
You can activate two simultaneous entry strats, each selected from the same set of strats contained in the Engine. If you select two and they fire simultaneously, the main strat’s signal will be used.
The random strat in each list uses a different seed, so you will get different results from each.
The “Filter transitions” and “Filter states” strats delegate signal generation to the selected filter(s). “Filter transitions” signals will only fire when the filter transitions into bull/bear state, so after a trade is stopped out, the next entry may take some time to trigger if the filter’s state does not change quickly. When you choose “Filter states”, then a new trade will be entered immediately after an exit in the direction the filter allows.
If you select “External Indicator”, your indicator will need to generate a +2/-2 (or a positive/negative stop value) to enter a long/short position, providing the selected filters allow for it. If you wish to use the Engine’s capacity to also derive the entry stop level from your indicator’s signal, then you must explicitly choose this option in the Entry Stops section.
Filters
You can activate as many filters as you wish; they are additive. The “Maximum stop allowed on entry” is an important component of proper risk management. If your system has an average 3% stop size and you need to trade using fixed position sizes because of alert/execution bot limitations, you must use this filter because if your system was to enter a trade with a 15% stop, that trade would incur 5 times the normal risk, and its result would account for an abnormally high proportion in your system’s performance.
Remember that any filter can also be used as an entry signal, either when it changes states, or whenever no trade is active and the filter is in a bull or bear mode.
Entry Stops
An entry stop must be selected in the Engine, as it requires a stop level before the in-trade stop is calculated. Until the selected in-trade stop strat generates a stop that comes closer to price than the entry stop (or respects another one of the in-trade stops kick in strats), the entry stop level is used.
It is here that you must select “External Indicator” if your indicator supplies a +price/-price value to be used as the entry stop. A +price is expected for a long entry and a -price value will enter a short with a stop at price. Note that the price is the absolute price, not an offset to the current price level.
In-Trade Stops
The Engine comes with many built-in in-trade stop strats. Note that some of them share the “Length” and “Multiple” field, so when you swap between them, be sure that the length and multiple in use correspond to what you want for that stop strat. Suggested defaults appear with the name of each strat in the dropdown.
In addition to the strat you wish to use, you must also determine when it kicks in to replace the initial entry’s stop, which is determined using different strats. For strats where you can define a positive or negative multiple of X, percentage or fixed value for a kick-in strat, a positive value is above the trade’s entry fill and a negative one below. A value of zero represents breakeven.
Pyramiding
What you specify in this section are the rules that allow pyramiding to happen. By themselves, these rules will not generate pyramiding entries. For those to happen, entry signals must be issued by one of the active entry strats, and conform to the pyramiding rules which act as a filter for them. The “Filter must allow entry” selection must be chosen if you want the usual system’s filters to act as additional filtering criteria for your pyramided entries.
Hard Exits
You can choose from a variety of hard exit strats. Hard exits are exit strategies which signal trade exits on specific events, as opposed to price breaching a stop level in In-Trade Stops strategies. They are self-explanatory. The last one labelled When Take Profit Level (multiple of X) is reached is the only one that uses a level, but contrary to stops, it is above price and while it is relative because it is expressed as a multiple of X, it does not move during the trade. This is the level called Take Profit that is show when the “Show Take Profit Level” checkbox is checked in the Display section.
While stops focus on managing risk, hard exit strategies try to put the emphasis on capturing opportunity.
Slippage
You can define it as a percentage or a fixed value, with different settings for entries and exits. The entry and exit markers on the chart show the impact of slippage on the entry price (the fill).
Fees
Fees, whether expressed as a percentage of position size in and out of the trade or as a fixed value per in and out, are in the same units of currency as the capital defined in the Position Sizing section. Fees being deducted from your Capital, they do not have an impact on the chart marker positions.
In-Trade Events
These events will only trigger during trades. They can be helpful to act as reminders for traders using the Engine as assistance to discretionary trading.
Post-Exit Analysis
It is normally on. Some of its results will show in the Global Numbers section of the Data Window. Only a few of the statistics generated are shown; many more are available, but commented out in the Plot module.
Date Range Filtering
Note that you don’t have to change the dates to enable/diable filtering. When you are done with a specific date range, just uncheck “Date Range Filtering” to disable date filtering.
Alert Triggers
Each selection corresponds to one condition. Conditions can be combined into a single alert as you please. Just be sure you have selected the ones you want to trigger the alert before you create the alert. For example, if you trade in both directions and you want a single alert to trigger on both types of exits, you must select both “Long Exit” and “Short Exit” before creating your alert.
Once the alert is triggered, these settings no longer have relevance as they have been saved with the alert.
When viewing charts where an alert has just triggered, if your alert triggers on more than one condition, you will need the appropriate markers active on your chart to figure out which condition triggered the alert, since plotting of markers is independent of alert management.
Position sizing
You have 3 options to determine position size:
1. Proportional to Stop -> Variable, with a cap on size.
2. Percentage of equity -> Variable.
3. Percentage of Initial Capital -> Fixed.
External Indicator
This is where you connect your indicator’s plot that will generate the signals the Engine will act upon. Remember this only works in Indicator mode.
DATA WINDOW INFORMATION
The top part of the window contains global numbers while the individual trade information appears in the bottom part. The different types of units used to express values are:
curr: denotes the currency used in the Position Sizing section of Inputs for the Initial Capital value.
quote: denotes quote currency, i.e. the value the instrument is expressed in, or the right side of the market pair (USD in EURUSD ).
X: the stop’s amplitude, itself expressed in quote currency, which we use to express a trade’s P&L, so that a trade with P&L=2X has made twice the stop’s amplitude in profit. This is sometimes referred to as R, since it represents one unit of risk. It is also the unit of measure used in the APPT, which denotes expected reward per unit of risk.
X%: is also the stop’s amplitude, but expressed as a percentage of the Entry Fill.
The numbers appearing in the Data Window are all prefixed:
“ALL:” the number is the average for all first entries and pyramided entries.
”1ST:” the number is for first entries only.
”PYR:” the number is for pyramided entries only.
”PEA:” the number is for Post-Exit Analyses
Global Numbers
Numbers in this section represent the results of all trades up to the cursor on the chart.
Average Profitability Per Trade (X): This value is the most important gauge of your strat’s worthiness. It represents the returns that can be expected from your strat for each unit of risk incurred. E.g.: your APPT is 2.0, thus for every unit of currency you invest in a trade, you can on average expect to obtain 2 after the trade. APPT is also referred to as “statistical expectancy”. If it is negative, your strategy is losing, even if your win rate is very good (it means your winning trades aren’t winning enough, or your losing trades lose too much, or both). Its counterpart in currency is also shown, as is the APPT/bar, which can be a useful gauge in deciding between rivalling systems.
Profit Factor: Gross of winning trades/Gross of losing trades. Strategy is profitable when >1. Not as useful as the APPT because it doesn’t take into account the win rate and the average win/loss per trade. It is calculated from the total winning/losing results of this particular backtest and has less predictive value than the APPT. A good profit factor together with a poor APPT means you just found a chart where your system outperformed. Relying too much on the profit factor is a bit like a poker player who would think going all in with two’s against aces is optimal because he just won a hand that way.
Win Rate: Percentage of winning trades out of all trades. Taken alone, it doesn’t have much to do with strategy profitability. You can have a win rate of 99% but if that one trade in 100 ruins you because of poor risk management, 99% doesn’t look so good anymore. This number speaks more of the system’s profile than its worthiness. Still, it can be useful to gauge if the system fits your personality. It can also be useful to traders intending to sell their systems, as low win rate systems are more difficult to sell and require more handholding of worried customers.
Equity (curr): This the sum of initial capital and the P&L of your system’s trades, including fees and slippage.
Return on Capital is the equivalent of TV’s Net Profit figure, i.e. the variation on your initial capital.
Maximum drawdown is the maximal drawdown from the highest equity point until the drop . There is also a close to close (meaning it doesn’t take into account in-trade variations) maximum drawdown value commented out in the code.
The next values are self-explanatory, until:
PYR: Avg Profitability Per Entry (X): this is the APPT for all pyramided entries.
PEA: Avg Max Opp . Available (X): the average maximal opportunity found in the Post-Exit Analyses.
PEA: Avg Drawdown to Max Opp . (X): this represents the maximum drawdown (incurred from the close at the beginning of the PEA analysis) required to reach the maximal opportunity point.
Trade Information
Numbers in this section concern only the current trade under the cursor. Most of them are self-explanatory. Use the description’s prefix to determine what the values applies to.
PYR: Avg Profitability Per Entry (X): While this value includes the impact of all current pyramided entries (and only those) and updates when you move your cursor around, P&L only reflects fees at the trade’s last bar.
PEA: Max Opp . Available (X): It’s the most profitable close reached post-trade, measured from the trade’s Exit Fill, expressed in the X value of the trade the PEA follows.
PEA: Drawdown to Max Opp . (X): This is the maximum drawdown from the trade’s Exit Fill that needs to be sustained in order to reach the maximum opportunity point, also expressed in X. Note that PEA numbers do not include slippage and fees.
EXTERNAL SIGNAL PROTOCOL
Only one external indicator can be connected to a script; in order to leverage its use to the fullest, the engine provides options to use it as either an entry signal, an entry/exit signal or a filter. When used as an entry signal, you can also use the signal to provide the entry’s stop. Here’s how this works:
For filter state: supply +1 for bull (long entries allowed), -1 for bear (short entries allowed).
For entry signals: supply +2 for long, -2 for short.
For exit signals: supply +3 for exit from long, -3 for exit from short.
To send an entry stop level with an entry signal: Send positive stop level for long entry (e.g. 103.33 to enter a long with a stop at 103.33), negative stop level for short entry (e.g. -103.33 to enter a short with a stop at 103.33). If you use this feature, your indicator will have to check for exact stop levels of 1.0, 2.0 or 3.0 and their negative counterparts, and fudge them with a tick in order to avoid confusion with other signals in the protocol.
Remember that mere generation of the values by your indicator will have no effect until you explicitly allow their use in the appropriate sections of the Engine’s Settings/Inputs.
An example of a script issuing a signal for the Engine is published by PineCoders.
RECOMMENDATIONS TO ASPIRING SYSTEM DESIGNERS
Stick to higher timeframes. On progressively lower timeframes, margins decrease and fees and slippage take a proportionally larger portion of profits, to the point where they can very easily turn a profitable strategy into a losing one. Additionally, your margin for error shrinks as the equilibrium of your system’s profitability becomes more fragile with the tight numbers involved in the shorter time frames. Avoid <1H time frames.
Know and calculate fees and slippage. To avoid market shock, backtest using conservative fees and slippage parameters. Systems rarely show unexpectedly good returns when they are confronted to the markets, so put all chances on your side by being outrageously conservative—or a the very least, realistic. Test results that do not include fees and slippage are worthless. Slippage is there for a reason, and that’s because our interventions in the market change the market. It is easier to find alpha in illiquid markets such as cryptos because not many large players participate in them. If your backtesting results are based on moving large positions and you don’t also add the inevitable slippage that will occur when you enter/exit thin markets, your backtesting will produce unrealistic results. Even if you do include large slippage in your settings, the Engine can only do so much as it will not let slippage push fills past the high or low of the entry bar, but the gap may be much larger in illiquid markets.
Never test and optimize your system on the same dataset , as that is the perfect recipe for overfitting or data dredging, which is trying to find one precise set of rules/parameters that works only on one dataset. These setups are the most fragile and often get destroyed when they meet the real world.
Try to find datasets yielding more than 100 trades. Less than that and results are not as reliable.
Consider all backtesting results with suspicion. If you never entertained sceptic tendencies, now is the time to begin. If your backtest results look really good, assume they are flawed, either because of your methodology, the data you’re using or the software doing the testing. Always assume the worse and learn proper backtesting techniques such as monte carlo simulations and walk forward analysis to avoid the traps and biases that unchecked greed will set for you. If you are not familiar with concepts such as survivor bias, lookahead bias and confirmation bias, learn about them.
Stick to simple bars or candles when designing systems. Other types of bars often do not yield reliable results, whether by design (Heikin Ashi) or because of the way they are implemented on TV (Renko bars).
Know that you don’t know and use that knowledge to learn more about systems and how to properly test them, about your biases, and about yourself.
Manage risk first , then capture opportunity.
Respect the inherent uncertainty of the future. Cleanse yourself of the sad arrogance and unchecked greed common to newcomers to trading. Strive for rationality. Respect the fact that while backtest results may look promising, there is no guarantee they will repeat in the future (there is actually a high probability they won’t!), because the future is fundamentally unknowable. If you develop a system that looks promising, don’t oversell it to others whose greed may lead them to entertain unreasonable expectations.
Have a plan. Understand what king of trading system you are trying to build. Have a clear picture or where entries, exits and other important levels will be in the sort of trade you are trying to create with your system. This stated direction will help you discard more efficiently many of the inevitably useless ideas that will pop up during system design.
Be wary of complexity. Experienced systems engineers understand how rapidly complexity builds when you assemble components together—however simple each one may be. The more complex your system, the more difficult it will be to manage.
Play! . Allow yourself time to play around when you design your systems. While much comes about from working with a purpose, great ideas sometimes come out of just trying things with no set goal, when you are stuck and don’t know how to move ahead. Have fun!
@LucF
NOTES
While the engine’s code can supply multiple consecutive entries of longs or shorts in order to scale positions (pyramid), all exits currently assume the execution bot will exit the totality of the position. No partial exits are currently possible with the Engine.
Because the Engine is literally crippled by the limitations on the number of plots a script can output on TV; it can only show a fraction of all the information it calculates in the Data Window. You will find in the Plot Module vast amounts of commented out lines that you can activate if you also disable an equivalent number of other plots. This may be useful to explore certain characteristics of your system in more detail.
When backtesting using the TV backtesting feature, you will need to provide the strategy parameters you wish to use through either Settings/Properties or by changing the default values in the code’s header. These values are defined in variables and used not only in the strategy() statement, but also as defaults in the Engine’s relevant Inputs.
If you want to test using pyramiding, then both the strategy’s Setting/Properties and the Engine’s Settings/Inputs need to allow pyramiding.
If you find any bugs in the Engine, please let us know.
THANKS
To @glaz for allowing the use of his unpublished MA Squize in the filters.
To @everget for his Chandelier stop code, which is also used as a filter in the Engine.
To @RicardoSantos for his pseudo-random generator, and because it’s from him that I first read in the Pine chat about the idea of using an external indicator as input into another. In the PineCoders group, @theheirophant then mentioned the idea of using it as a buy/sell signal and @simpelyfe showed a piece of code implementing the idea. That’s the tortuous story behind the use of the external indicator in the Engine.
To @admin for the Volatility stop’s original code and for the donchian function lifted from Ichimoku .
To @BobHoward21 for the v3 version of Volatility Stop .
To @scarf and @midtownsk8rguy for the color tuning.
To many other scripters who provided encouragement and suggestions for improvement during the long process of writing and testing this piece of code.
To J. Welles Wilder Jr. for ATR, used extensively throughout the Engine.
To TradingView for graciously making an account available to PineCoders.
And finally, to all fellow PineCoders for the constant intellectual stimulation; it is a privilege to share ideas with you all. The Engine is for all TradingView PineCoders, of course—but especially for you.
Look first. Then leap.
Pharoceus CryptoScalper's RSI+BB Signal+AlertsDescription
This is an indicator with alerts/signals and it's designed for Cryptocurrency leverage trading (scalping). This indicator features, the most popularly used indicators in technical analysis and that is the Bollinger Bands and Relative Strenght Index (RSI). The CryptoScalper's RSI+BB Signal+Alerts was designed for use with ProfitTrailer V2 and can also be used with all other trading bots that allows alerts or on its own as a powerful market leverage trading indicator using alerts because it offers buy alerts as well.
The Pharoceus CryptoScalper's RSI+BB Signal+Alerts can be customized to any trader specific patterns and settings, making it so easy to use. With the Buy and Sell Signal feature, trading on any cryptocurrency exchange can be automated likewise with any crypto trading bot as stated previously; but I'll always recommend using it for buys only if you're using it with a bot. This indicator/script can be used with any base pair; BTC, ETH, and USD or USDT as well. This is also not affiliated with any bot or exchange and it's not advertising either ProfitTrailer or any bot or exchanges.
This is a free indicator for anyone to use, for access and support, also strategy, results and settings discussion, join the discord channel (link below) and come build a real community. If you want to support my work and more free signals, donations are highly encouraged.
I am not a financial adviser and all gains or losses are at the discretion of all users and I would not be held liable for any of the other. This effort is solely of an individual who believes Signals shouldn't have to cost traders an arm or a leg or taken as an opportunity to rip people off.
Also, I know a lot of people are asking for access to the ProfitTrailerV2 RSI+BB+SRSI+Stochastic Oscillator Signal+Alerts and have not gotten it. The reason was because beta-testers brought issues as regarding the buy signals and I'm revisiting that indicator and working on the issue. Should have made this known but TV doesn't allow edits after 15mins or I would make it known via comments soon.
discord.gg
BTC: 199qMzu4gvr3bUXWEpLG5uS6TEKKvw5pbe
ETH: 0xf8339952a224a228f2f8c58a5666a8ffleddebfb
BCH: qqmmds8u3f8m6ek387jtefg07525dvaxzqrshd86gz
BOLLedOverIntroduction
BOLLedOver leverages classic signal strategies typically seen in equity program trading algos. Interestingly, in the crypto world, these statistical methods don’t mean quite as much as crypto is generally random and spastic. (I find some of the online analysis humorous—“setting bottom when we cross the 50 day moving average”—really? Trend following is measured in minutes, hours or days, not weeks or months. BOLLedOver uses the Bollinger Band method with various filters to insure good buying and selling opportunities. These scripts use the same framework with different signaling strategies as I have found this a very useful way to “test and learn”. The framework allows configuration for “interesting” parameters to their underlying statistical functions. Trade execution strategies are equally as important than getting the right signals in place. In the live BOT version, the framework allows for MARKET orders only, and “chasing the book” which insures that you can place LIMIT orders attempting to be a “market maker” not “taker”. In addition, the framework takes a trailing STOP approach which eliminates a lot of risk on the down side.
FOR BOT RENTERS ONLY: With so much trading, fees and slippage can really make a difference. Some exchanges provide free trades (GDAX) if you make markets with your trading. This applies to both the BUY and SELL sides and proves very useful. A big mistake with newbies in this area is not considering cost (and slippage). The framework has yielded approximately 70-80% free trades (mileage varies based on statistical settings) with exchanges that have the market maker policy. Always, be conservative in back-testing the strategies with fee settings—this can quickly destroy profits. I have tested extensively on Binance, Bitfinex and GDAX and leave it to you to backtest your favorite exchange—BOLLedOver trades a lot with some settings, so if your exchange isn’t quite as reliable or has holes in the data the BOT may not perform as advertised.
Key Features
• Designed for market maker trading
• Leverages classic statistical models in a unique crypto way
• Trades when market is sideways or heading up, sleeps when heading down
• Two to three trades daily (depending on settings and market action)
• Tune-able with ample knobs and levers.
Parameters
Stop Loss % (default 97%) STOPs will be placed and ratchet up following stops with each 1% increase in price action.
Stop Loss Trail % (default 96%) Second STOP starts here.
Bollinger Bands Time Period (default 6) indicates 6 candles in calculation. BOLLedOver runs best at 15 minutes periods. Try your own setting with plenty of backtesting.
Average Volume (default 18) filters buy and sell signals
Buy ROC Length (default 75) number of candles averaged for positive rate of change , which gives the go ahead to act on a BUY signal. When markets are heading south the BOT goes to sleep. You might get a STOP LOSS haircut (default 3%, 2 to 1 chance if you are in a position), but no trade chattering in whipsaw downward spirals after that.
Sell ROC Length (default 85) number of candles averaged for a negative rate of change , which gives the go ahead to act on a SELL signal. Note: the tighter the Bollinger Bands (e.g. 5) the less likely a SELL will process before a STOP LOSS is reached making this parameter useless in those cases.
MACD – the moving average convergence/divergence is used to check the validity of BUY and SELL signals
MACD Fast Period (default 13)
MACD Slow Period (default 24)
MACD Signal Smoothing (default 8)
Candles to Wait After Trade (default 4) set to 0 to turn off. Keeps trades from occurring consecutively in pump and dump environment.
This script logic is available on cryptotrader.org as a rentable BOT. You will need API keys for automated trading.
BOLLedOverIntroduction
BOLLedOver leverages classic signal strategies typically seen in equity program trading algos. Interestingly, in the crypto world, these statistical methods don’t mean quite as much as crypto is generally random and spastic. (I find some of the online analysis humorous—“setting bottom when we cross the 50 day moving average”—really? Trend following is measured in minutes, hours or days, not weeks or months. BOLLedOver uses the Bollinger Band method with various filters to insure good buying and selling opportunities. All my scripts use the same framework with different signaling strategies as I have found this a very useful way to “test and learn”. The framework allows configuration for “interesting” parameters to their underlying statistical functions. In addition, I have found that trade execution strategies are far more important than getting the right signals in place. In the live BOT version, my framework allows for MARKET orders only, and “chasing the book” which insures that you can place LIMIT orders attempting to be a “market maker” not “taker”. In addition, the framework takes a trailing STOP approach which eliminates a lot of risk on the down side.
With so much trading, fees and slippage can really make a difference. Some exchanges provide free trades (GDAX) if you make markets with your trading. This applies to both the BUY and SELL sides and proves very useful. A big mistake with newbies in this area is not considering cost (and slippage). My BOTs have yielded approximately 70-80% free trades (mileage varies based on statistical settings) with exchanges that have the market maker policy. Always, be conservative in back-testing the strategies with fee settings—this can quickly destroy profits.
I have tested extensively on Binance, Bitfinex and GDAX and leave it to you to backtest your favorite exchange—BOLLedOver trades a lot with some settings, so if your exchange isn’t quite as reliable or has holes in the data the BOT may not perform as advertised.
Key Features
• Designed for market maker trading
• Leverages classic statistical models in a unique crypto way
• Trades when market is sideways or heading up, sleeps when heading down
• Two to three trades daily (depending on settings and market action)
• Tune-able with ample knobs and levers.
Parameters
Stop Loss % (default 98%) STOPs will be placed and ratchet up following stops with each 1% increase in price action.
Stop Loss Trail % (default 96%) Second STOP starts here.
Bollinger Bands Time Period (default 6) indicates 6 candles in calculation. BOLLedOver runs best at 15 minutes periods. Try your own setting with plenty of backtesting.
Average Volume (default 18) filters buy and sell signals
Buy ROC Length (default 75) number of candles averaged for positive rate of change, which gives the go ahead to act on a BUY signal. When markets are heading south the BOT goes to sleep. You might get a STOP LOSS haircut (default 3%, 2 to 1 chance if you are in a position), but no trade chattering in whipsaw downward spirals after that.
Sell ROC Length (default 85) number of candles averaged for a negative rate of change, which gives the go ahead to act on a SELL signal. Note: the tighter the Bollinger Bands (e.g. 5) the less likely a SELL will process before a STOP LOSS is reached making this parameter useless in those cases.
MACD – the moving average convergence/divergence is used to check the validity of BUY and SELL signals
MACD Fast Period (default 10)
MACD Slow Period (default 24)
MACD Signal Smoothing (default 10)
Candles to Wait After Trade (default 10) set to 0 to turn off. Keeps trades from occurring consecutively in pump and dump environment.
Praetor Sentinel V11.2 NOLOOSE BETA📈 Praetor Sentinel V11.2 – "NOLOOSE BETA"
Algorithmic Trading Strategy for Trend Markets with Adaptive Risk Management
Praetor Sentinel V11.2 is an advanced algorithmic trading strategy for TradingView, specifically designed to operate in strong trend conditions. It combines multiple technical systems—including dynamic trend filters, multi-layer EMA structures, ADX-based volatility control, and adaptive trailing stops—into a powerful and automated trading framework.
🔧 Core Features
Multi-EMA Trend Detection: Two EMA pairs (short/long) to identify and confirm directional trends.
XO-EMA Breakout Logic: Fast EMA crossover to detect breakout opportunities.
ADX Trend Filter: Trades only during strong market trends (above custom ADX threshold).
HTF Filter: Optional higher timeframe trend confirmation (e.g. Daily 50 EMA).
VWAP Validation: Ensures entries aren't taken against the volumetric average.
RSI Filter: Adds a momentum filter (e.g. RSI > 50 for long trades).
🎯 Entry Signals
The strategy uses two entry types:
Breakout Entries: Based on XO-EMA cross and multi-EMA trend alignment.
Pullback Entries: Configurable via various methods such as EMA21 reentry, RSI reversal, engulfing candles, or VWAP reclaim.
All entries can be delayed via confirmation candle logic, requiring a bullish or bearish follow-up bar.
🛡️ Risk Management & Exit Logic
Dynamic ATR Trailing Stop: Adjusts stop distance according to market volatility with optional swing high/low protection.
Break-Even Logic: Locks in trades at breakeven once a defined profit is reached.
Hard Stop-Loss: Caps potential loss per trade with a fixed % (e.g. 1%).
Safe Mode ("NOLOOSE"): Exits early if price moves too far against the position — ideal for automated bots that must avoid drawdowns.
🤖 Automation & Alerts
This strategy is fully automatable with services like 3Commas using built-in alert messages for entries and exits.
All parameters are fully configurable to adapt to different assets, timeframes, and trading styles.
⚙️ Additional Features
Configurable leverage & position sizing
Time-based trading window
Built-in Anchored VWAP
Modular design for easy extension
📌 Summary
Praetor Sentinel V11.2 is a professional-grade tool for trend traders who want rule-based entry/exit logic, adaptive stop systems, and robust protection features. When paired with automation tools, it offers a reliable, low-maintenance setup that emphasizes safety, structure, and scalability.
🛠 How to Use Praetor Sentinel V11.2 – NOLOOSE BETA
🔍 1. Basic Configuration (Required)
Setting Description
Enable Long Trades Enables long (buy) positions.
Enable Short Trades Enables short (sell) positions.
Leverage Used for position sizing calculations.
Position Size % Defines % of capital to be used per trade.
⏰ 2. Time Filter (Optional)
Restricts trading to a defined time range.
Setting Description
Start Date Start date for strategy to be active.
End Date End date for strategy to stop.
Time Zone Time zone for above settings.
📊 3. Trend Setup (Essential for Entry Signals)
Setting Description
MA Type Type of moving average: EMA or SMA.
EMA1/2 Short & Long Two EMA-based systems to determine trend.
Fast/Slow EMA (XO) Used for crossover breakout detection.
HTF Filter Uses higher timeframe trend for additional confirmation.
RSI Filter Confirms entries only if momentum (RSI) supports it.
ADX Threshold Ensures trades only occur during strong trends.
🎯 4. Entry Logic
Setting Description
Pullback Entry Type Enables optional entry setups:
"Off"
"EMA21"
"RSI"
"Engulfing"
"VWAP"
| Use Confirmation Candle | Entry is delayed until a confirmation bar appears. |
| VWAP Confirmation | Trade only if price is above/below the VWAP (based on direction). |
Note: You can combine breakout + pullback signals. Only one has to trigger.
🧯 5. Risk Control & Exit Settings
Setting Description
Trailing Stop Mode
"Standard": Classic trailing stop
"Dynamic ATR": Adjusts to current volatility
"Dynamic ATR + Swing": Adds swing high/low buffer
| Enable Break-Even | Moves SL to breakeven once a target % gain is reached. |
| Enable Hard Stop-Loss | Fixed stop-loss (e.g. 1%) to cap trade risk. |
| Enable Safe Mode | Exits trade early if price moves against it beyond defined % (e.g. 0.3%). |
🔔 6. Alerts & Bot Automation
Setting Description
Entry Long/Short Msg Text message sent via alert when a position opens.
Exit Long/Short Msg Alert message for stop-loss/exit logic.
How to automate with 3Commas:
Load the strategy on your chart.
Manually create alerts using "Create Alert" in TradingView.
Use the built-in alert_message values for bot integration.
✅ Recommended Settings (Example for BTC/ETH on 1H)
Long & Short: ✅ Enabled
Leverage: 2.0
Timeframe: 1H
Pullback Entry: "EMA21"
MA Type: EMA
HTF Filter: Enabled (Daily EMA50)
RSI Filter: Enabled
VWAP Filter: Enabled
Break-Even: On at 0.5%
Hard SL: 1.0%
Safe Mode: On at -0.3%
Trailing Stop: "Dynamic ATR + Swing"
📘 Pro Tips for Testing & Customization
Use the Strategy Tester in TradingView to analyze performance over different assets.
Experiment with timeframes and entry modes.
Ideal for trending assets like BTC, ETH, SOL, etc.
You can expand it with take-profit logic, fixed TPs, indicator exits, etc.
ian_Trado v15 Trend Entry Filter# 📈 ian_Trado v15 Trend Entry Filter (Pine Script v6)
The **ian_Trado v15** is a multi-factor **trend confirmation filter** for NASDAQ (NAS100), Dow Jones (DJ30), Gold (XAU), DAX, and USDJPY.
It combines **EMA structure**, **Donchian channel breakout**, **MACD histogram momentum**, **Volume confirmation**, and a **Range Compression Filter** to avoid entering during choppy or sideways markets.
✅ Designed for **bot deployment** (e.g., grid bots, long/short breakout bots) or **manual trading**.
---
## 🔍 How This Filter Works:
1. **EMA Trend Confirmation**
- Long Trend: EMA(1) > EMA(5) > EMA(60)
- Short Trend: EMA(1) < EMA(5) < EMA(60)
2. **Donchian Channel Width Expansion**
- Only allows trades when the **breakout width** exceeds a minimum threshold.
3. **MACD Histogram Slope Filter (Optional)**
- Confirms momentum building in the direction of the trend.
- Strict Mode: MACD histogram must consistently rise or fall over 3 bars.
4. **Volume Filter (Optional)**
- Ensures volume supports the move (filters out weak conditions).
5. **Range Compression Filter (Optional)**
- Avoids entries during sideways chop.
6. **Cooldown Control**
- Limits overtrading by requiring spacing between entries.
7. **Exit Conditions**
- Gray dot appears when trending conditions are no longer valid.
---
## ⚙️ Settings Explained:
| Setting | Description |
|:--------|:------------|
| **Cooldown Bars** | Minimum bars between consecutive entries |
| **Profit Target (%)** | Visual profit marker for exit tracking |
| **Donchian Channel Length** | Lookback period for detecting breakout width |
| **Minimum Donchian Width** | Threshold to confirm meaningful breakouts |
| **Volume Lookback Period** | Average volume validation window |
| **Box Range (Range Compression)** | Max allowed price range over lookback bars |
| **Range Compression Bars** | Number of bars to check for range compression |
| **Strict MACD Filter** | Use stricter MACD slope checks |
---
## 📊 Recommended Settings by Instrument (1H Chart):
| Asset | Min Donchian Width | Range Compression | Profit Target |
|:------|:-------------------|:------------------|:--------------|
| **NAS100** (Nasdaq) | 300–450 pts | 400 pts / 40 bars | 1.5% |
| **DJ30** (Dow Jones) | 400–600 pts | 500 pts / 40 bars | 1.0–1.5% |
| **XAU/USD** (Gold) | 10–15 pts | 8 pts / 30 bars | 0.8–1.2% |
| **DAX40** (Germany) | 200–300 pts | 250 pts / 40 bars | 1.0% |
| **USD/JPY** (Forex) | 0.5–0.8 pts | 0.4 pts / 40 bars | 0.5–0.8% |
---
## 🔔 Alerts Available:
- Long Entry
- Short Entry
- Exit Zone
> **Note:** Volume filter may be disabled if volume is unreliable (e.g., some forex pairs).
---
## 📅 Version:
- **ian_Trado v15** — April 2025
- Built with **Pine Script v6** for maximum stability
- Clean toggling and plotting logic (no `na` errors)
Titan X 📈 Titan X – Optimized Trend Strategy with Gradient ZLEMA, RMI, CCI, ROC, and Volume Confirmation
Titan X is a precision-engineered trend-following strategy designed for crypto markets and high-volatility assets. It is not just a combination of indicators, but a carefully constructed, non-repainting system where each component plays a specific role in confirming high-probability trade setups. The strategy detects strong directional moves, confirms them with momentum and volume, and manages trade exits without relying on traditional stop losses.
🔍 How the Indicators Work Together
✅ 1. ZLEMA Baseline + Gradient Filter
A Zero Lag Exponential Moving Average (ZLEMA) is used to track directional trend with minimal lag.
A gradient (slope) is calculated from the ZLEMA to measure trend acceleration. This confirms whether a trend is gaining strength or losing momentum.
Entries are only taken when the ZLEMA gradient exceeds a user-defined threshold, ensuring trades are only taken in strong, developing trends.
✅ 2. RMI – Relative Momentum Index (with Memory)
RMI captures sustained momentum direction over time.
It helps validate that price isn't just spiking, but truly trending.
Titan X uses RMI as a trend memory filter, requiring consistent momentum alignment before entry.
✅ 3. Momentum Timing – ROC + CCI
The Rate of Change (ROC) determines the strength and direction of recent momentum.
The Commodity Channel Index (CCI) checks price deviation from a moving average baseline, identifying whether momentum is aligned with market structure.
This combo prevents trades in weak, flat, or conflicting conditions.
✅ 4. Volume Spike Confirmation
Titan X uses a relative volume filter, requiring the current bar’s volume to exceed a moving average threshold.
This ensures trades are only triggered when there is clear breakout interest from market participants, helping avoid fakeouts and low-volume moves.
🎯 Trade Entry & Exit Rules
✅ Entry Conditions:
All five filters must align:
Trend direction (ZLEMA slope)
Momentum (ROC & CCI)
Trend memory (RMI)
Volume (Spike filter)
Trades are entered on the next bar after all confirmations, ensuring 100% non-repainting behavior.
✅ Take Profit System (Multi-Level TP):
TP1: Closes 50% of the position at a user-defined % gain (default: 2%)
TP2: Closes the remaining 50% of the position at a higher % gain (default: 4%)
Each TP is executed via limit order to ensure realistic and backtestable fills.
❌ No Stop Loss Used
Instead of using fixed stop losses, Titan X closes positions early when trend conditions weaken.
This dynamic exit logic is based on a reversal in ZLEMA gradient, which serves as a weak trend detection system.
⏱️ Cooldown Logic
A 1-bar cooldown is enforced between trades to avoid same-bar exit/entry violations on TradingView.
This improves execution accuracy and avoids overtrading on choppy price action.
📊 Real-Time Strategy Dashboard
Titan X includes a live dashboard that provides full transparency:
Current Position (Long / Short / Flat)
Entry Price
TP1 Hit? / TP2 Hit?
Bars Since Entry
Win Rate (%)
Profit Factor
Ideal for both manual monitoring and automated bot strategies.
🔔 Bot-Ready Multi-Exchange Alerts
Alerts can be configured for:
ENTER-LONG, ENTER-SHORT
EXIT-LONG, EXIT-SHORT
TP1 / TP2 targets
Messages are fully customizable and designed for platforms like:
WonderTrading
3Commas
TradingConnector
⚙️ Designed For:
Timeframes: 1H and 4H (optimized for crypto)
Markets: Altcoins, BTC/ETH, high-volatility pairs
Traders: Trend-followers, momentum scalpers, algo bot users
Goal: High accuracy entries, structured exits, zero repainting, and flexible trade management
⚠️ TradingView Disclosure
This strategy is provided for educational purposes only. It does not constitute investment advice, nor does it guarantee any returns. Trading carries risk; test thoroughly before using in live environments.
Phantom Trigger Phantom Trigger – Precision Trend Execution with TP1/TP2 and Weak Trend Exits
Phantom Trigger is a professional-grade trend-following strategy designed for crypto and high-volatility assets. It combines advanced trend detection with precise risk-managed exits using a multi-level take-profit system.
🔍 What It Does
Identifies strong directional moves using a multi-stage smoothed trend model
Confirms entries using structure-based logic and volume pressure
Filters trades using bias zones, confirmation levels, and trend acceleration
Automatically manages trades with two-stage take-profits (TP1 and TP2)
Exits early on trend weakness before reversal
Includes a styled real-time dashboard and bar coloring for visual guidance
Sends bot-compatible alerts for multi-exchange automation
⚙️ Core Components
Trend Engine: A smoothed dynamic filter detects real-time trend direction and momentum shifts
Bias Structure: Mid-high/low range-based logic determines if price is favoring bullish or bearish structure
Confirmation Levels: Short- and long-term zone crossovers confirm directional alignment
Volume Filter: Detects volume expansion spikes to validate strong breakout potential
TP1/TP2 Logic: Dynamically sets two profit targets and executes partial and full exits automatically
Weak Trend Exit: Closes positions one bar before reversal using directional filters
🧠 How to Use
Works best on crypto (1H, 4H) and high-volume instruments
Use dashboard stats to monitor position status, PnL, and TP1/TP2 progression
Alerts are pre-labeled and compatible with bots like 3Commas, Wunderbit, etc.
Can be adapted for both scalping and swing trading
📊 Dashboard
The built-in real-time dashboard displays current trade status, entry price, TP1/TP2 progress, win rate, profit factor, and bars since entry. It updates live with every candle and provides a quick-glance overview to support your decision-making during active trades.
🧠 How to Use
Works best on crypto (1H, 4H) and high-volume instruments
Use dashboard stats to monitor position status, PnL, and TP1/TP2 progression
Alerts are pre-labeled and compatible with bots like 3Commas, Wunderbit, etc.
Can be adapted for both scalping and swing trading
⚠️ Disclaimer
This script is for educational purposes only and does not constitute financial advice. Always test strategies thoroughly using demo or backtesting environments before applying to live markets. Past performance is not indicative of future results.
Time-based Alerts for Trading Windows🌟 Time-based Alerts for Trading Windows 🌐📈
This is a re-uploaded script as the previous one got hidden.
This Time-based Alerts for Trading Windows script is a highly customizable and reliable tool designed to assist traders in managing automated strategies or manually monitoring specific market conditions. Inspired by CrossTrade's Time-based Alert, this script is tailored for those who rely on precise time windows to trigger actions, such as sending webhook signals or managing Expert Advisors (EAs).
Whether you are a scalper, day trader, or algorithmic trader, this script empowers you to stay on top of your trades with fully customizable time-based alerts.
🛠️ Customizable Time Alerts
This indicator allows you to create up to 12 unique time windows by specifying the exact hour and minute for each alert. Each time window corresponds to an individual alert condition, making it perfect for managing trades during specific market sessions or key time periods.
For example:
Alert 1 can be set at 9:30 AM (market open).
Alert 2 can be set at 3:55 PM (just before market close).
Each alert can be toggled on or off in the indicator settings, allowing you to manage alerts without having to reconfigure your script.
You can adjust the colours to fit any colour scheme you like!
🕒 Odd and Even Time Alerts
The script comes with three built-in alert type categories:
Odd Alerts (marked with a green triangle on the chart): These correspond to odd-numbered inputs like Alert 1, Alert 3, Alert 5, and so on.
Even Alerts (marked with a red triangle on the chart): These correspond to even-numbered inputs like Alert 2, Alert 4, Alert 6, and so on.
You can also customize all 12 alerts individually to include a custom alert message
These alerts serve as a convenient way to differentiate between multiple trading strategies or market conditions. You can customize alert messages for odd and even alerts directly from TradingView’s alert panel.
🔗 Webhook Integration for Automation
This script is fully compatible with webhook-based automation. By configuring your alerts in TradingView, you can send signals to trading bots, EAs, or any third-party system. For example, you can:
Turn off an EA at a specific time (e.g., 3:55 PM EST).
Send buy/sell signals to your bot during predefined trading windows.
Simply use TradingView’s alert message editor to format webhook payloads for your automation system.
🌐 Timezone Flexibility
Trading happens across multiple time zones, and this script accounts for that. You can toggle between:
Eastern Time (New York): Ideal for most US-based markets.
Central Time (Exchange): Useful for futures and commodities traders.
This ensures your alerts are always in sync with your preferred time zone, eliminating confusion.
🎨 Visual Indicators
The script plots visual markers directly on your chart to indicate active alerts:
Up Facing Triangles: Represent odd-numbered alerts, providing a quick reference for these time windows.
Down Facing Triangles: Represent even-numbered alerts, helping you track different strategies or conditions.
These visual markers make it easy to see when alerts are triggered, even at a glance.
📈 Practical Use Case
Let’s say you’re trading the USTEC index on a 1-minute chart. You want to:
Turn off your trading bot at 16:55 EST to avoid after-market volatility.
Trigger a re-entry signal at 17:30 EST to capture moves during the Asian session.
Visually monitor these actions on your chart for easy reference.
This script makes it possible with precision alerts and webhook integration. Simply configure the time windows in the settings and set up your alerts in TradingView.
🚨 How to Set Up Alerts
Enable or Disable Alerts: Use the script’s settings to toggle specific alerts on or off as needed.
Set Custom Time Windows: Define the hour and minute for each alert in the settings panel.
Create Alerts in TradingView:
Go to the TradingView alert panel.
Select the condition (e.g., "Odd Time-based Alert (Green)" or "Even Time-based Alert (Red)").
Customize the alert message for webhook integration or personal notification.
Choose the trigger type: Once Per Bar or Once Per Bar Close to keep the alert active.
Integrate with Webhooks: Use the alert message field to format payloads for automation systems like MT4, MT5, or third-party bots.
📋 Key Notes
Alerts can trigger indefinitely if set to "Once Per Bar" or "Once Per Bar Close".
Always ensure the expiration date is set far in the future to avoid unexpected alert deactivation.
Test webhook messages and alert configurations thoroughly before using them in live trading.
This script is a powerful addition to your trading toolbox, offering precision, flexibility, and automation capabilities. Whether you’re turning off an EA, managing trades during market sessions, or automating strategies via webhooks, this script is here to support you.
Start using the Time-based Alerts for Trading Windows today and trade with confidence! 🚀✨
Smart DCA Strategy (Public)INSPIRATION
While Dollar Cost Averaging (DCA) is a popular and stress-free investment approach, I noticed an opportunity for enhancement. Standard DCA involves buying consistently, regardless of market conditions, which can sometimes mean missing out on optimal investment opportunities. This led me to develop the Smart DCA Strategy – a 'set and forget' method like traditional DCA, but with an intelligent twist to boost its effectiveness.
The goal was to build something more profitable than a standard DCA strategy so it was equally important that this indicator could backtest its own results in an A/B test manner against the regular DCA strategy.
WHY IS IT SMART?
The key to this strategy is its dynamic approach: buying aggressively when the market shows signs of being oversold, and sitting on the sidelines when it's not. This approach aims to optimize entry points, enhancing the potential for better returns while maintaining the simplicity and low stress of DCA.
WHAT THIS STRATEGY IS, AND IS NOT
This is an investment style strategy. It is designed to improve upon the common standard DCA investment strategy. It is therefore NOT a day trading strategy. Feel free to experiment with various timeframes, but it was designed to be used on a daily timeframe and that's how I recommend it to be used.
You may also go months without any buy signals during bull markets, but remember that is exactly the point of the strategy - to keep your buying power on the sidelines until the markets have significantly pulled back. You need to be patient and trust in the historical backtesting you have performed.
HOW IT WORKS
The Smart DCA Strategy leverages a creative approach to using Moving Averages to identify the most opportune moments to buy. A trigger occurs when a daily candle, in its entirety including the high wick, closes below the threshold line or box plotted on the chart. The indicator is designed to facilitate both backtesting and live trading.
HOW TO USE
Settings:
The input parameters for tuning have been intentionally simplified in an effort to prevent users falling into the overfitting trap.
The main control is the Buying strictness scale setting. Setting this to a lower value will provide more buying days (less strict) while higher values mean less buying days (more strict). In my testing I've found level 9 to provide good all round results.
Validation days is a setting to prevent triggering entries until the asset has spent a given number of days (candles) in the overbought state. Increasing this makes entries stricter. I've found 0 to give the best results across most assets.
In the backtest settings you can also configure how much to buy for each day an entry triggers. Blind buy size is the amount you would buy every day in a standard DCA strategy. Smart buy size is the amount you would buy each day a Smart DCA entry is triggered.
You can also experiment with backtesting your strategy over different historical datasets by using the Start date and End date settings. The results table will not calculate for any trades outside what you've set in the date range settings.
Backtesting:
When backtesting you should use the results table on the top right to tune and optimise the results of your strategy. As with all backtests, be careful to avoid overfitting the parameters. It's better to have a setup which works well across many currencies and historical periods than a setup which is excellent on one dataset but bad on most others. This gives a much higher probability that it will be effective when you move to live trading.
The results table provides a clear visual representation as to which strategy, standard or smart, is more profitable for the given dataset. You will notice the columns are dynamically coloured red and green. Their colour changes based on which strategy is more profitable in the A/B style backtest - green wins, red loses. The key metrics to focus on are GOA (Gain on Account) and Avg Cost.
Live Trading:
After you've finished backtesting you can proceed with configuring your alerts for live trading.
But first, you need to estimate the amount you should buy on each Smart DCA entry. We can use the Total invested row in the results table to calculate this. Assuming we're looking to trade on
BTCUSD
Decide how much USD you would spend each day to buy BTC if you were using a standard DCA strategy. Lets say that is $5 per day
Enter that USD amount in the Blind buy size settings box
Check the Blind Buy column in the results table. If we set the backtest date range to the last 10 years, we would expect the amount spent on blind buys over 10 years to be $18,250 given $5 each day
Next we need to tweak the value of the Smart buy size parameter in setting to get it as close as we can to the Total Invested amount for Blind Buy
By following this approach it means we will invest roughly the same amount into our Smart DCA strategy as we would have into a standard DCA strategy over any given time period.
After you have calculated the Smart buy size, you can go ahead and set up alerts on Smart DCA buy triggers.
BOT AUTOMATION
In an effort to maintain the 'set and forget' stress-free benefits of a standard DCA strategy, I have set my personal Smart DCA Strategy up to be automated. The bot runs on AWS and I have a fully functional project for the bot on my GitHub account. Just reach out if you would like me to point you towards it. You can also hook this into any other 3rd party trade automation system of your choice using the pre-configured alerts within the indicator.
PLANNED FUTURE DEVELOPMENTS
Currently this is purely an accumulation strategy. It does not have any sell signals right now but I have ideas on how I will build upon it to incorporate an algorithm for selling. The strategy should gradually offload profits in bull markets which generates more USD which gives more buying power to rinse and repeat the same process in the next cycle only with a bigger starting capital. Watch this space!
MARKETS
Crypto:
This strategy has been specifically built to work on the crypto markets. It has been developed, backtested and tuned against crypto markets and I personally only run it on crypto markets to accumulate more of the coins I believe in for the long term. In the section below I will provide some backtest results from some of the top crypto assets.
Stocks:
I've found it is generally more profitable than a standard DCA strategy on the majority of stocks, however the results proved to be a lot more impressive on crypto. This is mainly due to the volatility and cycles found in crypto markets. The strategy makes its profits from capitalising on pullbacks in price. Good stocks on the other hand tend to move up and to the right with less significant pullbacks, therefore giving this strategy less opportunity to flourish.
Forex:
As this is an accumulation style investment strategy, I do not recommend that you use it to trade Forex.
For more info about this strategy including backtest results, please see the full description on the invite only version of this strategy named "Smart DCA Strategy"
[3Commas] Signal BuilderSignal Builder is a tool designed to help traders create custom buy and sell signals by combining multiple technical indicators. Its flexibility allows traders to set conditions based on their specific strategy, whether they’re into scalping, swing trading, or long-term investing. Additionally, its integration with 3Commas bots makes it a powerful choice for those looking to automate their trades, though it’s also ideal for traders who prefer receiving alerts and making manual decisions.
🔵 How does Signal Builder work?
Signal Builder allows users to define custom conditions using popular technical indicators, which, when met, generate clear buy or sell signals. These signals can be used to trigger TradingView alerts, ensuring that you never miss a market opportunity. Additionally, all conditions are evaluated using "AND" logic, meaning signals are only activated when all user-defined conditions are met. This increases precision and helps avoid false signals.
🔵 Available indicators and recommended settings:
Signal Builder provides access to a wide range of technical indicators, each customizable to popular settings that maximize effectiveness:
RSI (Relative Strength Index): An oscillator that measures the relative strength of price over a specific period. Traders typically configure it with 14 periods, using levels of 30 (oversold) and 70 (overbought) to identify potential reversals.
MACD (Moving Average Convergence Divergence): A key indicator tracking the crossover between two moving averages. Common settings include 12 and 26 periods for the moving averages, with a 9-period signal line to detect trend changes.
Ultimate Oscillator: Combines three different time frames to offer a comprehensive view of buying and selling pressure. Popular settings are 7, 14, and 28 periods.
Bollinger Bands %B: Provides insight into where the price is relative to its upper and lower bands. Standard settings include a 20-period moving average and a standard deviation of 2.
ADX (Average Directional Index): Measures the strength of a trend. Values above 25 typically indicate a strong trend, while values below suggest weak or sideways movement.
Stochastic Oscillator: A momentum indicator comparing the closing price to its range over a defined period. Popular configurations include 14 periods for %K and 3 for %D smoothing.
Parabolic SAR: Ideal for identifying trend reversals and entry/exit points. Commonly configured with a 0.02 step and a 0.2 maximum.
Money Flow Index (MFI): Similar to RSI but incorporates volume into the calculation. Standard settings use 14 periods, with levels of 20 and 80 as oversold and overbought thresholds.
Commodity Channel Index (CCI): Measures the deviation of price from its average. Traders often use a 20-period setting with levels of +100 and -100 to identify extreme overbought or oversold conditions.
Heikin Ashi Candles: These candles smooth out price fluctuations to show clearer trends. Commonly used in trend-following strategies to filter market noise.
🔵 How to use Signal Builder:
Configure indicators: Select the indicators that best fit your strategy and adjust their settings as needed. You can combine multiple indicators to define precise entry and exit conditions.
Define custom signals: Create buy or sell conditions that trigger when your selected indicators meet the criteria you’ve set. For example, configure a buy signal when RSI crosses above 30 and MACD confirms with a bullish crossover.
TradingView alerts: Set up alerts in TradingView to receive real-time notifications when the conditions you’ve defined are met, allowing you to react quickly to market opportunities without constantly monitoring charts.
Monitor with the panel: Signal Builder includes a visual panel that shows active conditions for each indicator in real time, helping you keep track of signals without manually checking each indicator.
🔵 3Commas integration:
In addition to being a valuable tool for any trader, Signal Builder is optimized to work seamlessly with 3Commas bots through Webhooks. This allows you to automate your trades based on the signals you’ve configured, ensuring that no opportunity is missed when your defined conditions are met. If you prefer automation, Signal Builder can send buy or sell signals to your 3Commas bots, enhancing your trading process and helping you manage multiple trades more efficiently.
🔵 Example of use:
Imagine you trade in volatile markets and want to trigger a sell signal when:
Stochastic Oscillator indicates overbought conditions with the %K value crossing below 80.
Bollinger Bands %B shows the price has surpassed the upper band, suggesting a potential reversal.
ADX is below 20, indicating that the trend is weak and could be about to change.
With Signal Builder , you can configure these conditions to trigger a sell signal only when all are met simultaneously. Then, you can set up a TradingView alert to notify you as soon as the signal is activated, giving you the opportunity to react quickly and adjust your strategy accordingly.
👨🏻💻💭 If this tool helps your trading strategy, don’t forget to give it a boost! Feel free to share in the comments how you're using it or if you have any questions.
_________________________________________________________________
The information and publications within the 3Commas TradingView account are not meant to be and do not constitute financial, investment, trading, or other types of advice or recommendations supplied or endorsed by 3Commas and any of the parties acting on behalf of 3Commas, including its employees, contractors, ambassadors, etc.
Overnight Positioning w EMA - Strategy [presentTrading]I've recently started researching Market Timing strategies, and it’s proving to be quite an interesting area of study. The idea of predicting optimal times to enter and exit the market, based on historical data and various indicators, brings a dynamic edge to trading. Additionally, it is integrated with the 3commas bot for automated trade execution.
I'm still working on it. Welcome to share your point of view.
█ Introduction and How it is Different
The "Overnight Positioning with EMA " is designed to capitalize on market inefficiencies during the overnight trading period. This strategy takes a position shortly before the market closes and exits shortly after it opens the following day. What sets this strategy apart is the integration of an optional Exponential Moving Average (EMA) filter, which ensures that trades are aligned with the underlying trend. The strategy provides flexibility by allowing users to select between different global market sessions, such as the US, Asia, and Europe.
It is integrated with the 3commas bot for automated trade execution and has a built-in mechanism to avoid holding positions over the weekend by force-closing positions on Fridays before the market closes.
BTCUSD 20 mins Performance
█ Strategy, How it Works: Detailed Explanation
The core logic of this strategy is simple: enter trades before market close and exit them after market open, taking advantage of potential price movements during the overnight period. Here’s how it works in more detail:
🔶 Market Timing
The strategy determines the local market open and close times based on the selected market (US, Asia, Europe) and adjusts entry and exit points accordingly. The entry is triggered a specific number of minutes before market close, and the exit is triggered a specific number of minutes after market open.
🔶 EMA Filter
The strategy includes an optional EMA filter to help ensure that trades are taken in the direction of the prevailing trend. The EMA is calculated over a user-defined timeframe and length. The entry is only allowed if the closing price is above the EMA (for long positions), which helps to filter out trades that might go against the trend.
The EMA formula:
```
EMA(t) = +
```
Where:
- EMA(t) is the current EMA value
- Close(t) is the current closing price
- n is the length of the EMA
- EMA(t-1) is the previous period's EMA value
🔶 Entry Logic
The strategy monitors the market time in the selected timezone. Once the current time reaches the defined entry period (e.g., 20 minutes before market close), and the EMA condition is satisfied, a long position is entered.
- Entry time calculation:
```
entryTime = marketCloseTime - entryMinutesBeforeClose * 60 * 1000
```
🔶 Exit Logic
Exits are triggered based on a specified time after the market opens. The strategy checks if the current time is within the defined exit period (e.g., 20 minutes after market open) and closes any open long positions.
- Exit time calculation:
exitTime = marketOpenTime + exitMinutesAfterOpen * 60 * 1000
🔶 Force Close on Fridays
To avoid the risk of holding positions over the weekend, the strategy force-closes any open positions 5 minutes before the market close on Fridays.
- Force close logic:
isFriday = (dayofweek(currentTime, marketTimezone) == dayofweek.friday)
█ Trade Direction
This strategy is designed exclusively for long trades. It enters a long position before market close and exits the position after market open. There is no shorting involved in this strategy, and it focuses on capturing upward momentum during the overnight session.
█ Usage
This strategy is suitable for traders who want to take advantage of price movements that occur during the overnight period without holding positions for extended periods. It automates entry and exit times, ensuring that trades are placed at the appropriate times based on the market session selected by the user. The 3commas bot integration also allows for automated execution, making it ideal for traders who wish to set it and forget it. The strategy is flexible enough to work across various global markets, depending on the trader's preference.
█ Default Settings
1. entryMinutesBeforeClose (Default = 20 minutes):
This setting determines how many minutes before the market close the strategy will enter a long position. A shorter duration could mean missing out on potential movements, while a longer duration could expose the position to greater price fluctuations before the market closes.
2. exitMinutesAfterOpen (Default = 20 minutes):
This setting controls how many minutes after the market opens the position will be exited. A shorter exit time minimizes exposure to market volatility at the open, while a longer exit time could capture more of the overnight price movement.
3. emaLength (Default = 100):
The length of the EMA affects how the strategy filters trades. A shorter EMA (e.g., 50) reacts more quickly to price changes, allowing more frequent entries, while a longer EMA (e.g., 200) smooths out price action and only allows entries when there is a stronger underlying trend.
The effect of using a longer EMA (e.g., 200) would be:
```
EMA(t) = +
```
4. emaTimeframe (Default = 240):
This is the timeframe used for calculating the EMA. A higher timeframe (e.g., 360) would base entries on longer-term trends, while a shorter timeframe (e.g., 60) would respond more quickly to price movements, potentially allowing more frequent trades.
5. useEMA (Default = true):
This toggle enables or disables the EMA filter. When enabled, trades are only taken when the price is above the EMA. Disabling the EMA allows the strategy to enter trades without any trend validation, which could increase the number of trades but also increase risk.
6. Market Selection (Default = US):
This setting determines which global market's open and close times the strategy will use. The selection of the market affects the timing of entries and exits and should be chosen based on the user's preference or geographic focus.
TrippleMACDCryptocurrency Scalping Strategy for 1m Timeframe
Introduction:
Welcome to our cutting-edge cryptocurrency scalping strategy tailored specifically for the 1-minute timeframe. By combining three MACD indicators with different parameters and averaging them, along with applying RSI, we've developed a highly effective strategy for maximizing profits in the cryptocurrency market. This strategy is designed for automated trading through our bot, which executes trades using hooks. All trades are calculated for long positions only, ensuring optimal performance in a fast-paced market.
Key Components:
MACD (Moving Average Convergence Divergence):
We've utilized three MACD indicators with varying parameters to capture different aspects of market momentum.
Averaging these MACD indicators helps smooth out noise and provides a more reliable signal for trading decisions.
RSI (Relative Strength Index):
RSI serves as a complementary indicator, providing insights into the strength of bullish trends.
By incorporating RSI, we enhance the accuracy of our entry and exit points, ensuring timely execution of trades.
Strategy Overview:
Long Position Entries:
Initiate long positions when all three MACD indicators signal bullish momentum and the RSI confirms bullish strength.
This combination of indicators increases the probability of successful trades, allowing us to capitalize on uptrends effectively.
Utilizing Linear Regression:
Linear regression is employed to identify consolidation phases in the market.
Recognizing consolidation periods helps us avoid trading during choppy price action, ensuring optimal performance.
Suitability for Grid Trading Bots:
Our strategy is well-suited for grid trading bots due to frequent price fluctuations and opportunities for grid activation.
The strategy's design accounts for price breakthroughs, which are advantageous for grid trading strategies.
Benefits of the Strategy:
Consistent Performance Across Cryptocurrencies:
Through rigorous testing on various cryptocurrency futures contracts, our strategy has demonstrated favorable results across different coins.
Its adaptability makes it a versatile tool for traders seeking consistent profits in the cryptocurrency market.
Integration of Advanced Techniques:
By integrating multiple indicators and employing linear regression, our strategy leverages advanced techniques to enhance trading performance.
This strategic approach ensures a comprehensive analysis of market conditions, leading to well-informed trading decisions.
Conclusion:
Our cryptocurrency scalping strategy offers a sophisticated yet user-friendly approach to trading in the fast-paced environment of the 1-minute timeframe. With its emphasis on automation, accuracy, and adaptability, our strategy empowers traders to navigate the complexities of the cryptocurrency market with confidence. Whether you're a seasoned trader or a novice investor, our strategy provides a reliable framework for achieving consistent profits and maximizing returns on your investment.
MH DCA Trail EmulatorThe Market Hunter DCA Bot emulator is designed to simplify the visual analysis of the algorithm and bot configuration. The algorithm calculates the distance specified in the settings from hai to DCA0 (the first grid order) and trails the grid before entering the position. After exiting the position, the current high is calculated and a new grid is placed at the specified distance.
There are 3 levels available in the settings DCA0 DCA1 DCA2, take profit and liquidation. The average position rate is calculated based on the volume of orders DCA0=X1, DCA1=X1, DCA2=X2.
Эмулятор работы Market Hunter DCA Bot разработан для упрощения визуального анализа работы алгоритма и настройки бота. Алгоритм рассчитывает указанное в настройках расстояние от хая до DCA0 (первого ордера сетки) и трейлит сетку до входа в позицию. После выхода из позиции рассчитывается текущий хай и на указанном расстоянии ставит новую сетку.
В настройках доступно 3 уровня DCA0 DCA1 DCA2, тейк профит и ликвидация. Средний курс позиции рассчитывается исходя из объёмов ордеров DCA0=X1, DCA1=X1, DCA2=X2.х
CryptoGraph Dynamic DCAA system to backtest and automate comprehensive trading strategies
═════════════════════════════════════════════════════════════════════════
🟣 Supporting Your Trades
CryptoGraph Dynamic DCA serves as a comprehensive tool on TradingView, designed to refine your approach to cryptocurrency trading. It utilises dynamic dollar-cost averaging (DCA), based on external indicator sources, to provide structured market entry and exit strategies. Suitable for both short-term trading and long-term portfolio management, CryptoGraph Dynamic DCA can offer a methodical way to support your trading decisions.
The tool offers an intuitive interface with inputs for strategy customisation, visualised preferences, and bot alert configurations. It can assist traders seeking precision, adaptability, and control in their trading activities. In the example on the chart above, we use the CryptoGraph Entry Builder (part of CryptoGraph Dynamic DCA package) as an external source for our initial entry (base order) and our safety orders, as well as an external source for our second take profit, which can be configured to be signal based.
🟣 Features
External Entry/Exit sources: The strategy is designed to assist with accurate market entries and exits by utilising signals from external indicators. It offers the flexibility to tailor your trading approach, providing an opportunity to leverage the analytical capabilities of various indicators available on TradingView.
Strategic Direction Control: Configure your strategy to go long, short, or both, adapting to market trends and your trading style.
Leverage Customisation: Tailor your leverage settings for isolated or cross margin to align with your risk tolerance, a liquidation estimation level is plotted on the chart, based on your input settings.
Diverse Entry Points: Utilise base orders and safety orders to diversify your entry points, reducing risk and enhancing potential returns.
Tailored Order Size: Fine-tune your order sizes using margin percentages or fixed contract sizes to fit your strategy’s requirements.
Profit Taking & Loss Prevention: Set take profit levels and stop losses with percentage or ATR-based parameters to secure profits and minimise losses. Options for moving the stop loss to entry after Take Profit 1, with an adjustable buffer, give you control over your risk management.
Max Safety Orders Count: Determine the maximum number of safety orders to manage risk effectively.
Price Deviation for DCA Orders: Specify the minimum price deviation percentage to trigger DCA orders, ensuring strategic order placement.
DCA Size Method: Choose from scaling or fixed-size DCA orders to align with your capital allocation strategy.
Visualisation & Alerts: Analyse your strategy’s performance with a backtest results table and configure bot alerts for automated trading. Auto configuration methods are integrated for multiple automated trading platforms.
🟣 Features Impression
🟣 Usage Guide
1. Strategy Configuration:
Select the appropriate cryptocurrency pair and exchange that corresponds to your trading preferences.
Choose your desired chart timeframe to align with your trading strategy’s temporal scope.
Ensure that you’re utilising the regular candle type for consistent and reliable data interpretation.
Pick an external entry source to trigger your trades based on predefined indicators or conditions.
Determine your take profit and stop loss levels to manage risks and secure earnings effectively.
Configure your DCA (Dollar-Cost Averaging) settings, including safety orders and the scaling method, to enhance entry points and manage investment distribution.
Always consult the tooltips next to each strategy input, to better understand their functions.
2. Backtest and Analysis:
Run backtests with your configured parameters to assess the strategy’s potential performance.
Review the backtest results and statistics tables to understand the strategy’s effectiveness, risk profile, and profitability.
3. Automated Trading Platform Integration:
Connect the strategy to a compatible automated trading platform to enable real-time execution of trades.
Within the trading platform, ensure the proper API setup of the bot’s configuration to align with the signals from the tool.
4. Alert Configuration in TradingView:
Set up the alert conditions in the TradingView tool to match your strategy triggers for entry, exit, take profit, and stop loss.
Configure the connection parameters within the tool to communicate effectively with your chosen automated trading platform
Activate the alerts, ensuring they are set to trigger actions such as order placement, adjustments, or closures as per your strategy’s logic.
5. Capital Management:
Confirm that your initial capital and order size are logically set, keeping in mind that the sum of all deals, especially when using pyramiding with safety orders, should not exceed your initial capital to avoid overexposure.
🟣 Trade Example
A clear example of a trade. Base order entry, safety order 1 fills, take profit 1 hits at 1%, the remainder of the position runs until the exit signal fires.
🟣 Warning
This tool has been developed to support your trading analysis, yet it’s important to acknowledge the inherent risks associated with trading. It is advisable to perform thorough research, assess your risk tolerance, and utilise this tool as one element of an overall trading strategy. Ensure that you only trade with capital that you are prepared to risk. In addition, due to the complexity of the tool, bugs may be found. Please alert us whenever you think you have found a bug in the system.
Smart DCA StrategyINSPIRATION
While Dollar Cost Averaging (DCA) is a popular and stress-free investment approach, I noticed an opportunity for enhancement. Standard DCA involves buying consistently, regardless of market conditions, which can sometimes mean missing out on optimal investment opportunities. This led me to develop the Smart DCA Strategy – a 'set and forget' method like traditional DCA, but with an intelligent twist to boost its effectiveness.
The goal was to build something more profitable than a standard DCA strategy so it was equally important that this indicator could backtest its own results in an A/B test manner against the regular DCA strategy.
WHY IS IT SMART?
The key to this strategy is its dynamic approach: buying aggressively when the market shows signs of being oversold, and sitting on the sidelines when it's not. This approach aims to optimize entry points, enhancing the potential for better returns while maintaining the simplicity and low stress of DCA.
WHAT THIS STRATEGY IS, AND IS NOT
This is an investment style strategy. It is designed to improve upon the common standard DCA investment strategy. It is therefore NOT a day trading strategy. Feel free to experiment with various timeframes, but it was designed to be used on a daily timeframe and that's how I recommend it to be used.
You may also go months without any buy signals during bull markets, but remember that is exactly the point of the strategy - to keep your buying power on the sidelines until the markets have significantly pulled back. You need to be patient and trust in the historical backtesting you have performed.
HOW IT WORKS
The Smart DCA Strategy leverages a creative approach to using Moving Averages to identify the most opportune moments to buy. A trigger occurs when a daily candle, in its entirety including the high wick, closes below the threshold line or box plotted on the chart. The indicator is designed to facilitate both backtesting and live trading.
HOW TO USE
Settings:
The input parameters for tuning have been intentionally simplified in an effort to prevent users falling into the overfitting trap.
The main control is the Buying strictness scale setting. Setting this to a lower value will provide more buying days (less strict) while higher values mean less buying days (more strict). In my testing I've found level 9 to provide good all round results.
Validation days is a setting to prevent triggering entries until the asset has spent a given number of days (candles) in the overbought state. Increasing this makes entries stricter. I've found 0 to give the best results across most assets.
In the backtest settings you can also configure how much to buy for each day an entry triggers. Blind buy size is the amount you would buy every day in a standard DCA strategy. Smart buy size is the amount you would buy each day a Smart DCA entry is triggered.
You can also experiment with backtesting your strategy over different historical datasets by using the Start date and End date settings. The results table will not calculate for any trades outside what you've set in the date range settings.
Backtesting:
When backtesting you should use the results table on the top right to tune and optimise the results of your strategy. As with all backtests, be careful to avoid overfitting the parameters. It's better to have a setup which works well across many currencies and historical periods than a setup which is excellent on one dataset but bad on most others. This gives a much higher probability that it will be effective when you move to live trading.
The results table provides a clear visual representation as to which strategy, standard or smart, is more profitable for the given dataset. You will notice the columns are dynamically coloured red and green. Their colour changes based on which strategy is more profitable in the A/B style backtest - green wins, red loses. The key metrics to focus on are GOA (Gain on Account) and Avg Cost .
Live Trading:
After you've finished backtesting you can proceed with configuring your alerts for live trading.
But first, you need to estimate the amount you should buy on each Smart DCA entry. We can use the Total invested row in the results table to calculate this. Assuming we're looking to trade on BITSTAMP:BTCUSD
Decide how much USD you would spend each day to buy BTC if you were using a standard DCA strategy. Lets say that is $5 per day
Enter that USD amount in the Blind buy size settings box
Check the Blind Buy column in the results table. If we set the backtest date range to the last 10 years, we would expect the amount spent on blind buys over 10 years to be $18,250 given $5 each day
Next we need to tweak the value of the Smart buy size parameter in setting to get it as close as we can to the Total Invested amount for Blind Buy
By following this approach it means we will invest roughly the same amount into our Smart DCA strategy as we would have into a standard DCA strategy over any given time period.
After you have calculated the Smart buy size , you can go ahead and set up alerts on Smart DCA buy triggers.
BOT AUTOMATION
In an effort to maintain the 'set and forget' stress-free benefits of a standard DCA strategy, I have set my personal Smart DCA Strategy up to be automated. The bot runs on AWS and I have a fully functional project for the bot on my GitHub account. Just reach out if you would like me to point you towards it. You can also hook this into any other 3rd party trade automation system of your choice using the pre-configured alerts within the indicator.
PLANNED FUTURE DEVELOPMENTS
Currently this is purely an accumulation strategy. It does not have any sell signals right now but I have ideas on how I will build upon it to incorporate an algorithm for selling. The strategy should gradually offload profits in bull markets which generates more USD which gives more buying power to rinse and repeat the same process in the next cycle only with a bigger starting capital. Watch this space!
MARKETS
Crypto:
This strategy has been specifically built to work on the crypto markets. It has been developed, backtested and tuned against crypto markets and I personally only run it on crypto markets to accumulate more of the coins I believe in for the long term. In the section below I will provide some backtest results from some of the top crypto assets.
Stocks:
I've found it is generally more profitable than a standard DCA strategy on the majority of stocks, however the results proved to be a lot more impressive on crypto. This is mainly due to the volatility and cycles found in crypto markets. The strategy makes its profits from capitalising on pullbacks in price. Good stocks on the other hand tend to move up and to the right with less significant pullbacks, therefore giving this strategy less opportunity to flourish.
Forex:
As this is an accumulation style investment strategy, I do not recommend that you use it to trade Forex.
STRATEGY IN ACTION
Here you see the indicator running on the BITSTAMP:BTCUSD pair. You can read the indicator as follows:
Vertical green bands on historical candles represents where buy signals triggered in the past
Table on the top right represents the results of the A/B backtest against a standard DCA strategy
Green Smart Buy column shows that Smart DCA was more profitable than standard DCA on this backtest. That is shown by the percentage GOA (Gain on Account) and the Avg Cost
Smart Buy Zone label marks the threshold which the entire candle must be below to trigger a buy signal (line can be changed to a box under plotting settings)
Green color of Smart Buy Zone label represents that the open candle is still valid for a buy signal. A signal will only be generated if the candle closes while this label is still green
Below is the same BITSTAMP:BTCUSD chart a couple of days later. Notice how the threshold has been broken and the Smart Buy Zone label has turned from green to red. No buy signal can be triggered for this day - even if the candle retraced and closed below the threshold before daily candle close.
Notice how the green vertical bands tend to be present after significant pullbacks in price. This is the reason the strategy works! Below is the same BITSTAMP:BTCUSD chart, but this time zoomed out to present a clearer picture of the times it would invest vs times it would sit out of the market. You will notice it invests heavily in bear markets and significant pullbacks, and does not buy anything during bull markets.
Finally, to visually demonstrate the indicator on an asset other than BTC, here is an example on CRYPTO:ETHUSD . In this case the current daily high has not touched the threshold so it is still possible for this to be a valid buy trigger on daily candle close. The vertical green band will not print until the buy trigger is confirmed.
BACKTEST RESULTS
Now for some backtest results to demonstrate the improved performance over a standard DCA strategy using all non-stablecoin assets in the top 30 cryptos by marketcap.
I've used the TradingView ticker (exchange name denoted as CRYPTO in the symbol search) for every symbol tested with the exception of BTCUSD because there was some dodgy data at the beginning of the TradingView BTCUSD chart which overinflated the effectiveness of the Smart DCA strategy on that ticker. For BTCUSD I've used the BITSTAMP exchange data. The symbol links below will take you to the correct chart and exchange used for the test.
I'm using the GOA (Gain on Account) values to present how each strategy performed.
The value on the left side is the standard DCA result and the right is the Smart DCA result.
✅ means Smart DCA strategy outperformed the standard DCA strategy
❌ means standard DCA strategy outperformed the Smart DCA strategy
To avoid overfitting, and to prove that this strategy does not suffer from overfitting, I've used the exact same input parameters for every symbol tested below. The settings used in these backtests are:
Buying strictness scale: 9
Validation days: 0
You can absolutely tweak the values per symbol to further improve the results of each, however I think using identical settings on every pair tested demonstrates a higher likelihood that the results will be similar in the live markets.
I'm presenting results for two time periods:
First price data available for trading pair -> closing candle on Friday 26th Jan 2024 (ALL TIME)
Opening candle on Sunday 1st Jan 2023 -> closing candle on Friday 26th Jan 2024 (JAN 2023 -> JAN 2024)
ALL TIME:
BITSTAMP:BTCUSD 80,884% / 133,582% ✅
CRYPTO:ETHUSD 17,231% / 36,146% ✅
CRYPTO:BNBUSD 5,314% / 2,702% ❌
CRYPTO:SOLUSD 1,745% / 1,171% ❌
CRYPTO:XRPUSD 2,585% / 4,544% ✅
CRYPTO:ADAUSD 338% / 353% ✅
CRYPTO:AVAXUSD 130% / 160% ✅
CRYPTO:DOGEUSD 13,690% / 16,432% ✅
CRYPTO:TRXUSD 414% / 466% ✅
CRYPTO:DOTUSD -16% / -7% ✅
CRYPTO:LINKUSD 1,161% / 2,164% ✅
CRYPTO:TONUSD 25% / 47% ✅
CRYPTO:MATICUSD 1,769% / 1,587% ❌
CRYPTO:ICPUSD 70% / 50% ❌
CRYPTO:SHIBUSD -20% / -19% ✅
CRYPTO:LTCUSD 486% / 718% ✅
CRYPTO:BCHUSD -4% / 3% ✅
CRYPTO:LEOUSD 102% / 151% ✅
CRYPTO:ATOMUSD 46% / 91% ✅
CRYPTO:UNIUSD -16% / 1% ✅
CRYPTO:ETCUSD 283% / 414% ✅
CRYPTO:OKBUSD 1,286% / 1,935% ✅
CRYPTO:XLMUSD 1,471% / 1,592% ✅
CRYPTO:INJUSD 830% / 1,035% ✅
CRYPTO:OPUSD 138% / 195% ✅
CRYPTO:NEARUSD 23% / 44% ✅
Backtest result analysis:
Assuming we have an initial investment amount of $10,000 spread evenly across each asset since the creation of each asset, it would have provided the following results.
Standard DCA Strategy results:
Average percent return: 4,998.65%
Profit: $499,865
Closing balance: $509,865
Smart DCA Strategy results:
Average percent return: 7,906.03%
Profit: $790,603
Closing balance: $800,603
JAN 2023 -> JAN 2024:
BITSTAMP:BTCUSD 47% / 66% ✅
CRYPTO:ETHUSD 26% / 33% ✅
CRYPTO:BNBUSD 15% / 17% ✅
CRYPTO:SOLUSD 272% / 394% ✅
CRYPTO:XRPUSD 7% / 12% ✅
CRYPTO:ADAUSD 43% / 59% ✅
CRYPTO:AVAXUSD 116% / 151% ✅
CRYPTO:DOGEUSD 8% / 14% ✅
CRYPTO:TRXUSD 48% / 65% ✅
CRYPTO:DOTUSD 24% / 35% ✅
CRYPTO:LINKUSD 83% / 124% ✅
CRYPTO:TONUSD 7% / 21% ✅
CRYPTO:MATICUSD -3% / 7% ✅
CRYPTO:ICPUSD 161% / 196% ✅
CRYPTO:SHIBUSD 1% / 8% ✅
CRYPTO:LTCUSD -15% / -7% ✅
CRYPTO:BCHUSD 47% / 68% ✅
CRYPTO:LEOUSD 9% / 11% ✅
CRYPTO:ATOMUSD 1% / 15% ✅
CRYPTO:UNIUSD 9% / 23% ✅
CRYPTO:ETCUSD 27% / 40% ✅
CRYPTO:OKBUSD 21% / 30% ✅
CRYPTO:XLMUSD 11% / 19% ✅
CRYPTO:INJUSD 477% / 446% ❌
CRYPTO:OPUSD 77% / 91% ✅
CRYPTO:NEARUSD 78% / 95% ✅
Backtest result analysis:
Assuming we have an initial investment amount of $10,000 spread evenly across each asset for the duration of 2023, it would have provided the following results.
Standard DCA Strategy results:
Average percent return: 61.42%
Profit: $6,142
Closing balance: $16,142
Smart DCA Strategy results:
Average percent return: 78.19%
Profit: $7,819
Closing balance: $17,819