Diamond Backtesting with Walk Forward Manager (BTWFMgr) Diagnostics
(Professional Software Solutions)

Click here for general Walk Forward Help.
The BTWFMgr Walk Forward(WF) Analysis offers several additional diagnostic options
shown within the Walk Forward(WF) Optimization parameter window:
I
For each Walk Forward analysis a WF base folder is created with the name combining the Period definition, Filer and sort definition:
Example: P[1C_1C]+F[PFMin]+S[SortMix1] - combines:
P[1C_1C] (Custom Period Definition#1)
F[PFMin] (Filter Definition: PFMin)
S[SortMix1] (Sort Definition SortMix1)

As each WF Period is processed - the logfile shows:
Starting Period#001 (ISA 20090801 -> 20090831) 
etc...
and the status window in the WF optimization box shows:
Period#1(1C_1C): Range#1: 20090801 to 20090831 - Calculating 11 Trading Permutations
etc...

1. Save Optimization Run Results
Creates a spreadsheet(CSV) with the period In/OutSample details for each WF DateRange/Period 
The files are in a new sub folder for each period variation below the WF base folder with a CSV file for each optimization permutation:
P001[1C_1C]+F[PFMin]+S[SortMix1]/OPT0000001_P001_F0001_S0001.csv
... until the last WF Optimization - for example:
P001[1C_1C]+F[PFMin]+S[SortMix1]/OPT0000028_P001_F0007_S0004.csv
Click here for an example of a optimization result file OPT0000001_P001_F0001_S0001.csv (Open in MS Excel)

INI Setting: SaveDateRngSet - Flag: WFO_FLG_SAVEDATERNGSET
2. Filter+Sort Details 
Creates a spreadsheet(CSV) with the list of trade permutations which passed the filter!
The candidates which survived the filter are sorted by the requested sort criteria and the show also current filter value(s).
Click here for en example (OPT0000001_P001_F0001_S0001_Rng001_20090801.csv) all files of a run here (Hits.zip)
for each WF Optimization AND WF/date period a new file is created in a new sub folder "Hits"

INI Setting: SaveOptPerm - Flag: WFO_FLG_SAVEOPTPERM
3. Range+Permutation (very detailed)
Creates a spreadsheet(CSV) with the list of all trade permutations details
Click here for en example (Rng0001_20090801_20090831.csv) 
for each WF Optimization Preiod in  a new file is created in a new sub folder "TradePermutations"

INI Setting: SaveTrdPerm - Flag: WFO_FLG_SAVETRDPERM
4. Run Log 
Creates a spreadsheet(CSV) with the list of all the WF optimzations and statistics

INI Setting: SaveRunLog - Flag: WFO_FLG_SAVERUNLOG
5. Show OOS Sample Overlaps
Adds for each OutOfSample(OOS) position a diagnostic to the log file:
OOSOverlapChk: WFOOpt#000001: Period0001, PosEnd=Vol=8000 Short, 
Entry=20090928 07:34:00(46.1400), Exit=20091001 07:34:00(43.7400), PL=19184.00$, Perm=8, Dur=3.000 Days, Bar#=15168

If a OOS Positiion is deleted BTWFMgr shows:
OOSOverlapChk: WFOOpt#000001: Period0001, PosCurrDel Vol=8000
Short, Entry=20090928 07:34:00(46.1400), Exit=20091001 07:34:00(43.7400), PL=19184.00$, Perm=8, Dur=3.000 Days, Bar#=15168

-OR-
OOSOverlapChk: WFOOpt#000001: Period0001, PosNextDel Vol=8000
Short, Entry=20090928 07:34:00(46.1400), Exit=20091001 07:34:00(43.7400), PL=19184.00$, Perm=8, Dur=3.000 Days, Bar#=15168

The way overlapping OutOfSample(OOS) positions are handled can be customized with the OSAStyle setting in the configuration:
File/Configuration and go to the "Walk Forward Optimization" section:

OSAStyle (default style is 0)
Define how Walk Forward Out Of Sample Positions are handled which cross/overlap across the begin or end of the OSA Period:
0 = include all overlapped positions in OSA Period
1 = Exclude ending/last overlapped position from OSA period
2 = Exclude the starting/first overlapped position from OSA period
3 = Exclude the starting/first and ending/last overlapped position from 


INI Setting: OSAStyleVerbose - Flag: WFO_FLG_SAVE_SHOWOL