I want to use matlab to perform a statistical test to find if there's a significantly higher mean return in any of n different sample populations. However, I can only find post hoc (although they can be used separately the input in matlab requires that ANOVA is run first) tests for the ANOVA, which I can't apply since the assumptions do not hold (normaly distributed, equal variance, independence between samples (do they mean between observations within the samples or between the sample populations?)). What I have is different strategies and I want to find out if a significantly higher mean return can be achieved by changing a parameter (sort of). Since the strategies are evaluated using a rolling window the returns will be dependend. Also the variance most likely differs between the samples.
Details: I'm evaluating a strategy using different stocks. I want to see if I can find significantly higher mean returns by using these different groups of stocks (7 groups). The strategy is evaluated over a ~16 year period using 4 month trading periods and a 2 month rolling window. Since the trading periods are overlapping the returns will most likely be dependent (the returns depend on where the trading period starts so the returns in the overlap will not be exactly equal). However, the different samples are independent of eachother as the stocks are mutually exclusive.
In the second case the stocks are not mutually exclusive. Hence the (in this case) 3 groups will be slightly dependent. Otherwise the same conditions holds here.
What is the most appropriate test to test for significant different means under these conditions? How can I implement it in matlab as a standalone test?