[R-SIG-Finance] Questions regarding Cashflows in Blotter and hacking Quantstrat

Ueli Hofstetter uelihofstetter at gmail.com
Thu Apr 2 03:41:34 CEST 2015

I have posted two questions regarding Blotter and Quantstrat on
Stackoverflow and appreciate any hints and suggestions:

Nr 1: ----------------------------------------------

How to implement rule based rebalancing strategy using QUANTSTRAT/BLOTTER

I am trying to implement a rulebased rebalancing strategy within the
QUANTSTRAT framework. Let's assume I want to base my rebalancing time for a
portfolio of instruments on some indicator which is not calculated from a
traded instrument but from some other time series (for instance GDP
figures) and whenever the signal based on that indicator is triggered
(let's say GDP drops by x% within some period z) I d'like rebalance my
portfolio according to some rebalancing algorithm (e.g. Markowitz).

My idea was to

   - create a dummy instrument for the non-instrument based timeseries so
   that I can define and indicator and rule based on it and
   - to write my own 'ruleSignal' implementation in order to do the
   algorithm based rebalancing.

So my question is: Is this a reasonable approach (is it even possible)? Or
would it be better to use BLOTTER directly (and thus not to rely on the
QUANTSTRAT abstraction)?

Nr 2: ----------------------------------------------
How do blotter/quantstrat/quantmod/performanceanalytics handle internal

I don't understand how internal cashflows are handled in
blotter/quantstrat/quantmod/performanceanalytics. This mainly concerns two
aspects: Regular cashflows like dividends, coupons etc. as well as
cashflows from expiring instruments (e.g. a cash settled in the money
option). For equities this seems not too much of an issue as one can always
use dividend adjusted prices and it is relatively rare that stocks get
delisted. For coupon bonds or options however, I don't get how this is

So my questions are:

   - Is there a generic mechanism to handle internal cashflows (dividends,
   coupons, repayments etc.) in these packages?
   - If so, is there some documentation for this and where can I find the
   relevant implementation in the source code (i.e. pointers to specific R
   files and/or functions would be great)?


Ueli Hofstetter

	[[alternative HTML version deleted]]

More information about the R-SIG-Finance mailing list