KFold
PortfolioOptimisers.KFold Type
struct KFold{__T_n, __T_purged_size, __T_embargo_size} <: NonSequentialCrossValidationEstimatorImplements non-sequential k-fold cross-validation with optional purging and embargoing of training samples.
Fields
n: Number of folds to split the data into.purged_size: Number of observations to exclude from the start/end of each train set adjacent to a test set.embargo_size: Number of observations to exclude from the start of each train set after a test set.
Constructors
KFold(;
n::Integer = 5,
purged_size::Integer = 0,
embargo_size::Integer = 0,
) -> KFoldKeyword arguments correspond to the struct's fields.
Validation
nmust be non-empty, greater than zero, and finite.purged_sizeandembargo_sizemust be non-empty and finite.
Examples
julia> KFold(; n = 5, purged_size = 7, embargo_size = 11)
KFold
n ┼ Int64: 5
purged_size ┼ Int64: 7
embargo_size ┴ Int64: 11Related
sourcePortfolioOptimisers.KFoldResult Type
struct KFoldResult{__T_train_idx, __T_test_idx} <: NonSequentialCrossValidationResultResult type produced by KFold after splitting data into training and testing folds.
Stores the train and test index vectors for each fold.
Fields
train_idx: Vector of training index ranges for each fold.test_idx: Vector of testing index ranges for each fold.
Related
sourceBase.split Method
Base.split(kf::KFold, rd::ReturnsResult) -> KFoldResultSplit the returns data rd into n non-overlapping folds using k-fold cross-validation with optional purging and embargoing.
Arguments
kf::KFold: K-fold cross-validation estimator.rd::ReturnsResult: Returns data to split.
Returns
KFoldResult: Result containing train and test indices for each fold.
Related
source