Skip to content

A Discord bot to retrieve information from Coinbase

License

Notifications You must be signed in to change notification settings

7Pettay7/CoinBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CoinBot

CoinBot is a Discord bot that can retreive your Coinbase portfolio information via a created API key and relay the data to a Discord server via commands or on scheduled times.

Dependencies

Make sure to have these installed:

Setup

  1. Generate Coinbase API key and secret by going to your Coinbase settings
  2. Create Discord bot and link to server with this guide
  3. Configure config-TEMPLATE.json file and rename to config.json
  4. Run bot file

Using the bot

All Discord commands should be prefixed with the specified command prefix; the default prefix is !. Commands and uses with table:

Command Explanation Example
balance get balance for specific currency balance BTC
portfolio grab all of user's portfolio currencies and output them portfolio

Roadmap

  1. Features

    • Grab user's portfolio information
    • Grab current and historic currency data
    • Update data with each request instead of at the start of the app
    • Calculate precent change of cryptocurrencies based on historic data
    • [] Optimize fetching of historical data (can take a min)
    • [] Integrate matplotlib for visual aids
    • [] Connect database to store portfolio information so the user can see their portfolio growth over time
    • [] Discord Bot
      • Total portfolio output
      • [] Output specific currency info (price, percent up/down, amount owned and total)
      • [] Use Discord buttons feature to implement pagination on embed of portfolio information (change page to percent up/downs)
      • [] Output data if date and time matches alert config (see Discord Tasks)
      • [] Command to edit JSON file to update alerts (day and time)
      • [] Get list of currencies from watchlist in config file and output pricing info
      • [] Handling for arguments that cannot be resolved
      • [] Flesh out help command
  2. Config

    • Create JSON template files to grab config info from
    • Flesh out setup.py to grab other general config info, such as watchlist, command prefix, etc
    • [] Config options
      • API key/secret
      • Currency limit
      • Discord bot token
      • Alert days and times
      • Changeable command prefix
      • Add watchlist option where users can add currencies for pricing updates
      • [] Option to opt out of linking Coinbase account (i.e. just retrieve pricing data)
  3. Admin

    • Select license
    • [] Improve setup guide to explain some of the configuration options in config-TEMPLATE.json

License

See the LICENSE.md file for license rights and limitations (MIT).

Releases

No releases published

Packages

No packages published

Languages