https://github.com/mtingers/simple-coinbase-bot
A simple Coinbase buy/sell bot.
https://github.com/mtingers/simple-coinbase-bot
bitcoin coinbase coinbase-bot cryptocurrency trading-bot
Last synced: 11 months ago
JSON representation
A simple Coinbase buy/sell bot.
- Host: GitHub
- URL: https://github.com/mtingers/simple-coinbase-bot
- Owner: mtingers
- License: mit
- Created: 2020-11-27T05:38:00.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2021-04-06T16:09:15.000Z (about 5 years ago)
- Last Synced: 2025-06-29T07:49:44.710Z (12 months ago)
- Topics: bitcoin, coinbase, coinbase-bot, cryptocurrency, trading-bot
- Language: Python
- Homepage:
- Size: 2.25 MB
- Stars: 14
- Watchers: 4
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# simple-coinbase-bot
> **This project is being moved to [botic](https://github.com/mtingers/botic)**
---
---
---
---
A simple Coinbase Pro buy/sell bot.
The primary purpose of this bot is to buy/sell incrementally as the price goes up and down.
It does not do anything too fancy:
1. Buy if there are no outstanding sell orders less than the current target sell price.
2. Target sell price is determined from `sell_at_percent` config option and current
fees (e.g. `current_price * (sell_at_percent+(fees*2)) + current_price)` ).
See [Coinbase Fee structure](https://help.coinbase.com/en/pro/trading-and-funding/trading-rules-and-fees/fees)
3. After a buy is placed, an immediate limit sell order is placed to the calculated target price.
A few other min/max configuration options exist for safety, but the main logic is
above (see [example.conf](example.conf)).
# Getting Started
First, create an API key with view/trade permissions in the
[Coinbase Pro profile](https://pro.coinbase.com/profile/api).
Create virtualenv and install requirements:
```bash
python3 -m venv venv
. venv/bin/activate
```
```bash
# PyPI
pip install SimpleCoinbaseBot
```
```bash
# Or install manually with setup.py
pip install -r requirements.txt
python setup.py install
```
Create a new configuration:
```bash
mkdir etc/ log/ cache/
cp example.conf etc/btc.conf
chmod 700 etc/btc.conf
# edit config etc/btc.conf
```
Run the bot with the new config:
```
simplebot etc/btc.conf
# -or- run the wrapper that will restart the bot if it errors out
persistbot etc/btc.conf
```
# Example Config
See [example.conf](example.conf) for more in depth configuration info.
# Top Command
The `simpeltop` script displays stats from the cache files (recent order completion, profits, open
orders, etc).
Example usage:
```bash
# Use all .cache files in cache/ directory
simpletop cache/
```

