본문 바로가기
부자학

코인 상승 하락률 계산기(부자일기_#20_220922)

by WelcomeBro 2022. 9. 23.
반응형
가장 상승한 가장 하락한 코인을 찾아주는 코드를 만들어 봤다.
애를 먹은 것이 바이낸스 전날 종가 기준과 업비트 전날 종가 기준이 다르다.
또 한가지 느낀 것이 각 코인을 class 화 해서 여러가지 지표들을 업데이트하면서 한꺼번에 가지고 다녀야 겠다고 생각했다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
import pyupbit
import ccxt
import time
import yfinance as yf
from datetime import datetime
 
#바이낸스 티커 가져오기
binance = ccxt.binance()
markets = binance.fetch_tickers()
 
#바이낸스에서 USDT base 티커 가져오기
core_usdt_binance = []
for i in markets.keys():
    if '/' in i:
        now_core = i.split("/")[1]
        now_currrency = i.split("/")[0]
        if now_core == 'USDT':
            core_usdt_binance.append(now_currrency)
 
#업비트 티커 가져오기
tickers_upbit = pyupbit.get_tickers()        
 
#업비트에서 krw base 티커 가져오기
core_krw_upbit = []
for i in tickers_upbit:
    if 'KRW' in i:
        upbit_ticker = i.split("KRW-")[1]
        core_krw_upbit.append(upbit_ticker)        
 
#업비트 바이낸스 공통 티커 저장하기
upbit_binance_tickers = []
for i in core_usdt_binance:
    if i in core_krw_upbit:
        upbit_binance_tickers.append(i)
 
def now_kimchi():
    binance_updown_dict = {}
    upbit_updown_dict = {}
    print("현재 시간 :", time.strftime('%Y-%m-%d %H:%M:%S'))
    USDKRW = yf.Ticker("USDKRW=X")
    now_usd_krw = USDKRW.info.get('regularMarketPrice')
    print('$1 가격 : ₩',now_usd_krw)
    count = 0
    for i in upbit_binance_tickers:
        time.sleep(0.05)
        now_upbit_price = pyupbit.get_current_price("KRW-"+i)
        now_binance_price = binance.fetch_ticker(i+'/USDT')['close']
        today_open_upbit = pyupbit.get_ohlcv("KRW-"+i, count=1)['open'][0]
        today_open_binance = binance.fetch_ticker(i+'/USDT')['open']
        
        if now_binance_price == 0:
            continue
        count+=1
        print(str(count)+". "+i)
        print("Now : $",now_binance_price)
        print("Open : $",today_open_binance)
        print("Binance Change :",round((now_binance_price-today_open_binance)*100/today_open_binance,3),'%')
        print()
        binance_updown_dict[i] = (now_binance_price-today_open_binance)*100/today_open_binance
        print("Now : ₩",now_upbit_price)
        print("Open : ₩",today_open_upbit)
        print("Upbit Change :",round((now_upbit_price-today_open_upbit)*100/today_open_upbit,3),'%')
        upbit_updown_dict[i] = (now_upbit_price-today_open_upbit)*100/today_open_upbit
        print()
        print("Kimchi Premium :",round((now_upbit_price*100/(now_binance_price*now_usd_krw))-100,3),"%")
        print('-------------------')
    return binance_updown_dict, upbit_updown_dict
 
now_binan_dict, now_upbit_dict = now_kimchi()
 
def most123(now_binan_dict, now_upbit_dict):
    sort_binan_dic = sorted( now_binan_dict.items(), key = lambda pair : pair[1] )
    sort_upbit_dic = sorted( now_upbit_dict.items(), key = lambda pair : pair[1] )
    print('Binance most down :',sort_binan_dic[0])
    print('Upbit most down :',sort_upbit_dic[0])
    print('Binance most up :',sort_binan_dic[-1])
    print('Upbit most up :',sort_upbit_dic[-1])
 
most123(now_binan_dict, now_upbit_dict)
cs

 

now_kimchi() 실행 모습

 

most123 실행 모습

김프 계산기(내글 링크)

 

 

아직 부족함이 많고 짜야할 것이 많은거 같다.

 

하지만 난 부자가 되고 말테다.

 

Be positive

Be rich

Live your life

반응형