Цена акций дается для каждой акции, выпущенной публично торгуемой компанией. Цена отражает ценность компании - то, что общественность готова платить за часть компании.

Для всех вас, людей, которые не понимают, что такое фондовый рынок, это большая платформа, на которой вы можете покупать акции компании, и вы, по сути, являетесь владельцем этой компании. Например, если у Apple есть 10 000 акций для покупки, и я покупаю 100 акций, это означает, что технически я владею 1% компании. Хотя мне может принадлежать 1% компании, что не означает, что у меня есть какие-либо полномочия по принятию решений или какие-либо полномочия в отношении Apple, поэтому не думайте, что вы можете пойти в Apple и потребовать новый iPhone. .

Импорт библиотек

  1. math: для математических расчетов.
  2. pandas_datareader: чтение набора данных из Интернета
  3. numpy: для создания массивов numpy
  4. pandas: Чтобы прочитать набор данных и выполнить с ним аналитическую операцию
  5. keras: для импорта слоев и типов моделей.
  6. последовательный: Последовательная модель подходит для простого набора слоев, где каждый слой имеет ровно один входной тензор и один выходной тензор.
  7. matplotlib: для построения данных и результатов.

Чтение набора данных

Код:

  1. df = web.DataReader (‘AAPL’, data_source = ’yahoo’, start = ’2012–01–01 ', end =’ 2019–12–17 ’)
  2. df

  1. Максимум: максимум - это самая высокая цена, по которой акция торговалась за период.
  2. Минимум: минимум - это самая низкая цена за период.
  3. Открытие: это цена, по которой финансовая ценная бумага открывается на рынке в момент начала торговли. Она может отличаться или не отличаться от цены закрытия предыдущего дня. Ценная бумага может открываться по более высокой цене, чем цена закрытия, из-за чрезмерного спроса на эту ценную бумагу.
  4. Закрытие: закрытие - это ссылка на окончание торговой сессии на финансовых рынках, когда рынки закрываются. На день. закрытие также может относиться к процессу выхода из сделки или заключительной процедуре финансовой транзакции, в которой подписываются и записываются контрактные документы.
  5. Объем: Объем - это количество акций ценной бумаги, проданных в течение определенного периода времени. … Чем выше объем во время движения цены, тем более значительное движение и чем меньше объем во время движения цены, тем менее значительным будет движение.
  6. Скорректированное закрытие: скорректированная цена закрытия изменяет цену закрытия акции, чтобы отразить ее стоимость после учета любых корпоративных действий. Цена закрытия - это исходная цена, которая представляет собой просто денежную стоимость последней цены сделки перед закрытием рынка.

Используйте df.shape, чтобы найти количество строк и столбцов в наборе данных

Построение набора данных

Масштабирование данных

Масштабирование всех значений от 0 до 1

Разделение данных на набор данных для обучения и тестирования

Код: x_train, y_train = np.array (x_train), np.array (y_train)

Изменение формы данных

Вы всегда должны предоставлять трехмерный массив в качестве входных данных для вашей сети LSTM (см. Изображение выше). Если первое измерение представляет размер пакета, второе измерение представляет количество временных шагов, которые вы вводите в последовательность. И третье измерение представляет количество единиц в одной входной последовательности. Например, форма ввода выглядит как (batch_size, time_steps, seq_len). Давайте посмотрим на пример в Керасе.

Код:

  1. x_train = np.reshape (x_train, (x_train.shape [0], x_train.shape [1], 1))

Построение модели и ее обучение

Изменение масштаба и преобразование тестовых данных

Прогнозы

  1. прогнозы = model.predict (x_test)
  2. predictions = scaler.inverse_transform (прогнозы)

Отменить масштабированные прогнозы

Построение прогнозов

Профиль Github: https://github.com/saranshrajput