LUCRARE DE LICENŢĂ MODELE DE EVALUARE A...
Transcript of LUCRARE DE LICENŢĂ MODELE DE EVALUARE A...
ACADEMIA DE STUDII ECONOMICE FACULTATEA DE FINANŢE, ASIGURĂRI, BĂNCI şi BURSE de VALORI
LUCRARE DE LICENŢĂ
MODELE DE EVALUARE A OPŢIUNILOR (METODE PRACTICE COMPUTAŢIONALE)
COORDONATOR:
PROF. UNIV. DR. BOGDAN NEGREA
ABSOLVENT:
TURCOANE H. OVIDIU
Bucureşti, 2011
CUPRINS
1. INTRODUCERE .................................................................................................................................. 1
2. OPŢIUNI............................................................................................................................................... 5
2.1. TIPURI DE OPŢIUNI .................................................................................................................. 5
2.2. PROPRIETĂŢI ALE OPŢIUNILOR ........................................................................................... 9
3. METODE DE EVALUARE A OPŢIUNILOR .................................................................................. 12
4. ALGORITM DE MINIMIZARE UNIDIMENSIONALĂ ÎNTR-O SERIE DE DATE MODELATE
DE O FUNCŢIE CUNOSCUTĂ ................................................................................................................ 15
5. METODE COMPUTAŢIONALE FOLOSITE ÎN EVALUAREA OPŢIUNILOR ........................... 21
5.1. MINI-APLICAŢIE PENTRU EVALUAREA PREŢULUI OPŢIUNII CALL (MAPEPOC) ... 25
5.2. INSTRUCŢIUNI DE UTILIZARE A MAPEPOC ..................................................................... 27
6. CONCLUZII ....................................................................................................................................... 32
BIBLIOGRAFIE ......................................................................................................................................... 33
ANEXE ....................................................................................................................................................... 35
1
1. INTRODUCERE
Criza mondială recentă, care a dus la o recesiune ce nu este încă depăşită de ţările în curs
de dezvoltare, îşi are izvorul şi în tranzacţiile cu instrumente derivate. Acestea au un grad de risc
extrem de ridicat, comparativ cu instrumentele financiare clasice. Evoluţia cursului unui astfel de
instrument financiar derivat conduce uneori la câştiguri foarte mari, aşa cum este şi capabil să
genereze pierderi colosale.
Instrumentele derivate sunt instrumente financiare a căror valoare derivă din valoarea
unor bunuri sau servicii (cunoscute ca underlying asset – activ suport). Acestea din urmă pot fi:
active (bunuri omogene, acţiuni, ipoteci, împrumuturi), un indice (Indicele Preţurilor de Consum,
rata dobânzii), dar şi condiţiile meteorologice şi altele asemenea [11].
Principalele tipuri de instrumente derivate sunt forwards, futures, options şi swaps.
Rolul lor este acela de a diminua riscul care decurge din schimbarea valorii bunului din
care au fost derivate şi atunci vorbim despre o acţiune de protecţie: hedging.
Atunci când se urmăreşte creşterea profitului în urma modificării valorii activului suport
în direcţia anticipată, activitatea este una de speculă.
Scopul opţiunilor şi al celorlalte instrumente derivate este acela de a se constituie într-o
acoperire a riscului activului pe care acestea se bazează. Denumirea de derivat provine de la
faptul că aceste instrumente financiare au ca suport evoluţia cursului bursier al unui instrument
financiar.
Tranzacţionate atât pe piaţa OTC (Over-the-counter, în mod privat) cât şi pe cea ETD
(Exchange-Traded, intermediată de o instituţie specializată), opţiunile se împart în două
categorii: call option – îi conferă dreptul deţinătorului de a cumpăra activul suport la o anume
dată şi cu un anume preţ, put option – conferă dreptul de a vinde activul la o dată anume şi cu un
preţ stabilit. Preţul stipulat în contract este cunoscut ca exercise / strike price – preţ de exercitare,
iar data din contract ca expiration / maturity date – maturitatea contractului. opţiunile americane
pot fi exercitate la orice moment de timp până la perioada de maturitate, pe când cele europene
doar la data expirării contractului, iar denumirile lor nu trebuie puse pe seama locului de
tranzacţionare. De obicei, pe piaţă, un contract conţine 100 de acţiuni suport, fie europene sau
americane, în analiza lor plecându-se de la primele, proprietăţile celor americane putând fi
deduse din celelelalte.
Definit ca un instrument financiar a cărui valoare depinde (derivă) din valoarea altuia,
derivatul a ajuns să se poată baza pe aproape orice variabilă: “de la preţul porcilor pâna la
cantitatea de zăpadă care cade într-o staţiune de schi” [11]. În ultimele trei decenii, în special de
când formula Black-Scholes [3] a dat o nouă dimensiune pieţei instrumentelor derivate şi
influenţa modelelor matematice şi-a făcut serios simţită prezenţa, au apărut o pleiadă de noi
tipuri de instrumente de acest gen, de la cele care iau în considerare active de tipul creditelor sau
al ratelor de dobândă, până la cele care iau în considerare piaţa electricităţii sau evenimentele
meteorologice.
Iniţial, ponderea cea mai mare în tranzacţii o aveau instrumentele intermediate, doar că
piaţa OTC a cunoscut în ultimul deceniu o dezvoltare care înseamnă, azi, un volum de afaceri cu
mult mai mare faţă de piaţa ETD. Este o lume a negocierilor purtate via telefon sau computer
între două instituţii financiare sau între una de acest tip şi unul din clienţii săi (de obicei un
manager de fond de investiţii sau trezorierul unei corporaţii). Multe instituţii financiare sunt
pregătite să acţioneze ca market-maker (formatori de piaţă), cotând atât un preţ de cumpărare –
2
BID, cât şi unul de vânzare – OFFER. Negocierile purtate sunt de obicei înregistrate, pentru a
preîntâmpina viitoarele conflicte sau divergenţe, dar riscul contractelor OTC este evident
superior celor ETD, care sunt intermediate de o piaţă bine organizată, tocmai pentru a elimina
orice risc virtual.
Figura 1. Evoluţia comparată a instrumentelor derivate
Doar uitându-ne pe cifrele din Fig. 1 şi realizăm importanţa enormă pe care derivativele o
au în economia globală, cu o creştere exponenţială pentru piaţa OTC şi una liniară pentru piaţa
ETD, valorile estimate de Bank of International Setllements( BIS) în 2007 pentru activele-suport
fiind de 516.4 mii de miliarde de dolari, respectiv de 96.7 mii de miliarde de dolari. Dacă în ceea
ce priveşte prima categorie este mai greu de estimat valoarea, comparativ cu cealaltă categorie
care este supravegheată instituţional, totuşi diferenţa între cele două este evidentă. Trebuie şi
precizat faptul că o tranzacţie OTC nu este una şi aceeaşi cu valoarea suportului, contractul
având o valoare de piaţă mai mică, de aceea valoarea brută a tuturor contractelor aflate pe piaţă
în 2007, după estimările BIS, era de 11.1 mii de miliarde de dolari.
Prima poveste, controversată de către mulţi, dar acceptată ca un punct de plecare în lumea
acestor instrumente financiare se regăseşte chiar în Biblie, în Capitolul 29 din Geneză, în care
Iacov ia o opţiune de a se căsători cu Rahila, fiica lui Laban, această opţiune costându-l şapte ani
de muncă, simbria lui fiind unirea cu femeia iubită. Şi pentru că tradiţia cerea să se căsătorească
cu sora ei mai mare înainte, acesta mai ia şi a doua opţiune, pentru încă şapte ani de muncă.
Putem privi contractul dintre Iacov şi viitorul socru, Laban, ca pe o opţiune, dar şi ca pe un
forward, aşa cum opinează unii, deşi în Biblie nu apare obligativitatea căsătoriei la finalul anilor
de muncă. Indiferent de această dezbatere privind tipul de instrument pus în discuţie, un lucru
important trebuie remarcat, acela ca instrumentele derivate îşi au rădăcini adânci în istorie,
pentru civilizaţia iudeo-creştină fiind o componentă prezentă de la Facerea Lumii.
Dacă povestea lui Iacov pare uşor forţată, cea a lui Thales din Miletus, aşa cum o
istoriseşte Aristotel, pare cât se poate de veridică, implicând şi o componentă economică. Thales
şi-a folosit talentul de a prezice şi a pronosticat că recolta de măsline va fi cu mult peste medie în
toamna următoare. Astfel el a negociat un cost scăzut pentru recolta viitoare, pe care apoi a
0
100
200
300
400
500
600
Jun
/98
Dec
/98
Jun
/99
Dec
/99
Jun
/00
Dec
/00
Jun
/01
Dec
/01
Jun
/02
Dec
/02
Jun
/03
Dec
/03
Jun
/04
Dec
/04
Jun
/05
Dec
/05
Jun
/06
Dec
/06
Jun
/07
MĂRIMEA PIEŢEI - MII DE MILIARDE DE DOLARI
OTC ETD
3
vândut-o după bunul plac, la un preţ care i-a permis un profit substanţial. Asistăm astfel la întâiul
instrument financiar de acest tip, în jurul anului 580 î.C.
Instrumentele derivate nu au fost doar apanajul civilizaţiilor europene, pentru că prima
instituţie de intermediere atestată este cea a pieţei orezului din Dojima anului 1730, când
samuraii, care erau platiţi în orez, au dorit o stabilizare a conversiei în monedă, după caţiva ani
de recoltă proastă. O altă piaţă de “contracte” futures incipiente era la Yodoya, în jurul anului
1650, iar ea implica contracte standardizate pentru negoţul cu orez, deşi nu se ştie dacă aceste
contracte erau evaluate zilnic sau dacă aveau garanţii.
Evenimentul definitoriu pentru piaţa derivatelor este apariţia lui Chicago Board of Trade
în 1848. Datorită localizării sale, lângă lacul Michigan, Chicago s-a dezvoltat ca un important
centru de stocare, vânzare şi distribuţie de grâne. Datorită sezonalităţii grânelor, se crea o
discrepanţă între imposibilitatea de face faţă pe perioada recoltei, pe de o parte, şi inutilizarea
instituţiei pe perioada primăverii, pe de altă parte. De aceea, un grup de neguţători au creat un
contract de tip “to-arrive”, la termen, care permitea fermierilor să blocheze preţul grânelor pe
moment, dar să le livreze mai târziu. Aceasta le-a permis acestora să stocheze recoltele lângă
fermele lor şi să le livreze după câteva luni la Chicago, şi a oferit prilejul apariţiei hedging-ului,
dar şi a speculei. Pentru a controla piaţa, au apărut şi primele standardizări de contracte în jur de
1865, cele care stau la apariţia, în 1925, a caselor de intermediere – clearing house.
Anul 1973 este un an de referinţă pentru că, pe de o parte, se înfiinţează Chicago Board
Options Exchange, iar pe de altă parte, este publicată, poate cea mai celebra formulă din finanţe,
modelul de evaluare a opţiunilor al lui Black-Scholes [3] şi Merton [16], aceste două evenimente
având un rol revoluţionar pe piaţa derivativelor.
Anii ’80 constituie începutul unei noi ere, a contractelor Swaps si a altor derivative over-
the-counter, negociate direct, neintermediate de o instituţie specializată. Deşi aceste instrumente
existau şi înainte, acum ele capătă o noua dimensiune, mai toate marile companii şi destule din
cele medii, optând pentru această modalitate de acoperire a riscului sau chiar de speculă. Este şi
momentul în care Wall Street devine primitor pentru matematicieni şi fizicieni, iar instrumentele
devin din ce în ce mai complexe, capătând chiar apelativul de “exotic”.
Deşi scopul iniţial al opţiunilor este acela de a facilita activitatea de hedging (acoperirea
în vederea pierderilor la bursă datorate fluctuaţiilor cursului activului suport), în mai toate
cazurile tranzacţiile pe opţiuni au scop speculativ. Rareori o opţiune ajunsă la maturitate este şi
exercitată, piaţa instrumentelor derivate fiind însă considerată de specialişti ca o sursă puternic
generatoare de lichiditate, o componentă principală a fluxurilor economiei moderne.
Estimarea opţiunilor are, deci, un rol important în tranzacţiile de pe piaţa de capital,
datorită sumelor de bani care sunt implicate şi consecinţelor pe care le au deciziile speculative
neîntemeiate.
În această lucrare am construit o aplicaţie care, pe baza datelor dintr-un fişier cu câmpuri
standard, estimează preţul opţiunilor folosind patru abordări. Mai mult decât atât, am realizat şi
implementarea unor algoritmi proprii şi am testat validitatea altor algoritmi utilizaţi în evaluarea
instrumentelor financiare derivate. Ca şi contribuţie personală, amintesc metoda de minimizare
unidimensională (după o singură variabilă), care are un rol important în aflarea acelei valori care
verifică distanţa euclidiană minimă într-o serie de vectori de date care sunt modelate de o funcţie
cunoscută. Prin această metodă numerică se calculează volatilitatea implicită prin minimizare a
unei opţiuni, această volatilitate fiind utilizată în estimarea preţului opţiunii în lucrarea de faţă
(volatilitatea implicită are rol important, printre altele, şi în operaţiunea de hedging, care nu este
scopul acestei lucrări). Pe baza acestei metode numerice se calculează şi alţi parametri impliciţi:
4
volatilitate, skewness şi kurtosis, care sunt utilizaţi ca soluţii iniţiale într-o minimizare
multidimensională a unei serii de vectori de date modelate de o funcţie cunoscută. Cei trei
parametrii impliciţi: volatilitate, skewness şi kurtosis sunt folosiţi pentru estimarea preţului unei
opţiuni după utilizarea unei formule ce presupune dezvoltarea în serie statistică Gram-Charlier
[18,24]. O altă contribuţie personală este aceea prin care demonstrez superioritatea metodei
bisecţiei, în faţa metodei tangentei, în calculul volatilităţii implicite curente obţinute prin
rezolvarea unei ecuaţii transcendente, ai cărei parametri aparţin unui singur vector de date.
Tot în această lucrare vom aduce un amendament la modul de evaluare a opţiunilor prin
faptul că se vor utiliza, pentru calculul parametrilor impliciţi, doar tranzacţiile specifice fiecărei
opţiuni în parte. În cercetările anterioare [8-10], parametrii impliciţi sunt calculaţi pe baza
tranzacţiilor aparţinând tuturor opţiunilor pe acelaşi activ suport, index bursier în speţă, sau
tuturor opţiunilor aparţinând aceleaşi perioade de maturitate. Vom delimita tranzacţiile fiecărei
opţiuni de celelalte tranzacţii pe opţiuni de la bursă, considerând că fiecare instrument derivat
reprezintă un activ de sine stătător ce se raportează doar la activul suport şi nu şi la celelalte
instrumente financiare.
5
2. OPŢIUNI
Opţiunile sunt fundamental diferite de forward şi futures, prin faptul că ele conferă
deţinătorului unui astfel de instrument financiar dreptul de a face ceva, dar nu şi obligaţia. Dacă
în cazul celor două pe participant nu-l costă nimic, cu excepţia necesităţii unei marje, dar îşi
asumă o acţiune, în cazul opţiunii trebuie plătită o sumă de bani drept primă.
Tranzacţionate atât pe piaţa OTC cât şi pe cea ETD, opţiunile se împart în două categorii:
call option – îi conferă dreptul deţinătorului de a cumpăra activul suport la o anume dată şi cu un
anume preţ, put option – conferă dreptul de a vinde activul la o dată anume şi cu un preţ stabilit.
Preţul stipulat în contract este cunoscut ca exercise / strike price – preţ de exercitare, iar data din
contract ca expiration / maturity date – maturitatea contractului. opţiunile americane pot fi
exercitate la orice moment de timp până la perioada de maturitate, pe când cele europene doar la
data expirării contractului, iar denumirile lor nu trebuie puse pe seama locului de tranzacţionare.
De obicei, pe piaţă, un contract conţine 100 de acţiuni suport, fie europene sau americane, în
analiza lor plecându-se de la primele, proprietăţile celor americane putând fi deduse din
celelelalte.
Cea mai mare instituţie de tranzacţionare a opţiunilor este Chicago Board Options
Exchange – CBOE, iar tabelul de mai jos, ce conţine cotaţii ale companiei americane Intel –
INTC, este extras de pe situl de internet al instituţiei( www.cboe.com):
Tabelul 1. Preţurile opţiunilor pentru Intel, sept.2006; Preţul activului=19.56
CALL-uri PUT-uri
Preţ de
($)
exercitare
Oct.
2006
Ian.
2007
Apr.
2007
Oct.
2006
Ian.
2007
Apr.
2007
15.00 4.650 4.950 5.150 0.025 0.150 0.275
17.50 2.300 2.775 3.150 0.125 0.475 0.725
20.00 0.575 1.175 1.650 0.875 1.375 1.700
22.50 0.075 0.375 0.725 2.950 3.100 3.300
25.00 0.025 0.125 0.275 5.450 5.450 5.450
Tabelul 1 prezintă media dintre bid şi offer pentru câteva opţiuni americane ale lui Intel,
atunci când preţul unei acţiuni a respectivei companii era de 19.56 dolari. Preţurile de exercitare
sunt de la 15 la 25 de dolari, iar primele ce trebuie plătite sunt invers proporţionale cu acestea,
depinzând şi de maturitate. Ambele tipuri de opţiuni devin mai valoroase cu cât timpul de
expirare se apropie mai mult. În ceea ce priveşte put-ul cu preţ de exerciţiu de 25 de dolari şi
aceeaşi primă indiferent de maturitate, acesta ar trebui exercitat imediat (fiind o opţiune
americană, există această posibilitate).
2.1. TIPURI DE OPŢIUNI
Recapitulând, opţiunile sunt fie call-uri, fie put-uri, fie americane, cu exercitare oricând
până la maturitate, fie europene, cu exercitare doar la maturitate, numele neavând de a face cu
6
vreo localizare geografică. Majoritatea opţiunilor tranzacţionate sunt americane, dar cele
europene sunt mai uşor de analizat, proprietăţile primelor fiind uşor de dedus din ale celorlalte.
Opţiuni de tip Call
Fie un investitor care cumpără o opţiune call europeană cu preţul de exercitare de 1 000
de ron pentru 100 de acţiuni suport. Presupunem că preţul activelor este 980 de ron, data
maturităţii peste 4 luni, iar preţul opţiunii de a cumpăra un contract este de 50 de ron. Investiţia
iniţială este de 500 de ron, iar momentul de exercitare este cel al expirării opţiunii. Dacă preţul
activelor la exercitare este mai mic decât 1 000, investitorul va alege să nu-şi exercite dreptul de
cumpărare, având posibilitatea să le cumpere direct de pe piaţă mai ieftin. În acest caz,
investitorul pierde suma iniţială de 500 de ron. În caz invers, pentru un preţ al acţiunilor de 1 100
de ron să zicem, el va exercita opţiunea, cumpărând în fapt acţiunile cu 1 000 de ron, când ele
valorează mai mult. Ignorând costurile de tranzacţionare şi prima plătită avans, investitorul ar
câştiga 100 de ron, dacă ar vinde imediat acţiunile. Dacă, în schimb preţul acţiunilor la data
expirării ar fi de 1 020 de ron, el ar exercita opţiunea, dar datorită primei ar pierde 1 020 - 1 000
– 50 = 30 de ron, mai bine decât cei 50 daţi în avans. Reiese că o opţiune de tip call trebuie
exercitată la maturitate dacă preţul activului este mai mare decât preţul de exercitare.
Opţiuni de tip Put
Dacă un deţinător de call speră ca preţul să crească, posesorul unui put aşteaptă
contrariul. Să presupunem că un investitor care cumpără o opţiune europeană cu preţul de
exercitare de 800 de ron, pentru un pachet de 100 de acţiuni, preţul curent al activelor este de 650
de ron, data maturităţii este peste 3 luni şi prima unei opţiuni de a vinde o acţiune este de 0.50 de
ron. Investiţia iniţială este 800 de ron, iar exercitarea se va face dacă preţul acţiunii va fi sub 8
ron, adică 800 de ron pentru întregul pachet. Considerând că preţul la maturitate pentru acţiune
este de 6.5 ron şi ignorând costurile tranzacţiei, investitorul va putea cumpăra 100 de acţiuni la
preţul total de 650 de ron, le-ar vinde pe ale sale cu 700 de ron şi ar realiza un câştig de 150 de
ron, iar profitul va fi de 150 – 50 = 100 de ron. Dacă preţul pachetului de active este peste 800 de
ron, atunci opţiunea va expira, aducând un prejudiciu de 50 de ron, banii plătiţi iniţial de
investitor, pentru a avea dreptul de a alege între a vinde sau nu.
Figura 2 surprinde reprezentarea grafică a profitului pentru cele două opţiuni:
Figura 2. Profitul de pe urma unui pachet de acţiuni în urma cumpărării unui a) call: preţ opţiune=50 de
ron, preţ de exercitare=1000; b) put: preţ opţiune=50 de ron, preţ de exercitare=800.
7
Poziţii pe opţiuni
Există două părţi pentru fiecare contract, una a investitorului care adoptă o poziţie long,
adică cumpără opţiunea şi cealaltă a unui alt investitor, care adoptă o poziţie short, adică vinde
sau scrie/semnează opţiunea. Cel care vinde primeşte bani în avans, dar se expune la riscuri
ulterioare, iar profitul sau pierderea sa sunt pierderea sau, respectiv, câştigul cumpărătorului.
Cele patru tipuri de poziţii pe opţiuni sunt:
Tabelul 2. Tabel comparativ al celor 4 poziţii pe opţiuni
Poziţie Drept Obligaţie Condiţie de execuţie Risc Payoff
Short call Încasează prima Vinde activ S > K infinit K-S+prima
Long call Cumpără activ Plăteşte prima S > K prima S-K-prima
Short put Încasează prima Cumpără activ S < K 0 S-K+prima
Long put Vinde activ Plăteşte prima S < K prima K-S-prima
Din perspectiva celui care adoptă poziţie short graficul arată de felul:
Figura 3. Profitul de pe urma unui pachet de acţiuni în urma vânzării unui a) call: preţ opţiune=50 de ron,
preţ de exercitare=1000; b) put: preţ opţiune=50 de ron, preţ de exercitare=800.
De obicei o opţiune europeană se caracterizează prin prisma payoff-ului, costul opţiunii
nefiind inclus în calcul, iar ca notaţii se folosesc K = preţ de exercitare şi ST = preţul final al
activului suport.
Din graficul din Fig. 4 se pot trage următoarele concluzii: un long call se va exercita dacă
ST > K şi nu se va exercita dacă ST < K, adică
Payofflongcall = max( ST - K, 0 ),
La polul opus se află posesorul unei poziţii short pe un call:
Payoffshortcall = - max( ST - K, 0 ) = min( K - ST, 0 ),
Deţinătorul unei poziţii long pe put va avea:
Payofflongput = max( K – ST, 0 ),
Un beneficiu în oglindă faţă de poziţia long put il are posesorul unui short put:
8
Payoffshortput = - max( K - ST, 0 ) = min( ST - K, 0 ).
Figura 4. Payoff pentru poziţii pe opţiunea europeană: a) long call, b) short call, c) long put,
d) short put. K = preţ de exercitare, S = preţ activ la maturitate
Active suport
Cele mai des întâlnite suporturi pentru opţiuni sunt acţiunile cotate la bursă, valutele,
indicii bursieri şi contractele futures. Primele sunt tranzacţionate pe mai mult de 1000 de diverse
tipuri de acţiuni, un contract garantând dreptul de a cumpăra sau vinde 100 de active la un preţ
specificat, asta pentru că şi acţiunile însele se tranzacţionează tot în loturi de câte o sută.
Cele mai multe opţiuni pe valute sunt pe piaţa OTC, dar se întâlnesc si pe cea ETD.
Acestea sunt fie americane, fie europene şi toate permit utilizarea unei varietăţi de valute, fiecare
contract pe valută având o mărime specifică: pentru lira sterlină se cumpără sau vând 31 200
unităţi monetare, pentru yenul japonez 6.25 milioane unităţi monetare.
Opţiunile pe indecşi bursieri se regăsesc pe ambele pieţe, iar pe OTC, cele mai populare
sunt cele pe S&P 500 Index (SPX), S&P 100 Index (OEX), Nasdaq 100 Index (NDX) şi Dow
Jones Industrial Index (DJX) care se tranzacţionează toate la CBOE. Cele mai multe contracte
sunt de tip european, excepţie făcând OEX. Mărimea contractului e dată în acest caz de faptul că
trebuie tranzacţionat de 100 de ori indexul respectiv la preţul de exerciţiu convenit, iar o
specificitate e aceea că se lucrează cu fluxuri monetare şi nu cu active.
Atunci când o instituţie specializată tranzacţionează un contract futures scoate pe piaţă şi
o opţiune pe acel contract. Opţiunea pe futures expiră, în mod normal, înainte cu ceva timp de
data livrării din contractul futures. Când se exercită un call, posesorul primeşte de la semnatarul
opţiunii (writer) o poziţie long pe suportul contractului futures plus o sumă egală cu diferenţa
dintre preţul contractului futures şi preţul de exercitare. În cazul unui put, posesorul acestuia,
aflat pe poziţie short faţă de activul suport al contractului futures, primeşte şi o diferenţă a
preţului de exercitare faţă de preţul contractului futures.
Revenind la opţiunile pe acţiuni, sunt câteva detalii ale contractului de care se ocupă
instituţia specializată în tranzacţii: data maturităţii, preţul de exercitare, implicaţiile dividendelor,
maximul de contracte pe care un investitor le poate avea la un moment dat etc.
9
2.2. PROPRIETĂŢI ALE OPŢIUNILOR
Proprietăţile opţiunilor depind de activul suport, dar cele care vor fi luate în discuţie vor
fi cele bazate pe acţiuni. Elementele care influenţează instrumentul derivat sunt preţurile call şi
put şi activul suport, iar dintre relaţiile între acestea cea mai importantă este put-call parity,
paritatea put-call. Importantă este şi relaţia dintre opţiunile americane şi cele europene, precum şi
momentul optim de exercitare a dreptului asupra instrumentului derivat.
Cei 6 factori care influenţează preţul unei opţiuni pe acţiune, stock option, sunt:
Tabelul 3. Influenţa creşterii factorului asupra preţului diverselor opţiuni: “+” indică creşterea preţului
derivativului, “-” indică scăderea, “?” indică incertitudinea( Error! Reference source not found. [11]).
Factor Call
european
Put
european
Call
american
Put
american
1. Preţul curent al suportului, S0 + - + -
2. Preţul de exercitare, K - + - +
3. Timpul până la maturitate, T ? ? + +
4. Volatilitatea preţului acţiunii, σ + + + +
5. Rata de dobândă fără risc, r + - + -
6. Dividendele plătibile pe durata opţiunii - + - +
Ştim că payoff-ul este dat, pentru call, de diferenţa dintre preţul acţiunii şi cel de
exercitare, la momentul maturităţii, deci, el devine mai valoros cu cât preţul acţiunii creşte şi cel
de exercitare scade, iar pentru put este exact invers.
De obicei opţiunile europene devin mai valoroase cu trecerea timpului, dar nu este şi
cazul când în perioada respectiva intervine plata dividendelor, când se aşteaptă un declin, aşa că
o opţiune pe termen scurt devine mai valoroasă ca una pe termen lung.
Volatilitatea preţului acţiunii afectează într-o mare măsură mişcările pe piaţă. Pentru
deţinătorul acţiunii, şansa ca aceasta să fluctueze în sus sau în jos este mai mare cu cât
volatilitatea este mai mare. Pentru deţinătorul unei opţiuni, cele două deviaţii se anulează,
deţinătorul unui call având numai beneficii de pe urma creşterii preţului acţiunii, iar scăderea
neaducând decât maxim pierderea primei. Similar, posesorul unui put beneficiază de scăderile de
pe piaţă ale activului, fiind limitat în pierdere la creştere. De aceea, atît call-ul cât şi put-ul cresc
odată cu creşterea volatilităţii.
Rata fără risc afectează într-un mod nu la fel de clar preţul unei opţiuni, iar dacă ceilalţi
factori rămân neschimbaţi, posesorul acţiunii aşteaptă o creştere a venitului de pe urma creşterii
acesteia. În felul acesta, fluxul financiar actualizat aşteptat de deţinătorul opţiunii scade, şi cei
doi factori combinaţi vor duce la o apreciere a call-urilor şi o scădere a put-urilor. Aceasta este
perspectiva teoretică, pentru că în practică, creşterea ratei fără risc duce la o scădere a cursului
acţiunii. Efectul total al celor două constituie cauza pentru care un valoarea unui call va descreşte
iar cea a unui put va creşte. În caz contrar, dacă rata scade şi activul creşte, se va genera o
creştere a valorii call-urilor şi o descreştere a put-urilor.
Mărimea viitoarelor dividende afectează în mod cert opţiunile, prin faptul că reduc
valoarea activului suport după data plăţii acestora. Valoarea unui call va fi influenţată negativ de
mărimea anticipată a dividendului, pe când un put va fi pozitiv influenţat de aceeaşi valoare
anticipată.
10
Ipotezele de bază pentru a modela piaţa opţiunilor sunt în număr de trei:
1. Nu există costuri de tranzacţie
2. Împrumuturile sunt posibile la rata fără risc.
3. Se poate vinde un activ în lipsă (short-selling).
Notaţiile, internaţionale de altfel, sunt următoarele:
S0 : Preţul curent al acţiunii
K : Preţul de exercitare al opţiunii
T-t : Durata pâna la expirarea opţiunii
ST : Preţul acţiunii la maturitatea opţiunii
r : Rata fără risc a dobânzii nominală, compusă continuu( r > 0)
C : Valoarea unei opţiuni americane de a cumpăra o acţiune
P : Valoarea unei opţiuni americane de a vinde o acţiune
c : Valoarea unei opţiuni europene de a cumpăra o acţiune
p : Valoarea unei opţiuni europene de a vinde o acţiune
Limitele superioare şi inferioare ale opţiunii
Aceste limite derivă din faptul că altfel ar exista oportunităţi de arbitraj.
Limita superioară:
c ≤ S0 şi C ≤ S0, arată că indiferent ce s-ar întâmpla o opţiune nu poate valora niciodată
mai mult decât activul suport, altfel, un arbitrajist ar cumpăra acţiunea şi ar vinde call-ul.
p ≤ K şi P ≤ K, indică faptul că indiferent de cât de jos poate scădea preţul acţiunii,
opţiunea nu poate valora mai mult decât preţul de exercitare, pentru că p ≤ Ke-r(T-t)
, valoarea unui
put nu poate fi mai mare decât valoarea prezentă a preţului de exercitare, altfel un arbitrajist ar
vinde opţiunea şi ar investi pe piaţă la rata fără risc.
Limita inferioară( pentru acţiuni ce nu plătesc dividende):
c ≥ S0 – Ke-r(T-t)
, c ≥ max( S0 – Ke-r(T-t)
, 0 ) pentru că o opţiune call poate expira fără
valoare dar nu poate fi negativă. În cazul nerespectării inegalităţii, un arbitrajist ar vinde acţiunea
pe descoperit (short selling) şi ar cumpăra call-ul, iar diferenţa de bani ar investi-o la rata fără
risc, urmând ca la final, în funcţie de preţul acţiunii, să închidă pe descoperit şi să exercite call-ul
sau să cumpere mai ieftin acţiunea şi să închidă poziţia short.
C ≥ c , C ≥ S0 – Ke-r(T-t)
.
p ≥ Ke-r(T-t)
- S0 , p ≥ max( Ke-r(T-t)
- S0 , 0 ) pentru că un put nu poate fi negativ. Dacă
inegalitatea nu se respectă, există posibilitate de arbitraj prin cumpărarea put-ului şi acţiunii pe
datorie. La final, dacă preţul activului este sub cel aşteptat, vinde activul, renunţa la put şi după
plata datoriilor, rămâne cu profit, iar în caz că preţul este peste aşteptări, exercită opţiunea put,
plăteşte împrumutul şi face din nou profit.
P ≥ K - S0, altfel s-ar exercita imediat opţiunea.
11
Paritatea put-call
Fie două portofolii A şi B:
A: un call european şi o sumă de bani egală cu Ke-r(T-t)
B: un put european şi o acţiune
Ambele au aceaşi valoare: max( ST , K ), la expirarea opţiunilor care, fiind europene, nu
pot fi exercitate înainte de maturitate. Valoare prezentă este astfel aceeaşi, adică:
c + Ke-r(T-t)
= p + S0 .
Paritatea put-call indică faptul că valoarea unui call european cu un anume preţ de
exercitare şi o dată de maturitate poate fi dedus dintr-un put cu aceeaşi dată de maturitate şi preţ
de exercitare, şi reciproca. Nerespectarea acestui deziderat duce la apariţia arbitrajului.
Pentru opţiuni americane relaţia este:
S0 – K ≤ C – P ≤ S0 – Ke-rt
.
Dacă aducem în discuţie şi dividendul D, relaţiile devin:
c ≥ S0 – D – Ke-r(T-t)
şi p ≥ D + Ke-r(T-t)
– S0 ,
c + D + Ke-r(T-t)
= p + S0 ,
S0 – D – K ≤ C – P ≤ S0 – Ke-rt
.
12
3. METODE DE EVALUARE A OPŢIUNILOR
Piatra de temelie a estimării valorii unui instrument financiar derivat o constituie articolul
lui Fischer Black şi Myron Scholes din 1973 [3]. Formula dezvoltată de cei doi este validată prin
cercetarea în paralel a lui Robert C. Merton care ajunge la concluzii similare în articolul publicat
în acelaşi an [15]. Cercetările lor nu se opresc doar aici [4-5] , [16-17] şi sunt extinse de către alţi
oameni de ştiinţă [2,13], prin relaxarea ipotezelor iniţiale ale lui Black, Scholes şi Merton.
Formula matematică a lui Black, Scholes şi Merton, ce stă la baza evaluării opţiunilor şi
care porneşte de la studiul mişcării browniene cu aplicaţie în finanţe [18-19,24], este
următoarea:
Ct – preţul opţiunii de tip call la momentul de timp t
St – preţul activului suport (underlying asset)
N – funcţia de distribuţie normală
K – preţul de exercitare
r – rata dobânzii de referinţă (anuală)
T-t – durata de viaţă a opţiunii
σ – volatilitatea istorică, o valoare constantă.
(1),
(2),
cu
(3),
şi
(4).
Faţă de modelul iniţial (1-4), în care volatilitatea este o valoare constantă, cercetările care
au urmat au venit cu o nouă abordare, în care volatilitatea are un comportament stochastic [22-
23].
O altă abordare practică, des utilizată de jucătorii de pe piaţa instrumentelor derivate [2],
este cea a volatilităţii implicite. Volatilitatea implicită se defineşte ca acea valoare teoretică care
verifică la un moment dat preţul real al opţiunii. Ea poate fi obţinută pe baza preţului opţiunii
într-un moment anterior sau prin minimizare pe baza unei serii de preţuri ale opţiunii până la un
moment dat. Volatilitatea implicită, astfel obţinută, va fi introdusă în formulele (1-4) şi va
genera, ca rezultat, preţul estimat al opţiunii:
f – funcţia care calculează preţul opţiunii, pe baza volatilităţii şi a celorlaţi parametri (1-4)
– preţul real de pe piaţă al opţiunii (vector de preţuri dacă se foloseşte minimizarea)
- volatilitatea implicită a preţului opţiunii
(4’)
13
Din punct de vedere al unei dezvoltări în serie statistică Gram-Charlier, Corrado şi Su [8-
10] aduc în prim plan o nouă abordare empirică a estimării preţului opţiunii. Cei doi pornesc de
la ipoteza distribuţiei normale a randamentului activului suport şi folosesc, pe lângă medie şi
dispersie, alte două momente statistice: skewness şi kurtosis. Formula folosită pentru estimarea
preţului opţiunii de tip call în această lucrare este dezvoltată, conform modelului Corrado-Su, de
către Negrea [8].
and
, momente statistice ale funcţiei de distribuţie normală, i = 2,3,4
, e o valoare constantă
, valoare corectată a moneyness
, este funcţia de densitate
este preţul opţiunii Black-Scholes estimat cu în locul lui , i=1,2 (2,3)
este preţul opţiunii obţinut cu modelul Corrado-Su
(5)
Folosind aceeaşi abordare, care determină parametri impliciţi la un moment dat, cu
formula (5) se calculează , şi :
f – funcţia care calculează preţul opţiunii, pe baza , şi şi a celorlaţi parametri (5)
– vector de preţuri reale de pe piaţă ale opţiunii, minim trei observaţii
- volatilitatea implicită a preţurilor ale opţiunii
- skewness implicit al preţurilor ale opţiunii
- kurtosis implicit al preţurilor ale opţiunii
, ,
(5’)
Dat fiind faptul că se extrag trei parametri impliciţi cu ajutorul formulei (5) sunt necesare
minim trei observaţii ale preţului opţiunii, astfel încât să fie posibilă extragerea variabilelor.
14
Modelul de evaluare a opţiunilor (MEO)
Mecanismul evaluării opţiunilor este relativ simplu la nivel conceptual, ca organizare şi
transfer al datelor. Etapele procesului de evaluare sunt următoarele:
1. Obţinerea tranzacţiilor dintr-o anumită perioadă, pe baza accesării unui fişier de date.
2. Identificarea tranzacţiilor aparţinând unei opţiuni, pe baza analizei câmpurilor din fişier,.
3. Aplicarea formulelor de calcul ce au la bază modelul Black-Scoles-Merton:
Evaluarea pe baza volatilităţii implicite
3.1.Evaluare pe baza volatilităţii implicite curente
Se obţine volatilitatea implicită prin aplicarea (4’) pentru ultima tranzacţie cunoscută
3.2.Evaluare pe baza volatilităţii implicite minimizate
Se obţine volatilitatea implicită prin aplicarea (4’) pentru toate tranzacţiile cunoscute
4. Aplicarea formulelor de calcul ce au la bază modelul Corrado-Su
Evaluare pe baza volatilităţii, skewness şi kurtosis implicite
4.1. Evaluare pe baza volatilităţii, skweness şi kurtosis implicite curente
Se obţin volatilitatea, skweness şi kurtosis implicite prin aplicarea (5’) pentru ultimele
trei tranzacţii cunoscute
4.2.Evaluare pe baza volatilităţii, skweness şi kurtosis implicite minimizate.
Se obţin volatilitatea, skweness şi kurtosis implicite prin aplicarea (5’) pentru toate
tranzacţiile cunoscute
Pentru determinarea celor trei variabile implicite, volatilitate, skewness şi kurtosis se va
folosi un algoritm propriu de minimizarea unidimensională (AMU - prezentat pe larg în capitolul
4), care va fi aplicat succesiv, în cadrul metodei de obţinere a parametrilor Corrado-Su (MOP-
CS). Cu ajutorul AMU se calculează o volatilitate implicită, notată σ0,t-1, bazată pe toate
tranzacţiile cunoscute ale unei opţiuni call.
Metoda de obţinere a parametrilor impliciţi în formula Corrado-Su (MOP-CS)
Pas 1. Se calculează volatilitatea implicită prin miminimizare σ0,t-1 cu algoritmul AMU.
Pas 2. Se introduce σ0,t-1 , calculată al Pasul 1, în formula modificată a lui Corrado-Su, ce ţine
cont doar de dezvoltarea în serie statistică după trei momente statistice: medie, sigma şi
skewness
(6)
unde este preţul dat de formula Black-Scoles (1- 4)
şi este considerat skewness implicit.
Se calculează valoarea lui obţinută prin minimizarea cu AMU
Pas 3. Se introduc cei doi parametri calculaţi la Pasul 1 şi Pasul 2 în formula
(6’)
unde este considerat kurtosis implicit.
Se calculează, cu metoda AMU, valoarea lui oţinută prin minimizarea non-liniară.
Pas 4. Cele trei variabile implicite, obţinute la Paşii 1-3, sunt soluţii iniţiale pentru minimizarea
multidimensională, după trei parametri, folosind fie algoritmul LM al lui Levenberg-Marquardt
(echivalent cu backpropagation în reţele neuronale) [24] fie algoritmul NCL al lui Newton
modificat (Coleman-Li) [34].
15
4. ALGORITM DE MINIMIZARE UNIDIMENSIONALĂ ÎNTR-O
SERIE DE DATE MODELATE DE O FUNCŢIE CUNOSCUTĂ
În această lucrare am utilizat algoritmi cunoscuţi şi consacraţi, dar am şi realizat
implementarea unor algoritmi proprii, atât pentru realizarea aplicaţiei care estimează preţurile
call, cât şi pentru obţinerea volatilităţii implicite prin minimizare, σ0,t-1.
Rezultatul obţinut la capătul acestui algoritm este volatilitatea implicită minimizată,
notată σ0,t-1 , care, introdusă în formula Black-Scholes (1-4), verifică în cel mai bun mod cu
putinţă preţurile opţiunii call prin minimizarea după distanţa euclidiană:
n – numărul tranzacţiilor, de la prima până la penultima
Ci – preţurile reale ale opţiunii în tranzacţia i, valoare dată
CEi – preţul estimate al tranzacţiei i, o funcţie: CEi = CEi(σ)
, este minimum.
Definim:
, deci σ0,t-1 este acea valoare a σ care face
ca să fie Q(σ) minimum.
Citim:
şi luăm
unde şi sunt două valori iniţiale, limitele superioare şi inferioare ale rezultatului, stocate
într-un vector σ cu 5 elemente. ε este nivelul de acurateţe, denumit şi toleranţă sau precizie.
Pas 1.
Pas 2.
Pas 3. Sortare ascendentă a vectorului
Pas 4.1 Se iau şi se determină poziţiile lor în vectorul astfel ca
Pas 4.2 DACĂ NU( ) stop!
Algoritmul nu poate găsi un minim global.
ALTFEL
DACĂ , ATUNCI
16
ALTFEL DACĂ ATUNCI
ALTFEL
Pas 5. DACĂ , ATUNCI σ STOP!
ALTFEL (i.e. ) SARI LA Pas 1.
Exemplu numeric:
Vectorul σ este iniţializat în Tabelul 4.1:
Tabelul 4.1. Prima iteraţie. Pas 1.
indici 1 2 3 4 5
σ 0 2.5 5 7.5 10
Valorile elementelor vectorului v sunt calculate în Tabelul 5.2:
Tabelul 4.2. Prima iteraţie. Pas 2.
indici 1 2 3 4 5
σ 0 2.5 5 7.5 10
v(σ) 100 200 300 400 500
Vectorul v este sortat şi primele trei valori se iau în considerare în Tabelul 5.3:
Tabelul 4.3. Prima iteraţie. Pas 3 şi Pas 4
indici 1 2 3 4 5
σ 0 2.5 5 7.5 10
v(σ) 100 200 300 400 500
Se verifică condiţia de atingere a preciziei:
Prima iteraţie. Pas 5
|σ1– σ5| < ε ? (i)
Dacă inegalitatea (i) este falsă atunci se produce o nouă iteraţie, Tabelul 5.4
Tabelul 4.4. A doua iteraţie.
indici 1 2 3 4 5
σ 0 1.25 2.5 3.75 5
v(σ) 100 120 200 280 300
Pasul 4.2, al criteriului de convergenţă ce constă în existenţa a trei valori consecutive
minime în vectorul p, este adăugat doar pentru a certifica validitatea rezultatului. Teoretic, nu
apare cazul în care metoda nu converge către rezultatul aşteptat. Practic, datorită aproximărilor şi
a propagării erorilor, când precizia are o valoare infimă, vectorul p nu mai poate fi sortat corect,
datorită diferenţelor mici dintre valorile elementelor vectorului v. Acest caz apare atunci când
valorile elementelor lui v sunt foarte greu de obţinut, datorită naturii specifice a setului de date
pentru care se face minimizarea.
Acest algoritm este important pentru că rezultatul lui este folosit direct în estimarea
preţului opţiunii, dar şi pentru faptul că rezultatele obţinute cu el sunt soluţii iniţiale ale
calculului parametrilor impliciţi în dezvoltarea în serie statistică a lui Corrado-Su (5).
Verificarea rezultatelor ce se obţin cu AMU se face în această lucrare prin comparaţie cu
rezultatele obţinute prin utilizarea unor algoritmi consacraţi, implementaţi în mediu de lucru Matlab.
17
Tabelul 5 prezintă extracte dintr-un set de date aparţinând a 62 de tranzacţii ale unei
opţiuni, notată O62, împreună cu compararea rezultatelor obţinute cu AMU, prin funcţia
sigmaMinimizareBisecţie (Anexa 1), şi rezultate obţinute cu funcţia lsqonlin pusă la dispoziţie de
Matlab.
i. IVIM este volatilitatea implicită σ0,t-1 obţinută cu AMU
ii. IVLM este volatilitatea implicită σ0,t-1 obţinută cu metoda LM
iii. IVTR este volatilitatea implicită σ0,t-1 obţinută cu metoda NCL
Tabelul 5. Extracte volatilităţi implicite σ0,t-1.
No.
Zi curentă
(t)
yyyymmdd
Moment
tranzacţie
hhmm
Preţ
real
(C)
Preţ
exerciţiu
(K)
Preţ
suport
(S)
Rata
fără
risc
(r)
Zi finală
(T)
yyyymmdd
Durata
(T-t) IVIM IVLM IVTR
2 19970108 1623 188 2350 2324.04 3.36 19980930 630 0.102567673 0.102566471 0.102566471
18 19970123 1432 258 2350 2455.13 3.34 19980930 615 0.096840858 0.096842007 0.096842007
31 19970225 1446 377 2350 2610.22 3.32 19980930 582 0.091309547 0.091311419 0.091311419
47 19970530 1445 375 2350 2548.94 3.63 19980930 488 0.093955994 0.093954595 0.093954595
61 19980507 1115 1559 2350 3931.83 3.63 19980930 146 0.094299316 0.094300304 0.094300304
Fie i ϵ{ 2, 18, 31, 47, 61 }. Se observă cu uşurinţă că rezultatele pentru IVLMi şi IVTRi
sunt foarte apropiate de IVIMi în Tabelul 6:
Aceasta dovedeşte stabilitatea AMU, atunci când se aplică unor seturi de date diferite
Diferenţa între procedurile Matlab şi sigmaMinimizareBisecţie sunt legate de două
aspecte. AMU găseşte întotdeauna un minim global. Metodele care calculează IVTR şi
IVLM au nevoie de o soluţie iniţială relativ apropiată de cea finală. AMU în schimb are
nevoie de o limită inferioară, care este zero, impusă de constrângerea de non-negativitate
a volatilităţii în general, şi o limită superioară. Limita superioară poate fi oricât de mare,
astfel încât să încadreze volatilitatea într-un interval de valori chiar aberant de exagerate.
Tabelul 6 arată numărul de iteraţii necesar pentru obţinerea IVIM cu AMU:
i. LB este limita inferioară (lower bound)
ii. UB este limita superioară (upper bound)
iii. NI este numărul de iteraţii
Tabelul 6. IVIM calculată cu diferite limite inferioare i superioare
No.
LB = 0 UB = 1 LB = 0 UB = 5 LB = 0 UB = 10 LB = 0 UB = 100
IVIM NI IVIM NI IVIM NI IVIM NI
2 0.102565765380859 18 0.102567672729492 20 0.102567672729492 21 0.102567672729492 25
18 0.096843719482422 18 0.096840858459473 20 0.096840858459473 21 0.096842646598816 25
31 0.091312408447266 18 0.091309547424316 20 0.091309547424316 21 0.091311335563660 25
47 0.093955993652344 18 0.093955993652344 20 0.093955993652344 21 0.093954801559448 25
61 0.094299316406250 18 0.094299316406250 20 0.094299316406250 21 0.094300508499146 25
18
Diferenţele dintre valorile IVIM calculate cu AMU nu sunt semnificative în funcţie de
limite, iar valorile pentru limitele superioare de 5 şi 10 sunt identice, pentru că, dat fiind
specificul de înjumătăţire a intervalului, iteraţiile converg către acelaşi rezultat. Desigur, valori
ca 5, 10 sau 100 pentru volatilitate par aberante, dar scopul AMU este şi acela de a calcula un
minim global în orice serie de date. Avantajul lui AMU este ca nu are nevoie să determine
valoare derivatei întâi a unei funcţii, ceea ce constiuie un mare avantaj, în special dacă această
funcţie nu este cu certitudine continuă.
Vom analiza şi erorile pe care această metodă le are, iar în Tabelul 7 este prezentată
eroarea maximă absolută pentru datele din Tabelul 7:
i.
este o matrice cu IVIM determinat cu AMU
Table 7. Eroarea absolută pentru IVIM calculată cu diverse limite superioare i pentru numere diferite
de observaţii.
M EROARE ABSOLUTĂ
j
i
1
LB UB
0 1
2
LB UB
0 5
3
LB UB
0 10
4
LB UB
0 100
i=1,5; j=1,4
1 0.10256577 0.10256767 0.10256767 0.10256767 0.000001907348632993
2 0.09684372 0.09684086 0.09684086 0.09684265 0.000002861022948997
3 0.09131241 0.09130955 0.09130955 0.09131134 0.000002861022949996
4 0.09395599 0.09395599 0.09395599 0.0939548 0.000001192092895994
5 0.09429932 0.09429932 0.09429932 0.09430051 0.000001192092895994
După cum reiese din datele din Tabelul 7, eroarea absolută este sub 10-5
, ceea ce conferă
un nivel de încredere ridicat, ţinând cont de faptul că s-a lucrat cu o precizie de 10-5
.
Un alt aspect important de verificat este acela corelaţiei dintre numărul de iteraţii necesar
pentru a converge către rezultat şi limita superioară folosită de AMU. În Figura 3 sunt prezentate
aceste corelaţii, care indică o legătură logaritmică, cea ne îndreptăţeşte să credem că limita
superioară nu influenţeză, de la un moment dat, numărul de iteraţii într-o proporţie semnificativă.
Figure 5 . Corelaţie între limita superioară a AMU i numărul de iteraţii necesar pentru obţinerea
rezultatului.
0
5
10
15
20
25
30
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100
Nu
mă
r d
e it
era
ţii
-N
I
Limită superioară - UB
Corelaţie între UB şi NI
19
Calculele pentru determinarea IVIM au fost făcute pentru o precizie de ε = 10-5
=
0.00001.
Este important de văzut şi cum această precizie influenţează numărul de iteraţii NI
necesare pentru a ajunge la rezultatul scontat. Pentru aflarea legăturii dintre NI şi ε a fost folosită
limita superioară de 100, constantă
Table 8. Corelaţie între NI i ε
Limită
superioară Număr de tranzcţii ε
Număr de
iteraţii Valoare IVIM
100 61 0.00001 25 0.094300508499146
100 61 0.000001 28 0.094300135970116
100 61 0.0000001 31 0.094300275668502
100 61 0.00000001 35 0.094300278578885
100 61 0.000000001 +10000 0.094300280034076
Trebuie menţionat că setul de date O62 este unul special din mai multe puncte de vedere,
iar unul dintre acestea este acela că opţiunea nu este foarte lichidă (un alt aspect este acela că este
o opţiune de tip LEAP, care se întinde pe o perioadă foarte lungă de timp). De aceea, când o
tranzacţie are loc poate fi acompaniată de o fluctuaţie mare a activului suport, iar determinarea
distanţei Euclidiene necesită multe calcule şi iteraţii pentru o precizie de ε = 10-9
. Pentru alte
seturi de date ce au fost testate, rezultate cu timp de răspuns rapid şi numaăr de iteraţii scăzut au
fost obţinute şi pentru o precizie de ε = 10-15
.
Este de presupus ca NI să crească dacă numărul de tranzacţii creşte şi el (seturile de date
devin mai mari), de aceea, pentru o precizie de 10-8
, se va calcula IVIM pentru diverse serii de
date ale unor opţiuni diferite în Tabelul 9. Tot în Tabelul 9 va fi prezentat şi timpul necesar
obţinerii rezultatului pentru fiecare set de date de test:
Tabelul 9. Număr de iteraţii şi timpul necesare obţinerii IVIM.
Limita
superioră
Număr de
tranzacţii
Precizie
ε Număr de
iteraţii Valoare IVIM
Timpul
în
secunde
100 230 0.00000001 35 0.253526121377945 1.13 100 693 0.00000001 35 0.204662009491585 6.26 100 802 0.00000001 35 0.167693538242020 7.30 100 1396 0.00000001 35 0.234531576279551 12.64 100 2331 0.00000001 35 0.163572531891987 21.42
Pentru aceeaşi precizie, opţiuni diferite şi număr de tranzacţii diferite, numărul iteraţiilor
necesare pentru a se ajunge la rezultatul scontat este identic, doar timpul de răspuns fiind diferit.
Este interesant de văzut şi legătura dintre acest timp de răspuns al AMU implementat prin funcţia
sigmaMinimizareBisectie şi numărul de tranzacţii al setului de date minimizat unidimensional.
Este evident, conform graficului din Figura 6, că există o legătură liniară între timp şi
numărul de tranzacţii luat în calcul, ceea ce constituie un punct forte al AMU. Pentru alte serii de
date s-au făcut 20 de teste, iar rezultatele sunt prezentate în Anexa 2.
20
Figura 6. Dependenţa liniară între numărul de observaţii luate în calcul i timpul de răspuns
Ca punct final în prezentarea AMU, se impun câteva concluzii privind utilitatea
algoritmului, care, deşi nu la fel de rapid ca alţi algoritmi bazaţi pe derivata întâi a unei funcţii,
are punctele sale tari. Cu o precizie decentă:
1. AMU converge întotdeauna către minimum global
2. AMU nu necesită o valoare apropriată de soluţia finală ca soluţie iniţială
3. AMU nu necesită calculul derivatelor de ordin unu sau doi
4. AMU se aplică pentru serii de date modelate de o funcţie continuă, dar şi pentru
observaţii în timp discret
5. AMU stă la baza calculului soluţiilor iniţiale pentru minimizarea tridimensională ce
conduce la aflarea parametrilor impliciţi: volatilitate, skewness şi kurtosis, folosiţi în
modelul de estimare a preţului opţiunii Corrado-Su (5’).
0
500
1000
1500
2000
2500
0.00 5.00 10.00 15.00 20.00 25.00
No
. o
f tr
an
sact
ion
s
Seconds
Correlation between no. of transaction and time
21
5. METODE COMPUTAŢIONALE FOLOSITE ÎN EVALUAREA
OPŢIUNILOR
În această lucrare, am stabilit ca obiectiv principal prezentarea modelelor de evaluare a
unei opţiuni call (1-4,5, 4’,5’) din perspectiva calculului computaţional şi a problemelor pe care
sistemele de calcul le întâmpina în determinarea soluţiilor.
Ca ipoteză proprie în evaluarea opţiunilor, consider că estimarea unui instrument derivat
trebuie să se facă pe baza tranzacţiilor acestui instrument financiar şi a preţului activului suport,
neluând în calcul celelalte instrumente derivate, fie că au aceeaşi clasă de maturitate sau acelaşi
activ suport. În sprijinul acestei ipoteze vin graficele din Figura 7 şi Figura 8, care prezintă
modalităţi de estimare pe baza volatilităţii implicite curente, notate σt-1, calculată cu formula (4’)
pe baza primei tranzacţii cunoscute dinaintea momentului curent.
Figura 7. Preţuri call: reale-o i estimate-x. Tranzacţii negrupate pe opţiuni.
Figura 8. Preţuri call: reale-o i estimate-x. Tranzacţii grupate pe opţiuni.
0
50
100
150
200
250
300
350
400
450
0 5 10 15 20 25 30 35 40
Va
lori
ale
pre
ţulu
i o
pţi
un
ii
Tranzacţii
Preţuri call reale şi estimate
0
100
200
300
400
500
0 5 10 15 20 25 30 35 40
Va
lori
ale
pre
ţulu
i o
pţi
un
ii
Tranzacţii
Preţuri call reale şi estimate
22
Caracteristic şi pentru Figura 7 şi Figura 8 este că tranzacţiile fac parte din aceaşi zi, fiind
prelucrate în ordinea momentului de tranzacţionare. Diferenţa este dată de faptul că tranzacţiile
sunt intercalate în Figura 7, iar în Figura 8 acestea sunt grupate pe opţiuni. Gruparea tranzacţiilor
se realizează după două componente ale unui set de date ce conţine tranzacţii: preţ de exerciţiu K
şi data exerciţiului T. Pentru fiecare preţ estimat s-a folosit formula (4’), utilizându-se σt-1
calculată pentru tranzacţia anterioară. În cazul în care se calculează prima estimare pentru fiecare
dintre opţiuni, se foloseşte σt-1 calculată la cel mai apropiat moment de timp, indiferent de
apartenenţa la o opţiune sau alta, pentru că nu se cunoaşte o altă tranzacţie anterioară. Acest
lucru este specific doar cazului din Figura 8, pentru că, în lucrarea de faţă, atunci când se
estimează preţul call, vor fi folosite tranzacţiile din zilele anterioare specifice unei opţiuni.
Datele folosite pentru realizarea estimărilor prezentate în Figura 7 şi Figura 8 se regăsesc în
Anexa 3 şi ele sunt tranzacţii reale, care s-au desfăşurat la bursa de opţiuni din Paris – MONEP,
pe indexul CAC40, în perioada 1.1.1997 – 30.12.1998 (toate tranzacţiile care stau la baza
estimărilor din această lucrare fac parte din această categorie).
Conform graficului din Figura 8, estimările pe baza σt-1 sunt extrem de apropiate de
preţul real al opţiunii, însă acest lucru se datorează fluctuaţiilor mici la nivelul parametrilor care
stau la baza estimării şi în special a volatilităţii scăzute pe moment a activului suport. Astfel,
între o tranzacţie anterioară şi momentul curent, preţul activului se schimbă foarte puţin în cele
mai multe din cazuri. De aceea, tendinţa investitorilor pe piaţa opţiunilor este să evalueze în
aceeaşi termeni opţiunea, raportându-se la σt-1, ca măsură a riscului de piaţă.
Calculul σt-1 necesită o atenţie specială, pentru că, datorită obişnuinţei, cel mai adesea e
folosită metoda tangentei, pe baza derivatei întâi. Pentru setul de date luat în discuţie în această
lucrare trebuie precizat că s-a folosit metoda bisecţiei, care îşi dovedeşte pe deplin superioritatea,
prin faptul că are o convergenţă sigură către rezultatul corect. Nu se întâmplă acelaşi lucru şi cu
metoda tangentei, care, datorită pasului prea mare pe care derivata îl impune la calcularea
rezultatului, sare peste rezultatul corect.
Datele de test prezentate mai jos sunt prelucrate în limbajul Matlab:
v = [19970102,1039,130,2200,2283.02,3.41,19970327,84]
>> [a,b]=raphson(@fCallBS,v,1)
ans =
numeric ... analitic, contor= 101.000000
a =
-0.0074
b =
-0.0074
>> x = bisection(@calculCallBS,v)
ans =
Iterative bisection: counter=21
x =
0.1605
>> fCallBS(x,v)
ans =
129.9974
>> fCallBS(a,v)
ans =
-7.1073e-037
Se observă că rezultatul obţinut prin metoda bisecţiei (funcţia bisection) verifică preţul
opţiunii (funcţia fCallBS), care este apoximativ egal cu al treilea element din vectorul v (preţul real
23
al opţiunii). Pentru metoda tangentei (funcţia raphson) s-au folosit atât derivata numerică cât şi cea
analitică, ambele conducând la acelaşi rezultat total eronat. Vom relua testarea pentru încă un set de
date (în speţă, un alt vector), pentru a ne convinge de validitatea ipotezei că rezultatul corect este
obţinut doar cu metoda bisecţiei:
v2 = [19970102,1032,43,2350,2283.11,3.41,19970327,84]
>> [a,b]=raphson(@fCallBS,v2,0.5)
ans =
numeric ... analitic, contor= 95.000000
a =
0.0040
b =
0.0039
>> x = bisection(@calculCallBS,v2)
ans =
Iterative bisection: counter=21
x =
0.1458
>> fCallBS(a,v2)
ans =
4.7836e-029
>> fCallBS(x,v2)
ans =
43.0002
Se observă că rezultatul corect este încă odată obţinut doar cu metoda bisecţiei, mai mult,
metoda tangentei folosind multiple iteraţii (în ambele cazuri) care conduc la un rezultat complet
eronat. Pentru verificarea acurateţei informaţiei referitoare la superioritatea bisecţie în faţa metodei
tangentei, în Anexa 4 sunt prezentate funcţiile care calculează volatilitatea curentă. Sunt şi momente în viaţa unei opţiuni când parametrii ce o definesc, prin prisma
modelului clasic (4), se schimbă semnificativ, şi aici este vorba, în special de preţul activului,
care are salturi bruşte. De aceea se impun şi alte abordări pentru a calcula volatilitatea implicită a
activului suport sau chiar de a îmbunătăţi această volatilitatea prin adăugarea unor componente
care să o rafineze, cum sunt momentele statistice de ordin 3 şi 4: skewness şi kurtosis.
Conform MEO, MOP-CS şi formulelor (1-4, 4’, 5, 5’, 6, 6’), avem următoarele preţuri
estimate ale unei opţiuni de tip call:
n – număr total de tranzacţii luate în calcul
– volatilitatea implicită calculată pentru toate n tranzacţiile unei opţiuni
– skewness implicit calculat pentru toate n tranzacţiile unei opţiuni
- kurtosis implicit calculat pentru toate n tranzacţiile unei opţiuni
- volatilitatea implicită calculată pentru ultimele 3 tranzacţii ale unei opţiuni
- skewness implicit calculat pentru ultimele 3 tranzacţii ale unei opţiuni
- kurtosis implicit calculat pentru ultimele 3 tranzacţii ale unei opţiuni
CB - preţuri call estimate cu volatilitatea implicită σt-1 – calculată cu metoda bisecţiei
CIM - preţuri call estimate cu volatilitatea implicită σ0,t-1 - calculată cu AMU.
CTR - preţuri call estimate cu
- determinate cu NCL.
CTRim - preţuri call estimate
determinate cu AMU şi NCL
CT3lm - preţuri call estimate
determinate cu LM.
24
CT3tr - preţuri call estimate
determinate cu NCL.
C – preţuri reale observate.
Ei - eroarea absolută a celui mai bun estimator pentru tranzacţia i, with i=1,2, … ,n.
, j=1,6; CE1=CTRim,CE2=CTR,CE3=CB,
I CE4=CIM, CE5=CT3lm, CE6=CT3tr
Pentru a verifica fiecare dintre aceste metode de estimare, prezentăm în Tabelul 10
rezultatele obţinute pentru o opţiune, notată O253, cu 253 de tranzacţii observate.
Tabelul 10. Extract din estimările cu diverse metode pentru O253
No. CTRim CTR CB CIM CT3lm CT3tr C Aproximarea
cea mai bună Ei
3 31.23503 31.24240 32.06597 33.46466 32.08282 28.47791 21.00 CT3tr 7.48
4 32.12003 32.12707 22.69361 18.79348 30.49938 29.41265 35.00 CTR 2.87
5 28.44111 28.44123 35.00001 18.79348 36.94085 36.94062 35.00 CB 0.00
6 30.51123 30.50511 34.35487 32.22584 32.14911 31.09090 35.40 CB 1.05
7 29.31000 29.28037 31.19719 28.75684 38.30589 30.49232 30.00 CT3tr 0.49
89 39.98573 39.98661 49.61491 47.85945 50.51999 50.51835 49.50 CB 0.11
90 40.26415 40.26522 49.45899 47.84313 46.42312 48.67179 50.00 CB 0.54
102 42.18778 42.19056 52.10153 50.83557 53.27301 53.61912 54.50 CT3tr 0.88
103 42.62924 42.63226 54.50000 50.88235 53.67414 52.18936 53.50 CT3lm 0.17
104 43.06983 43.07290 53.42998 50.84697 53.78852 53.17923 52.50 CT3tr 0.68
105 43.51273 43.51616 52.85004 51.21227 49.70802 52.43155 53.00 CB 0.15
106 43.97921 43.98305 52.61257 50.85321 47.08487 52.41635 53.00 CB 0.39
246 0.00036 0.00036 6.11399 3.97552 -98.31134 0.60819 4.25 CIM 0.27
247 0.00000 0.00000 4.42852 4.14572 -0.14765 -0.06389 5.50 CB 1.07
248 0.00000 0.00000 0.43030 0.26067 0.00646 0.12433 1.20 CB 0.77
249 0.00000 0.00000 0.04330 0.00302 2.04003 1.09224 1.90 CT3lm 0.14
250 0.00000 0.00000 3.03375 0.00993 1.17232 1.17232 1.90 CT3tr 0.73
251 0.00000 0.00000 0.70163 0.00107 1.58025 1.57036 1.90 CT3lm 0.32
252 0.00000 0.00000 0.50274 0.00002 0.00000 0.00000 1.00 CB 0.50
253 0.00000 0.00000 2.16930 0.00034 0.00000 0.00000 0.65 CIM 0.65
TOTAL: CTRim-2 CTR-7 CB-110 CIM-27 CT3lm-43 CT3tr-64
După cum se observă, cele mai multe estimări apropiate de preţul real sunt cele care
utilizează σt-1 (110 estimări corecte ale CB). O cotă la fel de importantă o au şi estimările care
folosesc
(CT3lm şi CT3tr). Aşadar, estimările pe baza ultimelor tranzacţii sunt
cele care se apropie de preţul real în majoritatea covârşitoare a cazurilor. În ceea ce priveşte
estimările pe baza minimizărilor, acestea au relevanţă în special datorită utilizării σ0,t-1. În
lucrarea de faţă au fost tratate toate minimizările, unidimensionale sau tridimensionale, luând în
considerare toate tranzacţiile observate ale unei opţiuni. Aceste minimizări pot fi făcute şi pe
grupuri mai restrânse de observaţii, în funcţie de anumite analize tehnice şi grafice ale cursurilor
preţurilor call şi ale activului.
25
Interesant de văzut este şi comportamentul metodelor de estimare şi pentru O62, care,
reamintesc, este o opţiune nu foarte lichidă. Desigur, în cazul O62 se poate lua în discuţie şi
continuitatea spaţiului, datorita tranzacţiilor foarte rare.
Tabelul 11. Extract din estimările cu diverse metode pentru O62
No. CTRim CTR CB CIM CT3lm CT3tr C Aproximarea
cea mai bună Ei
3 213.62 213.62 189.96 184.48 168.34 147.37 182.00 CIM 2.48
4 225.12 225.12 207.82 209.40 191.29 174.79 215.00 CIM 5.60
5 235.10 235.10 215.00 210.71 196.91 196.91 210.00 CIM 0.71
6 231.24 231.24 229.75 230.30 230.65 190.43 225.00 CB 4.75
10 229.04 229.04 217.25 223.75 229.71 183.73 225.80 CIM 2.05
11 230.90 230.90 220.77 218.89 231.25 187.58 223.00 CB 2.23
12 231.56 231.56 237.01 233.38 189.37 189.37 230.00 CTRim 1.56
32 395.41 395.41 493.93 498.39 395.19 395.19 471.00 CB 22.93
33 365.30 365.30 493.93 498.32 476.86 384.63 471.00 CT3lm 5.86
43 446.25 446.25 354.02 341.64 446.24 446.23 350.00 CB 4.02
44 420.34 420.34 433.12 427.48 420.79 416.28 410.00 CSt3 6.28
45 312.46 312.46 446.23 451.28 310.27 310.27 448.00 CB 1.77
46 367.91 367.91 422.63 426.50 395.39 368.57 428.00 CIM 1.50
47 623.47 623.47 326.91 324.48 0.00 623.61 375.00 CB 48.09
57 1532.52 1532.52 817.06 805.48 0.00 1532.52 799.00 CIM 6.48
58 1581.94 1581.94 1534.01 1534.01 1581.94 1581.94 1457.00 CB 77.01
59 1615.71 1615.71 1532.52 1532.52 1615.71 1615.71 1476.00 CB 56.52
60 1800.10 1800.10 1581.94 1581.94 1800.10 1800.10 1520.00 CB 61.94
61 0.00 0.00 1615.71 1615.71 0.00 0.00 1559.00 CB 56.71
62 0.00 0.00 1800.10 1800.10 0.00 0.00 1758.00 CB 42.10
TOTAL: CTRim-2 CTR-3 CB-37 CIM-17 CT3lm-1 CT3tr-2
Ca şi în cazul O253 şi în cazul O62 metoda care estimează cel mai apropiat de preţul real
al call-ului este cea care calculează CB, pe baza σt-1 (mai mult de jumătate din estimări). De data
aceasta, preţul CIM, pe baza σ0,t-1, este următorul ca pondere în estimările cele mai apropiate de
preţul real al opţiunii. Deşi estimările pe baza formulelor (5,5’) ale modelului Corrado-Su nu au
o pondere foarte importantă în cazul lui O62, acest lucru se poate datora caracterului nelichid al
opţiunii.
Pentru a găsi un şablon care să ofere un punct de reper în alegerea celei mai bune metode
de estimare a preţului opţiunii, am realizat, ca obiectiv al aceastei lucrări, şi un model de
aplicaţie care să ofere utilizatorului posibilitatea de realiza diverse operaţii legate de analiza
preţului unei opţiuni call.
5.1. MINI-APLICAŢIE PENTRU EVALUAREA PREŢULUI OPŢIUNII CALL
(MAPEPOC)
Obiective principale
1. Sortarea tranzacţiilor dintr-un fişier F pe grupe specifice unei opţiuni call
2. Estimarea preţului unui call pe baza:
CB şi σt-1
CM şi σ0,t-1
CTRim şi
CT3tr şi
26
3. Afişarea tuturor tranzacţiilor unei opţiuni call extrase din fişierul F
4. Realizarea unor estimări pe baza filtrărilor tranzacţiilor
5. Exportarea, sub forma unui fişier CVS, a tranzacţiilor aparţinând unei opţiuni
Resurse hardware şi software
Din perspectiva eficienţei calculelor ce conduc la estimarea opţiunii, resursele hardware
sunt destul de importante, la nivelul procesorului şi memoriei volatile, dar unul din scopurile
MAPEPOC este şi acela de a propune o modalitate eficientă şi din perspectiva vitezei de lucru.
Resursele minime şi cele optime pentru ca MAPEPOC să ruleze sub sistemul de operare
Windows sunt următoarele:
COMPONENTĂ CERINŢE MINIME CERINŢE OPTIME
procesor: 1600 MHz 2.x GHz, Core2Duo
memorie RAM: 1 GB 4 GB
monitor: 16 culori 16 000K culori
hard-disk: 10 GB, 5600 rpm 7200 rpm
mouse: orice model compatibil orice model compatibil
imprimantă: opţional opţional
Parametrii pentru resursele hardware au fost determinaţi prin extrapolarea rezultatelor
rulării unor funcţii de estimare a preţului opţiunii pe 2 sisteme de calcul, cu următoarele
specificaţii de importanţă majoră pentru aplicaţia AC:
Notebook Asus FS3, Windows 7, 2.4 GHz Intel Core 2 Duo, 3 GB RAM, hard-disk
5600 rpm
HP sistem desktop, Windows XP, 3 GHz Intel, 1.5 GB RAM, hard-disk 5600 rpm
Per ansamblu, resursele hardware sunt destul de importante în special în ceea ce priveşte
procesorul şi destul de importante în ceea ce priveşte memoria RAM, datorită calculelor
complexe pe care minimizarea tridimensională le impune.
În privinţa resurselor software, MAPEPOC va fi realizată utilizând platforma Matlab,
care oferă, pe lângă facilitarea calculelor matriceale şi punerea la dispoziţie a numeroşi algoritmi
deja implementaţi, şi posibilitatea realizări unei interfeţe.
Pentru ca MAPEPOC să ruleze sub forma unei aplicaţii „standalone” este necesară
instalarea maşinii virtuale Matlab, care ocupă în jur de 430 MB spaţiu pe hard-disk. În cazul
instalării mediului de lucru Matlab în întregime (necesită 1 GB spaţiu pe hard-disk), aplicaţia
poate fi rulată şi din linia de comandă Matlab şi ca aplicaţie „standalone”.
Formate de intrare-ieşire
Din perspectiva datelor de intrare, MAPEPOC este gândită a utiliza un fişier standard
care conţine următoarele 8 coloane: data curenta, ora, preţ call, preţ activ, preţ de exerciţiu,
rata, data exerciţiu, durata. Pentru a importa datele în aplicaţie, va fi utilizată o fereastră
standard care va permite utilizatorului să aleagă fişierul F. În prealabil, este pusă la dispoziţie o
27
fereastră, notată FSELECT, care să ofere utilizatorului posibilitatea de selecta ordinea câmpurilor
din fişier.
La nivelul datelor de ieşire se impune realizarea unor formate care să fie uşor interpretat
de către utilizator şi care trebuie să îndeplinească următoarele cerinţe:
1. Afişarea, într-un tabel T1, a elementelor definitorii pentru ultima tranzacţie a fiecărei
opţiuni identificate în fişierul F (câmpurile preţ de exerciţiu şi data exerciţiu sunt cheile
de identificare pentru ca o tranzacţie să aparţină unei opţiuni).
2. Afişarea celor patru preţuri call estimate în componente de tip text, notate TEXTESTIM,
şi a parametrilor impliciţi, ce stau la baza estimării, în componente de tip text, notate
TEXTPARAM:
CB şi σt-1
CM şi σ0,t-1
CTRim şi
CT3tr şi
3. Afişarea, în componente de tip text, a preţului call real, TEXTCALL, şi a preţului
activului, TEXTACTIV, pentru fiecare din opţiunile estimate
4. Realizarea unor câmpuri de editare, notate CFILT, prin care să se poată alege tranzacţia
de început şi cea de sfârşit, în cazul în care se doreşte realizarea estimării cu o filtrare
prealabila a setului de date
5. Realizarea unor câmpuri, notate CESTIM, care să permită selectarea individuală a
modalităţii de estimare
6. Afişarea, într-un tabel T2, a tuturor tranzacţiilor unei opţiuni
7. Afişarea informaţiilor suplimentare privitoare la operaţiile pe care utilizatorul le solicită
aplicaţiei, într-o componentă text, notată TEXTINFO.
8. Realizarea unui meniu care să permită următoarele operaţii:
MENIU1: import fişier
MENIU2: selectare coloane în FSELECT
MENIU3: copiere în clipboard a datelor ultimei estimări
5.2. INSTRUCŢIUNI DE UTILIZARE A MAPEPOC
Plecând de la o abordare minimalistă şi intuitivă, aplicaţia pune utilizatorul în temă de la
început cu privire la componentele care urmează să afişeze rezultatele estimării. Fiecare dintre
aceste componente sunt iniţializate după cum urmează:
1. TEXTPARAM Black-Scholes
V crt - σt-1
V min - σ0,t-1
2. TEXTPARAM Corrado-Su
V crt -
S crt -
K crt -
V min -
S min -
28
K crt -
3. TEXTESTIM Black-Scholes
P crt – preţ call estimat cu σt-1
P min – preţ call estimat cu σ0,t-1
4. TEXTESTIM Corrado-Su
P crt – preţ call estimat cu
P min – preţ call estimat cu
Figura 9. Schema de utilizare a MAPEPOC
În prelabil importului fişierului F, se alege ordinea coloanelor prin utilizarea MENIU2 şi
modificarea datelor implicite din FSELECT
Figura 10. FSELECT
29
Odată cu importul datelor, opţiunile vor fi afişate în T1, de unde, prin accesarea oricăreia
dintre primele trei coloane (No. Call, Strike, Data exercitiu) de pe rândul ce conţine ultima
tranzacţie a fiecărei opţiuni, se va începe procedura de estimare. Pentru afişarea tuturor
tranzacţiilor ce aparţin unei opţiuni din T1, se va accesa coloana a 4-a (No. obs.):
Figura 11. Import de fi ier CSV
Estimarea preţului call se încheie automat cu afişarea rezultatelor
Figura 12. Estimare
Figura 13. Afi are rezultate
Prin utilizarea componentelor CFILT care permit filtrarea datelor fiecărei opţiuni, prin
reducerea setului de tranzacţii la anumite dimensiuni, se pot obţine şi estimări care să ia în
considerare fie tranzacţii mai recente celei curente fie tranzacţii mai vechi, în cazul în care se
doreşte o analiză comparativă.
30
Figura 14. Afi are rezultate după filtrare
Prin accesarea coloanei a patra se obţine T2, care conţine istoricul tranzacţiilor unei
opţiuni:
Figura 15. Apelare istoric
Istoricul se afişează în T2, şi, ca facilitate, utilizatorul poate să exporte într-un fişier cu
format CSV datele conţinute de T2, prin accesare meniului Export.
31
Figura 16. Transfer date din T2 în fi ier
CSV prin accesarea meniului Export
Figura 17. Export date din T2
O altă facilitate este aceea a afişării grafice a oricărei coloane din T2, prin selectarea
acelei coloane şi a meniului Grafic. Implicit, dacă nicio coloană nu este selectată, se afişează
graficul preţului real call de-a lungul întregii vieţi a opţiunii.
Figura 18. Apelare grafic call prin selectarea
coloanei Call i accesare meniului Grafic
Figura 19. Afi are grafic call
32
6. CONCLUZII
În lucrarea de faţă am reuşit să demonstrez că, cel puţin, una din metodele de evaluare a
preţului opţiunii call se apropie, într-un mod extrem de realist, de valoarea preţului tranzacţionat.
Mai mult, am realizat o aplicaţie – MAPEPOC – cu ajutorul căreia se verifică diversele modele
şi formule de evaluare a preţului unui call.
Pentru obţinerea rezultatelor computaţionale cât mai corecte am trasat 2 coordonate
foarte importante. Prima este aceea a utilizării metodei bisecţiei pentru rezolvarea unei ecuaţii
neliniare ce are ca scop aflarea volatilităţii implicite curente - σt-1. A doua coordonată este aceea
introducerii unui algoritm propriu – AMU – pentru obţinerea soluţiei în cazul unei minimizări
unidimensionale într-o serie de date modelate de o funcţie cunoscută. Cu ajutorul AMU se obţine
volatilitatea implicită minimizată – σ0,t-1 – şi soluţiile iniţiale pentru minimizarea tridimensională
ce calculează parametrii impliciţi la momentul curent sau prin minizare - .
Prin aplicaţia MAPEPOC se pune la dispoziţia utilizatorului posibilitatea identificării
tranzacţiilor ce aparţin unei opţiuni, dintr-un set de date ce conţine tranzacţiile tuturor opţiunilor
observate într-un anume interval. Totodată, se facilitează, cu ajutorul MAPEPOC, realizarea
unor estimări pe seturi filtrate de date şi posibilitatea de a analiza grafic parametri diverşi ce
definesc tranzacţiile unei opţiuni.
Ca şi contribuţie personală, aduc în discuţie un aspect extrem de important în evaluarea
opţiunilor, acela că fiecare instrument derivat trebuie analizat independent de celelalte
instrumente financiare, luându-se în considerare doar datele specifice acelui instrument. Ipoteza
de la care se porneşte este aceea că fiecare opţiune are caracteristici proprii, iar legătura cu
celelalte opţiuni, care au acelaşi suport, se realizează prin intermediul preţului activului suport şi
doar atât.
Ca puncte de cercetare viitoare trebuie studiate estimările negative ale preţului call pe
care modelul Corrado-Su le propune, şi interpretarea economică a acestei „anomalii” algebrice.
O altă direcţie de cercetare este cea a stabilirii unei corelaţii între fluctuaţiile preţurilor call şi ale
activului suport, pe de o parte, şi metoda cea mai bună de estimare a preţului call, pe de altă
parte.
33
BIBLIOGRAFIE
1. Paolo Brandimarte, Numerical Methods in Finance and Economics. A Matlab-
Based Introduction. Second Edition, Wiley & Sons, New Jersey, 694, 2006
2. Gurdip Bakshi, Charles Cao, Zhiwu Chen, Empirical Performance of Alternative
Option Pricing Models, The Journal of Finance, vol. 52, no. 5, pp. 2003-2049, 1997
3. Fischer Black, Myron Scholes, The pricing of options and corporat liabilities,
Journal of Political Economy, vol. 81, no. 3, pp. 637-654, 1973
4. Fischer Black, The pricing of commodity contracts, The Journal of Financial
Economics, vol. 3, no. 1, pp. 167-179, 1976
5. Fischer Black, How we came up with the Option Formula, Journal of Portfolio
Management, vol. 15, no. 2, pp. 4-9, 1989
6. Fischer Black, Studies of stock price volatility changes, American Statistical
Association Annual Meetings, 1976, Washington DC, Proceedings of the American
Statistical Association, Annual Meetings, Business and Economics Section,
Washington DC pp.177-181 1976
7. Thomas F. Coleman, Yuying Li, On the convergence of interior-reflective Newton
methods for nonlinear minimization subject to bounds, Mathematical Programming,
vol. 67, pp. 189-224, 1994
8. Charles C. Corrado, Tie Su, S&P 500 Index option tests of Jarrow and Rudd's
approximate option valuation formula, The Journal of Future Markets, vol. 16, no.
6, pp. 611-620, 1996
9. Charles C. Corrado, Tie Su, Skewness and kurtosis in S&P 500 index returns
implied by option prices, The Journal of Financial Research, vol. 19, no. 2, pp.
175-192, 1996
10. Charles C. Corrado, Tie Su, Implied volatility skews and stock index skewness and
kurtosis implied by S&P 500 index option prices, Journal of Derivatives, vol. 4 no.
4, pp. 8-19, 1997
11. John C. Hull, Options futures and other derivatives. Seventh edition, Pearson Prentice
Hall, New Jersey, 836, 2009
12. Brian R. Hunt, Ronald L. Lipsman, Jonathan M. Rosenberg, A guide to Matlab for
beginners and experienced users, Cambridge University Press, Cambridge, 346,
2001
13. Jan Kallsen, Derivative pricing based on local utility maximization, Finance and
Stochastics, vol. 6, no. 1, pp. 115-140, 2002
34
14. Andrew Knight, Basics of Matlab and beyond, Chapman & Hall/CRC, Boca Raton
205, 2000
15. Robert C. Merton, Theory of Rational Option Pricing, The Bell Journal of
Economics and Management Science, vol. 4, no. 1, pp. 141-183, 1973
16. Robert C. Merton, On the Pricing of Corporate Debt: The Risk Structure of Interest
Rates, Journal of Finance, vol. 29, no. 2, pp. 449-470, 1974
17. Robert C. Merton, Option price when underlying stock returns are discontinuous,
Journal of Financial Economics, vol. 3, no. 1, pp. 125-144,1976
18. Salih N. Neftci, An introduction to the mathematics of financial derivatives,
Academic Press San Diego, 515, 1996
19. Bogdan C. Negrea, Evaluation of financial assets. An introduction to the theory of
stochastic processes applied in finances, Economics Publishing, Bucharest 289,
2006.(Romanian)
20. Rolf Poulsen, Four things you might not know about the Black-Scholes formula,
Journal of Derivatives, vol. 15, no. 2, pp. 77-82, 2007
21. Ananth Ranganathan, The Levenberg-Marquardt Algorithm, 8 June 2004
http://ananth.in/docs/lmtut.pdf
22. Haim Reisman, Black and Scholes pricing and markets with transaction costs: An
example, Finance and Stochastics, vol. 5, no. 1, pp. 549-555 2001
23. Louis O. Scott, Option Pricing when Variance changes Randomly: Theory
Estimation and an Application, Journal of Financial Quantitative Analysis, vol. 22
no 4, pp. 419-438, 1987
24. Steven Shreve, Stochastic calculus and finance, Springer Finance, Heidelberg, 348,
1997
35
ANEXE
Anexa 1. function [R,e]=sigmaMinimizareBisectie(M,startI,endI,tip) %calcul sigma(0,t-1) intr-o matrice if nargin==1 startI=1; endI=size(M,1); tip='sqr'; end if nargin==2 endI=size(M,1); tip='sqr'; end%if if nargin==3 tip='sqr'; end%if if nargin==1 startI=1;endI=size(M,1); end%if x=[0 2.5 5 7.5 10]; s=ones(1,5); contor=1; for i=1:2:5 s(i)=calculSigmaMinimizare(M,startI,endI,x(i),tip); end%for while (s(3)>0.00001) && (contor<10000) && (max(x)- min(x)>0.00001) s(2)=calculSigmaMinimizare(M,startI,endI,x(2),tip); s(4)=calculSigmaMinimizare(M,startI,endI,x(4),tip); r=sortareIndici(s); a=x(r(1)); b=x(r(2)); c=x(r(3)); x(1)=a; x(3)=b; x(5)=c;
x(2)=(x(1)+x(3))/2; x(4)=(x(3)+x(5))/2;
a=s(r(1)); b=s(r(2)); c=s(r(3)); s(1)=a; s(3)=b; s(5)=c; contor=contor+1; %s=x; end%while if nargout==1 R=x(3); else R=x(3);e=s(3); end%if
36
Anexa 2. No. of
observations 17 59 111 145 192 252 292
.... 1134 1396 1551 1771 1786 1934 2222 2331
Time in
seconds 0.436 0.405 0.757 0.955 1.268 1.655 2.376
.... 7.77 9.311 10.553 11.671 11.661 12.897 14.611 16.145
Residuals -47.7 -1.08 -1.29 3.339 3.91 6.504 -60.4 ....
-19 14.84 -14.39 39.768 56.252 20.908 54.66 -63.89
N=no. of observations
T=time required to compute
N=b*T
b = 148.3362
b ϵ (145.7264 150.9459)
pentru grad de încredere de
95%
(s-a folosit funcţia regress
din Matlab)
Anexa 3. Tabel 1 Anexa. Tranzacţii negrupate pe opţiuni
No.
Zi curentă
(t)
yyyymmdd
Moment
tranzacţie
hhmm
Preţ
real
(C)
Preţ
exerciţiu
(K)
Preţ
suport
(S)
Rata
fără
risc
(r)
Zi finală
(T)
yyyymmdd
Durata
(T-t)
1 19970103 1030 41 2350 2264.78 3.41 19970327 83
……………………………..
7 19970103 1039 41.5 2350 2265.38 3.41 19970327 83
8 19970103 1056 159 2200 2266.36 3.41 19970930 270
…………………………….
14 19970103 1104 39 2500 2265.99 3.41 19970930 270
27 19970103 1252 128 2200 2273.19 3.41 19970327 83
……………………………
39 19970103 1630 88 2350 2273.48 3.41 19970930 270
40 19970103 1630 87 2350 2273.48 3.41 19970930 270
Tabel 2 Anexa. Tranzacţii grupate pe opţiuni
0
2
4
6
8
10
12
14
16
18
0 500 1000 1500 2000 2500
Tim
e (
seco
nd
s)
No. of transactions
Correlation between no. of transactions and time
No.
Zi curentă
(t)
yyyymmdd
Moment
tranzacţie
hhmm
Preţ
real
(C)
Preţ
exerciţiu
(K)
Preţ
suport
(S)
Rata
fără
risc
(r)
Zi finală
(T)
yyyymmdd
Durata
(T-t)
1 19970103 1030 41 2350 2264.78 3.41 19970327 83
………………………………..
8 19970103 1059 42 2350 2267.01 3.41 19970327 83
………………………………..
37
Anexa 4. function
X=bisection(func,param,x,eps,t
ype) %func-name of function %var-variable to find %x(1)-lower bound x(1)=0
default %x2(2)-upper bound x(2)=10 %param-vector of parameters of
function if nargin == 2 || nargin == 5 if ischar(func) f=str2func(func); elseif
isa(func,'function_handle') f=func; else error('First parameter
must be a function') end if nargin == 2 eps=10^-5; type='iter'; x=zeros(1,2); x(1)=0; x(2)=10; end else error('Minimum 2
parameters'); end
x1=x(1); x2=x(2); if(strcmp(type,'rec')) %-----RECURSIVE-------- x0=(x1+x2)/2;
r=fun(f,x0,param)*fun(f,x2,par
am); if abs(x1-x2) < eps sprintf('Recursive
bisection') X=x0; elseif r>0
function
[R1,R2]=raphson(func,vector,initValue,eps) %solutie numerica pentru ecuatie neliniara if nargin==3 eps=0.00001; end%if if ischar(func) f=str2func(func); elseif isa(func,'function_handle') f=func; else error('parametrul tb sa fie functie sau nume
de functie!'); end%if bool=1; contor=1; while (bool==1) contor=contor+1; rnum=initValue-
fun(f,initValue,vector)/derivata1(f,initValue,vec
tor); r=initValue-
fun(f,initValue,vector)/vega(initValue,vector); if abs(initValue-rnum)<=eps || contor>100 R2=r; R1=rnum; bool=0; else initValue=rnum; end%if end%while if nargout==2 sprintf('%s %f','numeric ... analitic,
contor=',contor) else sprintf('Numeric: contor= %f , dif=
%f',contor,initValue-rnum) end
function R=derivata1(func,val,h,param) %calculeaza derivata intai a unei functii %trimisa ca parametru sub forma: %@nume_functie sau 'nume_functie' %val-valoarea in care se calculeaza derivata
functiei %h-diferenta finita, default 10^-4
15 19970103 1031 85 2350 2263.81 3.41 19970930 270
………………………………...
21 19970103 1100 122 2200 2264.12 3.41 19970327 83
32 19970103 1104 39 2500 2265.99 3.41 19970930 270
………………………………...
33 19970103 1105 243 2050 2266.59 3.41 19970327 83
…………………………………
39 19970103 1427 65 2650 2274.62 3.41 19980930 635
40 19970103 1528 14 2650 2280.56 3.41 19970930 270
38
x2=x0;
X=bisection(f,param,[x1
x2],eps,'rec'); else x1=x0;
X=bisection(f,param,[x1
x2],eps,'rec'); end
elseif(strcmp(type,'iter')) %---ITERATIVE---- counter=1; while counter < 100 &&
abs(x2-x1) > eps counter=counter+1; X=(x1+x2)/2; a=fun(f,X,param); b=fun(f,x2,param); if a*b<0 x1=X; else x2=X; end end sprintf('Iterative
bisection:
counter=%d',counter) else error('Unknown
bisection'); end%if it
%param-parametrii pentru functia 'func' if nargin==4 || nargin == 3 if ischar(func) f=str2func(func); elseif isa(func,'function_handle') f=func; end if nargin==3 param=h; h=10^-4; end else error('Minim 3 parametri pentru calculul
derivatei'); end
R=(fun(f,val+h,param)-fun(f,val-h,param))/(2*h);
function f=vega(sigma,v) St=v(5);%pret actual indice K=v(4);%pret de exercitiu r=v(6)/100;%rata dobanzii t=v(8)/365;%T-t,durata
x=log(St/K); d1=(x+(r+sigma.*sigma/2)*t); d1=d1/(sigma*sqrt(t));
nderiv=exp(-1*d1*d1/2)/sqrt(2*pi); f=St*sqrt(t)*nderiv;
function
fcall=fCallBS(sigma,v)
St=v(5);%pret actual
indice K=v(4);%pret de exercitiu r=v(6)/100;%rata dobanzii t=v(8)/365;%T-t,durata C=v(3);%pret real optiune
x=log(St/K);
d1=(x+(r+sigma.*sigma/2)*t); d1=d1/(sigma*sqrt(t)); d2=d1-sigma*sqrt(t);
n1=cdf('norm',d1,0,1); n2=cdf('norm',d2,0,1); actual=exp(-1*r*t);
fcall=St.*n1-K.*actual.*n2;
function f=fun(a,b,c) %a=nume functie %b=valoare %c=vector de coeficienti f=a(b,c); end
function f=calculCallBS(sigma,v) %sigma-volatility %v-vector of parameters if v(3)-fCallBS(sigma,v) > 0 f=1; else f=-1; end