Πως να κατεβάσεις τιμές κρυπτονομισμάτων και να τις περάσεις σε ένα αρχείο excel

 Αν ασχολείσαι με τα κρυπτονομίσματα (cryptocurrencies) και ιδιαίτερα αν επέλεξες να αγοράσεις μερικά απ' αυτά, τότε πολύ πιθανόν να σε ενδιαφέρει το παρόν άρθρο πάρα πολύ. Ένα χρηματιστηριακό ρητό λέει "Μην αγνοείς ποτέ την μόδα, μπορεί να σε κάνει πλούσιο και ενίοτε πάμπλουτο".  Έτσι και κάποιοι απο εμάς επιλέξαμε να μην την αγνοήσουμε και ότι γίνει.

Προσωπικά επέλεξα να ασχοληθώ ερασιτεχνικά με τον χώρο των κρύπτο και να αγοράσω μερικά. (Mε χρήματα -ΠΑΝΤΑ- που και να τα χάσω χέστηκα***). Οπότε πρωταρχικός μου στόχος ήταν να μπορώ να βλέπω άμεσα το κεφάλαιο μου ανά πάσα στιγμή.

Για να το καταφέρω αυτό άνοιξα ένα excelόφυλλο και πέρασα την ποσότητα απο κάθε νόμισμα που είχα. Μου έλειπε η τιμή και τσουπ, έτοιμο το κεφάλαιο.

Ευτυχώς για τις τιμές των κρύπτο έχει φροντίσει ένας ιστότοπος, που αν ασχολείσαι με τα κρύπτο σίγουρα είναι καλός σου φίλος, ο coinmarketcap. Έχει ετοιμάσει μια API και εντελώς δωρεάν στην free έκδοση, σου παρέχει τις τρέχουσες τιμών εκατοντάδων κρυπτονομισμάτων. Το μόνο που έχεις να κάνεις είναι να βγάλεις ένα  κλειδί (key) και να γράψεις λίγο κώδικα που είναι έτοιμος σε αυτό το άρθρο.

Πάμε πρώτα για το κλειδί. Πρώτα πηγαίνεις εδώ και αφού κάνεις έναν λογαριασμό πατάς το κουμπί 'GET YOUR API KEY NOW". Αφού εκδοθεί το κλειδάκι σου το αντιγράφεις σε ένα txt και προχωράς.


Σχετικά με τον κώδικα τώρα. Τρεις είναι οι βασικές πληροφορίες που καταχωρείς για να φτάσεις σε κάθε τιμή:

1. headersΕδώ βάζεις το κλειδί που μόλις έβγαλες, μαζί με το φορμάτ του αρχείου που στην περίπτωση μας είναι αρχείο json

2. paramsΕδώ καταχωρείς τα σύμβολα που σε ενδιαφέρουν και το νόμισμα του ζευγαριού. Επειδή έχω κάνει όλες τις αγορές μου σε EUR, το επιλέγω. Όσο για τα σύμβολα, πηγαίνεις σε αυτή την διεύθυνση και επιλέγεις αυτά που παρακολουθείς.

3. urlΑυτή είναι στάνταρ, είναι η διεύθυνση της API 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest'

Το request που κάνεις επιστρέφει ένα αρχείο json της μορφής 

{'data': {'BTC': {'circulating_supply': 18867481,
                  'cmc_rank': 1,
                  'date_added': '2013-04-28T00:00:00.000Z',
                  'id': 1,
                  'is_active': 1,
                  'is_fiat': 0,
                  'last_updated': '2021-11-08T15:27:02.000Z',
                  'max_supply': 21000000,
                  'name': 'Bitcoin',
                  'num_market_pairs': 8297,
                  'platform': None,
                  'quote': {'EUR': {'fully_diluted_market_cap': 1189612564080.0137,
                                    'last_updated': '2021-11-08T15:27:34.000Z',
                                    'market_cap': 1068809164292.4241,
                                    'market_cap_dominance': 43.2794,
                                    'percent_change_1h': 0.0415769,
                                    'percent_change_24h': 5.45204024,
                                    'percent_change_30d': 19.07865819,
                                    'percent_change_60d': 40.03057059,
                                    'percent_change_7d': 5.11858583,
                                    'percent_change_90d': 45.00142545,
                                    'price': 56648.217337143426,
                                    'volume_24h': 30440975711.61554,
                                    'volume_change_24h': 40.8923}},
                  'slug': 'bitcoin',
                  'symbol': 'BTC',
                  
οπότε πρέπει να φτάσεις στην τιμή του κλειδιού που λέγεται price και να πάρεις το value του, όπως γίνεται σε κάθε λεξικό.

Φυσικά μπορείς να πάρεις οποιαδήποτε χρήσιμη πληροφορία, όπως την μεταβολή 24 ωρών ή 90 ημερών κλπ..

Παρακάτω παραθέτω ολόκληρο τον κώδικα. Πρέπει να αλλάξει το κλειδί της API και η τοποθεσία που θέλεις να αποθηκευτεί το αρχείο excel. Στο συγκεκριμένο παράδειγμα εκτός απο την τρέχουσα τιμή, παίρνω και την 24ωρη μεταβολή για τα 7+1 κρύπτο που παρακολουθώ.

*** Το παρόν δεν αποτελεί επενδυτική συμβουλή, για επενδύσεις πρέπει να ακολουθείτε τις οδηγίες μόνο πιστοποιημένων για αυτό ατόμων.


import requests
from datetime import datetime
from openpyxl import load_workbook
import pprint

# Get data

headers = {
'X-CMC_PRO_API_KEY': 'YOUR API KEY',
'Accepts': 'application/json'
}

params = {
'symbol': 'doge,matic,xlm,vet,trx,shib,hot,btc',
'convert': 'EUR'
}

url = 'https://pro-api.coinmarketcap.com/v1/cryptocurrency/quotes/latest'

prices = requests.get(url, params=params, headers=headers).json()
# pprint.pprint(prices) # εδώ μπορούμε να δούμε τι τυπώνει το request

doge = prices['data']['DOGE']['quote']['EUR']['price']
matic = prices['data']['MATIC']['quote']['EUR']['price']
xlm = prices['data']['XLM']['quote']['EUR']['price']
vet = prices['data']['VET']['quote']['EUR']['price']
trx = prices['data']['TRX']['quote']['EUR']['price']
shib = prices['data']['SHIB']['quote']['EUR']['price']
hot = prices['data']['HOT']['quote']['EUR']['price']

doge_perc_change = prices['data']['DOGE']['quote']['EUR']['percent_change_24h']
matic_perc_change = prices['data']['MATIC']['quote']['EUR']['percent_change_24h']
xlm_perc_change = prices['data']['XLM']['quote']['EUR']['percent_change_24h']
vet_perc_change = prices['data']['VET']['quote']['EUR']['percent_change_24h']
trx_perc_change = prices['data']['TRX']['quote']['EUR']['percent_change_24h']
shib_perc_change = prices['data']['SHIB']['quote']['EUR']['percent_change_24h']
hot_perc_change = prices['data']['HOT']['quote']['EUR']['percent_change_24h']
btc_perc_change = prices['data']['BTC']['quote']['EUR']['percent_change_24h']

# Write to excel sheet

book = load_workbook(r'YOUR EXCEL DESTINATION ON DISK') # π.χ 'E:\My_files' κλπ
sheet = book.active

sheet['c2'] = trx
sheet['c3'] = xlm
sheet['c4'] = hot
sheet['c5'] = vet
sheet['c6'] = shib
sheet['c7'] = matic
sheet['c8'] = doge

sheet['d2'] = trx_perc_change/100
sheet['d3'] = xlm_perc_change/100
sheet['d4'] = hot_perc_change/100
sheet['d5'] = vet_perc_change/100
sheet['d6'] = shib_perc_change/100
sheet['d7'] = matic_perc_change/100
sheet['d8'] = doge_perc_change/100
sheet['d10'] = btc_perc_change/100

now = datetime.now()
time = now.strftime("%H:%M:%S")
day = now.strftime('%d/%m/%Y')
sheet['b15'] = time
sheet['b17'] = day

book.save(r'YOUR EXCEL DESTINATION ON DISK')
book.close()
print('\nBook was successfully updated!..')

article keywords: crypto, cryptocurrencies, coinmarketcap, shiba inu,
tron, polygon, holo, vechain, stellar, dogecoin, how to download crypto prices,
Πως να κατεβάσεις τιμές κρυπτονομισμάτων και να τις περάσεις σε ένα αρχείο excel,
αγορά, πώληση, τιμή, κρύπτο


Δημοσίευση σχολίου

Νεότερη Παλαιότερη