Chapter 1 Propuesta de estructura de datos a trabajar en el curso
La estructura de información a trabajar en el curso será la serie de tiempo correspondiente al índice S&P 500, el cual es un indicador ponderado del valor de capitalización de las 500 compañías más importantes de Estados Unidos.
Calculado por la evaluadora de riesgo Standard & Poor’s, este índice captura el 80% del comportamiento de la capitalización bursátil en el mercado americano. En tanto su estructura posee mayor diversidad en el tipo de compañías que lo componen, se tiene que el índice S&P 500 es una buena medida para monitorear y predecir la actividad económica en los enclaves económicos de mayor importancia a nivel global.
En general, la pertinencia del uso de este dataset radica en 3 razones principales:
En principio, se trata de una estructura de información concisa, legítima en el marco de las actividades de sectores financieros globales, y sin problemas previos en cuanto a la limpieza de sus observaciones. Por lo que una rutina progresiva de análisis sobre esta base de datos se puede dar con mayor facilidad e interpretabilidad.
El estudio del comportamiento de la capitalización bursátil a nivel global, contenido en el dataset escogido, implica una vista previa y una posible profundización del análisis financiero en el marco de las series de tiempo sobre el comportamiento de firmas, sectores y economías de alto impacto. De esta manera, la aplicación de la rutina de análisis del curso sobre este dataset puede decantar en un ejercicio robusto que puede extenderse más allá de los propósitos básicos de aprendizaje, y conformar una herramienta útil para las intenciones del autor.
El estudio de la estructura y comportamiento de este dataset como serie de tiempo, inmerso en las dinámicas de intercambio de los mercados de activos financieros, puede representar una herramienta de profundización para la toma de decisiones en materia de optimización de portafolios, y, en general, en materia de comprensión e implementación práctica de instrumentos aplicados de análisis de procesos estocásticos y metodologías de pronósticos.
1.1 Dataset:
# Load necessary libraries
library(rvest)
library(dplyr)
# Load necessary libraries
library(readr)
# Import the downloaded CSV file (change the path accordingly)
spx_data <- read_csv("C:/Users/ASUS/OneDrive - PUJ Cali/Documentos/MAESTRÍA PUJ/analisis de series de tiempo/datasets/HistoricalData_1728883475484.csv")
# Display the first few rows of the dataset
head(spx_data)## # A tibble: 6 × 5
## Date `Close/Last` Open High Low
## <chr> <dbl> <dbl> <dbl> <dbl>
## 1 10/11/2024 5815. 5775. 5822. 5775.
## 2 10/10/2024 5780. 5778. 5795. 5765.
## 3 10/09/2024 5792. 5752. 5797. 5745.
## 4 10/08/2024 5751. 5719. 5758. 5715.
## 5 10/07/2024 5696. 5738. 5739. 5687.
## 6 10/04/2024 5751. 5737. 5753. 5703.
1.2 Summary:
## Date Close/Last Open High Low
## Length:2527 Min. :1829 Min. : 0 Min. : 0 Min. : 0
## Class :character 1st Qu.:2364 1st Qu.:2365 1st Qu.:2371 1st Qu.:2353
## Mode :character Median :2938 Median :2933 Median :2947 Median :2919
## Mean :3265 Mean :3256 Mean :3273 Mean :3237
## 3rd Qu.:4147 3rd Qu.:4144 3rd Qu.:4169 3rd Qu.:4123
## Max. :5815 Max. :5778 Max. :5822 Max. :5775
1.3 Scatter plott de la serie de tiempo:
# Load necessary libraries
library(ggplot2)
library(dplyr)
# Print the column names to check their exact names
#print(colnames(spx_data))
# Convert the Date column to Date type
spx_data <- spx_data %>%
mutate(Date = as.Date(Date, format = "%m/%d/%Y"))
# Update the column name here after checking the output of print(colnames(spx_data))
spx_data <- spx_data %>%
mutate(Close_price = as.numeric(gsub("[^0-9.]", "", `Close/Last`))) # Update this line with the correct name
# Remove rows with NA values in Date or Close_price
spx_data <- spx_data %>%
filter(!is.na(Date) & !is.na(Close_price))
# Create the scatter plot
ggplot(spx_data, aes(x = Date, y = Close_price)) +
geom_point(color = "blue", alpha = 0.6) +
labs(title = "S&P 500 Close Prices Over Time",
x = "Date",
y = "Close Price") +
theme_minimal()