Bistable

Z Skrypty dla studentów Ekonofizyki UPGOW

(Różnice między wersjami)
(Utworzył nową stronę „===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 …”)
m (Obligacja ze stałym kuponem)
Linia 13: Linia 13:
[[Plik:fair_price.png|thumb|360px|Wykres zależności wartości obligacji od stopy procentowej]]
[[Plik:fair_price.png|thumb|360px|Wykres zależności wartości obligacji od stopy procentowej]]
-
Dysponując taką funkcją możemy narysować wykres zależności ceny obligacji od stopy procentowej r:
 
-
<source lang="matlab">
 
-
r=linspace(0.01,0.5,25)
 
-
for i=1:length(r)
 
-
  p(i)=Bond_Fair_Price(100,r(i),7,25);
 
-
endfor
 
-
plot(r,p)
 
-
</source>
 
-
 
-
''Uwaga: Proszę zwrócić uwagę na fragment:''
 
-
<source lang="matlab">
 
-
  C./(1+r).^[1:(n-1)]
 
-
</source>
 
-
''który tworzy wektor o elementach będących funkcją wskaźnika''
 
-
 
-
<math>\frac{C}{(1+r)^i} </math> dla <math>i=1..(n-1)</math>.
 
-
 
-
''Działanie można sobie przećwiczyć na prostym przykładzie:''
 
-
<source lang="matlab">
 
-
octave:271> idx=[1:4]
 
-
idx =
 
-
 
-
  1  2  3  4
 
-
 
-
octave:272> idx.^2
 
-
ans =
 
-
 
-
    1    4    9  16
 
-
</source>
 
-
 
-
 
-
Przeliczmy teraz [[IRF:Analiza_i_wycena_instrument%C3%B3w#Cena_godziwa_.28fair_price.29|przykład]] ze skryptu Instrumenty Rynku :
 
-
 
-
<source lang="matlab">
 
-
octave:157>P0=1
 
-
octave:157>PN=100
 
-
octave:157>r=0.07
 
-
octave:157>C=6
 
-
octave:157>Bond_Fair_Price(PN,r,C,2)
 
-
ans =  98.192
 
-
</source>
 
-
 
-
Analogicznie możemy zaimplementować naszą funkcje dla przypadków: [[IRF:Analiza_i_wycena_instrument%C3%B3w#Obligacja__zerokuponowa|m wypłat kuponu]] w jednym roku:
 
-
<source lang="matlab">
 
-
function P0=Bond_Fair_Price_multi(PN,r,C,n,m)
 
-
  P0 = sum ( (C/m)./(1+r/m).^[1:n] ) + PN/(1+r/m)^n;
 
-
endfunction
 
-
</source>
 
-
 
-
oraz dla  [[IRF:Analiza_i_wycena_instrument%C3%B3w#Wycena_przy_kapitalizacji_ci.C4.85g.C5.82ej|kapitalizacji ciągłej]] gdzie mamy:
 
-
<source lang="matlab">
 
-
function P0=Bond_Fair_Price_cont(PN,r,C,t)
 
-
ti=1:floor(t);
 
-
P0 =  sum (C*exp(-r*ti)) + (t-floor(t))*C*exp(-r*t)  + PN*exp(-r*t);
 
-
endfunction
 
-
</source>
 
-
[[Plik:fair_price_cont_discr.png|thumb|360px|Wykres zależności wartości obligacji od stopy procentowej: porównanie modeli z kapitalizacjami: ciągłą i dyskretną.]]
 

Wersja z 08:32, 27 paź 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] ) + PN/(1+r)^n;
endfunction
Wykres zależności wartości obligacji od stopy procentowej