tradeModel {quantmod} | R Documentation

## Simulate Trading of Fitted quantmod Object

### Description

Simulated trading of fitted quantmod object. Given a fitted model, tradeModel calculates the signal generated over a given historical period, then applies specified `trade.rule` to calculate and return a `tradeLog` object. Additional methods can then be called to evaluate the performance of the model's strategy.

### Usage

    tradeModel(x,
               signal.threshold = c(0, 0),
               leverage = 1,
               return.model = TRUE,
               plot.model = FALSE,
               trade.dates = NULL,
               exclude.training = TRUE,
               ret.type = c("weeks", "months", "quarters", "years"),
               ...)

### Arguments

`x` | a quantmod object from `buildModel`
`signal.threshold` | a numeric vector describing simple lower and upper thresholds before trade occurs
`leverage` | amount of leverage to apply - currently a constant
`return.model` | should the full model be returned?
`plot.model` | plot the model?
`trade.dates` | specific trade interval - defaults to full dataset
`exclude.training` | exclude the period trained on?
`ret.type` | a table of period returns
`...` | additional parameters needed by the underlying modelling function, if any

### Details

Still highly experimental and changing. The purpose is to apply a newly contructed model from `buildModel` to a new dataset to investigate the model's trading potential.

At present all parameters are very basic. The near term changes include allowing for a trade.rule argument to allow for a dynamic trade rule given a set of signals. Additional the application of variable leverage and costs will become part of the final structure.

Any suggestions as to inclusions or alterations are appreciated and should be directed to the maintainer of the package.

### Value

A quantmodResults object

### Author(s)

Jeffrey A. Ryan

### See Also

`specifyModel` `buildModel`

### Examples

    ## Not run:
    m <- specifyModel(Next(OpCl(QQQQ)) ~ Lag(OpHi(QQQQ)))
    m.built <- buildModel(m,method='rpart',training.per=c('2007-01-01','2007-04-01'))

    tradeModel(m.built)
    tradeModel(m.built,leverage=2)

    ## End(Not run)

[Package quantmod version 0.4-14 Index]