· 4 years ago · Apr 11, 2021, 07:00 AM
1from indodax import indodax
2import json, time
3import requests
4
5KEY = 'ISI-DENGAN-KEY-INDODAX'
6SECRET = 'isi-secret-akun-indodax'
7
8
9def cekHarga():
10 """
11 Fungsi untuk melakukan pengecekan harga Cryptocurrency
12 Data didapatkan dari Public API Indodax dan untuk memanggilnya
13 Cukup dengan mengisi parameter nama crypto/asset
14 """
15 print('='*57)
16 print('| Untuk mengambil data harga crytocurrency terkini\t|')
17 print('| cukup masukan nama asset yang ingin dicek atau ketik\t|')
18 print('| "semua" asset untuk menampilkan semua data harga\t|')
19 print('='*57)
20 print('')
21
22 asset_name = ['semua']
23 account = indodax(KEY, SECRET)
24 add_asset_to_list = json.loads(account.get_info())
25 get_asset_name = add_asset_to_list['return']['address']
26
27 # Menambahkan keys yang didapatkan dari dictionary ke dalam list asset nama
28 # sebagai validasi inputan
29 for k in get_asset_name.keys():
30 asset_name.append(k)
31
32 # Untuk formatting rupiah
33 def rupiah(nilai):
34 y = str(nilai)
35 if len(y) <= 3 :
36 return 'Rp ' + y
37 else :
38 p = y[-3:]
39 q = y[:-3]
40 return rupiah(q) + '.' + p
41
42 # Inputan user
43 while True:
44 print('')
45 asset = input('Masukan nama asset atau ketik "semua" untuk menampilkan semua harga : ')
46 val_asset = str.lower(asset) # Validasi untuk mencegah huruf besar
47 if val_asset not in asset_name:
48 print('Kesalahan!. Masukan nama aset yang benar')
49 if val_asset == 'semua':
50 ticker = []
51 url = 'https://indodax.com/api/summaries'
52 req = requests.get(url)
53 data = req.json()['tickers']
54 print('-'*82)
55 print('PAIR\t\tLAST_PRICE HIGH_PRICE LOW_PRICE BID_PRICE ASK_PRICE')
56 print('-'*82)
57 for k in data.keys():
58 ticker.append(k)
59 for i in ticker:
60 print(i,'\t',data[i]['last'],' - ',data[i]['high'],' - ',data[i]['low'],' - ',data[i]['buy'],' - ',data[i]['sell'])
61 else:
62 price = indodax.get_price(val_asset)['ticker']
63 high_price = price['high']
64 low_price = price['low']
65 volume = price['vol_idr']
66 last_price = price['last']
67 ask_price = price['sell']
68 bid_price = price['buy']
69 print('-'*67)
70 # untuk formating tabel
71 print('Asset Name :','\t',str.upper(val_asset))
72 print('Last Price :','\t',rupiah(last_price))
73 print('High Price :','\t',rupiah(high_price))
74 print('Low Price :','\t',rupiah(low_price))
75 print('Buy Price :','\t',rupiah(bid_price))
76 print('Sell Price :','\t',rupiah(ask_price))
77 print('Volume 24h :','\t',rupiah(volume))
78