Beginner’s Guide to Crypto Trading Bots — Part 20— Parallel Testing
Time to fine tune your automated income.
Time to fine tune your automated income.
Parallel Testing
Exploring Strategy Optimization
If you want to compare bot configurations to maximize profits, it is time to run parallel tests running multiple bots at the same time with different configurations.
When running parallel tests, it is best (even though not always totally possible) to keep your tests as strict and consistent as a lab experiment, controlling for all the variables that you can.
Always test the same trading pair. (unless the point of the test is comparing different trading pairs on the same bot configuration)
Invest the same amount into each test to be consistent, to make calculation and tracking easier on you.
Keep a log/journal of your settings and your results. (if cross-testing using different platforms and tools, sometimes the settings just aren’t quite the same, so you have to go with what you have available)
When testing it is probably a good idea to run the bot for a minimum of 1 day. Some tests have different time frames, but it might be difficult to gauge the effectiveness of any bot configuration in a single day.
One of my latest parallel tests is letting a particular bot configuration run for an entire year. The time period defines the test really.
The primary values I keep a log of are:
Bot Configuration Values (Screenshots)
Gross Gains
Time Frame
Market Conditions (Bear or Bull, Flat or Volatile)
Total Average Price Movement during that Time Frame
How much <gross profit> in <x time period> is the measure of how well a certain set of bot settings performed for me in <x market conditions> with <x average price movement>.
Later when looking at my log and journal, I will see a history of my gains and losses and be able to easily see what bot/configuration I used, how the market was behaving, and the average price movement during that time period.
You never know when looking back on your data will lead to an epiphany that causes you to change up your strategy a bit.
Examples
Parallel Test 1
Goal: Configure a grid bot for better short term gains.
Timeframe: 7 Days
Get the Moving Average for today, and for the week.
Create Two Grid Bots with $100 in each bot.
Same Bot, Same Trading Pair.
Give each one a different active spread.
Bot 1, create a wide spread that is wider than the moving average.Bot 2, create a thinner spread that is nearer to the moving average.
Let’s say the moving average for today is 3% and 8% for the week.
Based on todays BTC price of 60,500 — my wider spread bot will have a lower limit of $55,000 and an upper limit of $64,000 ($9,000 spread), and the other will have 59,000 and $62,000. ($3000 spread). Both bots will have 20 grids.
Thinning the price spread can bring more profit when the market is fluctuating within a smaller range, but it of course runs the risk of price going out of bounds. If BTC price goes out of my defined limits at all, it will just stop trading until price goes back into range.
At the end of 7 days, which bot was more profitable? Note the results.
A thinner spread does not work in all market conditions, so this is not a good test for a longer term bot.
Parallel Test 2
Goal: Configure a grid bot for hands-free long term gains.
Timeframe: 30 Days, intent to leave running indefinitely
Subtract the difference between the highest price of in the last year, and the lowest.
Two Spreads, Three Different Profit-Per-Grid configurations
Create 6 Grid Bots with $100 in each bot.
Same Bot, Same Trading Pair
3 bots, I am going super wide; they will have identical spreads. The Lower Limit will be set far below the current price, and Upper Limit will be at least 2x current price. This might look like $20,000 — $120,000 price range. I will configure one bot with 1000 grids, the second with 500 grids, and the last one, with 50 grids.
Second test group of 3 bots, I am going to configure with a $40,000 — $80,000 price range — a $40,000 spread. Just like the last group, I will configure one bot with 1000 grids, the second with 500 grids, and the last one, with 50 grids.
How did I choose my spreads? I know that BTC was less than $30,000 exactly 1 year ago. So we have gained 100%+ in a year, I want my extra large range to be far outside of that, and I want my “more realistic moving average” price range to be nearer to the actual moving average for the last year. Because we have gained 35k+ within a year, I set the spread to $40,000.
Now I set them to run for 30 days, and note the results. The most successful bot, I may promote to a larger balance and keep it running for a year.
Parallel Test 3
In this test, I will not use the same bot, but compare two different bots entirely.
Goal: Which bot is better for long term gains?
Timeframe: 6 months
Subtract the difference between the highest price in the last year, and the lowest.
Do the same for each month, the last six months.
Create 1 Grid Bot and 1 Martingale DCA Bot, both $100
Same Trading Pair
For the Grid Bot, based on the total price movement from 2023 until now (June 2024) — BTC went from 25k to 74k, I am going to define my price spread for my grid bot as $40,000 — $100,000. I am going to use 500 grids.
For the Martingale Bot, based on the monthly average price movement from 2023 until now (June 2024) — which is anywhere from 5–10%, I am going to set my price scale to 1%, my volume scale multiplier as 1.5x, and total buys will be 10, giving me a 10% spread.
How did I come up with the values I am using in my configurations?
Or how do I know to base my Martingale long-term configuration more off of monthly averages, while basing long-term grid bots mostly around total movement in the year?
By parallel testing!
Sometimes you don’t see things until you test.
The spread range of a standard grid bot can be configured to far exceed actual average price fluctuation and the most that will happen typically is that is you have a bunch of orders waiting to execute that never execute. It might be less profitable, but this will not usually put your bot investment value at a significant loss.
Martingale is totally different. Setting the spread ultra-wide can tank it’s profitability hard, so I try to keep my spread just thin enough to capture the actual recent price movement, but not thin enough to fall out of active range too easily. This difference in configuration style is all due to the “volume scale” — the multiplier — which is unique to the Martingale bot.
I didn’t read this or find this information anywhere, I merely parallel tested grid bots against martingales for a few months until I figured it out.
Parallel Test AI Strategy Against Customized Configuration!
On paper and in the short term, it looks very much like the new AI Settings on many exchanges will underperform a more Semi-Automated strategy where the trader captures profit and stops/starts the bots and dynamically changes settings to suit updated market trends.
But don’t let that stop you from testing the AI-Generated settings against your own customized bot configurations! You may find surprises!
I will truly be on Cloud 9 the day that the AI settings take over and can dynamically respond and reconfigure bot operation and my brain doesn’t even need to be involved anymore.
I continue to parallel test AI generated settings against my own manual configurations, waiting for that glorious day to come!!
That completes my Beginner’s Guide To Crypto Trading Bots!
This guide may be updated every few years when the need for updated examples and graphics occurs, and it will be updated as an ebook/book. Cryptocurrency exchanges change over time, new bots are released, interfaces change, and I intend to keep this book updated to stay up with the the times as best I can.
I won’t be updating these particular Substack articles, but I may publish new ones if the changes are so drastic to warrant that.
May this little handy guide help you accelerate your cryptocurrency trading bot journey!
Thank you for reading!
Until next time….
Onward and Upward Everybody!
-Chris
Automated Income Lifesyle w/ Chris Morton YouTube
If you are new to this story thread and wish to pick up from the beginning, you can start here:
If you want a peek into my personal strategy that I have been using to generate about $6000 per month income (during a bull market), check that out here:
How I Earn $6,000/mo from with Semi-Automated Crypto Trading on my Mobile Device
There is no upsell at the end of this blog.
#tradingbotlife #thebotsandbots #botsdothings #thingsandstuff #imjustaguyontheinternet