Ошибка расчета RSI и SMA талибомPython

Программы на Python
Anonymous
Ошибка расчета RSI и SMA талибом

Сообщение Anonymous »

При выполнении кода возникает ошибка. Функция def Indicators(df, N) не выполняется. Это фрагмент кода, я пытаюсь повторить за автором с YouYube. Я получаю следующую ошибку:

Происходит ошибка TypeError: аргумент «real» имеет неверный тип (ожидается numpy.ndarray, получен DataFrame)/

Я пытался отправить в функцию только один столбец (цены закрытия – закрытие). Но возникает другая ошибка:

Исключение: в параметре input_arrays отсутствует необходимый ключ данных: закрыть

Я не понимаю, как решить эту проблему.
import requests
from datetime import datetime, timedelta
import pandas as pd
import talib
import numpy as np
from talib import abstract
import yfinance as yf

!wget http://prdownloads.sourceforge.net/ta-l ... src.tar.gz
!tar -xzvf ta-lib-0.4.0-src.tar.gz
%cd ta-lib
!./configure --prefix=/usr
!make
!make install
!pip install Ta-Lib

N = 1400

def parse_fgi(N):
url = "https://api.alternative.me/fng/?format= ... _format=us"
parameters = {
"limit": N,
"format": "json"
}

response = requests.get(url, params=parameters)
data = response.json()['data']
fgi_values = [float(i['value']) for i in data][::-1]

return fgi_values

def parse_dates(N):
end_date = datetime.today()
start_date = end_date - timedelta(days=N)
dates = pd.date_range(start=start_date, end=end_date)
us_dates = dates.strftime('%Y-%m-%d').tolist()

return us_dates
abstract.RSI(data_prices, 140)

def parse_prices(coin, N):
period = parse_dates(N)
end_time = period[-1]
start_time = period[0]
data = yf.download(coin+"-USD", start_time, end_time)
data.rename(columns = {'Open': 'open',
'High':'high',
'Low': 'low',
'Close': 'close',
'Volume': 'volume'}, inplace = True)
return data
data_prices = parse_prices("XRP", N)
data_prices

def indicators(df, N):
df['rsi'] = abstract.RSI(df)
df['sma'] = abstract.SMA(df)
df['fgi'] = parse_fgi(N)
return df

df = indicators(data_prices.to_numpy(), N)
df

Вернуться в «Python»