Περιεχόµενα Πρόλογος... 9 Κεφάλαιο 1 Εισαγωγή στο Matlab... 11 1.1 Εξοικείωση µε τον χώρο εργασίας του Matlab... 11 1.2 Βασικές Πράξεις και Ορισµός Μεταβλητών... 12 1.2.1 Βασικές Πράξεις... 12 1.2.2 Εισαγωγή Εντολών... 13 1.2.3 Ορισµός Μεταβλητών... 14 1.2.4 Μορφοποίηση απεικόνισης µεταβλητών... 15 1.2.5 Βασικές µαθηµατικές συναρτήσεις... 16 1.3 Πράξεις µε ιανύσµατα και Πίνακες... 18 1.3.1 Ορισµός Πίνακα... 18 1.3.2 Πράξεις µε Πίνακες... 23 1.4 M-Files... 27 1.4.1 Αρχεία Script... 28 1.4.2 Αρχεία Συναρτήσεων... 32 1.5 Προγραµµατισµός στο Matlab... 35 1.5.1 Σχεσιακοί και Λογικοί Τελεστές... 35 1.5.2 οµές Επανάληψης και Ελέγχου... 37 1.6 Γραφικές Παραστάσεις... 51 1.6.1 ιδιάστατα Γραφικά... 51 1.6.2 ηµιουργία τριδιάστατων γραφικών παραστάσεων... 60 1.6.3 Συναρτήσεις για τη δηµιουργία διαφόρων τύπων διαγραµµάτων... 66 1.7 Βιβλιογραφία... 68
6 Χρηµατοοικονοµικές εφαρµογές µε το MATLAB Κεφάλαιο 2 Εισαγωγή και ιαχείριση Χρηµατοοικονοµικών εδοµένων... 69 2.1 Τρόποι εισαγωγής χρηµατοοικονοµικών δεδοµένων στο Matlab... 69 2.1.1 Εισαγωγή δεδοµένων µε πληκτρολόγηση... 69 2.1.2 Εισαγωγή δεδοµένων από αρχείο κειµένου... 70 2.1.3 Εισαγωγή δεδοµένων από αρχείο Excel... 71 2.1.4 Εισαγωγή δεδοµένων µε «αντιγραφή και επικόλληση»... 73 2.1.5 Εισαγωγή δεδοµένων χρησιµοποιώντας τον Οδηγό Εισαγωγής εδοµένων (Importing Wizard)... 74 2.1.6 Εισαγωγή δεδοµένων από αρχείο τύπου Matlab (.mat)... 79 2.1.7 Ανάγνωση από αρχεία και γράψιµο σε αρχεία µε την εντολή fopen... 79 2.2 Χειρισµός ελλιπών δεδοµένων και ακραίων τιµών... 81 2.2.1 Χειρισµός ελλιπών δεδοµένων... 82 2.2.2 Ακραίες τιµές (outliers)... 83 2.3 Η εργαλειοθήκη Datafeed... 84 2.3.1 ιασύνδεση και άντληση δεδοµένων µε χρήση συναρτήσεων... 85 2.3.2 ιασύνδεση και άντληση δεδοµένων µέσω της Γραφικής ιεπιφάνειας Χρήστη... 87 2.4 ιασύνδεση του Matlab µε το Excel µέσω του Spreadsheet Link... 91 2.5 Βιβλιογραφία... 97 Κεφάλαιο 3 Ανάλυση Χρηµατοοικονοµικών εδοµένων... 99 3.1 Χρονική Αξία του Χρήµατος και Ανάλυση χρηµατοροών... 99 3.1.1 Υπολογισµός παρούσας και µελλοντικής αξίας χρηµατοροών... 100 3.1.2 Υπολογισµός αποσβέσεων... 102 3.1.3 Υπολογισµός εσωτερικού ποσοστού απόδοσης, πραγµατικού και ονοµαστικού επιτοκίου... 104 3.1.4 Υπολογισµός τοκοχρεολυσίου... 105 3.2 Θεωρία Χαρτοφυλακίου... 107 3.2.1 Υπολογισµός και γραφική απεικόνιση του αποτελεσµατικού συνόρου (efficient frontier)... 108 3.2.2 Επιλογή άριστου χαρτοφυλακίου (optimal portfolio) όταν απαρτίζεται από τίτλους που περιέχουν κίνδυνο και από τίτλους χωρίς κίνδυνο... 112 3.2.3 Προσδιορισµός Περιορισµών... 115 3.2.4 Υπολογισµός της Αξίας σε Κίνδυνο (Value at Risk) Χαρτοφυλακίου... 117 3.3 Υπολογισµός µετρικών απόδοσης χαρτοφυλακίου... 118 3.4 Εφαρµογή Τεχνικής Ανάλυσης στο Matlab... 120 3.5 Γραφική διεπιφάνεια χρήστη για την ανάλυση χρηµατοοικονοµικών χρονολογικών σειρών... 124 3.6 Βιβλιογραφία... 127
Περιεχόµενα 7 Κεφάλαιο 4 Χρεόγραφα Σταθερού Εισοδήµατος...129 4.1 Προσδιορισµός της Αξίας (Αποτίµηση) Οµολογίας... 129 4.1.1 Τιµή οµολόγων µε τοκοµερίδιο... 130 4.1.2 Τιµή οµολόγων χωρίς τοκοµερίδιο... 132 4.2 Υπολογισµός Απόδοσης στη λήξη... 132 4.3 Ορισµός και µέτρηση της διάρκειας... 133 4.4 Ορισµός και µέτρηση της κυρτότητας... 136 4.5 Ανοσοποίηση (Immunizαtion) χαρτοφυλακίου οµολογιών... 138 4.6 Βιβλιογραφία... 141 Κεφάλαιο 5 Εφαρµογές Χρηµατοοικονοµικών Παραγώγων στο Matlab... 143 5.1 Τιµολόγηση Παραγώγων... 143 5.1.1 Το υπόδειγµα Black-Scholes... 144 5.1.2 Το δυωνυµικό υπόδειγµα... 146 5.2 Μετρικές ευαισθησίας... 148 5.2.1 Υπολογισµός των Greeks... 148 5.2.2 Υπονοούµενη ή τεκµαρτή µεταβλητότητα (implied volatility)... 150 5.2.3 Γραφική απεικόνιση δεικτών ευαισθησίας... 151 5.3 Χρήση συναρτήσεων του Matlab για στρατηγικές αντιστάθµισης... 154 5.4 Βιβλιογραφία... 156 Κεφάλαιο 6 Εφαρµογές Χρηµατοοικονοµικής Οικονοµετρίας στο Matlab...157 6.1 Ιστορική µεταβλητότητα... 157 6.2 Αυτοπαλίνδροµη ετεροσκεδαστικότητα υπό συνθήκη (Autoregressive Conditional Heteroscedasticity - ARCH)... 158 6.3 Κινούµενος µέσος όρος εκθετικής στάθµισης (Exponentially Weighted Moving Average - EWMA)... 159 6.3.1 Εκτιµήσεις EWMA συνδιακυµάνσεων και συσχετίσεων... 160 6.3.2 Μακροπρόθεσµη πρόβλεψη µεταβλητότητας, συνδιακύµανσης και συσχέτισης µε το µοντέλο EWMA... 161 6.3.3 Η βέλτιστη τιµή του παράγοντα εξοµάλυνσης... 162 6.4 Γενικευµένη αυτοπαλίνδροµη ετεροσκεδαστικότητα υπό συνθήκη (Generalized Autoregressive Conditional Heteroscedasticity-GARCH)... 163 6.4.1 Εκτίµηση των παραµέτρων του µοντέλου GARCH... 165 6.4.2 Η εκτίµηση του µοντέλου GARCH µε το Matlab... 166 6.4.3 Μακροπρόθεσµη πρόβλεψη µεταβλητότητας µε το µοντέλο GARCH... 175 6.4.4 Η χρονική διάρθρωση της µεταβλητότητας... 176 6.5 Βιβλιογραφία... 180
8 Χρηµατοοικονοµικές εφαρµογές µε το MATLAB Κεφάλαιο 7 Matlab, Νευρωνικά ίκτυα και Χρηµατοοικονοµική... 181 7.1 Τι είναι τα τεχνητά νευρωνικά δίκτυα... 182 7.1.1 Ο Γενικευµένος Κανόνας έλτα... 182 7.1.2 Η Οπισθοδιάδοση στην Πράξη... 183 7.1.3 Στοχαστική Ενηµέρωση Βαρών... 184 7.1.4 Ο Ρυθµός Μάθησης... 185 7.2 Η εργαλειοθήκη Νευρωνικών ικτύων... 185 7.3 Βιβλιογραφία... 195 Παράρτηµα Α Ορίζουσες, µήτρες & γραµµικά συστήµατα εξισώσεων... 196 Α.1 Ορίζουσες... 196 Α.1.1 Ορισµοί... 196 Α.1.2 Ιδιότητες οριζουσών... 198 Α.1.3 Ορίζουσα σε κανονική µορφή... 200 Α.1.4 Πολλαπλασιασµός Οριζουσών... 200 A.2 Μήτρες... 201 A.2.1 Ορισµοί... 201 A.2.2 Πράξεις µε Μήτρες... 204 A.2.3 Πολυώνυµο Μήτρας... 208 A.2.4 Ανάστροφη Μήτρα... 209 A.2.5 Συµµετρική Μήτρα... 209 A.2.6 Ίχνος Μήτρας... 209 A.2.7 Βαθµός Μήτρας... 210 A.2.8 Αντίστροφη Τετραγωνικής Μήτρας... 211 A.3 Συστήµατα γραµµικών εξισώσεων... 211 A.3.1 Ορισµοί... 211 Α.3.2 Επίλυση συστηµάτων γραµµικών εξισώσεων µε ορίζουσες... 212 Α.3.3 Οµογενή Συστήµατα Γραµµικών Εξισώσεων... 215
Κεφάλαιο 4 Χρεόγραφα Σταθερού Εισοδήµατος Στο κεφάλαιο αυτό δίνονται οι βασικές έννοιες που αφορούν την επένδυση σε οµόλογα. Αρχικά περιγράφονται οι βασικές συναρτήσεις υπολογισµού της θεωρητικής τιµής οµολόγου, απόδοσης στη λήξη, διάρκεια και κυρτότητα οµολόγου. Στη συνέχεια αναλύονται περιπτώσεις στρατηγικών ανοσοποίησης χαρτοφυλακίου οµολόγων. 4.1 Προσδιορισµός της Αξίας (Αποτίµηση) Οµολογίας Η ακαθάριστη/θεωρητική τιµή ενός οµολόγου είναι το άθροισµα της παρούσας αξίας ό- λων των µελλοντικών χρηµατικών ροών (τοκοµερίδια και ονοµαστική αξία) που θα αποδώσει το οµόλογο µέχρι τη λήξη του. Εάν είναι γνωστά τα τρέχοντα επιτόκια για τις λήξεις που συµπίπτουν µε τις πληρωµές που θα αποδώσει το οµόλογο στον κάτοχό του τότε η ακαθάριστη τιµή του οµολόγου δίνεται από τις ακόλουθες σχέσεις: Συνεχής Ανατοκισµός Ετήσιος Ανατοκισµός n rt i i rn tn B CFi e = + M e i= 1 n CFi M B = + (1) n i= 1 1 1 i ( + R ) ( + R ) όπου: Β: η ακαθάριστη τιµή του οµολόγου CF i : η χρηµατική ροή σε ευρώ που θα ληφθεί σε t i έτη από σήµερα n: ο αριθµός των χρηµατικών ροών έως τη λήξη του οµολόγου r i : το τρέχον επιτόκιο συνεχούς ανατοκισµού για χρονική περίοδο t i ετών από σήµερα i n
130 Χρηµατοοικονοµικές εφαρµογές µε το MATLAB R i : το τρέχον επιτόκιο ετήσιου ανατοκισµού για χρονική περίοδο t i ετών από σήµερα M: η ονοµαστική αξία του οµολόγου Επειδή η τιµή του οµολόγου εκφράζεται ανά 100 ευρώ ονοµαστικής αξίας, στις προηγού- µενες σχέσεις θέτουµε Μ = 100. Επίσης θεωρούµε ότι η τελευταία πληρωµή περιέχει το τελευταίο τοκοµερίδιο και την ονοµαστική αξία του οµολόγου. 4.1.1 Τιµή οµολόγων µε τοκοµερίδιο Η συνάρτηση στο Matlab για τον υπολογισµό της θεωρητικής τιµής οµολόγου είναι η bndprice. Η γενική µορφή της συνάρτησης είναι: [Price, AccruedInt] = bndprice(yield, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face) όπου: Όρισµα Price AccruedInt Yield CouponRate Settle Maturity Period (προαιρετικό) Basis (προαιρετικό) EndMonthRule (προαιρετικό) IssueDate (προαιρετικό) FirstCouponDate (προαιρετικό) LastCouponDate (προαιρετικό) StartDate (προαιρετικό) Face (προαιρετικό) Πίνακας 4.1 Ορίσµατα συνάρτησης bndprice Περιγραφή Η θεωρητική τιµή του οµολόγου Η συσσωρευτική απόδοση κατά την εκκαθάριση Απόδοση στη λήξη σε εξαµηνιαία βάση Τοκοµερίδιο (σε δεκαδική µορφή) Ηµεροµηνία διακανονισµού. ιάνυσµα ηµεροµηνιών σε µορφή αριθµού ή σε αλφαριθµητική µορφή. Θα πρέπει να είναι νωρίτερα ή την ίδια µέρα µε την ωρίµανση Ωρίµανση ιάρκεια ζωής οµολογίας Συχνότητα µε την οποία γίνονται οι πληρωµές των τοκοµεριδίων (δες Πίνακα 4.2) Κλάσµα στο οποίο ο αριθµητής δηλώνει τον αριθµό ηµερών ανάµεσα σε δύο ηµεροµηνίες πληρωµών τοκοµεριδίων και ο παρονοµαστής δηλώνει τον αριθµό ηµερών του έτους (δες Πίνακα 4.3) Ο κανόνας τέλος του µήνα. Προσδιορίζει εάν η πληρωµή του τοκοµεριδίου γίνεται την τελευταία ηµέρα του µήνα ή όχι. Ο κανόνας εφαρµόζεται όταν η ωρίµανση είναι η τελευταία ηµέρα µήνα που έχει 30 ή λιγότερες µέρες. Εάν ορίσουµε 0 = αγνόησε τον κανόνα, δηλαδή η πληρωµή του τοκοµεριδίου γίνεται την ίδια ηµέρα (από αριθµητικής άποψη) κάθε µήνα. Εάν ορίσουµε 1 = εφάρµοσε τον κανόνα (προεπιλογή), δηλαδή η πληρωµή του τοκοµεριδίου γίνεται την τελευταία ηµέρα του µήνα. Ηµεροµηνία έκδοσης του οµολόγου Η πρώτη ηµεροµηνία πληρωµής τοκοµεριδίου Η τελευταία ηµεροµηνία πληρωµής τοκοµεριδίου Η ηµεροµηνία από την οποία µπορούν να υπολογιστούν οι ταµειακές ροές του οµολόγου Ονοµαστική αξία. Προεπιλογή = 100
Κεφάλαιο 4: Χρεόγραφα Σταθερού Εισοδήµατος 131 Παράδειγµα Πίνακας 4.2 Συχνότητα µε την οποία γίνονται οι πληρωµές των τοκοµεριδίων Συντελεστής Συχνόητα 0-1 Ετησίως 2 (προεπιλογή) Εξαµηνιαία 3 Τετραµηνιαία 4 τριµηνιαία 6 Ανά δεκαπενθήµερο 12 Ανά µήνα Πίνακας 4.3 Συντελεστές βάσης Βάση Περιγραφή 0 actual/actual (προεπιλογή). Πραγµατικός αριθµός ηµερών ανάµεσα σε δύο ηµεροµηνίες πληρωµών και τον πραγµατικό αριθµό ηµερών στο δεδοµένο έτος 1 30/360 2 actual/360 3 actual/365 4 30/360 5 30/360 6 30/360 7 actual/365 8 actual/actual 9 actual/360 10 actual/365 11 30/360E Να υπολογιστεί η θεωρητική τιµή ενός δεκαετούς οµολόγου µε εκδοτικό επιτόκιο 4% για τρεις διαφορετικές τιµές της απόδοσης στη λήξη (3%, 4% και 6%). Τα τοκοµερίδια πληρώνονται ανά εξάµηνο. Στη γραµµή εντολών πληκτρολογούµε τον ακόλουθο κώδικα: Yield = [0.03; 0.04; 0.06]; CouponRate = 0.04; Settle = '10-Jun-2008'; Maturity = '20-Jun-2018'; [Price, AccruedInt] = bndprice(yield, CouponRate, Settle, Maturity) Τα αποτελέσµατα που εµφανίζει το Matlab είναι: Price = 108.6037 99.9990 85.0912 AccruedInt = 1.8907 1.8907 1.8907
132 Χρηµατοοικονοµικές εφαρµογές µε το MATLAB Παρατηρούµε ότι καθώς µειώνεται η απόδοση στη λήξη αυξάνεται η τιµή του οµολόγου και το αντίστροφο. 4.1.2 Τιµή οµολόγων χωρίς τοκοµερίδιο Η συνάρτηση στο Matlab για τον υπολογισµό της θεωρητικής τιµής οµολόγου χωρίς τοκοµερίδιο ή οµολόγου το οποίο πληρώνει ένα τοκοµερίδιο στην ηµεροµηνία λήξης του οµολόγου είναι η prmat. Η γενική µορφή της συνάρτησης είναι: [Price, AccruInterest] = prmat(settle, Maturity, Issue, Face, CouponRate, Yield, Basis) Από τα παραπάνω ορίσµατα προαιρετικό είναι µόνο το όρισµα Basis. Να υπολογιστεί η θεωρητική τιµή ενός οµολόγου µε τα ακόλουθα χαρακτηριστικά. Settle = '10-Jul-2008'; Maturity = '10-Aug-2008'; Issue = '10-Aug-2007'; Face = 100; CouponRate = 0.07; Yield = 0.05; [Price, AccruInterest] = prmat(settle, Maturity, Issue, Face,... CouponRate, Yield) Τα αποτελέσµατα που εµφανίζει το Matlab είναι: Price = 100.1417 AccruInterest = 6.4071 4.2 Υπολογισµός Απόδοσης στη λήξη Με δεδοµένη την ακαθάριστη τιµή του οµολόγου µπορούµε να υπολογίσουµε το προεξοφλητικό επιτόκιο, y, το οποίο εφαρµοζόµενο σε όλες τις µελλοντικές χρηµατικές ροές θα µας δώσει την ακαθάριστη τρέχουσα τιµή του οµολόγου που ισχύει στην αγορά, ως το άθροισµα της παρούσας αξίας όλων των αναµενόµενων χρηµατικών ροών. Το προεξοφλητικό επιτόκιο y, είναι ο εσωτερικός βαθµός απόδοσης της σειράς των µελλοντικών χρηµατικών ροών που αντιπροσωπεύει το οµόλογο. Είναι επίσης γνωστό ως απόδοση στη λήξη γιατί αντιπροσωπεύει την απόδοση που θα πραγµατοποιηθεί εάν το οµόλογο κρατηθεί µέχερι τη λήξη του και οι πληρωµές των τοκοµεριδίων επανεπενδυθούν µε επιτόκιο ίσο µε το προεξοφλητικό επιτόκιο. Η απόδοση στη λήξη θεωρείται ότι αντιπροσωπεύει την απαιτούµενη απόδοση του οµολόγου από τους επενδυτές. Ακόµη η καµπύλη απόδοσης (yield curve) είναι η γραφική παράσταση της σχέσης µεταξύ των διαθέσιµων λήξεων πιστωτικών χρεογράφων κυβερνητικών εκδόσεων και της αντίστοιχης απόδοσης στη λήξη. Η σχέση µεταξύ της απόδοσης στη λήξη και της τιµής του οµολόγου περιγράφεται στην Εικόνα 4.1.
Κεφάλαιο 4: Χρεόγραφα Σταθερού Εισοδήµατος 133 Εικόνα 4.1 Η σχέση µεταξύ της απόδοσης στη λήξη και της τιµής του οµολόγου Η συνάρτηση bndyield υπολογίζει την απόδοση στη λήξη. Η γενική µορφή της συνάρτησης είναι: Yield = bndyield(price, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face) Υπολογίστε την απόδοση στη λήξη ενός οµολόγου για τρεις διαφορετικές θεωρητικές τι- µές: Price = [93; 100; 110]; CouponRate = 0.06; Settle = '01-Jun-2008'; Maturity = '01-Jun-2009'; Period = 2; Yield = bndyield(price, CouponRate, Settle,... Maturity, Period) Το αποτέλεσµα που εµφανίζει το Matlab είναι: Yield = 0.1373 0.0600-0.0372 4.3 Ορισµός και µέτρηση της διάρκειας Η διάρκεια (duration) προτάθηκε πριν από εβδοµήντα περίπου χρόνια από τον Frederick R. Macaulay. Αποτελεί µία µέτρηση της ευαισθησίας της τιµής του οµολόγου στις µεταβολές της απόδοσης στη λήξη. Ειδικότερα, η διάρκεια υπολογίζει το σταθµισµένο (µε το ύψος των πληρωµών) µέσο χρονικό διάστηµα µεταξύ της αγοράς της οµολογίας και της εξόφλησής της σε προεξοφληµένη βάση (δηλαδή οι παρούσες αξίας των πληρωµών χρη-
134 Χρηµατοοικονοµικές εφαρµογές µε το MATLAB σιµοποιούνται ως συντελεστές στάθµισης στον υπολογισµό αυτού του σταθµισµένου µέσου χρονικού διαστήµατος). Η µαθηµατική έκφραση της διάρκειας είναι η ακόλουθη: όπου: D = n Ci F ti + t 1 1 1 i= ti n t ( + y) ( + y) D = η διάρκεια (duration) της οµολογίας F = η ονοµαστική αξία της οµολογίας P = η αγοραία αξία (παρούσα αξία) της οµολογίας y = η απόδοση στη λήξη t i = η χρονική στιγµή που πραγµατοποιείται η κάθε χρηµατική ροή C i = το τοκοµερίδιο που πληρώνεται τη χρονική στιγµή t i Μια παραλλαγή της διάρκειας αποτελεί η λεγόµενη τροποποιηµένη διάρκεια η οποία υπολογίζεται ως εξής: Τροποποιηµένη διάρκεια = ιάρκεια του Macaulay / (1+y/m) όπου: y = η απόδοση στη λήξη m = ο αριθµός των τοκοµεριδίων που καταβάλλονται µέσα σε ένα έτος Η τροποποιηµένη διάρκεια µπορεί να χρησιµοποιηθεί για να υπολογίσουµε προσεγγιστικά τη ποσοστιαία µεταβολή της τιµής για µια δεδοµένη µεταβολή της απαιτούµενης απόδοσης. Στο Matlab η συνάρτηση που υπολογίζει τη διάρκεια του οµολόγου δεδοµένης της απόδοσης στη λήξη είναι η bnddury. Η γενική µορφή της συνάρτησης είναι: [ModDuration, YearDuration, PerDuration] = bnddury(yield, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face) Όπου: ModDuration: η τροποποιηµένη διάρκεια σε έτη YearDuration: η διάρκεια Macaulay σε έτη PerDuration: η περιοδική διάρκεια Macaulay που αναφέρεται σε εξαµηνιαία βάση Παράδειγµα Υπολογίστε τη διάρκεια ενός οµολόγου για τρεις διαφορετικές τιµές απόδοσης στη λήξη. Yield = [0.03; 0.04; 0.05]; CouponRate = 0.035; Settle = '10-Jul-2008'; P n
Κεφάλαιο 4: Χρεόγραφα Σταθερού Εισοδήµατος 135 Maturity = '10-Aug-2018'; Period = 1; Basis = 1; [ModDuration,YearDuration,PerDuration]=bnddury(Yield,... CouponRate, Settle, Maturity, Period, Basis) Τα αποτελέσµατα που εµφανίζει το Matlab είναι: ModDuration = 8.3194 8.1890 8.0561 YearDuration = 8.4442 8.3528 8.2575 PerDuration = 16.8885 16.7056 16.5149 Επίσης, η συνάρτηση που υπολογίζει την διάρκεια του οµολόγου δεδοµένης της θεωρητικής τιµής του οµολόγου είναι η bnddurp. Η γενική µορφή της συνάρτησης είναι: [ModDuration, YearDuration, PerDuration] = bnddurp(price, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face) Παράδειγµα Υπολογίστε τη διάρκεια ενός οµολόγου για τρεις διαφορετικές θεωρητικές τιµές του οµολόγου. Price = [96; 100; 118]; CouponRate = 0.035; Settle = '10-Jul-2008'; Maturity = '10-Aug-2018'; Period = 1; Basis = 1; [ModDuration, YearDuration, PerDuration] = bnddurp(price,... CouponRate, Settle, Maturity, Period, Basis) Τα αποτελέσµατα που εµφανίζει το Matlab είναι: ModDuration = 8.1957 8.2587 8.5039 YearDuration = 8.3576 8.4019 8.5698
136 Χρηµατοοικονοµικές εφαρµογές µε το MATLAB PerDuration = 16.7151 16.8038 17.1397 4.4 Ορισµός και µέτρηση της κυρτότητας Η σχέση που περιγράψαµε παραπάνω σχετικά µε την τροποποιηµένη διάρκεια είναι ακριβής για µικρές µεταβολές των επιτοκίων. Καθώς µεγαλώνει η µεταβολή των επιτοκίων τόσο λιγότερο ακριβής γίνεται η παραπάνω σχέση. Επειδή στην πραγµατικότητα η σχέση µεταξύ της τιµής ενός οµολόγου και της απόδοσης στη λήξη δεν είναι γραµµική αλλά κυρτή θα πρέπει να συνυπολογιστεί και η κυρτότητα (convexity). Η κυρτότητα µετράει την αλλαγή της διάρκειας σε µικρές µετατοπίσεις της καµπύλης απόδοσης. ηλαδή µετράει δεύτερης τάξης ευαισθησία των τιµών. Για να υπολογίσουµε την κυρτότητα υπολογίζουµε αρχικά τη δεύτερη παράγωγο της τιµής του οµολόγου ως προς την απόδοση στη λήξη και διαιρούµε την ποσότητα αυτή µε την τιµή του οµολόγου. Οι ιδιότητες της κυρτότητας είναι οι ακόλουθες: Εάν η απαιτούµενη απόδοση µειώνεται, τότε η κυρτότητα του οµολόγου αυξάνεται. Αντίστροφα, εάν η απαιτούµενη απόδοση αυξάνεται η κυρτότητα του οµολόγου µειώνεται. Για δεδοµένη απόδοση και λήξη, όσο µικρότερο είναι το τοκοµερίδιο, τόσο µεγαλύτερη θα είναι η κυρτότητα του οµολόγου. Για δεδοµένη απόδοση και τροποποιηµένη διάρκεια, όσο µικρότερο είναι το τοκο- µερίδιο, τόσο µικρότερη θα είναι η κυρτότητα του οµολόγου. Εικόνα 4.2 Η κυρτή σχέση µεταξύ τιµής οµολόγου και απόδοσης στη λήξη. Η εφαπτοµένη στην κυρτή καµπύλη τιµής απόδοσης απεικονίζει την τροποποιηµένη διάρκεια του οµολόγου Στο Matlab η συνάρτηση που υπολογίζει την κυρτότητα του οµολόγου δεδοµένης της α- πόδοσης στη λήξη είναι η bndconvy. Η γενική µορφή της συνάρτησης είναι:
Κεφάλαιο 4: Χρεόγραφα Σταθερού Εισοδήµατος 137 [YearConvexity, PerConvexity] = bndconvy(yield, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face) όπου: YearConvexity: η κυρτότητα σε ετήσια βάση PerConvexity: η περιοδική κυρτότητα σε εξαµηνιαία βάση Παράδειγµα Υπολογίστε την κυρτότητα ενός οµολόγου για τρεις διαφορετικές τιµές της απόδοσης στη λήξη: Yield = [0.03; 0.04; 0.05]; CouponRate = 0.04; Settle = '10-Jul-2008'; Maturity = '10-Aug-2018'; Period = 2; Basis = 0; [YearConvexity, PerConvexity]=bndconvy(Yield, CouponRate,... Settle, Maturity, Period, Basis) Τα αποτελέσµατα που εµφανίζει το Matlab είναι: YearConvexity = 80.6364 78.7373 76.8320 PerConvexity = 322.5455 314.9492 307.3280 Ακόµη, η συνάρτηση που υπολογίζει την κυρτότητα του οµολόγου δεδοµένης της θεωρητικής τιµής είναι η bndconvp. Η γενική µορφή της συνάρτησης είναι: [YearConvexity, PerConvexity] = bndconvp(price, CouponRate, Settle, Maturity, Period, Basis, EndMonthRule, IssueDate, FirstCouponDate, LastCouponDate, StartDate, Face) Παράδειγµα Υπολογίστε την κυρτότητα ενός οµολόγου για τρεις διαφορετικές θεωρητικές τιµές: Price = [96; 100; 104]; CouponRate = 0.015; Settle = '10-Jul-2008'; Maturity = '10-Aug-2018'; Period = 1; Basis = 1; [YearConvexity, PerConvexity] = bndconvp(price,... CouponRate,Settle, Maturity, Period, Basis)