Differenz zweier lognormaler Zufallsvariablen

23

Sei und 2 iidrvs, wobei . Ich möchte die Verteilung für .X 2 log ( X 1 ) , log ( X 2 ) N ( μ , σ ) X 1 - X 2X1X2log(X1),log(X2)N(μ,σ)X1X2

Das Beste, was ich tun kann, ist, die Taylor-Reihe von beiden zu nehmen und zu erhalten, dass die Differenz die Summe der Differenz zwischen zwei normalen rvs und zwei chi-Quadrat-rvs ist, zusätzlich zu dem Rest der Differenz zwischen dem Rest der Ausdrücke. Gibt es einen einfacheren Weg, um die Verteilung der Differenz zwischen 2 iid log-normalen rv zu erhalten?

frayedchef
quelle
Hier ist ein relevantes Papier. Sie finden mehr Papiere, indem Sie googeln! papers.ssrn.com/sol3/papers.cfm?abstract_id=2064829
kjetil b halvorsen
1
Ich habe einen flüchtigen Blick auf dieses Papier geworfen, und es scheint meine Frage nicht zufriedenstellend zu beantworten. Sie scheinen sich mit numerischen Annäherungen an das schwierigere Problem zu befassen, die Verteilung für die Summe / Differenz zwischen korrelierten lognormalen rv zu finden. Ich hatte gehofft, dass es eine einfachere Antwort für den unabhängigen Fall geben würde.
Frayedchef
2
Es könnte eine einfachere Antwort im unabhängigen Fall sein, aber keine einfache! Der logarithmische Normalfall ist ein bekannter schwerer Fall - die momenterzeugende Funktion der logarithmischen Normalverteilung existiert nicht - das heißt, sie konvergiert nicht in einem offenen Intervall, das Null enthält. Sie werden also keine einfache Lösung finden.
kjetil b halvorsen
Ich verstehe ... Wäre der oben beschriebene Ansatz also vernünftig? (dh, wenn , Wissen wir etwas über die Terme höherer Ordnung, oder wie man sie X 1 - X 2( Y 1 - Y 2 ) + ( Y 2 1 - Y 2 2 ) / 2 +Yi=log(Xi)X1X2(Y1Y2)+(Y12Y22)/2+...
bindet
1
Um die Schwierigkeit zu verdeutlichen, wird die lognormale mgf nur auf . Um die Differenzverteilung mit Hilfe von Sattelpunktmethoden zu approximieren, benötigen wir (K = kumulative gf) , und diese Summe ist nur in einem Punkt definiert, Null. Also scheint es nicht zu funktionieren. Summe oder Durchschnitt wären einfacher!K ( s ) + K ( - s )(,0]K(s)+K(s)
kjetil b halvorsen

Antworten:

15

Das ist ein schwieriges Problem. Ich dachte zuerst darüber nach, die Momenterzeugungsfunktion der lognormalen Verteilung zu verwenden (eine Annäherung an diese). Das funktioniert nicht, wie ich erklären werde. Aber zuerst etwas Notation:

Sei die Standardnormaldichte und die entsprechende kumulative Verteilungsfunktion. Wir werden nur die logarithmische Verteilung analysieren , die die Dichtefunktion und kumulative Verteilungsfunktion Angenommen, und sind unabhängige Zufallsvariablen mit der obigen logarithmischen Normalverteilung. Wir interessieren uns für die Verteilung von , die eine symmetrische Verteilung mit dem Mittelwert Null ist. Sei die momenterzeugende Funktion von& Phi; L n N ( 0 , 1 ) f ( x ) = 1ϕΦlnN(0,1)F(x)=Φ(lnx)XYD=X-YM(t)=EetXXt(-,0]DMD(t)=Eet(X-Y)=EetX

f(x)=12πxe12(lnx)2
F(x)=Φ(lnx)
XYD=XYM(t)=EetXX. Es ist nur für definiert, also nicht in einem offenen Intervall mit Null definiert. Die Momenterzeugungsfunktion für ist Die Momenterzeugungsfunktion für ist also nur für , also nicht sehr nützlich.t(,0]DD t = 0MD(t)=Eet(XY)=EetXEetY=M(t)M(t)Dt=0

Das bedeutet, dass wir einen direkteren Ansatz benötigen, um Näherungen für die Verteilung von . Angenommen, , berechne (und der Fall wird durch Symmetrie gelöst, wir erhalten ). t 0 P ( D t )Dt0 t<0P(Dt)=1-P(D|t|)

P(Dt)=P(XYt)=0P(Xyt|Y=y)f(y)dy=0P(Xt+y)f(y)dy=0F(t+y)f(y)dy
t<0P(Dt)=1P(D|t|)

Dieser Ausdruck kann zur numerischen Integration oder als Grundlage für die Simulation verwendet werden. Zuerst ein Test:

 integrate(function(y) plnorm(y)*dlnorm(y), lower=0,  upper=+Inf)
  0.5 with absolute error < 2.3e-06

das ist klar richtig. Lassen Sie uns dies in eine Funktion einschließen:

pDIFF  <-  function(t) {
    d  <-  t
    for (tt in seq(along=t)) {
        if (t[tt] >= 0.0) d[tt] <- integrate(function(y) plnorm(y+t[tt])*dlnorm(y),
                                         lower=0.0,  upper=+Inf)$value else
                          d[tt] <- 1-integrate(function(y) plnorm(y+abs(t[tt]))*dlnorm(y),
                                         lower=0.0, upper=+Inf)$value
    }
    return(d)
}

> plot(pDIFF,  from=-5,  to=5)

was gibt:

kumulative Verteilungsfunktion durch numerische Integration gefunden

Dann können wir die Dichtefunktion finden, indem wir unter dem Integralzeichen differenzieren und erhalten

dDIFF  <-  function(t) {
       d  <- t; t<- abs(t)
       for (tt in seq(along=t)) {
           d[tt]  <-  integrate(function(y) dlnorm(y+t[tt])*dlnorm(y),
                                lower=0.0,  upper=+Inf)$value
       }
       return(d)
}

was wir testen können:

> integrate(dDIFF,  lower=-Inf,  upper=+Inf)
0.9999999 with absolute error < 1.3e-05

Und zeichnen Sie die Dichte auf, die wir erhalten:

plot(dDIFF,  from=-5,  to=5)

Dichtefunktion durch numerische Integration gefunden

Ich habe auch versucht, eine analytische Annäherung zu finden, aber bisher ist dies nicht gelungen, es ist kein einfaches Problem. Die in R programmierte numerische Integration ist jedoch auf moderner Hardware sehr schnell und daher eine gute Alternative, die wahrscheinlich viel häufiger verwendet werden sollte.

kjetil b halvorsen
quelle
1

Dies beantwortet Ihre Frage nicht genau, aber wäre es nicht einfacher, das Verhältnis von und ? Sie kommen dann einfach anXY

Pr(XYt)=Pr(log(XY)log(t))=Pr(log(X)log(Y)log(t))N(0,2σ2)

Abhängig von Ihrer Anwendung kann dies Ihren Anforderungen entsprechen.

Vincent Traag
quelle
3
Aber betrachten wir nicht XY anstelle von log (X) - log (Y)?
Sextus Empiricus
Ja natürlich. Dies ist nur für den Fall, dass jemand daran interessiert sein sollte, wie sich zwei lognormale Variablen voneinander unterscheiden, ohne dass dies notwendigerweise ein Unterschied sein muss. Deshalb sage ich auch, dass es die Frage nicht beantwortet.
Vincent Traag