Try this:
% Find global min
[minValue, indexOfMin] = min(signal)
% Specify where the window begins
startIndex = index - windowWidth;
% Find max
[maxValue, indexOfMax] = max(signal(startIndex:indexOfMin))
% Add offset to index
indexOfMax = indexOfMax + startIndex - 1;
