How to obtain a meaningful group delay graph using matlab Problem:
I'm trying to analyze the behavior of an FIR filter with the following impulse response/kernel:
 

Using Matlab's function grpdelay(myKernel,length(myKernel)), I obtained the following figure:



Based on my limited knowledge the graph is not correct since it contains negative values. Is my understanding correct? If it is, how could I go about obtaining a more accurate group delay graph?

Code:

    onePulseRun20 = dlmread("C:\Users\agusfrpa\Pictures\singlePulseRun20.txt");
twoPulseRun21 = dlmread("C:\Users\agusfrpa\Pictures\twoPulseRun21.txt");
%twoPulseRun22 = dlmread("C:\Users\agusfrpa\Pictures\twoPulseRun22.txt");

%y is averaged one pulse data
y = mean(onePulseRun20,1);
pulse = twoPulseRun21(1,:);

myFilter = conj(fft(y))./(abs(fft(y)).^2+.3);
myKernel = real(ifft(myFilter));
myKernel = myKernel(4700:5250);

grpdelay(myKernel, length(myKernel));


I will post the link for data in the comments.
Does the impulse response of the FIR filter you've shown need to be reversed along the sample axis (i.e. horizontal axis)?