

Dear All,
I am currently work on Valueatrisk and would like to know the package that
is helpful in this regard. It consist of three method, that is variance
covariance method, Monte carlo simulation, and Historical simulation.
Regards
Em
[[alternative HTML version deleted]]
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


On Thu, 20110512 at 12:38 +0200, Emmanuel Senyo wrote:
> Dear All,
> I am currently work on Valueatrisk and would like to know the package that
> is helpful in this regard. It consist of three method, that is variance
> covariance method, Monte carlo simulation, and Historical simulation.
> Regards
> Em
The Gaussian and Historical methods are available in
PerformanceAnalytics.
You can easily use the Monte Carlo method of your choice to create a
longer sample, and then use PerformanceAnalytics to calculate the VaR.
There are also several bootstrap Monte Carlo methods in
PerformanceAnalytics that have been contributed by Eric Zivot, but which
we have not yet documented and exposed.
Regards,
 Brian

Brian G. Peterson
http://braverock.com/brian/Ph: 7734594973
IM: bgpbraverock
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


There is over 100 pages of documentation available with
PerformanceAnalytics.
I suggest you start with
install.packages("PerformanceAnalytics")
#you only need to do the install the first time
require(PerformanceAnalytics)
?VaR
from the R prompt. See the examples at the bottom of the VaR
documentation.
Hopefully that will get you started. If you have trouble, you may email
the RSIGFinance list or me with an example of what you're trying to
do. Ideally, start with some publicly available data (use the edhec or
managers data in Performanceanalytics, or use getSymbols to pull stock
data from Yahoo or Google) so that others can replicate what you're
trying to do and help you with code rather than vague suggestions.
Regards,
 Brian
On Thu, 20110512 at 13:47 +0200, Emmanuel Senyo wrote:
> Dear Brian,
> Thanks for the mail, I have now located the PerformanceAnalytics.
> Could you please elaborate on it how I could use this package, the
> fact is that I am new to R, how i would like compute value at risk
> for prices and volumes. If I can get a sample scripts with explanation
> that would be very helpful to me to enable me build my own scripts.
> Regards
> Emma
>
> On Thu, May 12, 2011 at 1:21 PM, Brian G. Peterson
> < [hidden email]> wrote:
>
> On Thu, 20110512 at 12:38 +0200, Emmanuel Senyo wrote:
> > Dear All,
> > I am currently work on Valueatrisk and would like to know
> the package that
> > is helpful in this regard. It consist of three method, that
> is variance
> > covariance method, Monte carlo simulation, and Historical
> simulation.
> > Regards
> > Em
>
>
> The Gaussian and Historical methods are available in
> PerformanceAnalytics.
>
> You can easily use the Monte Carlo method of your choice to
> create a
> longer sample, and then use PerformanceAnalytics to calculate
> the VaR.
>
> There are also several bootstrap Monte Carlo methods in
> PerformanceAnalytics that have been contributed by Eric Zivot,
> but which
> we have not yet documented and exposed.
>
> Regards,
>
>  Brian
>
> 
> Brian G. Peterson
> http://braverock.com/brian/> Ph: 7734594973
> IM: bgpbraverock
>
>

Brian G. Peterson
http://braverock.com/brian/Ph: 7734594973
IM: bgpbraverock
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


Hi,
After Emmanuel's post in Rfinance and the reply from Brian, I spent few
times on the VaR() function and on the underlying theory. Just to admit
that, this is great. However, I don't think I could understand the theory of
component VaR calculation, although it seems the coding within the VaR()
function for the same is completely okay.
My problem is, how should I interpret component VaR? Having searched over
net and after going through few materials, I understand that, I can read
CVaR as the change of PVaR if underlying asset is removed from the
portfolio. Here my problem of interpretation starts from! Please consider
following hypothetical return (a zoo object, as needed for VaR())
> Ret
Ret1 Ret2 Ret3 Ret4
Ret5 Ret6 Ret7
20100415 0.0009783093 0.000000000 0.003752350 0.0006021985
0.012384059 0.012539349 0.034979719
20100416 0.0004805344 0.003863495 0.003752350 0.0009617784
0.003110422 0.003149609 0.003231021
20100419 0.0273642188 0.010336009 0.003752350 0.0104916573
0.009360443 0.009478744 0.006472515
20100420 0.0154788565 0.002600782 0.007547206 0.0036357217
0.006289329 0.006369448 0.006472515
20100421 0.0094613433 0.000000000 0.000000000 0.0005484261
0.000000000 0.000000000 0.000000000
20100422 0.0062536421 0.000000000 0.003780723 0.0001143766
0.009419222 0.009539023 0.006430890
20100423 0.0237922090 0.015504187 0.007518832 0.0097156191
0.006230550 0.006309169 0.000000000
20100426 0.0133441736 0.012739026 0.003738322 0.0049317586
0.018462063 0.018692133 0.012739026
20100428 0.0105522323 0.000000000 0.000000000 0.0037038049
0.006116227 0.006191970 0.000000000
20100429 0.0030733546 0.006349228 0.011215071 0.0071195792
0.003072199 0.003110422 0.000000000
I have a longshort portfolio, I want to estimate component VaR for the 2nd
asset, using VaR() function:
> WtVector < c( 49895159, 734677735, 51037536, 7126937, 283834066,
161147892, 13652772)
> VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
"component", weights = WtVector)
$VaR
[,1]
[1,] 5434285
$contribution
Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
316156.24 5211014.96 266249.91 50021.42 260904.17 149986.52 87692.49
$pct_contrib_VaR
Ret1 Ret2 Ret3 Ret4 Ret5
Ret6 Ret7
0.058178070 0.958914480 0.048994465 0.009204784 0.048010759
0.027600044 0.016136894
This says (if my interpretation is correct) that if I remove my 1st asset
then, portfolio VaR will increase by 316156.24 (negative sign tells to have
hedging effect)
So I recalculate the portfolio VaR without having 1st asset:
> WtVector < c( 0, 734677735, 51037536, 7126937, 283834066,
161147892, 13652772)
> VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
"component", weights = WtVector)
$VaR
[,1]
[1,] 5849476
$contribution
Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
0.00 5987199.26 274456.46 55685.39 185776.60 106798.21 63919.72
$pct_contrib_VaR
Ret1 Ret2 Ret3 Ret4 Ret5
Ret6 Ret7
0.000000000 1.023544581 0.046919839 0.009519723 0.031759529
0.018257741 0.010927428
I am just surprised to see that, my portfolio VaR indeed ***increased!!!***
I have found that, this kind of discrepancy comes as possible nonlinear
relationship between VaR and it's constituent assets. It happens that xy
plot for VaR and weight for the 1st asset is highly nonlinear. sign of the
Slope changes if I move from current point (resemble to weight for 1st
asset) to origin (i.e. no 1st asset in the portfolio.)
So My question is, how can I trust on the sign (at least) of component VaR.
Isn't it is giving completely misleading figure? How risk managers handle
these issue? Does the solution like:
1. I should include higher term of the Taylor's expansion of the portfolio
VaR function
2. Do not simply trust those component VaR figures. I should completely
reestimate my VaR number with and without having underlying asset.
Any thoughtful point(s) will be highly appreciated.
Thanks and regards,
Original Message
From: [hidden email]
[mailto: [hidden email]] On Behalf Of Brian G. Peterson
Sent: 12 May 2011 17:28
To: Emmanuel Senyo
Cc: [hidden email]
Subject: Re: [RSIGFinance] Valueatrisk
There is over 100 pages of documentation available with
PerformanceAnalytics.
I suggest you start with
install.packages("PerformanceAnalytics")
#you only need to do the install the first time
require(PerformanceAnalytics)
?VaR
from the R prompt. See the examples at the bottom of the VaR documentation.
Hopefully that will get you started. If you have trouble, you may email the
RSIGFinance list or me with an example of what you're trying to do.
Ideally, start with some publicly available data (use the edhec or managers
data in Performanceanalytics, or use getSymbols to pull stock data from
Yahoo or Google) so that others can replicate what you're trying to do and
help you with code rather than vague suggestions.
Regards,
 Brian
On Thu, 20110512 at 13:47 +0200, Emmanuel Senyo wrote:
> Dear Brian,
> Thanks for the mail, I have now located the PerformanceAnalytics.
> Could you please elaborate on it how I could use this package, the
> fact is that I am new to R, how i would like compute value at risk for
> prices and volumes. If I can get a sample scripts with explanation
> that would be very helpful to me to enable me build my own scripts.
> Regards
> Emma
>
> On Thu, May 12, 2011 at 1:21 PM, Brian G. Peterson
> < [hidden email]> wrote:
>
> On Thu, 20110512 at 12:38 +0200, Emmanuel Senyo wrote:
> > Dear All,
> > I am currently work on Valueatrisk and would like to know
> the package that
> > is helpful in this regard. It consist of three method, that
> is variance
> > covariance method, Monte carlo simulation, and Historical
> simulation.
> > Regards
> > Em
>
>
> The Gaussian and Historical methods are available in
> PerformanceAnalytics.
>
> You can easily use the Monte Carlo method of your choice to
> create a
> longer sample, and then use PerformanceAnalytics to calculate
> the VaR.
>
> There are also several bootstrap Monte Carlo methods in
> PerformanceAnalytics that have been contributed by Eric Zivot,
> but which
> we have not yet documented and exposed.
>
> Regards,
>
>  Brian
>
> 
> Brian G. Peterson
> http://braverock.com/brian/> Ph: 7734594973
> IM: bgpbraverock
>
>

Brian G. Peterson
http://braverock.com/brian/Ph: 7734594973
IM: bgpbraverock
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions
should go.
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


On Fri, 20110520 at 21:08 +0530, Bogaso Christofer wrote:
> Hi,
>
> After Emmanuel's post in Rfinance and the reply from Brian, I spent few
> times on the VaR() function and on the underlying theory. Just to admit
> that, this is great. However, I don't think I could understand the theory of
> component VaR calculation, although it seems the coding within the VaR()
> function for the same is completely okay.
>
> My problem is, how should I interpret component VaR? Having searched over
> net and after going through few materials, I understand that, I can read
> CVaR as the change of PVaR if underlying asset is removed from the
> portfolio. Here my problem of interpretation starts from! Please consider
> following hypothetical return (a zoo object, as needed for VaR())
>
> > Ret
> Ret1 Ret2 Ret3 Ret4
> Ret5 Ret6 Ret7
> 20100415 0.0009783093 0.000000000 0.003752350 0.0006021985
> 0.012384059 0.012539349 0.034979719
> 20100416 0.0004805344 0.003863495 0.003752350 0.0009617784
> 0.003110422 0.003149609 0.003231021
> 20100419 0.0273642188 0.010336009 0.003752350 0.0104916573
> 0.009360443 0.009478744 0.006472515
> 20100420 0.0154788565 0.002600782 0.007547206 0.0036357217
> 0.006289329 0.006369448 0.006472515
> 20100421 0.0094613433 0.000000000 0.000000000 0.0005484261
> 0.000000000 0.000000000 0.000000000
> 20100422 0.0062536421 0.000000000 0.003780723 0.0001143766
> 0.009419222 0.009539023 0.006430890
> 20100423 0.0237922090 0.015504187 0.007518832 0.0097156191
> 0.006230550 0.006309169 0.000000000
> 20100426 0.0133441736 0.012739026 0.003738322 0.0049317586
> 0.018462063 0.018692133 0.012739026
> 20100428 0.0105522323 0.000000000 0.000000000 0.0037038049
> 0.006116227 0.006191970 0.000000000
> 20100429 0.0030733546 0.006349228 0.011215071 0.0071195792
> 0.003072199 0.003110422 0.000000000
>
>
> I have a longshort portfolio, I want to estimate component VaR for the 2nd
> asset, using VaR() function:
>
>
> > WtVector < c( 49895159, 734677735, 51037536, 7126937, 283834066,
> 161147892, 13652772)
> > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
> "component", weights = WtVector)
> $VaR
> [,1]
> [1,] 5434285
> $contribution
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
>
> 316156.24 5211014.96 266249.91 50021.42 260904.17 149986.52 87692.49
> $pct_contrib_VaR
> Ret1 Ret2 Ret3 Ret4 Ret5
> Ret6 Ret7
> 0.058178070 0.958914480 0.048994465 0.009204784 0.048010759
> 0.027600044 0.016136894
>
> This says (if my interpretation is correct) that if I remove my 1st asset
> then, portfolio VaR will increase by 316156.24 (negative sign tells to have
> hedging effect)
You're speaking of *marginal* VaR, not component VaR.
Marginal (or Incremental) VaR is the contribution of that instrument to
the VaR of the portfolio "at the margin" (this is how I keep them
straight). Marginal VaR is not additive, it may add up to more than
100% of the total portfolio VaR. I find it to be a relatively poor risk
measure overall, and generally don't recommend using it (there are some
exceptions that are mentioned in the documentation for the VaR
function). Your description describes Marginal VaR, not Component VaR.
Component VaR is the *contribution* to the portfolio VaR of each
component in the portfolio. It adds up to the value of the entire
portfolio VaR. The value returned has three slots.
$VaR # the portfolio VaR
$contribution
the scalar contributions of each instrument,
this adds up to the portfolio VaR
$pct_contribution_VaR
the percentage contributions to VaR,
this adds up to 1
negative numbers are diversifiers, *decreasing*
the total portfolio VaR
So, given that this is component VaR we're looking at, not marginal VaR,
asset 1 is your *largest diversifier*. Removing it would be expected to
increase the portfolio VaR, as you report below.
Hopefully this clears things up...
Regards,
 Brian
> So I recalculate the portfolio VaR without having 1st asset:
> > WtVector < c( 0, 734677735, 51037536, 7126937, 283834066,
> 161147892, 13652772)
> > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
> "component", weights = WtVector)
> $VaR
> [,1]
> [1,] 5849476
> $contribution
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
>
> 0.00 5987199.26 274456.46 55685.39 185776.60 106798.21 63919.72
> $pct_contrib_VaR
> Ret1 Ret2 Ret3 Ret4 Ret5
> Ret6 Ret7
> 0.000000000 1.023544581 0.046919839 0.009519723 0.031759529
> 0.018257741 0.010927428
>
> I am just surprised to see that, my portfolio VaR indeed ***increased!!!***
>
> I have found that, this kind of discrepancy comes as possible nonlinear
> relationship between VaR and it's constituent assets. It happens that xy
> plot for VaR and weight for the 1st asset is highly nonlinear. sign of the
> Slope changes if I move from current point (resemble to weight for 1st
> asset) to origin (i.e. no 1st asset in the portfolio.)
>
> So My question is, how can I trust on the sign (at least) of component VaR.
> Isn't it is giving completely misleading figure? How risk managers handle
> these issue? Does the solution like:
> 1. I should include higher term of the Taylor's expansion of the portfolio
> VaR function
> 2. Do not simply trust those component VaR figures. I should completely
> reestimate my VaR number with and without having underlying asset.
>
> Any thoughtful point(s) will be highly appreciated.
>
> Thanks and regards,
>
> Original Message
> From: [hidden email]
> [mailto: [hidden email]] On Behalf Of Brian G. Peterson
> Sent: 12 May 2011 17:28
> To: Emmanuel Senyo
> Cc: [hidden email]
> Subject: Re: [RSIGFinance] Valueatrisk
>
> There is over 100 pages of documentation available with
> PerformanceAnalytics.
>
> I suggest you start with
>
> install.packages("PerformanceAnalytics")
> #you only need to do the install the first time
>
> require(PerformanceAnalytics)
> ?VaR
>
> from the R prompt. See the examples at the bottom of the VaR documentation.
>
> Hopefully that will get you started. If you have trouble, you may email the
> RSIGFinance list or me with an example of what you're trying to do.
> Ideally, start with some publicly available data (use the edhec or managers
> data in Performanceanalytics, or use getSymbols to pull stock data from
> Yahoo or Google) so that others can replicate what you're trying to do and
> help you with code rather than vague suggestions.
>
> Regards,
>
>  Brian
>
> On Thu, 20110512 at 13:47 +0200, Emmanuel Senyo wrote:
> > Dear Brian,
> > Thanks for the mail, I have now located the PerformanceAnalytics.
> > Could you please elaborate on it how I could use this package, the
> > fact is that I am new to R, how i would like compute value at risk for
> > prices and volumes. If I can get a sample scripts with explanation
> > that would be very helpful to me to enable me build my own scripts.
> > Regards
> > Emma
> >
> > On Thu, May 12, 2011 at 1:21 PM, Brian G. Peterson
> > < [hidden email]> wrote:
> >
> > On Thu, 20110512 at 12:38 +0200, Emmanuel Senyo wrote:
> > > Dear All,
> > > I am currently work on Valueatrisk and would like to know
> > the package that
> > > is helpful in this regard. It consist of three method, that
> > is variance
> > > covariance method, Monte carlo simulation, and Historical
> > simulation.
> > > Regards
> > > Em
> >
> >
> > The Gaussian and Historical methods are available in
> > PerformanceAnalytics.
> >
> > You can easily use the Monte Carlo method of your choice to
> > create a
> > longer sample, and then use PerformanceAnalytics to calculate
> > the VaR.
> >
> > There are also several bootstrap Monte Carlo methods in
> > PerformanceAnalytics that have been contributed by Eric Zivot,
> > but which
> > we have not yet documented and exposed.
> >
> > Regards,
> >
> >  Brian
> >
> > 
> > Brian G. Peterson
> > http://braverock.com/brian/> > Ph: 7734594973
> > IM: bgpbraverock
> >
> >
>
> 
> Brian G. Peterson
> http://braverock.com/brian/> Ph: 7734594973
> IM: bgpbraverock
>
> _______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/rsigfinance>  Subscriberposting only. If you want to post, subscribe first.
>  Also note that this is not the rhelp list where general R questions
> should go.
>
> _______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/rsigfinance>  Subscriberposting only. If you want to post, subscribe first.
>  Also note that this is not the rhelp list where general R questions should go.

Brian G. Peterson
http://braverock.com/brian/Ph: 7734594973
IM: bgpbraverock
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


Thanks Brian, for your mail:
On regard of the 1st asset your said: " Removing it would be expected to increase the portfolio VaR, as you report below "
Therefore, if I consider 2nd asset, it has +ve sign. Therefore there is not diversification effect for this 2nd asset. Hence ** Removing it would be expected to "decrease" the portfolio VaR **. Right? However in reality I see different thing:
> VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method = "component", weights = WtVector)
$VaR
[,1]
[1,] 5434285
$contribution
Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
316156.24 5211014.96 266249.91 50021.42 260904.17 149986.52 87692.49
$pct_contrib_VaR
Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
0.058178070 0.958914480 0.048994465 0.009204784 0.048010759 0.027600044 0.016136894
>
> WtVector1 < WtVector; WtVector1[2] < 0 ## I remove 2nd asset, therefore portfolio VaR is expected to decrease
> VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method = "component", weights = WtVector1)
$VaR
[,1]
[1,] 7340057
$contribution
Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
868217.23 0.00 260061.45 41235.95 4359025.20 2505891.43 174251.63
$pct_contrib_VaR
Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
0.118284812 0.000000000 0.035430442 0.005617933 0.593868053 0.341399463 0.023739820
With 2nd asset, port VaR is 5434285, and without 2nd asset port VaR is 7340057. How can it be justified?
Here I plotted the relationship between port VaR with the 2nd asset weight:
Mod_Wt < seq(0, abs(WtVector[2]), by = 150000)
VaRi < vector(length = length(Mod_Wt))
for (i in 1:length(VaRi)) {
Wt1 < WtVector; Wt1[2] < 1 * Mod_Wt[i]
VaRi[i] < VaR(R = Ret, p = 0.95, method = "gaussian", portfolio_method = "component", weights = Wt1)$VaR
}
tail(Mod_Wt)
tail(VaRi)
plot(Mod_Wt, VaRi, type = "l")
Original Message
From: Brian G. Peterson [mailto: [hidden email]]
Sent: 20 May 2011 21:07
To: Bogaso Christofer
Cc: [hidden email]
Subject: Re: [RSIGFinance] Valueatrisk
On Fri, 20110520 at 21:08 +0530, Bogaso Christofer wrote:
> Hi,
>
> After Emmanuel's post in Rfinance and the reply from Brian, I spent
> few times on the VaR() function and on the underlying theory. Just to
> admit that, this is great. However, I don't think I could understand
> the theory of component VaR calculation, although it seems the coding
> within the VaR() function for the same is completely okay.
>
> My problem is, how should I interpret component VaR? Having searched
> over net and after going through few materials, I understand that, I
> can read CVaR as the change of PVaR if underlying asset is removed
> from the portfolio. Here my problem of interpretation starts from!
> Please consider following hypothetical return (a zoo object, as needed
> for VaR())
>
> > Ret
> Ret1 Ret2 Ret3 Ret4
> Ret5 Ret6 Ret7
> 20100415 0.0009783093 0.000000000 0.003752350 0.0006021985
> 0.012384059 0.012539349 0.034979719
> 20100416 0.0004805344 0.003863495 0.003752350 0.0009617784
> 0.003110422 0.003149609 0.003231021
> 20100419 0.0273642188 0.010336009 0.003752350 0.0104916573
> 0.009360443 0.009478744 0.006472515
> 20100420 0.0154788565 0.002600782 0.007547206 0.0036357217
> 0.006289329 0.006369448 0.006472515
> 20100421 0.0094613433 0.000000000 0.000000000 0.0005484261
> 0.000000000 0.000000000 0.000000000
> 20100422 0.0062536421 0.000000000 0.003780723 0.0001143766
> 0.009419222 0.009539023 0.006430890
> 20100423 0.0237922090 0.015504187 0.007518832 0.0097156191
> 0.006230550 0.006309169 0.000000000
> 20100426 0.0133441736 0.012739026 0.003738322 0.0049317586
> 0.018462063 0.018692133 0.012739026
> 20100428 0.0105522323 0.000000000 0.000000000 0.0037038049
> 0.006116227 0.006191970 0.000000000
> 20100429 0.0030733546 0.006349228 0.011215071 0.0071195792
> 0.003072199 0.003110422 0.000000000
>
>
> I have a longshort portfolio, I want to estimate component VaR for
> the 2nd asset, using VaR() function:
>
>
> > WtVector < c( 49895159, 734677735, 51037536, 7126937, 283834066,
> 161147892, 13652772)
> > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
> "component", weights = WtVector)
> $VaR
> [,1]
> [1,] 5434285
> $contribution
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
>
> 316156.24 5211014.96 266249.91 50021.42 260904.17 149986.52
> 87692.49 $pct_contrib_VaR
> Ret1 Ret2 Ret3 Ret4 Ret5
> Ret6 Ret7
> 0.058178070 0.958914480 0.048994465 0.009204784 0.048010759
> 0.027600044 0.016136894
>
> This says (if my interpretation is correct) that if I remove my 1st
> asset then, portfolio VaR will increase by 316156.24 (negative sign
> tells to have hedging effect)
You're speaking of *marginal* VaR, not component VaR.
Marginal (or Incremental) VaR is the contribution of that instrument to the VaR of the portfolio "at the margin" (this is how I keep them straight). Marginal VaR is not additive, it may add up to more than 100% of the total portfolio VaR. I find it to be a relatively poor risk measure overall, and generally don't recommend using it (there are some exceptions that are mentioned in the documentation for the VaR function). Your description describes Marginal VaR, not Component VaR.
Component VaR is the *contribution* to the portfolio VaR of each component in the portfolio. It adds up to the value of the entire portfolio VaR. The value returned has three slots.
$VaR # the portfolio VaR
$contribution
the scalar contributions of each instrument,
this adds up to the portfolio VaR
$pct_contribution_VaR
the percentage contributions to VaR,
this adds up to 1
negative numbers are diversifiers, *decreasing*
the total portfolio VaR
So, given that this is component VaR we're looking at, not marginal VaR, asset 1 is your *largest diversifier*. Removing it would be expected to increase the portfolio VaR, as you report below.
Hopefully this clears things up...
Regards,
 Brian
> So I recalculate the portfolio VaR without having 1st asset:
> > WtVector < c( 0, 734677735, 51037536, 7126937, 283834066,
> 161147892, 13652772)
> > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
> "component", weights = WtVector)
> $VaR
> [,1]
> [1,] 5849476
> $contribution
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
>
> 0.00 5987199.26 274456.46 55685.39 185776.60 106798.21
> 63919.72 $pct_contrib_VaR
> Ret1 Ret2 Ret3 Ret4 Ret5
> Ret6 Ret7
> 0.000000000 1.023544581 0.046919839 0.009519723 0.031759529
> 0.018257741 0.010927428
>
> I am just surprised to see that, my portfolio VaR indeed
> ***increased!!!***
>
> I have found that, this kind of discrepancy comes as possible
> nonlinear relationship between VaR and it's constituent assets. It
> happens that xy plot for VaR and weight for the 1st asset is highly
> nonlinear. sign of the Slope changes if I move from current point
> (resemble to weight for 1st
> asset) to origin (i.e. no 1st asset in the portfolio.)
>
> So My question is, how can I trust on the sign (at least) of component VaR.
> Isn't it is giving completely misleading figure? How risk managers
> handle these issue? Does the solution like:
> 1. I should include higher term of the Taylor's expansion of the
> portfolio VaR function 2. Do not simply trust those component VaR
> figures. I should completely reestimate my VaR number with and
> without having underlying asset.
>
> Any thoughtful point(s) will be highly appreciated.
>
> Thanks and regards,
>
> Original Message
> From: [hidden email]
> [mailto: [hidden email]] On Behalf Of Brian G.
> Peterson
> Sent: 12 May 2011 17:28
> To: Emmanuel Senyo
> Cc: [hidden email]
> Subject: Re: [RSIGFinance] Valueatrisk
>
> There is over 100 pages of documentation available with
> PerformanceAnalytics.
>
> I suggest you start with
>
> install.packages("PerformanceAnalytics")
> #you only need to do the install the first time
>
> require(PerformanceAnalytics)
> ?VaR
>
> from the R prompt. See the examples at the bottom of the VaR documentation.
>
> Hopefully that will get you started. If you have trouble, you may
> email the RSIGFinance list or me with an example of what you're trying to do.
> Ideally, start with some publicly available data (use the edhec or
> managers data in Performanceanalytics, or use getSymbols to pull stock
> data from Yahoo or Google) so that others can replicate what you're
> trying to do and help you with code rather than vague suggestions.
>
> Regards,
>
>  Brian
>
> On Thu, 20110512 at 13:47 +0200, Emmanuel Senyo wrote:
> > Dear Brian,
> > Thanks for the mail, I have now located the PerformanceAnalytics.
> > Could you please elaborate on it how I could use this package, the
> > fact is that I am new to R, how i would like compute value at risk
> > for prices and volumes. If I can get a sample scripts with
> > explanation that would be very helpful to me to enable me build my own scripts.
> > Regards
> > Emma
> >
> > On Thu, May 12, 2011 at 1:21 PM, Brian G. Peterson
> > < [hidden email]> wrote:
> >
> > On Thu, 20110512 at 12:38 +0200, Emmanuel Senyo wrote:
> > > Dear All,
> > > I am currently work on Valueatrisk and would like to know
> > the package that
> > > is helpful in this regard. It consist of three method, that
> > is variance
> > > covariance method, Monte carlo simulation, and Historical
> > simulation.
> > > Regards
> > > Em
> >
> >
> > The Gaussian and Historical methods are available in
> > PerformanceAnalytics.
> >
> > You can easily use the Monte Carlo method of your choice to
> > create a
> > longer sample, and then use PerformanceAnalytics to calculate
> > the VaR.
> >
> > There are also several bootstrap Monte Carlo methods in
> > PerformanceAnalytics that have been contributed by Eric Zivot,
> > but which
> > we have not yet documented and exposed.
> >
> > Regards,
> >
> >  Brian
> >
> > 
> > Brian G. Peterson
> > http://braverock.com/brian/> > Ph: 7734594973
> > IM: bgpbraverock
> >
> >
>
> 
> Brian G. Peterson
> http://braverock.com/brian/> Ph: 7734594973
> IM: bgpbraverock
>
> _______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/rsigfinance>  Subscriberposting only. If you want to post, subscribe first.
>  Also note that this is not the rhelp list where general R
> questions should go.
>
> _______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/rsigfinance>  Subscriberposting only. If you want to post, subscribe first.
>  Also note that this is not the rhelp list where general R questions should go.

Brian G. Peterson
http://braverock.com/brian/Ph: 7734594973
IM: bgpbraverock
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


You can't do what you're trying to do, in the way you are trying to do
it.
Since your weights are obviously dollar weights, I assumed that you were
trying to get the *entire* portfolio, knowing that these weights don't
add up to 1.
If you want to work in returns space, and be able to make apples to
apples portfolio comparisons, then your weights should be a vector that
adds up to 100% of your total capital. If you're really talking about
taking a $734M position out of the portfolio, you're replacing it with
something.... cash, spreading the money to other things, whatever...
That position, in your example, is the largest position you have by far,
and contributes 95% of the total portfolio risk. This shouldn't be
entirely surprising, as it is three times the size of your biggest short
position.
If you're going to *rebalance* the portfolio and see what the new VaR
is, you need to adjust more than just one weight.
If you really want Marginal VaR, then use Marginal VaR. Please don't
try to permute component VaR into something it is not.
Regards,
 Brian
On Fri, 20110520 at 21:52 +0530, Bogaso Christofer wrote:
> Thanks Brian, for your mail:
>
> On regard of the 1st asset your said: " Removing it would be expected to increase the portfolio VaR, as you report below "
>
> Therefore, if I consider 2nd asset, it has +ve sign. Therefore there is not diversification effect for this 2nd asset. Hence ** Removing it would be expected to "decrease" the portfolio VaR **. Right? However in reality I see different thing:
>
> > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method = "component", weights = WtVector)
> $VaR
> [,1]
> [1,] 5434285
>
> $contribution
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
> 316156.24 5211014.96 266249.91 50021.42 260904.17 149986.52 87692.49
>
> $pct_contrib_VaR
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
> 0.058178070 0.958914480 0.048994465 0.009204784 0.048010759 0.027600044 0.016136894
>
> >
> > WtVector1 < WtVector; WtVector1[2] < 0 ## I remove 2nd asset, therefore portfolio VaR is expected to decrease
> > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method = "component", weights = WtVector1)
> $VaR
> [,1]
> [1,] 7340057
>
> $contribution
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
> 868217.23 0.00 260061.45 41235.95 4359025.20 2505891.43 174251.63
>
> $pct_contrib_VaR
> Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
> 0.118284812 0.000000000 0.035430442 0.005617933 0.593868053 0.341399463 0.023739820
>
> With 2nd asset, port VaR is 5434285, and without 2nd asset port VaR is 7340057. How can it be justified?
>
> Here I plotted the relationship between port VaR with the 2nd asset weight:
>
> Mod_Wt < seq(0, abs(WtVector[2]), by = 150000)
> VaRi < vector(length = length(Mod_Wt))
> for (i in 1:length(VaRi)) {
> Wt1 < WtVector; Wt1[2] < 1 * Mod_Wt[i]
> VaRi[i] < VaR(R = Ret, p = 0.95, method = "gaussian", portfolio_method = "component", weights = Wt1)$VaR
> }
> tail(Mod_Wt)
> tail(VaRi)
> plot(Mod_Wt, VaRi, type = "l")
>
>
> Original Message
> From: Brian G. Peterson [mailto: [hidden email]]
> Sent: 20 May 2011 21:07
> To: Bogaso Christofer
> Cc: [hidden email]
> Subject: Re: [RSIGFinance] Valueatrisk
>
> On Fri, 20110520 at 21:08 +0530, Bogaso Christofer wrote:
> > Hi,
> >
> > After Emmanuel's post in Rfinance and the reply from Brian, I spent
> > few times on the VaR() function and on the underlying theory. Just to
> > admit that, this is great. However, I don't think I could understand
> > the theory of component VaR calculation, although it seems the coding
> > within the VaR() function for the same is completely okay.
> >
> > My problem is, how should I interpret component VaR? Having searched
> > over net and after going through few materials, I understand that, I
> > can read CVaR as the change of PVaR if underlying asset is removed
> > from the portfolio. Here my problem of interpretation starts from!
> > Please consider following hypothetical return (a zoo object, as needed
> > for VaR())
> >
> > > Ret
> > Ret1 Ret2 Ret3 Ret4
> > Ret5 Ret6 Ret7
> > 20100415 0.0009783093 0.000000000 0.003752350 0.0006021985
> > 0.012384059 0.012539349 0.034979719
> > 20100416 0.0004805344 0.003863495 0.003752350 0.0009617784
> > 0.003110422 0.003149609 0.003231021
> > 20100419 0.0273642188 0.010336009 0.003752350 0.0104916573
> > 0.009360443 0.009478744 0.006472515
> > 20100420 0.0154788565 0.002600782 0.007547206 0.0036357217
> > 0.006289329 0.006369448 0.006472515
> > 20100421 0.0094613433 0.000000000 0.000000000 0.0005484261
> > 0.000000000 0.000000000 0.000000000
> > 20100422 0.0062536421 0.000000000 0.003780723 0.0001143766
> > 0.009419222 0.009539023 0.006430890
> > 20100423 0.0237922090 0.015504187 0.007518832 0.0097156191
> > 0.006230550 0.006309169 0.000000000
> > 20100426 0.0133441736 0.012739026 0.003738322 0.0049317586
> > 0.018462063 0.018692133 0.012739026
> > 20100428 0.0105522323 0.000000000 0.000000000 0.0037038049
> > 0.006116227 0.006191970 0.000000000
> > 20100429 0.0030733546 0.006349228 0.011215071 0.0071195792
> > 0.003072199 0.003110422 0.000000000
> >
> >
> > I have a longshort portfolio, I want to estimate component VaR for
> > the 2nd asset, using VaR() function:
> >
> >
> > > WtVector < c( 49895159, 734677735, 51037536, 7126937, 283834066,
> > 161147892, 13652772)
> > > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
> > "component", weights = WtVector)
> > $VaR
> > [,1]
> > [1,] 5434285
> > $contribution
> > Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
> >
> > 316156.24 5211014.96 266249.91 50021.42 260904.17 149986.52
> > 87692.49 $pct_contrib_VaR
> > Ret1 Ret2 Ret3 Ret4 Ret5
> > Ret6 Ret7
> > 0.058178070 0.958914480 0.048994465 0.009204784 0.048010759
> > 0.027600044 0.016136894
> >
> > This says (if my interpretation is correct) that if I remove my 1st
> > asset then, portfolio VaR will increase by 316156.24 (negative sign
> > tells to have hedging effect)
>
> You're speaking of *marginal* VaR, not component VaR.
>
> Marginal (or Incremental) VaR is the contribution of that instrument to the VaR of the portfolio "at the margin" (this is how I keep them straight). Marginal VaR is not additive, it may add up to more than 100% of the total portfolio VaR. I find it to be a relatively poor risk measure overall, and generally don't recommend using it (there are some exceptions that are mentioned in the documentation for the VaR function). Your description describes Marginal VaR, not Component VaR.
>
> Component VaR is the *contribution* to the portfolio VaR of each component in the portfolio. It adds up to the value of the entire portfolio VaR. The value returned has three slots.
> $VaR # the portfolio VaR
> $contribution
> the scalar contributions of each instrument,
> this adds up to the portfolio VaR
> $pct_contribution_VaR
> the percentage contributions to VaR,
> this adds up to 1
> negative numbers are diversifiers, *decreasing*
> the total portfolio VaR
>
> So, given that this is component VaR we're looking at, not marginal VaR, asset 1 is your *largest diversifier*. Removing it would be expected to increase the portfolio VaR, as you report below.
>
> Hopefully this clears things up...
>
> Regards,
>
>  Brian
>
> > So I recalculate the portfolio VaR without having 1st asset:
> > > WtVector < c( 0, 734677735, 51037536, 7126937, 283834066,
> > 161147892, 13652772)
> > > VaR(R = Ret, p = 0.05, method = "gaussian", portfolio_method =
> > "component", weights = WtVector)
> > $VaR
> > [,1]
> > [1,] 5849476
> > $contribution
> > Ret1 Ret2 Ret3 Ret4 Ret5 Ret6 Ret7
> >
> > 0.00 5987199.26 274456.46 55685.39 185776.60 106798.21
> > 63919.72 $pct_contrib_VaR
> > Ret1 Ret2 Ret3 Ret4 Ret5
> > Ret6 Ret7
> > 0.000000000 1.023544581 0.046919839 0.009519723 0.031759529
> > 0.018257741 0.010927428
> >
> > I am just surprised to see that, my portfolio VaR indeed
> > ***increased!!!***
> >
> > I have found that, this kind of discrepancy comes as possible
> > nonlinear relationship between VaR and it's constituent assets. It
> > happens that xy plot for VaR and weight for the 1st asset is highly
> > nonlinear. sign of the Slope changes if I move from current point
> > (resemble to weight for 1st
> > asset) to origin (i.e. no 1st asset in the portfolio.)
> >
> > So My question is, how can I trust on the sign (at least) of component VaR.
> > Isn't it is giving completely misleading figure? How risk managers
> > handle these issue? Does the solution like:
> > 1. I should include higher term of the Taylor's expansion of the
> > portfolio VaR function 2. Do not simply trust those component VaR
> > figures. I should completely reestimate my VaR number with and
> > without having underlying asset.
> >
> > Any thoughtful point(s) will be highly appreciated.
> >
> > Thanks and regards,
> >
> > Original Message
> > From: [hidden email]
> > [mailto: [hidden email]] On Behalf Of Brian G.
> > Peterson
> > Sent: 12 May 2011 17:28
> > To: Emmanuel Senyo
> > Cc: [hidden email]
> > Subject: Re: [RSIGFinance] Valueatrisk
> >
> > There is over 100 pages of documentation available with
> > PerformanceAnalytics.
> >
> > I suggest you start with
> >
> > install.packages("PerformanceAnalytics")
> > #you only need to do the install the first time
> >
> > require(PerformanceAnalytics)
> > ?VaR
> >
> > from the R prompt. See the examples at the bottom of the VaR documentation.
> >
> > Hopefully that will get you started. If you have trouble, you may
> > email the RSIGFinance list or me with an example of what you're trying to do.
> > Ideally, start with some publicly available data (use the edhec or
> > managers data in Performanceanalytics, or use getSymbols to pull stock
> > data from Yahoo or Google) so that others can replicate what you're
> > trying to do and help you with code rather than vague suggestions.
> >
> > Regards,
> >
> >  Brian
> >
> > On Thu, 20110512 at 13:47 +0200, Emmanuel Senyo wrote:
> > > Dear Brian,
> > > Thanks for the mail, I have now located the PerformanceAnalytics.
> > > Could you please elaborate on it how I could use this package, the
> > > fact is that I am new to R, how i would like compute value at risk
> > > for prices and volumes. If I can get a sample scripts with
> > > explanation that would be very helpful to me to enable me build my own scripts.
> > > Regards
> > > Emma
> > >
> > > On Thu, May 12, 2011 at 1:21 PM, Brian G. Peterson
> > > < [hidden email]> wrote:
> > >
> > > On Thu, 20110512 at 12:38 +0200, Emmanuel Senyo wrote:
> > > > Dear All,
> > > > I am currently work on Valueatrisk and would like to know
> > > the package that
> > > > is helpful in this regard. It consist of three method, that
> > > is variance
> > > > covariance method, Monte carlo simulation, and Historical
> > > simulation.
> > > > Regards
> > > > Em
> > >
> > >
> > > The Gaussian and Historical methods are available in
> > > PerformanceAnalytics.
> > >
> > > You can easily use the Monte Carlo method of your choice to
> > > create a
> > > longer sample, and then use PerformanceAnalytics to calculate
> > > the VaR.
> > >
> > > There are also several bootstrap Monte Carlo methods in
> > > PerformanceAnalytics that have been contributed by Eric Zivot,
> > > but which
> > > we have not yet documented and exposed.
> > >
> > > Regards,
> > >
> > >  Brian
> > >
> > > 
> > > Brian G. Peterson
> > > http://braverock.com/brian/> > > Ph: 7734594973
> > > IM: bgpbraverock
> > >
> > >
> >
> > 
> > Brian G. Peterson
> > http://braverock.com/brian/> > Ph: 7734594973
> > IM: bgpbraverock
> >
> > _______________________________________________
> > [hidden email] mailing list
> > https://stat.ethz.ch/mailman/listinfo/rsigfinance> >  Subscriberposting only. If you want to post, subscribe first.
> >  Also note that this is not the rhelp list where general R
> > questions should go.
> >
> > _______________________________________________
> > [hidden email] mailing list
> > https://stat.ethz.ch/mailman/listinfo/rsigfinance> >  Subscriberposting only. If you want to post, subscribe first.
> >  Also note that this is not the rhelp list where general R questions should go.
>
> 
> Brian G. Peterson
> http://braverock.com/brian/> Ph: 7734594973
> IM: bgpbraverock
>
> _______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/rsigfinance>  Subscriberposting only. If you want to post, subscribe first.
>  Also note that this is not the rhelp list where general R questions should go.

Brian G. Peterson
http://braverock.com/brian/Ph: 7734594973
IM: bgpbraverock
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


I'm ok with the notions of component and marginal VaR but can't retrieve results from marginal.
First what is the PortfolioVaR with the portfolio_method="marginal" ? Except the sign, the 2 figures I get from these functions for PortfolioVaR are differents :
VaR(tsdata,method="gaussian",portfolio_method="marginal")
VaR(tsdata,method="gaussian",portfolio_method="component")$VaR
Second and it is maybe be related  how is the marginal VaR computed ? I tried the following but the result is different from the function (here it is the 5th marginal) :
VaR(tsdata,method="gaussian",portfolio_method="component")$VaRVaR(tsdata[,5],method="gaussian",portfolio_method="component")$VaR
Many thanks for any helpful comment,
PS : tsdata is any valid timeSeries.


On Sun, 20110619 at 03:19 0700, sadako wrote:
> I'm ok with the notions of component and marginal VaR but can't retrieve
> results from marginal.
>
> First what is the PortfolioVaR with the portfolio_method="marginal" ?
> Except the sign, the 2 figures I get from these functions for PortfolioVaR
> are differents :
> VaR(tsdata,method="gaussian",portfolio_method="marginal")
> VaR(tsdata,method="gaussian",portfolio_method="component")$VaR
Marginal and component VaR *are* different. So I'm not sure I
understand what you're asking, entirely.
Component VaR is a coherent risk measure per Artzner. The component
risks will add up to the univariate VaR of the entire portfolio. The
univariate portfolio VaR is given in the $VaR slot you reference in your
code. The additive measures are available two different ways, in the
$contribution slot (which will add up to the univariate portfolio VaR)
and in the $pct_contrib_VaR slot which will add up to 1(100%)
> Second and it is maybe be related  how is the marginal VaR computed ?
Marginal VaR is the difference between the univariate portfolio VaR of a
a portfolio with the instrument in question and the VaR of the portfolio
without that instrument. It is not guaranteed to add up to anything.
Frankly, I think it is a useless measure *unless* you are comparing two
otherwise similar instruments for inclusion in a portfolio, and want to
see which of those two instruments would add less risk to the portfolio
"at the margin".
> I tried the following but the result is different from the function (here it
> is the 5th marginal) :
>
> VaR(tsdata,method="gaussian",portfolio_method="component")$VaRVaR(tsdata[,5],method="gaussian",portfolio_method="component")$VaR
Component VaR and marginal VaR aren't interchangeable, as described
above, and as described in the documentation.
simple subtraction doesn't work, because the portfolio (capital) needs
to be redistributed.
The weighting factor is
weightfactor = sum(weightingvector)/sum(t(weightingvector)[, column])
you can see the code with:
PerformanceAnalytics:::VaR.Marginal
> Many thanks for any helpful comment,
I hope this helps,
 Brian

Brian G. Peterson
http://braverock.com/brian/Ph: 7734594973
IM: bgpbraverock
_______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/rsigfinance Subscriberposting only. If you want to post, subscribe first.
 Also note that this is not the rhelp list where general R questions should go.


braverock wrote
On Sun, 20110619 at 03:19 0700, sadako wrote:
> I'm ok with the notions of component and marginal VaR but can't retrieve
> results from marginal.
>
> First what is the PortfolioVaR with the portfolio_method="marginal" ?
> Except the sign, the 2 figures I get from these functions for PortfolioVaR
> are differents :
> VaR(tsdata,method="gaussian",portfolio_method="marginal")
> VaR(tsdata,method="gaussian",portfolio_method="component")$VaR
Marginal and component VaR *are* different. So I'm not sure I
understand what you're asking, entirely.
Component VaR is a coherent risk measure per Artzner. The component
risks will add up to the univariate VaR of the entire portfolio. The
univariate portfolio VaR is given in the $VaR slot you reference in your
code.
Marginal VaR is the difference between the univariate portfolio VaR of a
a portfolio with the instrument in question and the VaR of the portfolio
without that instrument.
Actually I didn't mean to compare marginal and component : I just use the portfolio_method="component" to get the univariate VaR of the portfolio ($VaR slot).
I have the same number using calculation like qnorm(0.95,0,1)*sqrt(t(wghts)%*%var(tsdata)%*%wghts)t(wghts)%*%colMeans(tsdata).
I would have expect to have the same number for this univariate portfolio VaR in the "PortfolioVaR" column of VaR(...,portfolio_method="marginal"),  all other parameters being equal  but this is not the case.
Both should represent the univariate portfolio VaR aren't they ?
> I tried the following but the result is different from the function (here it
> is the 5th marginal) :
>
> VaR(tsdata,method="gaussian",portfolio_method="component")$VaRVaR(tsdata[,5],method="gaussian",portfolio_method="component")$VaR
Component VaR and marginal VaR aren't interchangeable, as described
above, and as described in the documentation.
simple subtraction doesn't work, because the portfolio (capital) needs
to be redistributed.
The weighting factor is
weightfactor = sum(weightingvector)/sum(t(weightingvector)[, column])
Nota : here again I just use the $VaR slot of component to get access to the univariate VaR of portfolio.
I think I got the weight factor right implicitly since I don't set any special weights vectors : the VaR functions sets these weights equally in both members of my equation.
Assume I'm working with 5 assets :
 the univariate VaR of the portfolio : VaR(tsdata,method="gaussian",portfolio_method="component")$VaR is computed with default weights=c(0.2,0.2,0.2,0.2,0.2)
 the VaR of the portfolio without the asset 5 : VaR(tsdata[,5],method="gaussian",portfolio_method="component")$VaR is computed with equallyweighted default weights=c(0.25,0.25,0.25,0.25). These are indeed the weights of the 5assets portfolio taking into account the weight factor of sum(weightingvector)/sum(t(weightingvector)[, 5])=1.25
Marginal VaR is the difference between the univariate portfolio VaR of a
a portfolio with the instrument in question and the VaR of the portfolio
without that instrument.
So with no weight specification, the strictosensu calculation :
VaR(tsdata,method="gaussian",portfolio_method="component")$VaRVaR(tsdata[,columnAsset],method="gaussian",portfolio_method="component")$VaR
should work or this is nonsense ?
you can see the code with: PerformanceAnalytics:::VaR.Marginal
I'm having a look, maybe the difference stems from the application of Return.portfolio in the marginal case...
> Many thanks for any helpful comment,
I hope this helps,
 Brian
It did, thank you very much Brian !


sadako wrote
you can see the code with: PerformanceAnalytics:::VaR.Marginal
I'm having a look, maybe the difference stems from the application of Return.portfolio in the marginal case...
I think we don't get the same univariate portfolio VaR with the two portfolio_method "marginal" and "component" because of :
 in PerformanceAnalytics:::VaR.Marginal, the Return.portfolio are calculated without the optional argument geometric (geometric=FALSE would eventually match the stdev I compute).
 in PerformanceAnalytics:::VaR.Marginal, when calling the portfolio_method="single" to compute the univariate portfolio VaR, we end up in the PerformanceAnalytics:::VaR.Gaussian function.
This function uses the PerformanceAnalytics:::centeredmoment function, which uses the mean function.
This does not give the same variance as stdev for instance since there's not the ajustement of the estimator (division by n1 instead of n if data set has n observations).
If we set m2 = centeredmoment(r, 2)*dim(r)[1]/(dim(r)[1]1), it looks ok.
With these two modifications, I have the impression the univariate portfolio VaR computed from portfolio_method="marginal" and portfolio_method="component" are consistant.

