[R-SIG-Finance] [PerformanceAnalytics] Adding support for dollar returns?

Brian G. Peterson brian at braverock.com
Sun Nov 30 10:46:44 CET 2014


Ivan,

Yes, I agree.  While in general PerformanceAnalytics deals with percent 
returns rather than cash P&L, where, possible, it would be nice to have 
the functions support both.

I'd be happy to discuss the implementation details with you off-list, 
and we'd certainly look to integrate it into the package.

Regards,

Brian

On 11/29/2014 10:34 PM, Ivan Popivanov wrote:
> The notion of "starting equity" is blurry when dealing with futures and
> other instruments allowing high leverage. It's not just a coincidence that
> most books on the topic use dollars.
>
> On Sat Nov 29 2014 at 23:25:55 Ilya Kipnis <ilya.kipnis at gmail.com> wrote:
>
>> But just to beat this into the ground:
>>
>> >From returns to dollars, it's simply a matter of multiplying your starting
>> equity by the cumulative return series.
>> To go from dollars to returns, there's the Return.calculate function in
>> PerfA.
>> To get nominal returns from a trading system in quantstrat, you need to
>> specify initial equity, and then your returns will be a function of your
>> instrument P&L against your starting equity.
>>
>> -Ilya
>>
>> On Sat, Nov 29, 2014 at 11:20 PM, Nick White <n-e-w at qtradr.net> wrote:
>>
>>> What Ilya says is correct.
>>>
>>> In professional finance, it's rarer to report in dollars -- largely
>>> because in professional trading you're often funding an account with $n
>>> which bares little relation to the nominal position size you might have
>>> active in the market. Hence understanding nominal return patterns is
>>> typically higher value.
>>>
>>> It's also pretty trivial to turn xts return series into dollar returns.
>> If
>>> you want more complex sizing -- and your system is amenable to that type
>> of
>>> modelling -- check out the `blotter` and `quantstrat` packages.
>>>
>>> On Sun, Nov 30, 2014 at 3:15 PM, Ilya Kipnis <ilya.kipnis at gmail.com>
>>> wrote:
>>>
>>>> I believe some of those statistics are in tradeStats for trading
>> systems.
>>>> Beyond that, you might want to just do some arithmetic from cumulative
>>>> returns.
>>>>
>>>> On Sat, Nov 29, 2014 at 11:05 PM, Ivan Popivanov <
>>>> ivan.popivanov at gmail.com>
>>>> wrote:
>>>>
>>>>> For instance, given a daily PnL in dollars, extend maxDrawdown to do
>> the
>>>>> computation also in dollars (under a flag). Something like:
>>>>>
>>>>> md = maxDrawdown(pnl, dollars=T)
>>>>>
>>>>> Same could be useful for a few other functions too (not all of
>> course).
>>>>> That's useful for futures, where one often looks at dollar amounts
>>>> rather
>>>>> than percentages.
>>>>>
>>>>> Regards,
>>>>> Ivan
>>>>>
>>>>> On Sat Nov 29 2014 at 22:37:37 Ilya Kipnis <ilya.kipnis at gmail.com>
>>>> wrote:
>>>>>
>>>>>> Ivan,
>>>>>>
>>>>>> What do you mean by dollar returns? You can go from P&L (dollars) to
>>>>>> percent by Return.calculate, unless you mean something else?
>>>>>>
>>>>>> -Ilya
>>>>>>
>>>>>> On Sat, Nov 29, 2014 at 10:34 PM, Ivan Popivanov <
>>>>>> ivan.popivanov at gmail.com> wrote:
>>>>>>
>>>>>>> It seems to me, that statistics (CAGR, drawdowns, etc) expressed in
>>>>>>> dollars
>>>>>>> are quite common in the literature related to future systems. Do you
>>>>>>> think
>>>>>>> that it makes sense to extend the related PerformanceAnalytics
>>>> functions
>>>>>>> to
>>>>>>> support dollar-returns (it seems to be no more than adding a flag to
>>>> the
>>>>>>> interface)? Or do you think it really belongs elsewhere?
>>>>>>>
>>>>>>> Thanks in advance,
>>>>>>> Ivan



More information about the R-SIG-Finance mailing list