Walk-forward optimization library for MetaTrader: How Tos

This post is a part of documentation of WalkForwardOptimizer library for MetaTrader4/5 - here is the table of contents.
MetaTrader 4 specific notes
MetaTrader 5 specific notes
Simple rolling walk-forward optimization with predefined periods or arbitrary periods in days
1. Choose optimization window size wfo_WindowSize from a list of predefined periods or choose custom period and specify number of days in wfo_customWindowSizeDays.
2. Choose forward step size wfo_stepSize from a list of predefined periods or choose custom period and specify percent in wfo_customStepSizePercent.
3. Enable optimization for wfo_stepOffset in range from 0 up to any number which will fit into available history and with step 1.
4. Run optimization.
5. Copy resulting csv-file into MQL4/Files (MT4 version only; MT5 version does this for you).
6. Run WalkForwardReporter script (MT4 only).
7. Open generated HTML-file with report.
Here is an example. Let us consider the period 2010-2016. Let optimization window be a year, and forward step size - a quarter. This is 6 full years and a half. 1 year is consumed by moving window (in-sample data) and the rest is covered by consecutive forward steps (out-of-sample tests). This is 5 years and a half, which gives 22 quarters of out-of-sample tests, so we should interate forward step wfo_stepOffset from 0 to 21 (because 22-th step is 3-rd quarter of 2016 which we can't test yet at the time of writing).
Clustered walk-forward optimization
1. Choose optimization window size wfo_WindowSize as custom.
2. Enable optimization for wfo_customWindowSizeDays for any meaningful range and increment in days.
3. Choose forward step size wfo_stepSize as custom.
4. Enable optimization for wfo_customStepSizePercent for any meaningful range and increment in percents (the recommended range is 5-30%, the increment 5-10%).
5. Enable optimization for wfo_stepOffset in range from 0 up to any number which will fit into available history and with step 1.
6. Run optimization.
7. Copy resulting csv-file into MQL4/Files (MT4 version only; MT5 version does this for you).
8. Run WalkForwardReporter script (MT4 only).
9. Open generated HTML-file with report.
If you have a preferred window size you can run cluster analysis where only step size is changing, and if you have a favorite step size it's possible to optimize window size only.
Drilldown analysis of a single case of walk-forward run from cluster
This is the same as the previous case, but when running WalkForwardReporter script specify WindowSize and StepSize that are available in columns and rows of the tables in the clustered report.
You can build different drilldown reports using the same output data of a single cluster optimization.
Anchored walk-forward optimization
1. Choose optimization window size wfo_WindowSize as custom.
2. Enable optimization for wfo_customWindowSizeDays for any meaningful range. Make sure that increment in days is equal to a number of days of a predefined period which will be used on the next stage (for example, enter 30 days increment if you're about to choose monthly step).
3. Choose forward step size wfo_stepSize from a list of predefined periods, which equals to the increment for the window specified above.
4. Disable optimization for wfo_stepOffset and make sure it's 0.
5. Run optimization.
6. Copy resulting csv-file into MQL4/Files (MT4 version only; MT5 version does this for you).
7. Run WalkForwardReporter script (MT4 only).
8. Open generated HTML-file with report.