Purpose of this function is to verify trading system functionality by analysing profit factor on the last trades. Whenever trading robot has profit factor value below certain limit function will write a file log indicating which trading systems need to be maintained.
Learn by example how to manipulate data
check_if_optimize(
x,
system_list,
path_data,
num_trades_to_consider = 3,
profit_factor_limit = 0.7,
write_mode = FALSE
)
function returns a dataframe with systems that should be optimized
dataframe containing trading results
dataframe containing a table with magic numbers used by robots. Stored in file Setup.csv
string, path to the folder where optimization file should be written
Number of trades to calculate profit factor
Limit below which trading robot is considered not working properly
When true function will write result to the file located in the temporary directory
(C) 2019,2021 Vladimir Zhbanko
Whenever there will be not enough trades then empty file will be written to the destination
library(lazytrade)
library(magrittr)
library(dplyr)
library(readr)
library(lubridate)
path_data <- normalizePath(tempdir(),winslash = "/")
file.copy(from = system.file("extdata", "Setup.csv", package = "lazytrade"),
to = file.path(path_data, "Setup.csv"), overwrite = TRUE)
system_list <- read_csv(file.path(path_data, "Setup.csv"))
data(profit_factorDF)
# without writing to the file
check_if_optimize(x = profit_factorDF,
system_list = system_list,
path_data,
num_trades_to_consider = 3,
profit_factor_limit = 0.8,
write_mode = TRUE)
Run the code above in your browser using DataLab