Awesome Open Source
Awesome Open Source

MyToken

CI codecov License: MIT PRs Welcome Go Report Card

NEVER LEAVE YOUR TERMINAL

my-token

my-token (or mt for short) is a CLI tool for those who are both Crypto investors and Engineers, allowing you to track token prices and changes in your favorite exchanges on the terminal.

Features

  • Auto refresh on a specified interval, watch prices in live update mode
  • Proxy aware HTTP request, for easy access to blocked exchanges
  • Real-time prices from 12+ exchanges

Supported Exchanges

Installation

Homebrew

# WIP

curl | bash style downloads to /usr/local/bin

$ curl -sfL https://raw.githubusercontent.com/polyrabbit/my-token/master/install.sh | bash -s -- -d -b /usr/local/bin

Using Go (1.16+)

$ go get -u github.com/polyrabbit/my-token

Manually

Download from release page and extract the tarbal into /usr/bin or your PATH directory.

Usage

$ mt --help

Usage: mt [Options] [Exchange1.Token1 Exchange2.Token2.<api_key> ...]

Track token prices of your favorite exchanges in the terminal

Options:
  -v, --Version                            Show Version number
  -d, --debug                              Enable debug mode
  -l, --list-exchanges                     List supported exchanges
  -r, --refresh int                        Auto refresh on every specified seconds, note every exchange has a rate limit,
                                           too frequent refresh may cause your IP banned by their servers
  -c, --config-file string                 Config file path, use "--example-config-file <path>" to generate an example config file,
                                           by default my-token uses "my_token.yml" in current directory or $HOME as config file
      --example-config-file string[="-"]   Generate example config file to the specified file path, by default it outputs to stdout
  -s, --show strings                       Only show comma-separated columns (default [Symbol,Price,%Change(1h),%Change(24h),Source,Updated])
  -p, --proxy string                       Proxy used when sending HTTP request
                                           (eg. "http://localhost:7777", "https://localhost:7777", "socks5://localhost:1080")
  -t, --timeout int                        HTTP request timeout in seconds (default 20)

Space-separated exchange.token pairs:
  Specify which exchange and token pair to query, different exchanges use different forms to express tokens/trading pairs, refer to their URLs to find the format (eg. "Bitfinex.BTCUSDT"). Optionally you can set api_key in the third place.

Find help/updates from here - https://github.com/polyrabbit/my-token
  • Display latest market prices for for BNBUSDT, BTCUSDT from Binance and HTUSDT from Huobi

$ mt binance.BNBUSDT binance.BTCUSDT Huobi.HTUSDT

Here Binance and Huobi can be replaced by any supported exchanges, and different exchanges use different forms to express tokens/symbols/markets, refer to their URLs to find the format.

  • Auto-refresh on every 10 seconds

$ mt -r 10 binance.BNBUSDT binance.BTCUSDT Huobi.HTUSDT

NOTE: some exchanges has a strict rate limit, too frequent refresh may cause your IP banned by their servers.

  • Show specified columns only

$ mt --show Symbol,Price binance.BTCUSDT

See issue #3 for a discussion on this feature.

  • Run with options from a configuration file

$ mt -c my_token.example.yaml

my-token can also read options from configuration file, see the attached my_token.example.yaml for its format. By default my-token searches configuration file my_token.yml in current directory and $HOME, so you can compose a my_token.yml, place it in your $HOME and just type mt to get all pre-defined prices.

$ # Generate an example config file to my $HOME directory
$ mt --example-config-file=$HOME/my_token.yml
$
$
$ # my-token will search for configuration file "my_token.yml" in current directory and "$HOME" by default
$ mt       # <--- This is also the way I used most freqently 

Thanks

License

The MIT License (MIT) - see LICENSE.md for more details

Alternatives To My Token
Select To Compare


Alternative Project Comparisons
Related Awesome Lists
Top Programming Languages
Top Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
Golang (158,575
Command Line (131,503
Token (29,780
Blockchain (16,526
Ethereum (13,774
Bitcoin (11,431
Cryptocurrency (7,583
Favorites (4,284
Ticker (1,625
Binance (1,116
Kraken (664
Bittrex (365
Bitfinex (320
Poloniex (313
Coinmarketcap (156
Exchange Api (151
Price Tracker (92
Huobi (75
Okex (61
Hitbtc (24