DiscoverR-bloggersBagged Neural Networks: Will Bayrou’s Fell Affect the STOXX 600 Index?
Bagged Neural Networks: Will Bayrou’s Fell Affect the STOXX 600 Index?

Bagged Neural Networks: Will Bayrou’s Fell Affect the STOXX 600 Index?

Update: 2025-09-09
Share

Description




[This article was first published on DataGeeek, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.


The French government is planning to hold a confidence vote on Prime Minister François Bayrou’s fiscal plan.





If a coalition of opposition parties votes against the government, as is widely expected, Bayrou will have to submit his resignation to French President Emmanuel Macron.





This could cause a fall to the middle band for the STOXX Europe 600 index, according to the chart built by bagged neural networks via nnet.





<figure><button class="lightbox-trigger" type="button">
<svg fill="none" height="12" viewBox="0 0 12 12" width="12" xmlns="http://www.w3.org/2000/svg">
<path d="M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z" fill="#fff">
</svg>
</button></figure>



Source code:





library(tidyverse)
library(tidymodels)
library(timetk)
library(modeltime)
library(tidyquant)
library(baguette)

#STXE 600 (^STOXX)
df_stoxx <-
tq_get("^STOXX") %>%
select(date, close) %>%
drop_na()

#Splitting the Data
splits <-
time_series_split(
df_stoxx,
assess = "1 month",
cumulative = TRUE
)

df_train <- training(splits)
df_test <- testing(splits)


#Recipe
rec_nnet <-
recipe(close ~ ., data = df_train) %>%
step_timeseries_signature(date) %>%
step_rm(date) %>%
step_dummy(all_nominal_predictors(), one_hot = TRUE) %>%
step_zv(all_predictors()) %>%
step_normalize(all_numeric_predictors())

#Model
mod_nnet <-
bag_mlp(penalty = tune(),
hidden_units = tune(),
epochs = tune()) %>%
set_engine("nnet") %>%
set_mode("regression")


#Hyperparameter Tuning
mod_param <- extract_parameter_set_dials(mod_nnet)

set.seed(1234)
model_tbl <-
mod_param %>%
grid_random(size = 10) %>%
create_model_grid(
f_model_spec = bag_mlp,
engine_name = "nnet",
mode = "regression"
)

#Extracting the model list
model_list <- model_tbl$.models

#Workflowsets
model_wfset <-
workflow_set(
preproc = list(rec_nnet),
models = model_list,
cross = TRUE
)

#Fitting Using Parallel Backend
model_parallel_tbl <-
model_wfset %>%
modeltime_fit_workflowset(
data = df_train,
control = control_fit_workflowset(
verbose = TRUE,
allow_par = TRUE
)
)



#Accuracy
model_parallel_tbl %>%
modeltime_calibrate(new_data = df_test) %>%
modeltime_accuracy() %>%
table_modeltime_accuracy()



#Calibration to the test set for the best model
calibration_tbl <-
model_parallel_tbl %>%
filter(.model_desc == "RECIPE_BAG_MLP_9") %>%
modeltime_calibrate(df_test)



#Prediction Intervals
calibration_tbl %>%
modeltime_forecast(new_data = df_test,
actual_data = df_test) %>%
plot_modeltime_forecast(.interactive = FALSE,
.legend_show = FALSE,
.line_size = 1.5,
.color_lab = "",
.title = "STOXX EUROPE 600") +
labs(subtitle = "Predictive Intervals of the Deep Learning Model") +
scale_y_continuous(labels = scales::label_currency(prefix = "€",
suffix = "")) +
scale_x_date(labels = scales::label_date("%b %d"),
date_breaks = "4 days") +
theme_minimal(base_family = "Roboto Slab", base_size = 16) +
theme(plot.subtitle = ggtext::element_markdown(face = "bold"),
plot.title = element_text(face = "bold"),
plot.background = element_rect(fill = "azure", color = "azure"),
panel.background = element_rect(fill = "snow", color = "snow"),
axis.text = element_text(face = "bold"),
axis.text.x = element_text(angle = 45,
hjust = 1,
vjust = 1),
legend.position = "none")


To leave a comment for the author, please follow the link and comment on their blog: DataGeeek.



R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.


Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
Continue reading: Bagged Neural Networks: Will Bayrou’s Fell Affect the STOXX 600 Index?
Comments 
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

Bagged Neural Networks: Will Bayrou’s Fell Affect the STOXX 600 Index?

Bagged Neural Networks: Will Bayrou’s Fell Affect the STOXX 600 Index?

Selcuk Disci