Automated trading bots have become essential tools for modern cryptocurrency traders. They allow you to execute trades around the clock based on predefined strategies, even when you're not actively monitoring the markets. This guide walks you through the process of creating and configuring a trading bot using API integration, providing you with the foundational knowledge to automate your trading approach effectively.
Before you begin, ensure you have created an app and obtained an access token. If you haven't completed this preliminary step, you'll need to secure an access token with OAuth2 authentication first. This token is crucial for authorizing all your API requests.
Step 1: Creating a New Trading Bot
The first step in automating your trading strategy is to create a new bot instance. This is accomplished by making a POST request to the designated hopper endpoint. While you can send extensive configuration details during this initial call, we recommend starting with basic parameters and refining the settings afterward for better control and clarity.
API Endpoint:
https://api.cryptohopper.com/v1/hopperJSON POST Data Example:
{
"name": "The name of your newly created trading bot.",
"enabled": 0
}A successful API request will return a JSON response containing a unique id value. This identifier is critical for all subsequent interactions with your bot. Store this ID securely, as you will need it to configure and manage your bot in the next step. This ID links all future configuration changes and operational commands directly to your specific bot instance.
Step 2: Configuring Your Trading Bot
After successfully creating your trading bot and obtaining its unique ID, the next phase involves detailed configuration. This step transforms your basic bot into a fully operational automated trading system tailored to your specific strategy and risk parameters. All modifications are made by targeting the bot-specific endpoint using its ID.
API Endpoint:
https://api.cryptohopper.com/v1/hopper/{id}Replace {id} in the endpoint URL with the unique identifier you received in Step 1. To update your bot's configuration, you'll need to make a PATCH request to this endpoint, including a JSON payload with the parameters you wish to modify. Only include the fields you want to change; omitted fields will retain their current values.
Example JSON PATCH Request:
{
"name": "A new name for your trading bot.",
"enabled": 1,
"api_config": {
"api_key": "Your exchange API key",
"api_secret": "Your exchange API secret"
},
"config": {
"exchange": "binance",
"collect_currency": "btc",
"allowed_coins": ["BTC", "ETH", "LTC"],
"perc_buy_amount": 50,
"min_buy_amount": 25,
"max_amount_allocated": 1000,
"strategy": "multiple_ta",
"num_targets_per_buy": 3,
"max_open_time_buy": 60,
"max_open_time": 120,
"set_percentage": 1.5
}
}Key Configuration Options Explained
Understanding each configuration parameter is essential for creating an effective trading bot. Here's a breakdown of some critical settings:
API Configuration (api_config)
- api_key: The public key generated from your cryptocurrency exchange account for API access.
- api_secret: The private secret key from your exchange, which authenticates API requests alongside your API key.
Bot Configuration (config)
- exchange: The specific trading platform you want your bot to connect to (e.g.,
binance). A list of supported exchanges and their keys is available from the API. - collect_currency: The base currency or quote currency for your trading pairs, specified in lowercase (e.g.,
usdt,btc). - allowed_coins: An array of uppercase ticker symbols (e.g.,
["BTC", "ETH", "SOL"]) that the bot is permitted to trade. - perc_buy_amount: The percentage of your total allocated capital to use for each individual buy order.
- min_buy_amount: The minimum permissible value for a single trade, helping to enforce risk management rules.
- max_amount_allocated: The total amount of capital (in your quote currency) that the bot is allowed to deploy.
- strategy: The trading methodology the bot will follow. This can range from simple built-in options to complex custom strategies. 👉 Explore more strategies
- num_targets_per_buy: The maximum number of simultaneous positions the bot can open when multiple trading signals are detected.
- max_open_time_buy: The duration (in minutes) after which an unfilled buy order will be automatically canceled.
- max_open_time: The duration (in minutes) after which an unfilled sell order will be automatically canceled.
- set_percentage: The target profit percentage for take-profit orders.
This is not an exhaustive list. The configuration object supports numerous other parameters for fine-tuning performance, risk management, and notification settings. For a comprehensive reference of all available options, always consult the official API documentation.
Upon a successful configuration update, the API will return a 200 status code along with the complete config object for your review. If the request fails (e.g., due to an invalid parameter), you will receive a 400 error with a message explaining the issue.
Frequently Asked Questions
What is the main benefit of using a trading bot?
The primary advantage is 24/7 market automation. A bot can monitor price movements and execute trades according to your predefined strategy without emotional intervention, ensuring you never miss a potential opportunity even while asleep or away from your computer.
Do I need extensive programming knowledge to set up a bot via API?
Basic familiarity with API concepts and web requests (POST, PATCH) is helpful, but many platforms provide clear documentation and examples. The process often involves using standard tools like curl or Postman to send formatted JSON data, which can be learned quickly.
How do I ensure my API keys are secure?
Never share your exchange API secret key. When generating keys on your exchange, restrict permissions to only what is necessary—typically just "trade" enabled and "withdraw" disabled. This limits potential damage if the keys were ever compromised.
What happens if the API request returns an error?
A failed request will typically return an HTTP error code (like 400 or 500) along with a JSON message describing the problem. Common issues include invalid parameters, authentication failures, or incorrect endpoint URLs. Check the error message details to diagnose the issue.
Can I run multiple trading bots with different strategies?
Yes, that is a common and powerful practice. You can create multiple hopper instances, each with a unique ID and configuration. This allows you to diversify your trading strategies across different markets, timeframes, or risk profiles simultaneously.
Where can I find a complete list of all configuration parameters?
The full schema for the config object, including all possible parameters and their accepted values, is detailed in the official API reference documentation provided by the platform. This is the definitive source for advanced configuration.