Я хочу запустить функцию для каждого символа тикера, которая есть в #binance exchange, и извлечь исторические данные клин для некоторого анализа.
В настоящее время я абсолютный нуб в Python, поэтому мне нужна помощь здесь.
Мой код выглядит следующим образом:
from binance.client import Client
import personal
import pandas as pd
import time
import datetime # for dealing with times
from pymongo import MongoClient
import json
client = Client(personal.api_key,personal.api_secret)
#getting all the listed currencies
tickers = client.get_ticker()
dtickers = pd.DataFrame(tickers)
dtickers.columns
dtickers['symbol']
dtickers.symbol
for x in range(len(dtickers.symbol)):
def kline():
klines['symbol'] = client.get_historical_klines(
symbol='symbol',
interval='1h',
start_str='1556409600',
end_str='1561731894',
limit=1000
)
dfklines['symbol'] = pd.DataFrame(klines['symbol'])
dfklines['symbol'].columns = ['open_time',
'o', 'h', 'l', 'c', 'v',
'close_time', 'qav', 'num_trades',
'taker_base_vol', 'taker_quote_vol', 'ignore']
dfklines['symbol'] = dfklines['symbol'].drop("ignore",axis=1)
dfklines['symbol']['open_time'] = pd.to_datetime( dfklines['symbol']['open_time'], unit='ms')
x += 1
print (dfklines['symbol'].iloc[x])
if __name__ == "__main__":
kline()
Я ожидаю, что отдельный кадр данных символа будет сохранен как
dfklines[ETHUSDT]
, dfklines[BTUSDT]
,
Понятия не имею, куда я иду не так? Это функция или какие-то проблемы с синтаксисом?
В настоящее время выдается это исключение:
BinanceAPIException: APIError(code=-1100): Illegal characters found in parameter 'symbol'; legal range is '^[A-Z0-9_]{1,20}$'.