About output signal digital band pass filter
What you are seeing is not "noise", but the step response of your filter.

Note that the filter is started with a null state (unless you explicitly call filter with state variables).

Your signal starts at value 10, so you will get something very similar to 10 times the filter's step response.

If you want to eliminate this transient, then you can either:


Subtract 10 from your input signal, so that it starts at 0.
Prepend your signal with enough samples so that the transient does not overlap with your signal of interest. These samples can be all 10 in value, for example.
Multiply your whole signal by a window function; something like yw = 
y .* hann(length(y))'. This way the whole signal is smoothed at the edges and you minimize the transient.