Stack Exchange network consists of 183 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.
@Quantuple, hmm ... I see your concern about the 'optimistic bias', though I'm not so sure if it's called 'optimistic bias' in this case. But your point about re-using chunks of historical data seems valid. To be honest, I was concerned about this initially, it's just that I thought if the block bootstrap is done correctly, this issue should be minimized and be a lesser 'evil' than my concern with k-fold. Besides, block bootstrapping seems to be accepted by academics and experts, so I reckon it should not be a problem(?)
Please don't say that, @Quantuple, I'm no expert myself. Here's what I think: in k-fold cross-validation, the training set is further partitioned into 'training' & 'testing' sets, and this is rotated 'k'-times. Now, there will certainly be cases when data of later dates are trained and tested on data of earlier dates. This is why I mentioned the possibility of look-ahead bias.
Hi @noob2, I have added the R code in the question. I've eyeballed the code yet again but still couldn't find the bug (don't get me wrong, I really hope you're right that the volatility is just caused by a bug in my code). Alternatively, if there is something wrong in the way I implemented tsboot, please point it out. But I'm grateful as you've already answered Question 3, can I further ask if I should sample the simple/discrete return or log return (i.e. as per my question 4)?
To clarify what I meant by 'to a fair extent' in my question, essentially, if a pair of stocks or a stock with the index has a historical correlation of 0.8, I would expect the synthesized data to show, say, 0.5 correlation but not -0.5.
Thanks for pointing out, @Quantuple, I have edited my question to make it clearer. Yes, I mean pairwise linear correlation (Pearson, beta, etc). To your 2nd question, actually, I do have a hold-out set for testing my system. I trained my system using the first 10 years of data while remaining 5 years went into the hold-out set. I don't like k-fold cross-validation because there is a possibility of look-ahead bias. I have tested my system on the hold-out set and I am currently embarking on testing on properly-synthesized data.