Computation of moments

What are the pro’s and cons of computing theoretical moments and moments from simulated data ??
Is there any reference that I can read on ?

Or can some explain what is the fundamental difference between them ? Also if specified the hp_filter option while simulation, does dynare take it into account ?
Or is it that the hp_filter option is only used for computing theoretical moments ?

Theoretical moments are valid asymptotically and for higher order only accurate up to second order. Simulated moments may better capture finite sample properties. Historically, people have often used a certain number of repetitions (simul_replic=) of time series that have the same lenght as the empirical data (periods=). For linearized models, it is a matter of taste which type you prefer and results from both approaches are typically very close.

Another advantage of several short simulations is that it gives you an indication of the standard error of the sample moments, i.e. the precision of your numbers. In contrast, theoretical moments are just one number.

Regarding the HP-filter: it is used for both the theoretical and simulated moments when you use the HP-filter option (hp_filter=). The approach is just different. For simulated moments, the HP-filter is applies to actually simulated data. For theoretical moments, the spectral density of the stationary distribution is used. See e.g. stata.com/manuals13/tstsfilter.pdf