MKZR:sandbox

Z Skrypty dla studentów Ekonofizyki UPGOW

(Różnice między wersjami)
m (Stopa zwrotu w terminie do wykupu (Yield to maturity))
(Stopa zwrotu w terminie do wykupu (Yield to maturity))
Linia 62: Linia 62:
W tym celu przepiszmy do postaci:
W tym celu przepiszmy do postaci:
-
<math> P_0 (1+r/m)^n -\sum\limits_{i=1}^{n-1} \frac{C_{n-i}}{m}(1+r/m)^i + (-\frac{C_n}{m}-P_N) =\sum\limits_{i=1}^n{(1+r/m)^i} +\frac{P_N}{(1+r/m)^n}</math>
+
<math> P_0 (1+r/m)^n -\sum\limits_{i=1}^{n-1} \frac{C_{n-i}}{m}(1+r/m)^i + (-\frac{C_n}{m}-P_N) =0
 +
Czyli mamy wielomian stopnia n-tego na <math>(1+r/m)</math> o współczynnikach:
 +
:<math> a_n=P_0</math>
 +
:<math> a_i=-\frac{C_{n-1}}{m}</math> dla i=2,3,...,n-1
 +
:<math> a_0=-\frac{C_n}{m}-P_N</math>
-
Wyceniając ciąg płatności zakładaliśmy wartość stopy dyskontowej.
+
Analitycznie nie ma ogólnych wzorów na pierwiastki wielomianu dowolnego stopnia, ale instnieją procedury numeryczne, które bardzo dobrze wykonują to zadanie.
-
 
+
-
+
-
Na rynku mamy sytuacje nieco inna  znamy  raczej bieżące, ceny rynkowe obligacji.  Aby wiec wycenić jej stopę zwrotu  czyli stopę od chwili nabycia do końca życia  instrumentu powinno się za stronę lewą równania wstawić wartość rynkowa  obligacji i wyliczyć stopę zwrotu.
+
-
 
+
-
Tak wyliczona stopa zwrotu to jest  nic innego niż wewnętrzna stopa zwrotu ( IRR) z inwestycji.
+
-
 
+
-
Stopa zwrotu w terminie do dnia wykupu ( YTM)  liczona przy założeniu reinwestowania kuponów  po rentowności YTM.
+
-
 
+
-
Wylicza się  rozwiązując powyższe równanie względem r.
+
-
 
+
-
Łatwiej jest napisać  ''rozwiązując'' niż to zrobić. Nie znamy analitycznej postaci rozwiązania - stosuje się w tym przypadku metody przybliżone.
+
=== Ryzyko ===
=== Ryzyko ===
Duration według Macaulay’a - Duration obligacji przy kapitalizacji dyskretnej
Duration według Macaulay’a - Duration obligacji przy kapitalizacji dyskretnej

Wersja z 09:32, 8 cze 2010


Obligacja ze stałym kuponem

Mamy obligację, której emitent zobowiązuje się do płacenia odsetek regularnie raz do roku i zamierza zwrócić zaciągnięte zobowiązanie (wartość nominalną) w chwili wykupu, na koniec życia zobowiązania. Wartość takie obligacji dane jest wzorem

\(\ P_o=\sum\limits_{i=1}^n\frac{C}{(1+r)^i} +\frac{P_N}{(1+r)^n},\)

który możemy zaimplementować jako funkcję w matlabie:

function P0=Bond_Fair_Price(PN,r,C,n)
  P0 = sum ( C./(1+r).^[1:(n-1)] ) + PN/(1+r)^n;
endfunction

Proszę zwrócić uwagę na frangment:

   C./(1+r).^[1:(n-1)]

który tworzy wektor o elementach będących funkcją wskaźnika \(\frac{C}{(1+r)^i} \) dla \(i=1..(n-1)\).


Dysponując tą funkcją przykład ze skryptu Instrumenty Rynku można przeliczyć wywołując:

octave:157>P0=1
octave:157>PN=106
octave:157>r=0.07 
octave:157>C=6
octave:157>Bond_Fair_Price(PN,r,C,2)
ans =  98.192

W przypadku m wypłat kuponu w jednym roku mamy

function P0=Bond_Fair_Price_multi(PN,r,C,n,m)
  P0 = sum ( (C/m)./(1+r/n).^[1:n] ) + PN/(1+r/m)^n;
endfunction

a w przypadku kapitalizacji ciągłej mamy:

function P0=Bond_Fair_Price_cont(PN,r,C,t)
  P0 = sum ( (C)*exp(-r*t) ) + PN*exp(-r*t(length(x))
endfunction


Stopa zwrotu w terminie do wykupu (Yield to maturity)

Mamy równanie na wartość obligacji po n latach z m okresami wypłaty kupona:

\(\ P_o=\sum\limits_{i=1}^n\frac{C_i/m}{(1+r/m)^i} +\frac{P_N}{(1+r/m)^n}\)

i chcemy rozwiązać je na stopę r.

W tym celu przepiszmy do postaci:

\( P_0 (1+r/m)^n -\sum\limits_{i=1}^{n-1} \frac{C_{n-i}}{m}(1+r/m)^i + (-\frac{C_n}{m}-P_N) =0

Czyli mamy wielomian stopnia n-tego na Parser nie mógł rozpoznać (Nie można utworzyć lub zapisywać w tymczasowym katalogu dla wzorów matematycznych): (1+r/m)\) o współczynnikach: \[ a_n=P_0\] \[ a_i=-\frac{C_{n-1}}{m}\] dla i=2,3,...,n-1 \[ a_0=-\frac{C_n}{m}-P_N\] Analitycznie nie ma ogólnych wzorów na pierwiastki wielomianu dowolnego stopnia, ale instnieją procedury numeryczne, które bardzo dobrze wykonują to zadanie. === Ryzyko === Duration według Macaulay’a - Duration obligacji przy kapitalizacji dyskretnej