CoinMarketCap PowerShell module
CoinMarketCap
I recently developed an interest for cryptocurrencies. It takes some time to get familiar with all the technologies involved but I’m enjoying the ride so far :rocket:
To follow the market, there are plenty of services and websites available. One of the most popular platform is CoinMarketCap. In addition to provide a clean interface, they offer a nice api to interact with the data of each coins.
So I figure, why not make a small PowerShell module wrapped around the coinmarketcap API.
The source of the module are available on Github here: https://github.com/lazywinadmin/CoinMarketCap
Installation
You can retrieve and install the module from the PowerShell Gallery.
# Install the module from the PowerShell Gallery
Install-Module -Name CoinMarketCap
Usage
Get a Cryptocurrency information
# Retrieve Bitcoin information
Get-Coin -CoinId bitcoin
As you may know you don’t need to specify the verb Get-
in powershell for most of the Cmdlets and functions declared in your sessions (Does not work with process
as far as i know, probably because of the existing process {}
block)
So you can simply use the following syntax
# Retrieve Bitcoin information
Coin btc
Example of output:
id : bitcoin
name : Bitcoin
symbol : BTC
rank : 1
price_usd : 5923.98
price_btc : 1.0
24h_volume_usd : 8592590000.0
market_cap_usd : 98789398264.0
available_supply : 16676187.0
total_supply : 16676187.0
max_supply : 21000000.0
percent_change_1h : -3.27
percent_change_24h : -7.17
percent_change_7d : -20.74
last_updated : 1510520351
Show the Cryptocurrency web page
Many things are not available using the API, so I added a switch -Online
to open the page of the CryptoCurrency you specified.
This is a bit similar to Get-Help Get-Process -Online
.
# Retrieve Cardano coin information
Get-Coin ada -Online
Retrieve all the existing coins
Get-CoinID
And you get the top 100
id name symbol rank
-- ---- ------ ----
bitcoin Bitcoin BTC 1
ethereum Ethereum ETH 2
bitcoin-cash Bitcoin Cash BCH 3
ripple Ripple XRP 4
litecoin Litecoin LTC 5
bitcoin-gold Bitcoin Gold BTG 6
dash Dash DASH 7
iota IOTA MIOTA 8
cardano Cardano ADA 9
monero Monero XMR 10
ethereum-classic Ethereum Classic ETC 11
neo NEO NEO 12
nem NEM XEM 13
stellar Stellar Lumens XLM 14
eos EOS EOS 15
qtum Qtum QTUM 16
zcash Zcash ZEC 17
omisego OmiseGO OMG 18
lisk Lisk LSK 19
hshare Hshare HSR 20
tether Tether USDT 21
waves Waves WAVES 22
bitconnect BitConnect BCC 23
stratis Stratis STRAT 24
populous Populous PPT 25
bitshares BitShares BTS 26
decred Decred DCR 27
ardor Ardor ARDR 28
bytecoin-bcn Bytecoin BCN 29
ark Ark ARK 30
augur Augur REP 31
komodo Komodo KMD 32
monacoin MonaCoin MONA 33
steem Steem STEEM 34
tenx TenX PAY 35
golem-network-tokens Golem GNT 36
dogecoin Dogecoin DOGE 37
maidsafecoin MaidSafeCoin MAID 38
digixdao DigixDAO DGD 39
pivx PIVX PIVX 40
exchange-union Exchange Union XUC 41
veritaseum Veritaseum VERI 42
vertcoin Vertcoin VTC 43
factom Factom FCT 44
siacoin Siacoin SC 45
salt SALT SALT 46
power-ledger Power Ledger POWR 47
nxt Nxt NXT 48
raiden-network-token Raiden Network Token RDN 49
basic-attention-token Basic Attention Token BAT 50
binance-coin Binance Coin BNB 51
bitcoindark BitcoinDark BTCD 52
gas Gas GAS 53
byteball Byteball Bytes GBYTE 54
status Status SNT 55
tron TRON TRX 56
kyber-network Kyber Network KNC 57
syscoin Syscoin SYS 58
iconomi Iconomi ICN 59
zcoin ZCoin XZC 60
walton Walton WTC 61
metaverse Metaverse ETP ETP 62
gamecredits GameCredits GAME 63
aeternity Aeternity AE 64
gnosis-gno Gnosis GNO 65
gxshares GXShares GXS 66
bytom Bytom BTM 67
digibyte DigiByte DGB 68
ethos Ethos ETHOS 69
blocknet Blocknet BLOCK 70
civic Civic CVC 71
funfair FunFair FUN 72
bancor Bancor BNT 73
0x 0x ZRX 74
metal Metal MTL 75
pura Pura PURA 76
cryptonex Cryptonex CNX 77
einsteinium Einsteinium EMC2 78
verge Verge XVG 79
singulardtv SingularDTV SNGLS 80
lykke Lykke LKK 81
storj Storj STORJ 82
minexcoin MinexCoin MNX 83
zencash ZenCash ZEN 84
adx-net AdEx ADX 85
quantstamp Quantstamp QSP 86
vechain VeChain VEN 87
counterparty Counterparty XCP 88
ubiq Ubiq UBQ 89
streamr-datacoin Streamr DATAcoin DATA 90
substratum Substratum SUB 91
aragon Aragon ANT 92
nexus Nexus NXS 93
particl Particl PART 94
santiment Santiment Network Token SAN 95
bitbay BitBay BAY 96
nav-coin NAV Coin NAV 97
edgeless Edgeless EDG 98
monaco Monaco MCO 99
feathercoin Feathercoin FTC 100
Get global market data
Get-CoinGlobal
total_market_cap_usd : 194757913663.0
total_24h_volume_usd : 22536410182.0
bitcoin_percentage_of_market_cap : 50.96
active_currencies : 900
active_assets : 372
active_markets : 6513
last_updated : 1510520660
Get the Historical data of a currency
This one was a bit tricky. CoinMarketCap does not offer an API for that. However I noticed that when you search for set of data with a start and end date you get an url that look like this https://coinmarketcap.com/currencies/cardano/historical-data/?start=20171101&end=20171105
Finally I can easily parse the page to retrieve the table. I’m using the code from Lee Holmes.
Get-CoinHistory -Begin '20171101' -End '20171105' -CoinId ada
Date : Nov 11, 2017
Open : 298.59
High : 319.45
Low : 298.19
Close : 314.68
Volume : 842,301,000
Market Cap : 28,559,400,000
Date : Nov 10, 2017
Open : 320.67
High : 324.72
Low : 294.54
Close : 299.25
Volume : 885,986,000
Market Cap : 30,665,200,000
Date : Nov 09, 2017
Open : 308.64
High : 329.45
Low : 307.06
Close : 320.88
Volume : 893,250,000
Market Cap : 29,509,000,000
Date : Nov 08, 2017
Open : 294.27
High : 318.70
Low : 293.10
Close : 309.07
Volume : 967,956,000
Market Cap : 28,128,700,000
Date : Nov 07, 2017
Open : 298.57
High : 304.84
Low : 290.77
Close : 294.66
Volume : 540,766,000
Market Cap : 28,533,300,000
Date : Nov 06, 2017
Open : 296.43
High : 305.42
Low : 293.72
Close : 298.89
Volume : 579,359,000
Market Cap : 28,322,700,000
Date : Nov 05, 2017
Open : 300.04
High : 301.37
Low : 295.12
Close : 296.26
Volume : 337,658,000
Market Cap : 28,661,500,000
Date : Nov 04, 2017
Open : 305.48
High : 305.48
Low : 295.80
Close : 300.47
Volume : 416,479,000
Market Cap : 29,175,300,000
Date : Nov 03, 2017
Open : 288.50
High : 308.31
Low : 287.69
Close : 305.71
Volume : 646,340,000
Market Cap : 27,547,400,000
Date : Nov 02, 2017
Open : 290.73
High : 293.91
Low : 281.17
Close : 287.43
Volume : 904,901,000
Market Cap : 27,754,200,000
Date : Nov 01, 2017
Open : 305.76
High : 306.40
Low : 290.58
Close : 291.69
Volume : 553,864,000
Market Cap : 29,183,600,000
Let me know what you think and feel free to contribute to the module by using the issues and pull requests.
Leave a comment