0% found this document useful (0 votes)
15 views24 pages

Essay Example

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views24 pages

Essay Example

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

FIN7028: Times-Series Financial

Module Code -- Module title Econometrics

Assignment 3

Names
Jean-David Katambay (40194027)
David Graham (40020876)

Unit Root & Random Walks

Logo/Graphics/ect.

This is just an indicative format of an essay.


This essay is for a different project on Unit Root and Random Walks.

Just use it as an example regarding the structure, language, etc.,


Queen’s University Belfast
MSc Finance
March 20th, 2017
Contents
1 Introduction 1
1.1 Company Overview . . . . . . . . . . . . . . . . . . . . . . . . 1
1.2 Data Collection . . . . . . . . . . . . . . . . . . . . . . . . . . 1

2 Exploratory Data Analysis 3

3 Unit-Root Test 5

4 Modelling 7
4.1 Integration Order . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.2 AR and MA Order . . . . . . . . . . . . . . . . . . . . . . . . 10
4.3 Forecasting . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

5 Simulation 15
5.1 Trend-Stationary Time Series Model . . . . . . . . . . . . . . 15
5.2 Random-Walk Model . . . . . . . . . . . . . . . . . . . . . . . 17

6 Conclusion 21

References 22
1 Introduction
In this paper we analyse Barclay’s stock price over the period 2000 to 2016.
We perform some initial exploratory analysis to identify if the series is sta-
tionary. We then test this formally by checking for unit roots. We fit an
ARIMA(p, d, q) model to this data, selecting an integration order to station-
arize the data, and then select suitable AR and MA orders. We attempt to
use this model to forecast some future values. Finally we attempt to simulate
a data series that has the properties of our original data. This done using a
Trend-Stationary Time Series and Random-Walk model.

1.1 Company Overview


Barclay’s PLC is a global financial services holding company with headquar-
ters in London. The Company is engaged in retail banking, credit cards,
wholesale banking, investment banking, wealth management and investment
management services. The Company operates in nearly 50 different countries
with 50 million costumers across the globe.
The Company’s segments include Barclays UK and Barclays Corporate
and International. The Barclays UK segment incorporates the UK Personal,
small UK Corporate and UK Wealth businesses, and the Barclaycard UK
consumer credit cards business. The Barclays Corporate and International
segment incorporates the Investment Bank segment; the large UK Corporate,
and international Corporate and Wealth businesses, and the international
Barclaycard business (consisting of the United States, German and Nordic
consumer credit cards businesses), and Barclaycard Business Solutions (in-
cluding merchant acquiring).
Barclays was first listed on the London stock exchange, and is currently
part of the FTSE 100 (LON:BARC). The company is also listed on the New
York Stock exchange (NYSE:BACS)

1.2 Data Collection


Our data consist of Barclays weekly prices from the first week of January 2000
to the end of 2016. This period was selected to incorporate any implications
of the 2008 financial [Link] data was taken from [Link], a website
aggregator. The original source is the Chicago Board Options Exchange
database. A summary of the data is shown in Table 1.

1
Table 1: BARC.L Data
Range 2000-2016
Frequency Weekly
Observations 884
Source CBOE

2
2 Exploratory Data Analysis
We attempt to get a feel for the data by producing some graphs and per-
forming some preliminary tests. This will then guide any further analysis.

BARC.L Stock Price


800
600
Price (p)
400
200
0
2000

2002

2004

2006

2008

2010

2012

2014

Date 2016

Figure 1: BARC.L Stock Price

Figure 1, displays BARC.L stock price over the last seventeen years. It
appears that there is some trend in the data. We can see an increase until
2008 followed by a large drop due to the financial crisis. The price then
recovered slightly by 2010 but has experienced a gradual decline since then.
On first look the data appears to be non-stationary. This means that the
series is a stochastic process and cannot be modelled as a series of random
variable, making it difficult to fit a linear model.
The increased volatility in around 2008 reflects investors struggle to scope
with the exposure of financial institutions during the crisis (Inman & Treanor,
2009). At the beginning of 2007, Barclay’s shares traded at its all time
high of 790p per share, however within the following period it dropped by
approximately 50%, Over the next two years, the decline accelerated, trading
at a low 64p in 2009, representing a 92% fall.

3
1.00

1.00
Partial autocorrelations of BARC
0.50
Autocorrelations of BARC

0.50
0.00

0.00
-0.50

0 10 20 30 40 0 10 20 30 40
Lag Lag
Bartlett's formula for MA(q) 95% confidence bands 95% Confidence bands [se = 1/sqrt(n)]

Figure 2: BARC.L, ACF and PACF

Figure 2 shows the autocorrelation and partial autocorrelation functions


for BARC.L. From the ACF we can see a strong sign of persistence, as the
first 40 lags are outside the 95% finite bound. The PACF indicates a first lag
autocorrelation parameter of almost one followed by a series of insignificant
lags. We estimate ϕ1 with a simple AR(1) Model.

ϕ0 = 376.483 ϕ1 = 0.992

This again indicates strong persistence adding substance to our assump-


tion that the original data is non-stationary.

4
3 Unit-Root Test
We can test if Barclay’s price is stationary by employing a random-walk or
random-walk with drift model.

Pt = φ1 Pt−1 + et , (1)
Pt = φ0 + φ1 Pt−1 + et , (2)

We then consider the null hypothesis Ho : φ1 = 1 against the alternative


Ha : φ1 < 1. This is a unit testing problem which can be performed using
the Dickey-Fuller test.
However, given that we are going to attempt to fit an ARIMA(p, d, q) to
the data series we may have problems using the original Dickey-Fuller test to
check for a unit root. This is because in such models the lags are endogenous.
To confirm a unit-root in an AR(p) process we can test the hypotheses
Ho : β = 1 against Ha : β < 1 using the regression in Equation 3.
p−1
X
xt = ct + βxt−1 + φi ∆xt − 1 + et (3)
i=1

Where ct is a deterministic function of the time index t and the differenced


series of xt is ∆xj = xj − xj−1 . Taking first differences should remove any
remaining autocorrelation, removing the endogeneity problem that exists in
the original DF-test. In practice we can set ct as zero or a constant. The
t-ratio of β̂ − 1 is given by:

β̂ − 1
ADF-test = (4)
std(β̂)
Where β̂ is the least squares estimate of β. This gives us the augmented
Dickey-Fulller unit-root test.
We will now apply this test to our data for a number of lags, recalling:

Ho : Unit-root
Ha : Stationarity

To test for a unit-root on BARC.L prices, we do not use any lag. This is
equivalent to using the original Dickey-Fuller test.

xt = ct + βxt−1 + et (5)
The t-ratio of β̂ − 1 is given by:

5
PT
xt−1 et
DF-test = qt=1
PT (6)
2
σˆe t=1 xt−1

Table 2 shows the test results for a number of lags. The 1%, 5%, and
10% critical values are -3.430, -2.860, and -2.570 respectively.

Table 2: Augmented Dickey-Fuller Test


Lag Test statistic MacKinnon p-value
0 -1.667 0.4481
1 -1.436 0.5648
2 -1.442 0.5619
3 -1.451 0.5577

For each of the lags, we do not reject the null hypothesis of a unit-root
at all significance levels.
We can also perform a modified DickeyFuller t test. This tests for a unit
root on a series which has been transformed by a generalized least-squares
regression. Table 3 shows the results of the test. The 1%, 5%, and 10%
critical values are -3.480, -2.845, and -2.559 respectively.

Table 3: Modified Dickey-Fuller Test


Lag Test Statistic Lag Test Statistic
1 -1.940 6 -1.932
2 -1.937 7 -1.820
3 -1.954 8 -2.012
4 -1.788 9 -1.984
5 -1.805 10 -1.964

The results are not as strong, which is not surprising as the DF-GLS test
has been shown to be more powerful than the augmented Dickey-Fuller test
(Elliott, Rothenberg, & Stock, 1992).
The Ng-Perron modified Akaike information criterion (MAIC) and Ng-
Perron sequential t, both suggest using the lag 8 test-statistic. We can see
that at this lag, we do no reject the null hypothesis. In fact, we cannot reject
the null hypothesis at any lag shown, for all significance levels. This formally
confirms our findings from the EDA, that the data series is non-stationary.

6
4 Modelling
We will now attempt to fit a model to our data series. This is to be done
without applying any transformation to the data. Our model will be of the
form ARIMA(p, d, q), where p, d, and q are the respective Autoregressive
(AR), Integration (I), and Moving Average (MA) orders.

4.1 Integration Order


Previously we have formally identified that the data is non-stationary. In
order to fit our model we must determine the order of differencing needed to
stationarize the series.
First we look at the series with zero orders of differencing, this is simply
our original series. We do this by specifying and ARIMA model with no
differencing and no AR or MA terms, only a constant term. The residual
plot and ACF of the residuals are shown in Figure 3. We can see that the
ACF has a slow linear decay, this is typical of a stationary series.

ARIMA(0,0,0) with constant


Residuals ACF
1.00
400
200

Residual Autocorrelations
0.50
Residual Plot
0

0.00
−200
−400

−0.50
2000

2002

2004

2006

2008

2010

2012

2014

2016

0 10 20 30 40
Lag
Monthly Date Bartlett’s formula for MA(q) 95% confidence bands

Figure 3: ARIMA(0,0,0), Residuals

7
The root-mean-square error is shown as sigma in Table 4. In a constant
only model this is simply the standard deviation of the residuals.

Table 4: ARIMA(0,0,0)
Price 390.111
[66.63]
sigma 164.951
[29.01]
N 884

We can see that we will need to take at least one difference of the series
to make the data stationary. This is done by specifying an ARIMA(0,1,0)
model. The residual plot and ACF of the residuals are shown in Figure 4.
It appears that this difference has removed the trend and the series now
appears to weakly stationary. Looking at the ACF it seems there is no
longer significant autocorrelation.

ARIMA(0,1,0) with constant


Residuals ACF
100

0.10
50

0.05
Residual Autocorrelations
0
Residual Plot

0.00
−50

−0.05
−100
−150

−0.10
2000

2002

2004

2006

2008

2010

2012

2014

2016

0 10 20 30 40
Lag
Monthly Date Bartlett’s formula for MA(q) 95% confidence bands

Figure 4: ARIMA(0,1,0), Residuals

8
The output of the model is shown in Table 5. We can see that the standard
deviation of the residuals has been reduced from 164.951 to 29.885.

Table 5: ARIMA(0,1,0)
Price -0.263
[0.38]
sigma 20.097
[81.80]
N 883

It would appear that we have made the series stationary with a first dif-
ference. We can check a higher order to confirm this using an ARIMA(0,2,0)
model. The residual plot and ACF of the residuals are shown in Figure 5.

ARIMA(0,2,0) with constant


Residuals ACF
0.20
200

0.00
100

Residual Autocorrelations
Residual Plot

−0.20
0 −100

−0.40
−200

−0.60
2000

2002

2004

2006

2008

2010

2012

2014

2016

0 10 20 30 40
Lag
Monthly Date Bartlett’s formula for MA(q) 95% confidence bands

Figure 5: ARIMA(0,2,0), Residuals

It appears that the series is again stationary. However, there may be a


pattern in the residuals indicating over-differencing. We can confirm this by

9
looking at the ACF. We can see that the first lag is significantly negative.
This is causing the sign of the residuals to change from one observation to
the next, resulting in a pattern.
The output of the model is shown in Table 6. We can see that the standard
deviation of the residuals has actually increased from 20.097 to 29.885.

Table 6: ARIMA(0,2,0)
Price 0.067
[0.07]
sigma 29.885
[69.72]
N 882

From these results we draw the conclusion that a model with first dif-
ferences will be the most suitable. This will be of the form ARIMA(p,1,q).
To confirm this we performed a Dickey-Fuller test on the first differenced
series. This produced a test statistic of −31.909 which strongly rejects the
null hypothesis of a unit root. This again indicates that we should be able
to fit ARIMA models with an integration order of one.

4.2 AR and MA Order


Now that we have identified the order of integration our next step is to select
suitable AR and MA terms.

10
ARIMA(0,1,0)
ACF PACF

0.10
0.10

0.05
0.05

Partial autocorrelations
Autocorrelations

0.00
0.00

−0.05
−0.05

−0.10
−0.10

0 10 20 30 40 0 10 20 30 40
Lag Lag
Bartlett’s formula for MA(q) 95% confidence bands 95% Confidence bands [se = 1/sqrt(n)]

Figure 6: ARIMA(0,1,0), ACF and PACF

Figure 6 shows the ACF and PACF for the residuals of a first differenced
model. Looking at these it doesn’t appear that either has a sharper decay
than the other. This would have helped identify an AR or MA signature.
However, by looking at the ACF we can see that the first lag is negative. This
may indicate some over-differencing. This can be removed by the addition
of an MA term. From the ACF we can see that the first and fourth lags are
significant, this suggests using an ARIMA(0,1,1) or ARIMA(0,1,4) model.
Previously we specified a model based on log returns of the same data.
This is analogous to using an integration order of one. The AIC for a number
of ARMA(p,q) models are shown in Table 7. This work advocated using an
ARMA(4,4) model. From this we can infer that using an ARIMA(4,1,4)
model on the original data may be suitable.

11
Table 7: ARMA(p,q) AIC
AR Order
1 2 3 4 5 6
1 6013.41 6010.39 6012.34 6013.23 6012.82 6001.42
MA Order

2 6010.25 6012.20 6014.10 6001.64 5986.03 5987.37


3 6010.28 5991.95 5992.59 5993.24 5987.62 5987.37
4 6011.68 6013.36 5993.85 5980.21* 5982.14 5984.49
5 6009.75 6014.49 6011.02 5982.14 5983.05 5984.05
6 5997.16 5988.16 5987.50 5982.88 5982.30 5982.54

The estimation performance of each of the models is shown in Table 8.


We use the AIC and R-squared values to select the most appropriate model.
We have also performed a Ljung-Box test on the residuals of the models, to
ensure they are white noise. This is used to indicate that we have captured
all of the persistence in our model.

Table 8: ARIMA(p,d,q), estimation performance


Model AIC R-squared Ljung-Box
(0,1,1) 7798.48 0.0047 0.0069
(0,1,4) 7798.57 0.0062 0.0659
(4,1,4) 5996.42 0.1066 0.4127

Based on the values in Table 8 an ARIMA(4,1,4) model seems most ap-


propriate. There is some concern with using multiple AR and MA variables
as they may cancel each other out. In an attempt to avoid this both an
ARIMA(3,1,4) and ARIMA(4,1,3) model were tested however, they both
performed poorly.

4.3 Forecasting
We are going to attempt to use our model to make forecasts of future values.
This may be effected by the fact that the original data series is non-stationary
and has a unit root.
The random walk hypothesis has received lots of attention in financial
theory. It can be traced to work by Regnault (1863) and Bachelier (1900)
with relatively more recent support from Kendall (1953) and Fama (1965).
However, some have rejected the concept of a random walk and thus do not
support a mean-reverting model of asset prices (Lo & MacKinlay, 1988). We

12
will explore the implication of the random-walk hypothesis on stock price
predictability.
We can consider a random walk model as a special form of AR(1) model
as shown in Equation 7, where the autocorrelation coefficient is equal to one.
However, this violates the weakly stationary condition of an AR model.
An AR(1) model has the form:

Pt = ϕ0 + ϕ1 Pt−1 + at (7)

where at ∼ W N (0, σa2 )


Setting ϕ0 = 0 and ϕ1 = 1 we get Equation 8, which is the same as a
random-walk.

Pt = Pt−1 + at , at ∼ W N (0, σa2 ) (8)


Given that at has a symmetrical distribution, then the price has an equal
chance of going up or down. This means that the price is not predictable or
mean reverting.
We can see the implications for predictability by looking at the one-step
ahead forecast for a random walk model like Equation 8.

Pbt+1 = E[Pt+1 |Pt , Pt−1 , . . . ]


Pbt+1 = E[(pt + at+1 )|Pt , Pt−1 , . . . ]
Pbt+1 = E[pt , pt , Pt−1 , . . . ] + E[at+1 |Pt , Pt−1 , . . . ]
Pbt+1 = Pt

We can repeat this process for any future periods h generalising to:

Pbt+h = Pt
This means that the best prediction of any future value is simply today’s
value.
When we previously fitted an AR(1) model to our data we obtained the
autocorrelation coefficient, ϕ1 = 0.992. This is not exactly equal to one but
we would still expect to see some similarity to a random walk model where
ϕ1 = 1.
We can form some future predictions based on our ARIMA(4,1,4) model.
This is performed using Stata. Table 9 shows some forecast prices for the
next 20 periods.

13
Table 9: ARIMA(4,1,4), forecasts
Step ahead Price
1 215.69
5 216.27
10 215.33
15 216.54
20 216.12

We can see that the predictions are approximately equal to the last price.
This is what we would expect given that ϕ1 ≈ 1. Figure 7 shows the predic-
tions for 2016. For predictions in-sample we can see that the model performs
well. However, we can see the straight line once we attempt to make out of
sample forecasts. This again shows that our best prediction of future prices
is simply today’s price.

ARIMA(4,1,4) Prediction
240
220
200
Price (p)
180
160

Actual
140

Prediction

Jan16 Apr16 Jul16 Sep16 Jan17 Mar17


Date

Figure 7: Model Prediction

14
5 Simulation
We will now attempt to simulate data that has similar characteristics to the
original price series. We will do this using a Trend-Stationary Time Series
Model and a Random-Walk model with drift.

5.1 Trend-Stationary Time Series Model


Firstly, we will use a Trend-Stationary Time Series model. This has the form:

Pt = β0 + β1 t + rt (9)
Where β1 represents the linear trend and rt a stationary time series. We
will use an AR(1) model. β1 represents the linear trend over time. This
means that Pt grows with rate β1 , so the model will behave similarly to a
random-walk model.

Pt = β0 + β1 t + ϕ1 Pt−1 + t (10)
First we extract the linear trend from the data. We then model a sta-
tionary AR(1) using the coefficients and sigma from a model fitted to the
original data, these are shown in Table 10.

Table 10: AR(1)


BARC cons 376.483
[87.938]
ARMA [Link] 0.992
[0.004]
sigma cons 20.058
[0.244]
N 884

We set β0 equal to the starting point of our series, the first price. Equa-
tion 11 gives our final trend-stationary time series model:

Pt = 445.44 − 0.44t + 0.9921Pt−1 + t (11)

where t ∼ W N (0, 20.0582 )

15
Figure 8 displays the outcome of our simulation. A major drawback of
this approach is that it assumes a constant mean and variance which is rather
unrealistic.
After a shock Trend-stationary processes are mean-reverting. This means
the series will converge towards the growing mean, which was not affected
by the shock. This differs to an actual unit-root processes, which have a
permanent impact on the mean (Nielsen, 2007).

BARC.L Actual AR(1) Simulated


1000

1000
800

800
600

600
Price (p)

Price (p)
400

400
200

200
0

0
2000

2002

2004

2006

2008

2010

2012

2014

2016

2000

2002

2004

2006

2008

2010

2012

2014

2016

Date Date

Price Trend Trend AR(1) AR(1) w Trend

Figure 8: Trend-Stationary Simulated Data

Figure 9 allows us to compare the simulated data with the original data
series. Although they are not identical, they appear to have the same overall
feel. We note that the starting and end prices are the same for the simulated
and actual data. This is expected as once we extract a stationary process
from the model we are left with the underlying trend which was derived from
the original data.

16
Simulated vs Actual
800

Actual Simulated
600
Price (p)
400
200
0

2000 2002 2004 2006 2008 2010 2012 2014 2016


Date

Figure 9: Trend-Stationary Simulated and Actual data comparison

5.2 Random-Walk Model


We will now simulate data based on a random-walk model. This will have
the general form of Equation 12. Here p represents log price.

pt = pt−1 + at , at ∼ W N (0, σa2 ) (12)


Adding drift to model we obtain:

pt = µ + pt−1 + at , at ∼ W N (0, σa2 ) (13)

where µ = E(pt − pt−1 )


As we are interested in the path of the prices, so we will use discretion
of the Geometric Brownian Motion (GBM) to simulate a series. The GBM
formula is shown in Equation 14. Here Rt represents percentage returns.
Pt+1 − Pt √
Rt = = µ∆t + σφ ∆t (14)
Pt

17
Where µ is the sample mean, σ is the sample volatility, ∆t = 1 (1 week),
and φ is a normally distributed random number. In order to have the same
characteristics as our original data, we sample the mean and volatility from
BARC.L returns.

µ = −0.0002122 σ = 0.07306
The data generation process is as follows: First we generate normally
distributed numbers with sample mean and sample standard deviation. We
then scale this by the initial stock price to give the price increment. We then
calculate a running sum of these increments and add the starting price as a
base. We can set the sample mean to zero to simulate a series with no drift.
Figure 10 shows the results.

Random Walk
1000

Random Walk
with Drift
500
Price (p)
0
−500

2000 2002 2004 2006 2008 2010 2012 2014 2016


Date

Figure 10: Random-Walk Model with drift

For the purpose of comparison we have used the same white noise gener-
ation for each of our simulations. We can repeat the process using a different
series of random numbers each time. This allows us to get a better feeling

18
for possible future prices. The results of this are shown in Figure 11, where
an arbitrary series has been highlighted.

Random Walk, Monte Carlo


2000
1000
Price (p)
0−1000
−2000

2000 2002 2004 2006 2008 2010 2012 2014 2016


Date

Figure 11: Repeated random-walk simulations

The random walk simulation has a number of assumptions that may de-
part from reality. The normality assumption is inessential as we are summing
so after a relatively small number of periods we can make use of central limit
theorem. The assumption of period independence is also debatable. How-
ever, of more concern is the constant mean and variance (Spitzer, 2013).
The model also allows for the possibility of negative prices as can be seen in
Figure 11. To avoid some of these shortcomings it may be more suitable to
apply a random walk based on a log-normal model.

19
Simulation Comparison
1000

Price
Trend−Stationary
RW w Drift
500
Price (p)
0
−500

2000 2002 2004 2006 2008 2010 2012 2014 2016


Date

Figure 12: Model Comparison

A comparison of the simulations are shown in Figure 12. We can see that
both simulations have captured the overall feel of the data. We can also see
how a shock such impacts both simulations differently. We have a number
of downward price movements in a row around the 2007-2009 period, the
impact is permanent on the Random-Walk but the Trend-Stationary series
reverts to the long term mean.

20
6 Conclusion
We have analysed Barclay’s PLC stock prices from 2000-2016. We have
identified the price series as non-stationary, using the augmented Dickey-
Fuller test. Given this information we incorporated an integration term into
our model. We selected an ARIMA(4, 1, 4) model to fit the data.
Using our model we attempted to make some forecast predictions for
up to 20 steps ahead. In doing so we found that the predictions where
approximately equal to the current price. This was expected as previously
we did not reject the hypothesis of a unit root.
Given that we had a unit root, we attempted to simulate data using a
Random-Walk model. We then also fitted an AR(1) model and used this to
simulate data using the Trend-Stationary Time Series Model. It was found
that both models simulated a price series that was aesthetically acceptable.
However, we must be aware of the shortcomings of each model.

21
References
Bachelier, L. (1900). Thorie de la spculation. Gauthier-Villars.
Becketti, S. (2013). Introduction to time series using stata. Stata Press
College Station, TX.
Elliott, G., Rothenberg, T. J., & Stock, J. H. (1992). Efficient tests for
an autoregressive unit root. National Bureau of Economic Research
Cambridge, Mass., USA.
Fama, E. F. (1965). The behavior of stock-market prices. The journal of
Business, 38 (1), 34-105.
Harvey, A. C. (1990). Forecasting, structural time series models and the
kalman filter. Cambridge university press.
Inman, P., & Treanor, J. (2009). Barclays shares in new col-
lapse as bank crisis enters second phase. Retrieved from
[Link]
bank shares in new collapse
Kendall, D. G. (1953). Stochastic processes occurring in the theory of queues
and their analysis by the method of the imbedded markov chain. The
Annals of Mathematical Statistics, 338-354.
Lo, A. W., & MacKinlay, A. C. (1988). Stock market prices do not follow
random walks: Evidence from a simple specification test. Review of
Financial Studies, 1 (1), 41-66.
Nielsen, H. B. (2007). Non-stationary time series and unit root testing.
Regnault, J. (1863). Calcul des chances et philosophie de la bourse. Mallet-
Bachelier.
Spitzer, F. (2013). Principles of random walk (Vol. 34). Springer Science &
Business Media.

22

You might also like