При выполнении кода возникает ошибка. Функция 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