SplinterlandsTraderBot
A trading bot written in Python that makes a profit by buying underpriced cards and quickly reselling them.
Install / Use
/learn @chief-gant/SplinterlandsTraderBotREADME
About The Project
Splinterlands Trader Bot is a free tool programmed in Python that aims to make a steady profit by buying underpriced cards in the Splinterlands market and quickly reselling them.
It does so by using the Splinterlands API and interacting directly with the Hive Blockchain.
It mimics a human-like reasoning to evaluate potential offers, filters them according to a set of adjustable parameters, and selects the best among them. After that, it proceeds to buy the card, and as soon as the purchase is confirmed, it posts it again with a higher price, but still lower than the minimum price posted (in order to resell quickly).
The bot works because of two main reasons:
- Since it's constantly checking the market, it will find all profitable operations as soon as they are posted.
- Even though the margin of each operation might be small (which could discourage a human user), the bot will keep on buying and selling, and the profit will keep adding up.
Some of its features:
- Fully automated buying and selling.
- Constant maintenance of the posted cards, updating the price if necessary.
- Adjustable minimum balance, so you can set exactly up to how much money the bot will use to buy cards.
- A lot of configurable parameters to adjust the bot's behaviour.
- It never takes a coffee break!
How do I (the developer) make money? The bot is free to download, and you never need to pay any money. Every time the bot successfully sells a card, it will transfer 20% of the profit it made to my account. What does this means?
- You don't need to pay at all until the bot makes a profit.
- The 20% is applied to the profit, which takes into account the sale fee. The exact value of the profit is
sale_price * (1-sale_fee) - buy_price, so you will never lose money. - You will keep 80% of the operation profit.
Built With
This project is built with Python3.10
<!-- GETTING STARTED -->Getting Started
To get a local copy up and running follow these simple steps.
Prerequisites
Splinterlands Trader Bot is completely free to use and there are no setup costs.
- Windows, Mac, Linux
- A good internet connection
- Python 3.10 installed (although some support is included for older versions)
- Hive account username and private key
Operating System
The bot can be run on the following OS:
- Windows (you can use the PowerShell)
- Linux (you can use any terminal)
- Mac (you can use any terminal)
Installation
Windows
-
Download and install Git and Python3.10
-
Clone the repo:
git clone https://github.com/chief-gant/SplinterlandsTraderBot.git -
Go to repo directory
cd SplinterlandsTraderBot -
Install the required libraries by running:
pip install -r requirements.txt
Linux User
Install the package with
sudo su
Debian / Ubuntu:
-
Install Git and Python if you don't have them:
apt install git && apt install python3-pip -
Clone the repo:
git clone https://github.com/chief-gant/SplinterlandsTraderBot.git -
Go to repo directory
cd SplinterlandsTraderBot -
Install the required libraries by running:
pip install -r requirements.txt
Fedora Linux / Centos
-
Install Git and Python if you don't have them:
dnf install git && dnf install python3-pip -
Clone the repo:
git clone https://github.com/chief-gant/SplinterlandsTraderBot.git -
Go to repo directory
cd SplinterlandsTraderBot -
Install the required libraries by running:
pip install -r requirements.txt
Arch Linux
-
Install Git and Python if you don't have them:
pacman -S git && pacman -S install python3-pip -
Clone the repo:
git clone https://github.com/chief-gant/SplinterlandsTraderBot.git -
Go to repo directory
cd SplinterlandsTraderBot -
Install the required libraries by running:
pip install -r requirements.txt
Mac
-
Download and install Git and Python3.10
-
Clone the repo:
git clone https://github.com/chief-gant/SplinterlandsTraderBot.git -
Go to repo directory
cd SplinterlandsTraderBot -
Install the required libraries by running:
pip install -r requirements.txt
Setting it up
In order for the bot to work, it requires to complete two files, process_parameters.json and account_info.json.
Account information
A file named account_info.json.sample is uploaded in the repo. However, it doesn't have information of any real account, so it won't do anything. You have to rename this file to account_info.json (delete the ".sample" part). Then you have to edit the file in a text editor and change the information to that of the account you want to use the bot with.
After "username", complete with your username between quotes (") without the "@". In my case, for example, it would look like:
"username": "chief-gant",
Then, after "active_key" you have to input that username's active key. This is needed in order to automatically buy, post and update the price of the cards. This should look like:
"active_key": "JKjkasjklJ86asd7NoyMyActualKey786JKSkkajIijka9KaO"
Your key is never shared with anyone or stored in any part of the process. <b>Never share your key with anyone else.</b> If someone asks you for your key, <b> do not trust this person</b>.
Process parameters
With this file you can control various aspects of the bot. The repo includes a file process_parameters.json.sample with settings that I found optimal, but you are welcome to change them and try out alternatives. You have to rename this file to process_parameters.json (delete the ".sample" part), and then you can change whatever setting you want. If you leave them as is, it will work nonetheless.
About the parameters:
editions: this defines which card editions the bot will look for. For example, if set to "reward,untamed" it will only look for cards from those two sets. The set names must be separated by comma (','), and the valid names are:- alpha
- beta
- promo
- reward
- untamed
- dice
- chaos_legion
fixed_price_interval: since the bot is always checking for the posted card to have the minimum price available, this parameter defines how often it changes the price. The unit is minutes. If this is set to be 0, every single time a lower priced post appears, the bot would reduce the price to match it (as long as it can do without losing money on the operation); in that case, the price would be easy to manipulate by other users. Therefore, I recommend having a large interval, like 300 minutes (which translates to 5 hours).minimum_balance: this defines how much money the bot can't use, so you can leave a portion of your DECs for other purposes. The unit is dollars. For example, if you set it to 10, the bot will never make a purchase that would let the balance drop below 10. During the execution, when the bot prints the available Balance, it will first substract theminimum_balanceyou set. In the example, if you have $15 and you set a minimum balance of $10, it wil show:Balance: $5.00. In the file included this is set to 0, you should change it as you see fit (maybe start with lower amounts while you check out how it works).min_abs_gain: The absolute value of the profit to be made by an operation to be considered viable. The unit is dollars. If you leave a big number, the bot will take longer to find suitable offers. You can start with a bigger number and then lower it if you don't like to wait. The upside of the lower priced operations is that they appear more frequently and they sell quicker. In the file included, this is set to 0.1 (10 cents).min_rel_gain: The relative value of the profit to be made by an operation to be considered viable. It's highly recommended to not go lower than 7-8% with
Security Score
Audited on Dec 9, 2025
