Python binance недопустимые символы в параметре

#python #loops #binance

#python #циклы #binance

Вопрос:

Я действительно новичок в python, пытаюсь вызвать binance api и получить данные klines для нескольких валютных пар в цикле, а также сохранить их в CSV.

Я хочу ввести список всех пар на Binance, отфильтровать по тем, которые отмечены как активные, а затем выполнить цикл по некоторому коду для каждой валютной пары.

Когда я передаю значения списка в команду binance, я получаю «Недопустимые символы, найденные в параметре ‘symbol’; допустимый диапазон ‘^ [A-Z0-9-_.]{1,20}$’.»

print(pairs_list) выдает следующее:- ['ETHBTC', 'EOSETH']

 #import binance api wrapper
from binance.client import Client
# create the Binance client, no need for api key
client = Client("", "")
#import pandas and the json normalizr
import pandas as pd

#bring in the pairs we want to loop through
df1 = pd.read_csv('BINANCE_ALL_PAIRS.csv')
#filter for the active pairs
df = df1[df1.Active.eq(1)]
#Set up a pairs list to be used to call the api in a loop 
pairs_list = df['symbol'].tolist()
#print(pairs_list)

for x in pairs_list:
    # valid intervals - 1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 6h, 8h, 12h, 1d, 3d, 1w, 1M
    # get timestamp of earliest date data is available
    timestamp = client._get_earliest_valid_timestamp(pairs_list, '1d')

    # request historical candle (or klines) data
    bars = client.get_historical_klines(pairs_list, '1d', timestamp, limit=1000)
  

Комментарии:

1. Мы не можем видеть ваш CSV-файл; вероятно, он содержит какой-то мусор. Можете ли вы распечатать repr пару, когда произойдет ошибка?

2. Я думаю, что код выводит = [‘ETHBTC’, ‘EOSETH’] внутри pairs_list вместо ETHBTC в первый раз и EOSETH во второй раз. (Извините, я немного новичок, так что, надеюсь, это имеет смысл)