First off you will want to look at the API documentation of the exchange your wanting to build for. This would be a good starting point get all information you need to interact with the API.
Then it's selecting the language you want to use to create your trading system, lots of bots use python for CLI based bots but if you were looking to make something more professional then C# or C++ would be a good place to start.
It's by no means a easy task to create a trading bot we have a team currently developing a trading system for bitmex, binance and bybit.
You must also map out the features you want the bot to have like PNL tracking, Stop loss, Algorithmic trading, Manual Trading, Order creation & cancellation + a vast amount of other things to take into consideration.
You could also have a look at some of these projects and lib's that will be useful to the creation of a bot.
TALIB - Technical analysis and indicators
https://github.com/DavidFuchs42/TALibraryInCSharpAlpaca SDK
https://github.com/alpacahq/alpaca-trade-api-csharpDeedle - Exploratory data library for .NET (useful for creating backtest modules)
http://bluemountaincapital.github.io/Deedle/index.htmlIt is also advised if your planning on building one to use the bitmex testnet as this way you won't lose any funds while testing if your planning on creating a bot for this platform.
If you are looking for some more info the feel free to join us I sent you the join links to our community via PM as we are closed community at the moment.