try resetting your router . Do you know the username id and pass of ur connection ? if do that's great I can help you that end which might solve the problem ...
Besides that,make sure that you don't have torrents open on the side.What happened to me was that I had some videos downloading on my torrent and I forgot to stop them when they downlaoded so they went on to take the bandwidth juse to seed them . The ping wouldn't go below 300 and when I closed torrent ,it went hell down back to 130ms .
Secondly,make sure that you aren't using it during evening 6-7 because I found that ,this is the time when internet is quite slow in terms of ping . This is occassional now but it used to be regular before the cable repair.
Thirdly,make sure that when you're playing,nobody in ur house is using :-
1) Dodear,because that Asol server takes up SOOO MUCH BANDWIDTH you can't even imagine.My sibling was streaming some video from dodear and the ping jumped from 130 to 1407ms .. Yes I'm not kidding at all .
2)Streaming videos online ,albeit dodear or any other website,it can take quite abit of bandwidth which can effect your ping
3)Downloading anything,this can be anykind of downloading such as downloading a simple 3mb app on ur phone,or a soundtrack,heck even streaming music online can take away bandwidth on connect internet . I was once listening to some music being streamed on my mobile and the ping was so high ,when I closed the application,the ping stablised like hell .
Besides that,I would say that make sure nobody in ur house is taking unwanted bandwidth,that is ,they are unintentionally using bandwidth by downloading something in the background and forgot to stop it .Try to monitor the package being sent by each of the device connected to ur router and limit the bandwidth.
However,if you're using a dialer,then that's a total different story since all my points are related to the USER'S fault .Incase of a dialer,I suppose it's either you close all the apps ur using on ur computer whcih maybe using internet (You can check this by the help of task manager and see networkign tab to know which app are taking alot of bandwidth) or you can contact your local dealer to know if there's some sort of problem at his end.
Hope it helps
And last but not the least,try resetting ur filters on BF4,you might have just chosen a region where u get ridiculous ping and forgot to remove it :v And also view the servers by ascending order of ping,you can do this by clicking on the ping tab in server browser !
- - - Updated - - -
Just saw your original post ,Y DAFUQ R U WHININGA BOUT PING THAT IS LITERALLY BELOW 150 ? A person complaining about ping below 150 is definitely not an online gamer :v trust me .I play with 130+ ,that too in jet (in bf3) and i manage to pull it off . I thought you would be having somethign above 300