What's happening, here?
Code:
function run() {
  if (is(INITRUN)) {
    BarPeriod = 60;
    BarOffset = 57;
    Weekend = 1;
    LookBack = 1001;
    StartDate = 20080101;
    EndDate = 20150301;
    NumWFOCycles = 169;
  }

  vars Price = series(price());
  if (Bar == 41712) {
    print(TO_ANY, strf("\nAt bar %d MMI17=%f.", Bar, MMI(Price, 17)));
  }
}


Select EUR/USD. Click Train. Observed:
Quote:
WFO: wfobug 2008..2015
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=50.000000.
At bar 41712 MMI17=31.250000.
Time 00:00:02
Expected: indicators to have the same values at the same bar, regardless of WFO cycle number.