randyfirst
@randyfirst (吉野 諒)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

【質問です】Binance APIを使って、急騰急落を通知するBOTを作りたいです。

解決したいこと

プログラミング初心者です。
現在、仮想通貨の急騰急落を通知するBOTを作成しております。

以下のコードを作成しました。
具体的には、5秒前に取得した価格よりも現在価格が値上がりしているならば'Price UP'を返すというものになります。

ここで、binance_set1.get_ticker('BTCUSDT')、binance_set2.get_ticker('BTCUSDT')の箇所で、引数をBTCUSDTだけでなく、'BTCUSDT', 'ETHUSDT', 'BNBUSDT'の3つとし、これを無限ループさせ、24時間稼働させたいと考えております。しかしながら、コード作成が捗りません。どなたか手助けしていただけないでしょうか。

該当するソースコード

ソースコードを入力

class BinanceAPI:

def __init__(self):
    API_KEY = 'API_KEY'
    API_SECRET = 'API_SECRET'
    self.client = Client(API_KEY, API_SECRET)

def get_ticker(self, pair):
    try:
        value = self.client.get_ticker(symbol=pair)
        return value

    except Exception as e:
        print('Exception Messege : {}'.format(e))
        return None

def main():

while True: 
    binance_set1 = BinanceAPI()
    ticker = binance_set1.get_ticker('BTCUSDT')
    Previouos_price = float(ticker['lastPrice'])


    time.sleep(5)

    binance_set2 = BinanceAPI()
    ticker = binance_set2.get_ticker('BTCUSDT')
    Current_price = float(ticker['lastPrice'])

    if (Current_price - Previouos_price)/ Previouos_price > 0 :
        print('Price UP') 

if name == 'main':
main()

自分で試したこと

for文を使って、
Pairs= ['BTCUSDT', 'ETHUSDT','BNBUSDT']
for i in range(len(Pairs)):
print(binance_set1.get_ticker(Pairs[i]))

以上を組み込んだのですが、思うような結果を得られませんでした。

よろしくお願いいたします。

0

No Answers yet.

Your answer might help someone💌