You have already experienced differences between Backtesting and live trading and maybe even misunderstandings. This article is here to clarify some of the issues.
Definition: Backtesting is a calculation of the performance of a strategy on historical data. However, it has some limitations like every simulator.
Main reasons
1) Impact of news and peak demands
2) Exchange and AP connection latency
Secondary reasons
3) Impact of your order on market depth
4) Choice of real simulated volume in blocks
5) Limitation of backtesting to one minute
Additional tools and good conduct
6) Example of appropriate use of backtests
7) Torkium, the backtest library
There are indeed several difficulties with simulations, but we would like to remind you that our backtesting tool is one of the best on the market and is free, while other platforms charge for this service.
Main reasons for these differences:
1) Impact of news and demand spikes
This is part of the crowd movements of traders who follow, in a buying or selling position with the announcements of results of a company or in our case a positive or negative news of the targeted corner or even about cryptocurrencies in general.
It is therefore obvious to relativize the influence of news in Backtest in ideal conditions. In other words, a strategy will not necessarily be as excellent in live trading as in Backtest, especially if it does not find at least part of the exceptional conditions following this news effect.
We can cite the example of Dogecoin which is promoted very frequently by Elon Musk on Twitter, hence the impact on live trading in these difficult conditions of high demand for cryptocurrency with the consequence of different results in Backtest (see photo below).
In the example above, the influence of this news may result in a spike in demand from sellers with a surge in global demand and potential maintenance or disruption of exchanges and a fortiori on lives trading which may therefore diverge a little more significantly than in ideal backtesting conditions.
You can read the article on monitoring dapps coin on social networks which can help you take advantage of these influences by cross-checking the data with your own research.
2) Exchange latency and API connection
In live trading, the execution of the order is subject to latency on the part of the exchange but also via its API interface which makes the connection with Kryll.
Thus, when an order is executed by a strategy, hundreds or even thousands of Kryll users benefit from these orders via the API (application programming interface) which links the trading orders via the Kryll platform for the exchange and obviously for technical reasons, they cannot be executed simultaneously, hence a certain difference in results, especially if the person does not start the strategy at the same time (see this article on this subject).
Thus, by this demonstration of latency in live trading, it is obvious that in Backtest the results can be different, because the conditions are ideal with orders that are executed simultaneously for each user who Backtests.
Knowing that when the order reaches the exchange servers, priority is given to it on a first come, first served.
This way, we see differences between backtesting and live trading due to the physical limitations of the servers, which can lead to significant results when used on Futures or especially with leverage Tokens(bull/bear tokens).
Like the Ethereum network congestion that was presented by Capet in this video(add subtitles), in case of peak demand (of Kryll and/or global users), there is a massive influx of orders that arrive on the "saturated" infrastructure connecting your computer and the exchanges (on the order book) with the rule of first come, first served. Hence the differences between these difficult live trading conditions and backtesting in ideal conditions without suffering from high demand or infrastructure latency.
Secondary reasons for these differences:
3) Price impact on market depth
In live trading, you have an impact on the market depth at a given time "T" in the order book.
The live order book can be different and it can prioritize certain larger amounts, especially in areas of resistance/main support.
As a reminder, the order book summarizes the state of supply and demand for security at a given time. It shows the best bids (sellers) and the best offers (buyers) on the stock or the coin/token with the following data: quantities, prices and number of orders (see picture below)
Backtesting and live trading: In live trading, your buy or sell order is prioritized on a first come, first-served basis in a pending book.
In Backtest, this impact on the depth of the market and on the order book is neglected, because there is a simulation of the past order book and there will therefore be no reaction if you buy, for example, 100 BTC at this moment "in Backtest"; you will follow the (past) trend whatever your "virtual" order.
4)Choice of the real volume block to improve the backtests
Depending on the relevance of the strategy; a long-term bot that trades little may require less precision most of the time than a short-term strategy that trades a lot every day. On the other hand, a short-term strategy that is not on a liquid pair and therefore with little volume may require more precision in the backtest, which would bring it closer to the results of live trading.
It is the choice of the Publisher to set up or not a real volume block attached to each other indicator blocks (or by setting up volume block in a strategic period as in bear, during the summer period when the volume is generally reduced or if the pair has low volume) according to his strategy.
This results in a better accuracy in Backtesting, but it remains a long wait to get the results so prefer a defined duration such as range, uptrend or downtrend to save time or look on the site torkium if the last 3 months correspond to the trend to test.
5)Backtesting is limited to one minute
Kryll offers one of the most accurate backtests in the world with a granularity to the minute with info the "OHLC" reference and here on 1 minute minimum in backtest; O: open, the opening price, H: High, the highest price, L: Low, the lowest price, C: close, the closing price (here 1 minute).
However in live trading your orders are executed in a second or less (tick) which is a potential difference with backtesting, as there is less data in the simulations.
In addition, there are priority orders that will determine the path of your trades in condition loops to be tested; this impacts the performance of the live (let alone the backtest)
These priorities can potentially change (this remains exceptional) by taking into account the data under the minute that is not available in the backtest.
Lastly, for strategies that support (or not) short variations on short volume changes of a few minutes or less, the live strategy can potentially outperform or underperform the Backtest depending on the blocks adapted or not.
Beware of buy/sell blocks on an illiquid pair that can result in large variations between the order placed and executed; therefore favor limit blocks or ask publishers if they have set up limit blocks for pairs (see recommended pairs) with low volume (see Coingecko; markets with the most volume: https://www.coingecko.com/fr/pièces/chainlink#markets).
These types of violent price changes are commonly called flash dump (or pump).
Additional tools and good behaviors:
6) Torkium, the Backtest library
By the way, thanks to the Kryll community, user volunteers have set up automatic autobacktests using bot with regular updates on their sites.
Many of these results of Backtest can be consulted including pairs not necessarily spotted by the Publisher that can be potentially used by multi-coin strategies adapted and with the implementation of some data from the deep analysis (option of deep analysis after Backtest).
As a reminder, from what we have seen, the backtests are, however, only a simulation that does not take into account (or only with difficulty) the difficulties mentioned above. It is above all a tool to verify the general trading mechanics on a past trend scenario that can eventually help us in projecting the current trend.
7)Example of appropriate use of backtests
We can recall, first of all, the inappropriate use of backtests:
- Absolutely wanting to do a backtest with live trading data (starting and ending capital) especially if the conditions of live trading are exceptional (high global demand, exchange maintenance) leading to deviate significantly from the ideal conditions mentioned earlier for Backtests.
Indeed, a high worldwide demand for cryptocurrencies can lead to an increase in server latency and a difficulty in distributing trading orders from the source signal of the Publisher's strategy to the final order book on the exchange.
Even if this factor is external and beyond our control, we have implemented countermeasures by communicating on the prevention aspect with this article, but also by indicating Publishers to do:
- Updates of blocks to avoid taking positions too large during a period of high demand (anticipation of peaks in load) especially for leverage tokens (bull/bear) and futures
- Communication adapted to users via their dedicated Telegram Chan through their community manager.
Backtests with a more appropriate use
Outside of comparing the Backtest with its live trading, the philosophy of the Backtest is mainly to have an overview of the general mechanics of the strategy through different trend scenarios that we will see:
- The short-term trend (a few days to a few weeks) backtested and projected on the current trend:
In the history of Backtest of a single trend (short term user profile) and in the context of a short-term money management strategy, you just have to Backtest a period of rise/fall (or range) close to the current trend and then start the strategies adapted to this short-term trend with the option of a regular profit taking strategy(stop+relaunch trading bot) or not depending on , according to you, the support of the Holders of the asset (see the article on the choice of the coin) and the global money management strategy of the publisher (read the description of the strategy on the Kryll marketplace and go to Telegram support of the dedicated strategy).
- User profiles on medium/long-term trend (few weeks to several months or even years) with backtests on the 3 main periods (see below) and projected on the current trend:
On the current trend which is close to the Backtested trend, many users take into account the best result in the choice of strategy or some play the versatility card with slightly lesser but honorable performances by focusing on the right trading mechanics on the medium/long term and by establishing a link of trust and availability with the Publisher and its community.
While understanding the results of Backtest; seen in the dedicated article(see this link). It is advisable in this case to Backtest on 3 periods (bearish, in range and bullish) in order to have the relevance of the performance on medium / long term (see image below):
It seems obvious that the backtests and therefore the strategy is affected by the price of the backtested coin or live trading. Thus, over a given period, if the trend is bullish (in spot), then the bot trading strategy will have a better chance of performing; it is therefore advisable to put the results of the Backtest into perspective, especially if the duration tested is short, with a focus on the potentially brief upward period, which may not occur again in the future.
You can cross-check the results of the Backtest with the livetrading to adjust to "real" trading:
By cross-checking the Backtest with the live trading, we see that the "SUPERLINK" specialized strategy remains "solid" in live trading by leading the ranking (+112.97%) on this day of May 27, 2021, despite the dump of May 19, 2021. We also have access to additional information by noticing that the multi-coin strategy "GEKKO BOT" has still achieved a performance of 31.54% despite not being specialized on LINK; what to use it in a global vision of accumulation of USDT.
Go to the Chan Telegram of the Publisher to ask questions before starting the strategy
This is the last step before the launch of a strategy with user feedback, questions to ask the Publisher with the option of requesting screenshots to users of their lives trading (see photo below):
Conclusion:
Backtests are simulations that do not include(or then hardly), pairs with little daily volume, order book priority, infrastructure latency, live data under the minutes and some exceptional conditions such as a strong generalized demand for the Backtested and live traded coin or coin catalyzed by positive or negative News via social networks.
These backtests are not binding on future performance and are only the vision of a trading mechanic on a past trend scenario that can possibly be projected on the current trend.
Backtests on medium and long-term strategies that trade little are less influenced because they are less frequently subjected to live trading conditions (which can be difficult) than short-term strategies.
Backtesting and live trading are adapted to the profiles of each user, depending on whether they are targeting the short term with a backtest of a similar past period projected onto the current trend or the medium term over a few months with a backtest of the three bearish, bullish or range periods, in order to select the most relevant strategy for the targeted coin and the user's profile.
It is also important to put in context each period of Backtest which in the case of general news very positive for the cryptocurrencies or the targeted coin can overestimate the quality of the strategy hence the importance of Backtesting other periods less bullish especially if the user adopts a medium/long-term profile.
If the user backtests only one trend period in projection on the current trend then he can opt for:
-Profit taking objectives(see strategy description on the marketplace and on the dedicated Telegram Chan)
-Or/and check by analyzing the Backtest+deep analysis and asking questions to the Publishers(via his support networks) if their strategies handle corrections without trend breakouts or even bigger trend changes.
The Backtest is therefore first and foremost a tool to understand the general trading mechanics of a strategy.
The Kryll trader user has to decide if this difference with the live results (top 20 live trading results of the targeted corner) available for a given pair is acceptable for live trading depending on his trading type and depending on the situation (high demand, increased latency on the infrastructure, pair with low volume).
A user profile targeting the medium/long term with a strategy that makes few trades will be less impacted than a profile targeting the short term especially on leveraged token (bull/bear) with a strategy that trades several times a day.
Going further:
Use the Backtest to see if the last buy or sell trade is not too far from the startup I am about to make.
Relativize the results in Backtest for exceptional pumps that cut the Backtest (see photo below):
After having chosen the Dogecoin which performed well on this multi-coin strategy "Hugin" thanks to the site http://torkryll.torkium.com/ , we notice that a stop of the strategy with "sell skipped" does not mar the global performance of the strategy on this pair until now, because it is enough to restart the strategy and thus here the backtest as shown in this picture below:
Last point, there may be a more regular price increase on some of the most famous altcoins and therefore potentially supported by a large community of holders in the long term with increasing users in the ecosystem related to the coin (social networks, dapps ... etc.).
We can cite as an example of these popular coins:
On the ALTCOIN/USDT market, we have the major coins (BNB,ETH,BTC) and market leaders in their sectors music, NFT, storage, oracle....etc. (See tutorial on the choice of coins and the importance of diversification).
Happy trading!
Website : https://kryll.io
Twitter : @Kryll.io
Telegram EN : https://t.me/kryll_io
Telegram FR: https://t.me/kryll_fr
Discord : https://discord.gg/PDcHd8K
Facebook : https://www.facebook.com/kryll.io
Support : support@kryll.zendesk.com