#python #python-3.x #importerror #yahoo-api #mplfinance
Вопрос:
В июне 2021 года я запустил сценарий акций Python, взяв данные с веб-сайта yahoo finance, чтобы отобразить японский свечной график фондовой National Grid plc.
К сожалению, программа перестала работать, когда я попытался запустить ее 10 июля 2021 года, но я изменил mpl_finance на mplfinance.
Пакеты mpl_finance и mplfinance были обновлены, но теперь я получаю эту ошибку:
Ошибка импортера: не удается импортировать имя «подсвечник_охлк» из «mplfinance»
import datetime as dt
import pandas_datareader as web
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from mplfinance import candlestick_ohlc
# Define Time Frame
start = dt.datetime(2021,6,2) # National Grid plc shares were bought on 02/06/2021
end = dt.datetime.now() # Current Time
# Load Data from yahoo API
ticker = 'NG.L'
data = web.DataReader(ticker, 'yahoo', start, end)
print(data.columns)
# Stock Market Prices during work day
data = data[['Open', 'High', 'Low', 'Close']]
data.reset_index(inplace=True)
data['Date'] = data['Date'].map(mdates.date2num)
# Visualization of candlestick chart
ax = plt.subplot()
ax.grid(True)
ax.set_axisbelow(True)
ax.set_title('{} - NATIONAL GRID PLC - JUNE 2021 - PRESENT'.format(ticker), color='black')
ax.set_facecolor('white')
ax.figure.set_facecolor('lightgray')
ax.tick_params(axis='x', colors='black')
ax.tick_params(axis='y', colors='black')
ax.xaxis_date()
candlestick_ohlc(ax, data.values, width=0.5, colorup='forestgreen', colordown='orangered') # Colours for Japanese candlesticks
plt.xlabel('TIMELINE OF NG.L STOCK', color='black')
plt.ylabel('STOCK PRICE IN BRITISH POUND STERLING', color='black')
plt.show()
До недавнего времени у меня не было проблем с запуском подобных сценариев, что расстраивает.
Я установил Anaconda3 (64-разрядный Python 3.8.8) и Python 3.9.6 (64-разрядный). IDE, которые я использую, — это PyScripter и код Visual Studio.
Любая помощь будет признательна за помощь в устранении этой проблемы.
Комментарии:
1. API изменился, вам нужно настроить свое использование. некоторую помощь можно найти здесь: github.com/matplotlib/mplfinance#usage в принципе, этот импорт больше невозможен. похоже, что есть опция типа свечи, которую можно добавить к запросу на график.
2. Ссылка на mplfinance на github пригодится для дальнейшего использования. Спасибо. @ЛхасаДад
Ответ №1:
Чтобы использовать старый candlestick_ohlc
API, вам необходимо изменить импорт в приведенном выше коде с:
from mplfinance import candlestick_ohlc
Для
from mplfinance.original_flavor import candlestick_ohlc