# Dynamic Model Averaging in Economics and Finance with fDMA: A Package for R
## 4 Fundamental Functions
In other words, it can happen that the cut-off specified by \(C\) in dynamic [PERSON]'s window will leave too many models for efficient computations. If the user wants to use the additional limitation, i.e., to be sure that no more than DOW.limit.nmods models are left after the cut-off, this parameter should be specified. By default no limit is set,
* progress.info is optional. This logical is applicable only if dynamic [PERSON]'s window is used. Otherwise it is ignored. If progress.info = TRUE then the number of the current recursive DMA computation round and number of models selected for this round are printed on the screen as the computations go. This feature can be useful if the user is uncertain about the existence of some bottleneck in dynamic [PERSON]'s window. For instance, the cut-off level can result in reasonably small number of model up to some period, but then suddenly too many models would be taken. Therefore, this feature helps the user to have a preview on what is going on with dynamic [PERSON]'s window in real time. By default progress.info = FALSE,
* forced.models is optional. This matrix is applicable only if Dynamic Occam's Window is used. Otherwise it is ignored. It indicates models that have to be always included in the expanded set of models. The use is similar as that of models.incl. By default forced.models = NULL,
* forbidden.models is optional. This matrix is applicable only if Dynamic Occam's Window is used. Otherwise it is ignored. It indicates models that cannot be present in the expanded set of models. The use is similar as that of mods.incl. By default forbidden.models = NULL,
* forced.variables is optional. This vector is applicable only if Dynamic Occam's Window is used. Otherwise it is ignored. It indicates variables that have to be always included in models constituting the set of expanded models. The use is similar as that of mods.incl. The first slot indicates the inclusion of constant. By default forced.variables = NULL,
* bm is optional. This logical indicates whether Auto ARIMA benchmark forecast should be computed. In particular, these benchmarks are naive forecast (i.e., all forecasts are set to be the value of the last observation), which is always computed. But Auto ARIMA (auto.arima from forecast) by [PERSON] [20] is optional. By default bm = FALSE,
* small.c is optional. Specifying this numeric allows to modify the value of \(c\) in Equation (3),
* fcores is optional. Specifying this numeric allows to control the number of cores that should not be used. This is used only if parallel = TRUE, otherwise it is ignored. By default forces = 1,
* mods.check is optional. This logical indicates if mods.incl should be checked, for missing values, duplication, etc. However, for the large number of considered models it can be time-costing. Therefore, by default mods.check = FALSE,
* red.size is optional. This logical indicates if outcomes should be reduced to save memory, by default red.size = FALSE,
* av is optional. If av = \"dma\", then the original DMA averaging scheme is performed. If av = \"mse\" then predictive densities in Equation (5) are replaced by the inverses of Mean Squared Errors of the models [175, 176]. If av = \"hr1\", then they are replaced by Hit Ratios (assuming time-series are in levels). If av = \"hr2\", then they are replaced by Hit Ratios (assuming time-series represent changes, i.e., differences). By default av = \"dma\". If y is the dependent variable, and x represents first lags of independent variables, then the classical one-ahead forecast is computed. In order to compute \(h\)-ahead forecast (\(h>1\)) simply more lags of independent variables should be taken, i.e., x should represent \(h\)-th lags of independent variables.