• Non ci sono risultati.

Strategia di trading

STRATEGIA DI TRADING

Proviamo ad applicare una strategia di trading utilizzando le previsioni, ad un passo, sui

prezzi di chiusura del titolo MICROSOFT (con dati giornalieri dal 30/08/2010 al

30/08/2019) attraverso un modello AR(1); ipotizziamo, inoltre, di aprire la posizione al

prezzo di apertura e di chiuderla entro fine giornata.

Quello che ovviamente ci si aspetta di trovare è che la strategia non sia profittevole in

quanto, per la teoria dei mercati efficienti, in ogni istante il prezzo riflette le informazioni

disponibili sul mercato e, quindi, non è possibile prevedere i rendimenti futuri con le

informazioni disponibili oggi.

Carichiamo i dati in MATLAB:

T=readtable('MSFT20102019.csv');

plot(T.Date,T.Close)%plottiamo le chiusure giornaliere e sull'asse delle %ascisse mettiamo le date

grid on; grid minor;

legend('Prezzi Chiusure')

title('Chiusure giornaliere MICROSOFT')

Figura 4.1

119

Calcoliamo i rendimenti:

Num=length(T.Date);%lunghezza dei dati Open=T.Open(1:Num);

Rclose=zeros(Num,1);

for i=2:(Num)

Rclose(i)=(log(T.Close(i))-log(T.Close(i-1)));%rendimenti logaritmici

end

r=Rclose(1:Num-30); );%dati insample Md1=arima(1,0,0);

EstMd1=estimate(Md1,r); % stima ar(1)

Figura 4.2 Modello AR(1)

I parametri, compresa la costante, risultano significativamente diversi da 0 (considerando

un livello di significatività del 5%).

Andiamo a fare una previsione a un passo considerando il previsore ottimale che è quello

che minimizza il MSE: il valore atteso condizionato (come avevamo già discusso nel

capitolo 2): ar=EstMd1.AR{1}; constant=EstMd1.Constant; R=Rclose((Num-29):(Num)); y=zeros(30,1); y(1)=constant+ar*Rclose(Num-30); %previsione for h=1:29

y(h+1)=constant+ar*Rclose(h);%rendimenti previsti per 30 giorni

120

Adesso andiamo a plottare i rendimenti effettivi e quelli previsti; successivamente ci

calcoliamo le previsioni sui prezzi di chiusura ricorrendo all’esponenziale (in quanto

abbiamo utilizzato il logaritmo per i rendimenti); Prendiamo anche in considerazione i

prezzi di apertura per il periodo che ci serve per fare trading ovvero 30 giorni:

figure

plot(T.Date((Num-29):(Num)),R,'r');%rendimenti hold on;

plot(T.Date((Num-29):(Num)),y,'k');%rendimenti previsti legend('rendimenti','rendimenti previsti ar(1)'); grid on;

grid minor;

title('Rendimenti e Rendimenti previsti') axis tight

Figura 4.3

Rendimenti e rendimenti previsti

Price=zeros(30,1);

Close=T.Close((Num-29):(Num));%si prendono i prezzi di chiusura in un certo intervallo

PrOpen=T.Open((Num-29):(Num));%prezzi di apertura in un certo intervallo Price(1)=T.Close(Num-30)*exp(y(1));%prezzo di chiusura previsto

Date=T.Date((Num-29):(Num));

for k=2:30

Price(k)=Close(k-1)*exp(y(k));%prezzi di chiusura previsti

121 end

%plottaggio prezzi di chiusura, prezzi di apertura e prezzi di chiusura %previsti

figure

plot(Date,PrOpen,'b-');%prezzi di apertura hold on;

plot(Date,Price,'k');%prezzi di chiusura previsti plot(Date,Close,'r');%prezzi di chiusura

legend('Open','Forecast ar(1)','Close','Location','Best'); grid on;

grid minor;

title('Prezzi di apertura, di chiusura e prezzi previsti') axis tight

Figura 4.4

Prezzi del titolo MICROSOFT: aperture, chiusure e prezzi previsti

Quello che invece andremo a fare adesso è la costruzione di un algoritmo per provare ad effettuare una strategia di trading che sia ‘profittevole’:

% Strategia di trading guadagno=0;

for k=1:30

if PrOpen(k)>Close(k) && Close(k)>Price(k) %se i prezzi di apertura sono maggiori

%di quelli di chiusura e le chiusure sono maggiori dei prezzi di %chiusura previsti, si va SHORT e chiudiamo la posizione al prezzo %di chiusura della giornata.

122

guadagno=guadagno+PrOpen(k)-Close(k);

elseif PrOpen(k)>Price(k) && Price(k)>Close(k)%se i prezzi di

apertura sono maggiori dei prezzi di chiusura previsti e questi sono

maggiori dei prezzi

%di chiusura effettivi, andiamo SHORT e si chiude la posizione al %prezzo che avevamo previsto.

guadagno=guadagno+PrOpen(k)-Price(k);

elseif PrOpen(k)<Close(k) && Price(k)<PrOpen(k) %se i prezzi di apertura sono minori

%dei prezzi di chiusura e i prezzi di chiusura previsti

% sono minori dei prezzi di apertua, andiamo SHORT e si chiude la posizione al

%prezzo di chiusura (in questo caso si registrerà una perdita) guadagno=guadagno+PrOpen(k)-Close(k);

elseif PrOpen(k)<Price(k) && Close(k)> Price(k) guadagno=guadagno+Price(k)-PrOpen(k);

%se i prezzi di apertura sono minori

%dei prezzi di chiusura previsti e i prezzi di chiusura

% sono maggiori dei prezzi previsti andiamo LONG e si chiude la posizione al prezzo previsto

elseif PrOpen(k)<Close(k) && Price(k)> Close(k) guadagno=guadagno+Close(k)-PrOpen(k);

%se i prezzi di apertura sono minori

%dei prezzi di chiusura e i prezzi di chiusura previsti

% sono maggiori dei prezzi di chiusura, andiamo LONG e si chiude la

%posizione al prezzo di chiusura

elseif PrOpen(k)<Price(k) && PrOpen(k)> Close(k) guadagno=guadagno+Close(k)-PrOpen(k);

%se i prezzi di apertura sono minori

%dei prezzi di chiusura previsti e i prezzi di apertura sono

%, inoltre, maggiori dei prezzi di chiusura, andiamo LONG e si chiude la

%posizione al prezzo di chiusura (in questo caso andiamo in perdita)

elseif PrOpen(k)==Close(k) && Close(k)>Price(k) guadagno=guadagno+0;

elseif PrOpen(k)==Close(k) && Close(k)<Price(k) guadagno=guadagno+0;

elseif PrOpen(k)==Price(k) && Close(k)<Price(k)

guadagno=guadagno+0;%non si apre nessuna posizione elseif PrOpen(k)==Price(k) && Close(k)>Price(k)

guadagno=guadagno+0;%non si apre nessuna posizione elseif Price(k)==Close(k) && PrOpen(k)<Close(k)

guadagno=guadagno+Close(k)-PrOpen(k);

elseif Price(k)==Close(k) && PrOpen(k)>Close(k) guadagno=guadagno+PrOpen(k)-Close(k);

end end

123

Con questa operazione si registrerebbe una perdita di circa 20.57 dollari; dal punto di vista ‘reale’, manca una qualcosa di importante da tenere in considerazione: i costi di transazione. Quindi, con queste operazioni, andremmo ancora di più in perdita

considerando tali commissioni.

Facendo riferimento a eventuali costi, le operazioni seguenti, dal momento che si

chiudono in pari, risulterebbero in perdita; infatti, ad ogni apertura di posizione (ma anche

di chiusura), il broker intasca una commissione.

elseif PrOpen(k)==Close(k) && Close(k)>Price(k) guadagno=guadagno+0;

elseif PrOpen(k)==Close(k) && Close(k)<Price(k) guadagno=guadagno+0;

Come possiamo notare dal grafico 4.4, abbiamo preso un periodo di riferimento (per le

previsioni) dal 19 luglio al 30 agosto. Se si prendesse un altro intervallo temporale,

cambierebbe relativamente poco: se si considera i dati fino al 6 giugno, si prevede per i

30 giorni successivi (dal 6 giugno al 18 luglio) si ottiene -5 dollari; se si considerano i

dati fino al dal 24 aprile e si prevede per i 30 giorni successivi (dal 24 aprile al 5 giugno)

124

CONCLUSIONI

In questo elaborato si è voluto trattare un tema molto sviluppato nelle diverse discipline

statistico-economiche: il tema della volatilità.

In particolar modo si è voluto concentrare l’attenzione sui modelli previsionali chiarendo

un fatto molto importante: non esiste un modello migliore a priori per effettuare una

previsione. Per quanto riguarda i rendimenti possiamo addirittura affermare che non

esiste, per motivi di arbitraggio, un modello che riesca a prevederli.

Per quanto riguarda la volatilità, si è dimostrato che, prendendo in considerazione l’indice

NASDAQ, non esiste un modello migliore in assoluto.

In letteratura sono stati sviluppati e continuano a essere elaborati via via sempre più modelli per l’analisi della volatilità proprio per la sua importanza di stima e previsione. In particolar modo ogni modello porta allo sviluppo del successivo.

Infatti, abbiamo visto come i modelli ARMA, che in realtà descrivono la media

condizionata, abbiano portato al modello ARCH, che descrive la varianza condizionata.

Questi ultimi hanno portato allo sviluppo del modello GARCH e alle sue successive

varianti.

Ulteriori sviluppi si sono susseguiti negli anni e, in particolar modo, oltre ai modelli sulla

Volatilità Stocastica e i modelli per la realized volatility hanno trovato ampio spazio i modelli GAS (General Autoregressive Score), descritti nel paper A General Framework

for Observation Driven Time-Varying Parameter Models, e altri ne troveranno sicuramente spazio.

Possiamo quindi concludere dicendo che, secondo i vari studi, la volatilità risulta

prevedibile, anche se il problema potrebbe risultare “quanto prevedibile”? Infatti, man

125

condizionata tende a quella unconditional e sostanzialmente è come non fare nessuna

previsione.

Quello che ci si aspetta per il futuro, invece, sono sempre modelli più precisi che tendano

126

BIBLIOGRAFIA

ARIEL ROBERT A., 1997, A monthly effect in stock returns, Journal of Financial

Economics, Vo. 18, pag.161-174

BARONE E., 1990, The Italian stock market: Efficiency and calendar anomalies, Journal

of Banking & Finance Vol. 14, pag. 483-510.

BROCKWELL J. P., DAVIS R. A., 2002, Introduction to Time Series and Forecasting,

third edition, Springer

BROOKS C., 2008, Introductory Econometrics for finance, second edition, Cambridge

University Press

BAUWENS L., HAFNER C, LAURENT S., 2012, Volatility Models and Their

Applications, John Wiley and Sons

BOUMAN S., JACOBSEN B., 2002, The Halloween Indicator, ‘Sell in May and go Away’: Another Puzzle, American Economic Reviw, Vol. 92, No.5 pag. 1618-1635. CONT R., 2001, Empirical properties of asset returns: stylized facts and statistical issues,

Quantitative Finance, volume 1, pag. 223-236

DANÍELSSON JÓN, 2011, Financial Risk Forecasting The Theory and Practice of

Forecasting Market Risk, with Implementation in R and Matlab, Wiley.

FRANCQ C., ZAKOÏAN, 2010, GARCH Models, Structure, Statistical Inference and

Financial Applications, John Wiley and Sons

GARDINI A., CAVALIERE G., COSTA M., FANELLI L., PARUOLO P., 2014,

Econometria Volume Primo, FrancoAngeli editore

GREENE W. H., 2002, Econometric Analysis, fifth edition, Prentice Hall

HULL JOHN C., 2018, Opzioni, futures e altri derivati, Decima edizione, Pearson

JACOBS BRUCE I., LEVY KENNETH N., 1988, Calendar Anomalies: Abnormal

127

JACOBS BRUCE I., LEVY KENNETH N., Financial Analyst Journal, Vol. 45, pag. 38-

54

KAMARA A., 1997, New Evidence on the Monday Seasonal in Stock Returns, The

Journal of Business

KEIM D., 1983, Size-Related Anomalies and Stock Returns Seasonality: Further

Empirical Evidence, Journal of Finance Economics 12, pag. 13-32

LOLEA I., 2017, Where did the GARCH Models Perform Best in Terms of Volatility

Forecasting? Equity vs. Commodities Markets, Academic Journal of Economic Studies LOPEZ J.A., 2001, Evaluating the Predictive Accuracy of Volatility Models, Journal of

forecasting.

LUCCHETTI J. L., 2015, Appunti di analisi delle serie storiche

MANDELBROT BENOIT B., 1963 The Variation of Certain Speculative Prices, The

Journal of Business 36, No. 4, 349-419.

OUAEL E. J., ABDELATI H., 2018, GARCH Family Models vs EWMA: Which is the

Best Model to Forecast Volatility of the Moroccan Stock Exchange Market?, Revista de Métodos Cuantitativos para a Economia y la Empresa

POCCI C, ROTUNDO G., DE KOK R., 2016, MATLAB per le applicazioni economiche

e finanziarie, Apogeo.

POON SER-HUANG, 2005, A Practical Guide to Forecasting Financial Market

Volatility, Wiley

RAHAHLEH N. A., KAO R., 2018, Forecasting Volatility: Evidence from the Saudi

Stock Market, Journal of Risk and Financial Management

SAUNDERS EDWARD M. JR, 1993, Stock Prices and Wall Street Weather, The

128

SEWELL M., 2011, Characterization of Financial Time Series. UCL Department of

Computer Science

SIEGEL JEREMY J., 2010, Rendimenti finanziari e strategie d’investimento, i titoli

azionari nel lungo periodo, Il Mulino.

SINCLAIR E, 2013, Volatility Trading, Second Edition, Wiley

STEELEY JAMES M., 2001, A note on information seasonality and the disappearance

of the weekend effect in the UK stock market, Journal of Banking & Finance, Vol. 25, pag 1941-1956

TSAY RUEY S., 2010, Analysis of financial time serie, 3rd edition, John Wiley & Sons

Inc

VERBEEK MARNO, 2006, Econometria, Zanichelli

ZENTI R., 2014, Volatilità, modelli decisionali e complessità dei mercati finanziari,

Sistemi Intelligenti, pag. 375 – 406, Il Mulino

ZIEMBA WILLIAM T., 1991, Japanese security market regularities: Monthly, turn-of-

the-month and year, holiday and golden week effects, Japan and the World Economy, Vol.3, pag. 119-146

129 SITOGRAFIA www.bankpedia.org www.finance.yahoo.com www.mathworks.com www.performancetrading.it www.wikipedia.org www.borsaitaliana.it www.ilsole24ore.com

Documenti correlati