LPF Filtering without changing DC value of signal

I have sampled my transmitted signal, it's looks like sinusoidal , frequency sampling is =2048Khz, bitrate of transmittion=100Kbaud , and my problem is that I have designed in matlab my LPF filter which it's :

d=designfilt('lowpassiir','FilterOrder',1,'PassbandFrequency',50e3,'SampleRate',fs);
signalfiltered=filter(d,signal);


and I got a problem that my filter is moving my DC signal away from zero, how could I do my LPF filter to not move the DC of my signal after filtering ? In other words, I want to do LPF filter to my signal but not moving the DC of my filtered signal and it should be as before filtering (in my case DC of my signal is approximately zero, assume it zero) but after filtering it my DC signal moves aways from zero. input signal: attaching here my filtered signal after it passed my designed LPF:

what should I do to my LPF designed in order to not moving my DC of filtered signal comparing to my Original signal before filtering?

About LPF filter, what should it length be in order to get good results? how many bits it should be?

atttaching my LPF plot:

• -1, there isn't enough here to help. Include input and output signals as well as frequency responses. That will likely answer your own question. – Engineer Jul 16 at 16:27
• @Engineer I attached – LiamLony Jul 16 at 16:34
• Hi ! I don't know really why it's for you shwing HPF, but here's another matlab syntax using designfit simulink, LP_FIR = dsp.LowpassFilter('SampleRate',Fs,... 'DesignForMinimumOrder',false,'FilterOrder',N,... 'PassbandFrequency',Fp,'PassbandRipple',Ap,'StopbandAttenuation',Ast); – LiamLony Jul 17 at 19:37
• but whatever Im not asking why it's this ! , asking how can I build my LPF for not letting my DC of my signal moving after filtering .. – LiamLony Jul 17 at 19:37