> how should I chose the filter order and other specifications such as stop band attenuation etc.
That depends on your requirements. Generally speaking, don't be too liberal with the order of the recursive part of the filter, as high-order (>8) recursive filters become ... interesting .. numerically. The nonrecursive part can have a higher order; this depends on your requirements for CPU usage, possibly output delay, memory usage, etc.
> how can I design such a filter in Matlab. what will b its code?
Do you have the signal processing toolbox?
> how can I apply the filter on my data?
Ideally by using the filter() function that is part of the signal processing toolbox.