| 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 |