I noticed the "gap" argument in sklearn.model_selection.TimeSeriesSplit and read an article about Blocked Time Series Split which introduces a gap between training and validation. There it is argued that this can be needed when a lagged variable is used as dependent and independent variable due to "data leakage concerns". I do not really see the problem when no gap is used. What is the exact rationale? Moreover, how large does the gap then needs to be?
Thanks in advance!