Machine Learning and Deep Learning Algorithm Trading, Generating doc2vec Input from Yelp Sentiment Data

Today, machine learning and deep learning play a vital role in financial markets. This article focuses on processing Yelp review data using doc2vec, which plays an important role in sentiment analysis, and applying it to trading algorithms.

1. Importance of Machine Learning and Deep Learning

Machine learning and deep learning technologies demonstrate outstanding performance in analyzing and predicting large amounts of data. In particular, in financial trading, it is essential to analyze the impact of unstructured data such as social media, news, and reviews on price fluctuations, in addition to market data. Such data can be utilized to build models that support decision-making.

2. Introduction to Yelp Sentiment Data

Yelp is a platform where users leave reviews about restaurants and businesses, including text reviews, ratings, and user information. By performing sentiment analysis on Yelp data, we can identify patterns in positive or negative reviews and use them as predictive indicators for stock prices.

3. Introduction and Necessity of doc2vec

Doc2vec is a technique that understands the context of text data and represents the meaning of documents in vector form. It is based on the advancements in word embedding technology and generates unique vectors for each document. This vectorization significantly contributes to enhancing the performance of subsequent machine learning models.

3.1 Structure of the doc2vec Model

Doc2vec is based on two main algorithms: Distributed Bag of Words (DBOW) and Distributed Memory (DM). DBOW disregards the context of words by using the labels of documents, capturing the meaning of the document. DM works by predicting subsequent words based on past words.

4. Data Collection

To collect Yelp sentiment data, the latest APIs or web scraping technologies can be utilized. Here, we describe the process of gathering data as an example using Python’s requests library and BeautifulSoup.

import requests
from bs4 import BeautifulSoup

def fetch_yelp_reviews(business_id):
    url = f'https://www.yelp.com/biz/{business_id}'
    response = requests.get(url)
    soup = BeautifulSoup(response.text, 'html.parser')
    reviews = soup.find_all('p', class_='comment')
    return [review.text for review in reviews]

business_id = "example-business-id"
reviews = fetch_yelp_reviews(business_id)
print(reviews)

5. Data Preprocessing

Preprocessing is necessary to input the collected review data into the doc2vec model. This includes processes such as text cleaning, tokenization, stopword removal, and stemming.

import nltk
from nltk.corpus import stopwords
from nltk.stem import PorterStemmer

nltk.download('stopwords')
stop_words = set(stopwords.words('english'))
stemmer = PorterStemmer()

def preprocess_reviews(reviews):
    processed_reviews = []
    for review in reviews:
        tokens = nltk.word_tokenize(review.lower())
        filtered_tokens = [stemmer.stem(word) for word in tokens if word.isalnum() and word not in stop_words]
        processed_reviews.append(filtered_tokens)
    return processed_reviews

cleaned_reviews = preprocess_reviews(reviews)
print(cleaned_reviews)

6. Training the doc2vec Model

This is the stage of training the doc2vec model using the preprocessed review data. We create and train the model using Gensim’s Doc2Vec library.

from gensim.models import Doc2Vec, TaggedDocument

documents = [TaggedDocument(words=review, tags=[str(i)]) for i, review in enumerate(cleaned_reviews)]

model = Doc2Vec(vector_size=50, min_count=2, epochs=40)
model.build_vocab(documents)
model.train(documents, total_examples=model.corpus_count, epochs=model.epochs)

# Check document vector
vector = model.infer_vector(['great', 'food'])
print(vector)

7. Designing Trading Strategies

Using the document vectors obtained from the trained doc2vec model, we design trading strategies. For instance, we can develop a return prediction model based on sentiment indices.

7.1 Structure of the Prediction Model

A trading model generally has the following structure:

  • Data collection and preprocessing
  • Feature vector generation (including document vectors)
  • Model training (regression or classification model)
  • Model evaluation and optimization
  • Real-time trading execution

8. Model Evaluation

The trained model’s performance should be evaluated using a test dataset. Commonly used metrics include RMSE, accuracy, and MAPE.

from sklearn.metrics import mean_squared_error
from math import sqrt

# Compare predicted values with actual values
y_true = [2.5, 3.0, 4.5] # Actual values
y_pred = [2.0, 3.5, 4.0] # Predicted values

rmse = sqrt(mean_squared_error(y_true, y_pred))
print(f'RMSE: {rmse}

9. Conclusion

This tutorial explained the process of generating doc2vec vectors to input into machine learning and deep learning models using Yelp sentiment data. This data can provide valuable signals for algorithmic trading and can be utilized in real-time financial markets. In fact, one can build their own trading algorithms and maximize their performance by using such methods.

10. References

  • Le, Q. & Mikolov, T. (2014). Distributed Representations of Sentences and Documents. ICML.
  • Gensim Documentation. (n.d.). Gensim.
  • NLTK Documentation. (n.d.). NLTK.

11. Additional Exercises

Additional practice problems are provided for the reader. Try to collect Yelp data, generate vectors using doc2vec, and design various trading algorithms.

  • Collect and compare data from different business categories
  • Hyperparameter tuning to improve the prediction model
  • Testing and optimizing the model with real-time data included

Thank you!

Machine Learning and Deep Learning Algorithm Trading, Calculating Predictive Asset Features

Algorithmic trading is becoming increasingly important in modern finance. As the changes in financial markets accelerate, traders need data-driven decision-making rather than relying on human intuition. Machine learning and deep learning play a crucial role in this process, becoming powerful tools that can automatically learn and predict. This article will explain in detail how to calculate and predict asset characteristics using machine learning and deep learning algorithms.

1. Basics of Algorithmic Trading

Algorithmic trading refers to a trading method that automatically executes trades according to specific algorithms. This method uses computer programs to perform trades based on predefined rules. The main benefits of algorithmic trading are:

  • Quick order execution: Algorithms can execute trades in less than milliseconds.
  • Elimination of emotions: Algorithms analyze data and make decisions objectively, thus removing emotional elements from human involvement.
  • Implementation of sophisticated strategies: Complex mathematical models or statistical methods can be employed to implement sophisticated trading strategies.

2. Overview of Machine Learning

Machine learning is a technique that learns patterns from data to make predictions and decisions. Machine learning is broadly classified into three types:

  • Supervised Learning: Given input data and corresponding answers (output data), it learns the relationship to predict outputs for new inputs.
  • Unsupervised Learning: Learns patterns or structures in data without predetermined answers. Techniques such as clustering or dimensionality reduction are used.
  • Reinforcement Learning: Learns actions that maximize rewards through interaction with the environment. It is primarily used in games and robot control.

2.1 Applications of Supervised Learning

Supervised learning can be utilized in various fields such as stock price prediction, credit scoring, and market risk assessment. For instance, regression models or classification models are frequently used for stock price predictions.

2.2 Applications of Unsupervised Learning

Unsupervised learning is mainly used in clustering and dimensionality reduction. These techniques help in understanding data and finding patterns. For example, they are used in customer segmentation or anomaly detection and are useful for discovering hidden structures in markets.

3. Overview of Deep Learning

Deep learning is a subfield of machine learning that uses artificial neural networks to analyze data. Deep learning has the following advantages:

  • High accuracy: It can handle large volumes of data and complex models, providing high accuracy.
  • Automatic feature extraction: The model automatically extracts features from data when inputted.

Deep learning has achieved significant results in various fields, including stock market prediction, speech recognition, and image recognition.

3.1 CNN (Convolutional Neural Network)

CNN is primarily used in image processing but is also applied in time series analysis based on price changes over time. The structure of CNN is very effective in extracting spatial features of images.

3.2 RNN (Recurrent Neural Network)

RNN is effective for processing time series data, that is, data that changes over time. It is frequently used in areas like stock price prediction, reflecting past information to predict current values.

4. Asset Characteristic Calculation

Calculating asset characteristics is an important step in algorithmic trading. This helps discover useful patterns in data and build predictive models. The characteristics of assets include the following:

  • Price and Return: Price changes and returns of stocks, bonds, commodities, etc., are the most basic characteristics.
  • Trading Volume: Indicates market liquidity; the higher the trading volume of a specific asset, the more reliable the data becomes.
  • Volatility: Represents the degree of price change of an asset and is a crucial factor in risk assessment.
  • Correlation: Helps diversify portfolios through correlations with other assets.

4.1 Moving Average

The moving average is used to smooth out the volatility of stock prices and identify trends. Common types include Simple Moving Average (SMA) and Exponential Moving Average (EMA).

4.2 Relative Strength Index (RSI)

The RSI indicates overbought and oversold conditions of an asset and is useful at price reversal points. Generally, it has a value between 0 and 100, with above 70 considered overbought and below 30 considered oversold.

5. Data Collection and Preprocessing

The performance of the model heavily depends on the quality of the data. Therefore, data collection and preprocessing are crucial. Methods to collect data include:

  • API: You can collect real-time data by utilizing APIs from various financial data providers.
  • Web Scraping: A method of extracting necessary data from web pages.

5.1 Data Cleaning

Real data may contain missing values or noise, so these need to be addressed. Missing values can be replaced with the mean or median, and noise can be filtered using filtering techniques.

6. Model Training

Once the data is prepared, model training begins. Machine learning algorithms learn from the provided data to predict the future based on past patterns. The general training process proceeds as follows:

  1. Divide the dataset into training, test, and validation sets.
  2. Initialize the model and begin training.
  3. After training, evaluate the model’s performance using the validation dataset.
  4. Adjust the model’s hyperparameters to improve performance.

6.1 Model Evaluation

The performance of the model can be assessed through prediction accuracy, precision, recall, etc. Additionally, the model’s performance can be quantitatively analyzed using ROC curves and AUC values.

7. Building an Algorithmic Trading System

Once model training is complete, the actual trading system can be built. The algorithmic trading system includes steps for data collection, signal generation, order execution, and reporting.

7.1 Signal Generation

In the signal generation process, the algorithm generates buy or sell signals. These signals occur based on the predictions made by the machine learning model.

7.2 Order Execution

Once a signal is generated, trades are executed based on it. Orders can be automatically executed using the exchange’s API.

8. Risk Management

Effective risk management is essential for the success of algorithmic trading. Traders must set position sizes, stop-losses, and profit realization strategies to minimize risk.

8.1 Portfolio Diversification

Diversifying investments across various assets is an effective way to reduce risk. It is advisable to select assets with low correlation to construct a portfolio.

9. Conclusion

Trading utilizing machine learning and deep learning algorithms offers a new data-driven approach. The process of calculating and predicting asset characteristics is complex, but using appropriate algorithms can yield strong results. Based on the content covered in this course, I hope you will build a more effective algorithmic trading system.

References

For more detailed information, please refer to the following materials:

Machine Learning and Deep Learning Algorithm Trading, Comparison of Prediction Signal Quality

As the volatility in financial markets has increased recently, many traders and investors have come to rely on algorithmic trading. In particular, machine learning (ML) and deep learning (DL) technologies have demonstrated innovative results in data analysis and forecasting. This article will delve into the basics of algorithmic trading using machine learning and deep learning, major techniques, and the comparison of prediction signal quality.

1. Basics of Machine Learning and Deep Learning

1.1 Definition of Machine Learning

Machine learning is a set of algorithms that learn patterns from data to make predictions or decisions without programming. This enables the ability to perform predictions or decisions on new data based on what it has learned from given data.

1.2 Definition of Deep Learning

Deep learning is a field of machine learning based on artificial neural networks, using multilayer neural networks to recognize complex patterns in data. It has shown excellent results, particularly in fields such as image, speech, and natural language processing.

2. Use of Machine Learning and Deep Learning in Algorithmic Trading

2.1 Data Collection

To utilize machine learning and deep learning in algorithmic trading, data must first be collected. This can include various forms of data such as stock prices, trading volumes, and economic indicators. The source and quality of the data have a significant impact on model performance, so securing reliable data is essential.

2.2 Preprocessing and Feature Selection

A preprocessing step is necessary to prepare the data for model training. Various techniques such as handling missing values, removing outliers, and normalization are used. Additionally, selecting relevant features is crucial for enhancing machine learning performance, as it determines the quality and quantity of information the algorithm learns from.

2.3 Model Training

Various machine learning algorithms can be applied to train models based on preprocessed data. Common algorithms include:

  • Linear Regression
  • Support Vector Machines (SVM)
  • Decision Trees
  • Random Forest
  • Artificial Neural Networks
  • Recurrent Neural Networks (RNN)
  • Long Short-Term Memory (LSTM)

2.4 Model Evaluation

After a model has been trained, its performance must be evaluated. It is important to consider not only the accuracy of predictions but also the profitability and risk of the trading strategy. Commonly used metrics include:

  • Accuracy
  • Precision
  • Recall
  • F1 Score
  • Return
  • Sharpe Ratio

3. Comparison of Prediction Signal Quality

To evaluate model performance, it is important to compare the quality of prediction signals. By comparing prediction signals from different algorithms, one can determine the most effective strategy.

3.1 Definition of Prediction Signals

Prediction signals are indicators that predict future price movements of a specific asset. These signals can be classified as buy, sell, or hold signals.

3.2 Comparison of Prediction Signals from Various Algorithms

Different algorithms analyze data in distinct ways, so prediction signals can vary based on the characteristics of each algorithm. For example:

  • Linear regression can provide continuous predictions of price increases or decreases, but may struggle to capture nonlinear patterns.
  • Support vector machines can establish more complex decision boundaries but may be sensitive to noise.
  • Neural network-based models can accurately capture nonlinear patterns but come with the risk of overfitting.

3.3 Experimental Design for Quality Assessment

To compare the quality of prediction signals, various experiments can be designed. A fair comparison requires using the same dataset and evaluation metrics for each algorithm. For example:


# Example code: comparing the performance of each algorithm
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score

# Load data
data = pd.read_csv('data.csv')
X = data.drop('target', axis=1)
y = data['target']

# Split the data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Linear regression model
lr_model = LinearRegression()
lr_model.fit(X_train, y_train)
lr_pred = lr_model.predict(X_test)

# Random forest model
rf_model = RandomForestClassifier()
rf_model.fit(X_train, y_train)
rf_pred = rf_model.predict(X_test)

# Evaluate accuracy
lr_accuracy = accuracy_score(y_test, lr_pred)
rf_accuracy = accuracy_score(y_test, rf_pred)

print(f'Linear Regression Accuracy: {lr_accuracy}')
print(f'Random Forest Accuracy: {rf_accuracy}')

3.4 Result Analysis and Interpretation

By analyzing experimental results and interpreting the characteristics of prediction signals, one can determine the optimal trading strategy. For instance, if a particular algorithm shows high accuracy, additional validation is necessary to confirm if it is a suitable strategy in all market conditions.

4. Conclusion

Algorithmic trading using machine learning and deep learning is a promising approach to enhance prediction accuracy. However, it is important to understand the characteristics of each algorithm and compare the quality of prediction signals to establish an optimal trading strategy. In this process, the quality of data and various algorithm characteristics must also be taken into account.

4.1 Future Directions

Algorithmic trading is expected to evolve, with increasing applications of machine learning and deep learning. More sophisticated algorithm development and the application of reinforcement learning are also anticipated. These advancements will reshape the trading ecosystem and provide new opportunities for investors.

4.2 References

The following are resources related to machine learning and deep learning in algorithmic trading mentioned in the article:

  • Profound research papers from various sources
  • Books on machine learning and deep learning
  • Documentation of open-source libraries (e.g., Scikit-learn, TensorFlow, PyTorch)

May this blog post enhance your understanding of algorithmic trading utilizing machine learning and deep learning, and assist in investment and trading strategy development. Thank you!

Machine Learning and Deep Learning Algorithm Trading, Performance Evaluation of Predictions

Algorithmic trading is gaining increasing attention in modern financial markets. This process involves using machine learning and deep learning techniques to analyze market data and develop systems that automatically make trading decisions based on this analysis. In this article, we will take a detailed look at the basic concepts of algorithmic trading using machine learning and deep learning, as well as methods for evaluating predictive performance.

1. Understanding Machine Learning and Deep Learning

Machine Learning (ML) and Deep Learning (DL) are subfields of Artificial Intelligence (AI) that develop algorithms to learn patterns from data and make predictions and decisions. Machine learning generally deals with structured data, while deep learning is powerful in handling unstructured data, especially images, text, and time-series data.

1.1 Types of Machine Learning

The main categories of machine learning are as follows:

  • Supervised Learning: A method of learning where the model is trained using input data along with corresponding labels (answers). For instance, a model can be created to predict future stock prices based on historical price data.
  • Unsupervised Learning: A method of learning that focuses on learning patterns from input data alone. Clustering and dimensionality reduction techniques fall into this category.
  • Reinforcement Learning: An agent learns a policy to maximize rewards by interacting with the environment. It can be used to learn optimal trading strategies in financial transactions.

1.2 Basic Concepts of Deep Learning

Deep learning is a model that increases depth by stacking multiple layers of artificial neural networks (ANN). There are various architectures such as Convolutional Neural Networks (CNN), Recurrent Neural Networks (RNN), and Long Short-Term Memory (LSTM), each with its own characteristics.

2. Essential Components of Algorithmic Trading

To build an algorithmic trading system, the following elements are needed:

  1. Data Collection: Collect necessary data such as stock prices, trading volumes, and economic indicators.
  2. Data Preprocessing: Process the data to handle missing values, scaling, and transformations to make it suitable for model training.
  3. Model Selection and Training: Select and train appropriate machine learning and deep learning models for the task.
  4. Prediction and Trading Strategy: Generate trading signals based on the trained model.
  5. Performance Evaluation: Evaluate the performance of the generated trading strategy.

3. Predictive Performance Evaluation

Various metrics are used to assess how well the model is functioning. The following sections will explore these performance evaluation methods.

3.1 Accuracy

Accuracy is the ratio of the number of samples that the model predicted correctly to the total number of samples. It is useful in simple cases, but performance can be distorted in cases of class imbalance.

3.2 Precision and Recall

Precision refers to the ratio of true positives among the instances predicted as positive by the model, while recall refers to the ratio of true positives that the model correctly predicted as positive among the actual positives. These two metrics usually have an inverse relationship and are often evaluated together using the F1-score.

3.3 F1-Score

The F1-score is the harmonic mean of precision and recall, assessing model performance considering the balance between the two metrics. The F1-score is calculated as follows:

F1 = 2 * (Precision * Recall) / (Precision + Recall)

3.4 ROC Curve and AUC

The Receiver Operating Characteristic (ROC) curve visualizes the relationship between sensitivity (recall) and specificity at various thresholds. The Area Under the Curve (AUC) represents the area under the ROC curve and indicates the overall performance of the model.

3.5 MSE, RMSE, MAE

In regression problems, the following error metrics are used to evaluate performance:

  • Mean Squared Error (MSE): The average of the squared differences between predicted and actual values.
  • Root Mean Squared Error (RMSE): The square root of MSE, interpretable in the original scale.
  • Mean Absolute Error (MAE): The average of the absolute differences between predicted and actual values.

4. Example: Stock Price Prediction Model

Now, let’s look at an example of a stock price prediction model using machine learning. Below is a process to build a simple linear regression model using Python.

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# Load data
data = pd.read_csv('stock_data.csv')
X = data[['feature1', 'feature2']].values
y = data['target'].values

# Split into training and testing data
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Create and train model
model = LinearRegression()
model.fit(X_train, y_train)

# Make predictions
y_pred = model.predict(X_test)

# Evaluate performance
mse = mean_squared_error(y_test, y_pred)
print(f"MSE: {mse}")

5. Conclusion

Algorithmic trading using machine learning and deep learning can be powerful tools in financial markets. Proper data collection and preprocessing, appropriate model selection, and thorough performance evaluation are key to building a successful algorithmic trading system. Future articles will continue to cover more advanced techniques and strategies.

Note: The financial market is highly volatile with many unpredictable factors, so algorithmic trading approaches always carry risks. Wise judgment is necessary when considering investment.

Machine Learning and Deep Learning Algorithm Trading, Engle-Granger Two-Step Method

Trading in the stock market is fundamentally about making decisions based on data. In recent years, machine learning and deep learning technologies have significantly impacted the field of algorithmic trading, allowing investors to maximize their returns by leveraging these technologies. This course will focus on the Engle-Granger two-step method, explaining how to implement trading strategies through machine learning and deep learning.

1. Overview of Machine Learning and Deep Learning

Machine learning is a technology that allows computers to learn and make predictions from given data. On the other hand, deep learning is a subset of machine learning that builds complex models based on artificial neural networks to achieve higher accuracy. Both are suitable for algorithmic trading, but each has its own advantages and disadvantages.

1.1 Basic Concepts of Machine Learning

  • Supervised Learning: A method where the model learns to predict new data based on input data and corresponding output data (labels) provided.
  • Unsupervised Learning: A method where only input data is provided without output data, aimed at finding patterns or clusters among the data.
  • Reinforcement Learning: A method that learns the optimal policy by interacting with the environment to maximize rewards.

1.2 Introduction to Deep Learning

Deep learning utilizes artificial neural networks composed of numerous layers, excelling at processing unstructured data (e.g., images, text). One of the main algorithms used in this area is Convolutional Neural Networks (CNN), while Recurrent Neural Networks (RNN) are used for processing sequence data.

2. Engle-Granger Two-Step Method

2.1 Overview of Engle-Granger

The Engle-Granger method is a methodology particularly suitable for analyzing time series data to forecast financial data. Considering the nonlinearities and complexities of the stock market, this methodology can be very useful. The two steps of this method are as follows.

  • Step 1: Decomposition of Time Series Data – Separating the trend, seasonality, and irregular components of the data to examine each element.
  • Step 2: Predictive Modeling – Building predictive models based on the decomposed data and applying machine learning/deep learning algorithms to forecast future price movements.

2.2 Step 1: Decomposition of Time Series Data

Time series data is data collected over time, which can be analyzed for patterns, trends, and periodicity. Using the Engle-Granger method, data is decomposed through the following procedures.

  1. Data Collection: Data can be collected from services like Yahoo Finance API, Google Finance API, or other data providers.
  2. Data Preprocessing: Improving data quality through handling missing values and detecting outliers.
  3. Data Decomposition: Analyzing the time series data divided into trend, seasonality, and irregular components using Additive or Multiplicative models.

2.3 Step 2: Predictive Modeling

Based on the decomposed data, a predictive model is built utilizing machine learning or deep learning. Basic algorithms such as ARIMA (model), LSTM, GRU, etc., can be employed to maximize performance.

2.3.1 LSTM (Long Short-Term Memory)

LSTM is a deep learning model that is highly useful for time series data prediction, with excellent capabilities for learning long-term dependencies. A basic LSTM network is structured as follows.

import numpy as np
import pandas as pd
from keras.models import Sequential
from keras.layers import LSTM, Dense, Dropout

# Preparing data
data = pd.read_csv("stock_prices.csv")
X, y = prepare_data(data)

# Building LSTM model
model = Sequential()
model.add(LSTM(50, return_sequences=True, input_shape=(X.shape[1], X.shape[2])))
model.add(Dropout(0.2))
model.add(LSTM(50, return_sequences=False))
model.add(Dropout(0.2))
model.add(Dense(1))

# Compiling and training the model
model.compile(optimizer='adam', loss='mean_squared_error')
model.fit(X, y, epochs=100, batch_size=32)

3. Implementing Algorithmic Trading Strategies

3.1 Data Collection and Preprocessing

Data collection is the first step in algorithmic trading, where it is essential to secure accurate and reliable data. Stock price data can be collected through data provider services like Yahoo Finance, Alpha Vantage, and Quandl.

3.1.1 Example of Data Collection

import yfinance as yf

# Downloading data
ticker = "AAPL"
data = yf.download(ticker, start="2020-01-01", end="2023-01-01")
data.to_csv("AAPL_stock_data.csv")

3.2 Feature Selection and Model Training

Feature selection is a crucial process that affects model performance. Features such as price, volume, and technical indicators can be extracted from historical data. A process of training and validating the machine learning model based on this is necessary.

3.2.1 Example of Technical Indicators

# Calculating moving averages
data['SMA_50'] = data['Close'].rolling(window=50).mean()
data['EMA_50'] = data['Close'].ewm(span=50, adjust=False).mean()

3.3 Model Evaluation

In the model evaluation stage, the training data and test data are separated to measure the model’s performance. Metrics such as RMSE (Root Mean Square Error) and MSE (Mean Square Error) are used to assess prediction accuracy.

4. Conclusion

The Engle-Granger two-step method is a valuable methodology for effectively analyzing and forecasting time series data. By implementing algorithmic trading strategies using machine learning and deep learning techniques, investors gain opportunities to make data-driven strategic decisions. This course introduced the fundamental concepts of algorithmic trading through machine learning and deep learning and provided a detailed explanation of the Engle-Granger method. It is hoped that continuous learning and experience will allow for the development of trading strategies in the future.