Инвесторы и трейдеры на фондовом рынке всегда ищут надежные методы прогнозирования будущих результатов компаний. Двумя важными показателями для оценки перспектив компании являются ее прибыль и рост выручки. В этой статье мы рассмотрим, как использовать машинное обучение для прогнозирования доходов и роста доходов на рынке животноводства с использованием данных Yahoo Finance в режиме реального времени. Мы рассмотрим процесс шаг за шагом и реализуем наиболее подходящую модель с помощью Python, сопровождаемую проницательными графиками для визуализации наших прогнозов.

Шаг 1: Сбор данных

Первым шагом является получение данных о фондовом рынке в реальном времени от Yahoo Finance. Мы можем использовать библиотеку yfinance в Python для доступа к финансовым данным в режиме реального времени. Давайте соберем исторические данные для целевой компании, указав ее биржевой код, дату начала и дату окончания.

import yfinance as yf

stock_ticker = 'AAPL'
start_date = '2018-01-01'
end_date = '2023-07-30'
stock_data = yf.download(stock_ticker, start=start_date, end=end_date)

Шаг 2: Предварительная обработка данных

Имея данные на руках, мы можем предварительно обработать их, чтобы рассчитать прибыль и рост выручки. Мы получим эти показатели из существующих финансовых данных, таких как «Прибыль» и «Доход».

stock_data['Earnings_Growth'] = stock_data['Earnings'].pct_change() * 100
stock_data['Revenue_Growth'] = stock_data['Revenue'].pct_change() * 100

stock_data.dropna(inplace=True)

Шаг 3: Сплит «обучение-тестирование»

Чтобы оценить производительность нашей модели прогнозирования, нам нужно разделить данные на наборы для обучения и тестирования. Мы будем использовать примерно 80% данных для обучения и оставшиеся 20% для тестирования.

train_size = int(len(stock_data) * 0.8)
train_data, test_data = stock_data.iloc[:train_size], stock_data.iloc[train_size:]

Шаг 4: Выбор модели машинного обучения

Для прогнозирования мы будем использовать модель ARIMA (AutoRegressive Integrated Moving Average), мощную технику прогнозирования временных рядов. ARIMA подходит для фиксации основных закономерностей и сезонности в данных временных рядов.

from statsmodels.tsa.arima.model import ARIMA

def train_arima_model(data, column):
    arima_model = ARIMA(data[column], order=(1, 1, 1))
    arima_result = arima_model.fit()
    return arima_result

arima_model_earnings = train_arima_model(train_data, 'Earnings_Growth')

arima_model_revenue_growth = train_arima_model(train_data, 'Revenue_Growth')

Шаг 5: Прогноз прибыли и роста доходов

Теперь, когда наши модели ARIMA обучены, давайте сделаем прогнозы доходов и роста доходов на тестовых данных.

earnings_growth_predictions = arima_model_earnings.forecast(steps=len(test_data))

revenue_growth_predictions = arima_model_revenue_growth.forecast(steps=len(test_data))

Шаг 6: Визуализация

Чтобы получить более глубокое представление, давайте визуализируем фактические и прогнозируемые доходы и рост доходов с помощью информативных графиков.

import matplotlib.pyplot as plt

plt.figure(figsize=(12, 6))
plt.plot(test_data.index, test_data['Revenue_Growth'], label='Actual Revenue Growth', color='blue')
plt.plot(test_data.index, revenue_growth_predictions, label='Forecasted Revenue Growth', color='red')
plt.xlabel('Date (UTC Time)')
plt.ylabel('Trend Line (Long Term)')
plt.legend()
plt.show()

Заключение:

В этой статье мы продемонстрировали, как прогнозировать доходы и рост доходов на рынке животноводства с помощью машинного обучения с помощью Python. Мы собрали данные о запасах в реальном времени из Yahoo Finance, обработали их для расчета соответствующих показателей и выбрали модель ARIMA для прогнозирования. Визуализируя фактические и прогнозируемые доходы и рост доходов, мы можем лучше оценить будущие результаты деятельности компании.

Другие блоги:

Средний

Контактная информация:

Веб-сайт

Сообщение от InsiderFinance

Спасибо, что являетесь частью нашего сообщества! Перед тем, как ты уйдешь: