Why a random split is not a split
Cross-validation works by hiding some data and asking whether the model generalises to it. The procedure is only meaningful if hiding the data actually hides the information in it.
With triple-barrier or any horizon-based labels, that fails. A sample at day carries a label determined by prices over . A sample at day carries a label determined by . The two windows overlap almost completely, so the two labels are near-duplicates of each other.
Shuffle those samples into folds and you place near-copies of the test labels into the training set. The model does not have to generalise; it can interpolate between neighbours that already contain the answer.
Key idea: The unit of independence in financial data is not the row. It is the time interval a label spans. Any split that does not respect those intervals is measuring memorisation and calling it generalisation.

