Predicting ETH price for the next 30 days by using Facebook prophet in a simple manner.
Black dots represent reality, red lines are the changepoints in the trend, and the blue line is the prediction.
Here is the code:
###################
import pandas as pd
from fbprophet import Prophet
df.rename(columns={'Date': 'ds', 'Price (Close)': 'y'}, inplace=True)
df['ds'] = pd.to_datetime(df['ds'], errors='coerce', utc=True )
df['ds'] = df['ds'].dt.strftime('%Y-%m-%d %H:%M')
df.rename(columns={'Date': 'ds', 'Value': 'y'}, inplace=True)
m = Prophet(seasonality_mode='multiplicative')
m.add_seasonality(name='monthly', period=30.5, fourier_order=5)
m.fit(df)
future = m.make_future_dataframe(periods=30*96, freq='15min')
forecast = m.predict(future)
m.plot(forecast)
m.plot_components(forecast)
from fbprophet.plot import add_changepoints_to_plot
fig = m.plot(forecast)
add_changepoints_to_plot(fig.gca(), m, forecast)
plt.show(trend=True)
#################
Please share your feedback, especially if you see mistakes in the process.
And remember:
There is always a possibility for error.
Black dots represent reality, red lines are the changepoints in the trend, and the blue line is the prediction.
Here is the code:
###################
import pandas as pd
from fbprophet import Prophet
df.rename(columns={'Date': 'ds', 'Price (Close)': 'y'}, inplace=True)
df['ds'] = pd.to_datetime(df['ds'], errors='coerce', utc=True )
df['ds'] = df['ds'].dt.strftime('%Y-%m-%d %H:%M')
df.rename(columns={'Date': 'ds', 'Value': 'y'}, inplace=True)
m = Prophet(seasonality_mode='multiplicative')
m.add_seasonality(name='monthly', period=30.5, fourier_order=5)
m.fit(df)
future = m.make_future_dataframe(periods=30*96, freq='15min')
forecast = m.predict(future)
m.plot(forecast)
m.plot_components(forecast)
from fbprophet.plot import add_changepoints_to_plot
fig = m.plot(forecast)
add_changepoints_to_plot(fig.gca(), m, forecast)
plt.show(trend=True)
#################
Please share your feedback, especially if you see mistakes in the process.
And remember:
There is always a possibility for error.
Clause de non-responsabilité
Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.
Clause de non-responsabilité
Les informations et les publications ne sont pas destinées à être, et ne constituent pas, des conseils ou des recommandations en matière de finance, d'investissement, de trading ou d'autres types de conseils fournis ou approuvés par TradingView. Pour en savoir plus, consultez les Conditions d'utilisation.