Matlab Code
1 %% I m p o r t a n t n o t e s :
2 % To run t h i s s c r i p t you need t h e d a t a s e t ” Spot+DecFutures . x l s x ” .
3 % The c o d e must be run s e c t i o n w i s e , a s s t r u c t u r e d h e r e .
4 % Some o f t h e s u b s e c t i o n s must be runned s e p a r a t e l y , s u c h a s p l o t s and
5 % f i g u r e s .
6 % I f you have any i s s u e s w i t h r u n n i n g t h e s c r i p t , p l e a s e c o n t a c t
7 % s a n d e r . l i e @ s t u d e n t . b i . no
8
9 %% Part 1 − P r e l i m i n a r y a n a l y s i s :
10 % R i s k Premium s t a t i s t i c s
11 c l e a r;
12 c l c;
13
14 % Import d a t a and c r e a t e v a r i a b l e s :
15 d a t a = r e a d t a b l e (’ Spot+DecFutures . x l s x ’) ;
16 d a t a=d a t a ( ˜any( i s m i s s i n g ( d a t a . Spot ) , 2 ) , : ) ;
17 d a t a ( 5 8 4 : 5 8 5 , : ) = [ ] ;
18 d a t a = t a b l e 2 t i m e t a b l e ( d a t a ) ;
19 d a t a . RP19 = d a t a . Fut19 − d a t a . Spot ;
20 d a t a . RP18 = d a t a . Fut18 − d a t a . Spot ;
21 d a t a . RP17 = d a t a . Fut17 − d a t a . Spot ;
22 d a t a . RP16 = d a t a . Fut16 − d a t a . Spot ;
23 d a t a . RP15 = d a t a . Fut15 − d a t a . Spot ;
24 d a t a . RP14 = d a t a . Fut14 − d a t a . Spot ;
25 d a t a ( 1 7 0 0 :end, : ) = [ ] ;
26
27 % S t a t i s t i c s :
28 R e s u l t s = t a b l e ( ) ;
29 R e s u l t s . O b s e r v a t i o n s ( 1 ) = 1 6 9 9 ;
30 R e s u l t s . O b s e r v a t i o n s ( 2 ) = 1 4 5 4 ;
31 R e s u l t s . O b s e r v a t i o n s ( 3 ) = 1 2 0 7 ;
32 R e s u l t s . O b s e r v a t i o n s ( 4 ) = 9 8 3 ;
33 R e s u l t s . O b s e r v a t i o n s ( 5 ) = 7 2 9 ;
34 R e s u l t s . O b s e r v a t i o n s ( 6 ) = 4 8 5 ;
35
36 R e s u l t s . Mean ( 1 ) = mean( d a t a . RP19 ( 1 : 1 6 9 9 ) ) ;
37 R e s u l t s . Mean ( 2 ) = mean( d a t a . RP18 ( 1 : 1 4 5 4 ) ) ;
38 R e s u l t s . Mean ( 3 ) = mean( d a t a . RP17 ( 1 : 1 2 0 7 ) ) ;
39 R e s u l t s . Mean ( 4 ) = mean( d a t a . RP16 ( 1 : 9 8 3 ) ) ;
40 R e s u l t s . Mean ( 5 ) = mean( d a t a . RP15 ( 1 : 7 2 9 ) ) ;
41 R e s u l t s . Mean ( 6 ) = mean( d a t a . RP14 ( 1 : 4 8 5 ) ) ;
42
43 R e s u l t s . Std ( 1 ) = s t d( d a t a . RP19 ( 1 : 1 6 9 9 ) ) ;
44 R e s u l t s . Std ( 2 ) = s t d( d a t a . RP18 ( 1 : 1 4 5 4 ) ) ;
45 R e s u l t s . Std ( 3 ) = s t d( d a t a . RP17 ( 1 : 1 2 0 7 ) ) ;
46 R e s u l t s . Std ( 4 ) = s t d( d a t a . RP16 ( 1 : 9 8 3 ) ) ;
47 R e s u l t s . Std ( 5 ) = s t d( d a t a . RP15 ( 1 : 7 2 9 ) ) ;
48 R e s u l t s . Std ( 6 ) = s t d( d a t a . RP14 ( 1 : 4 8 5 ) ) ;
49
50 R e s u l t s . Skew ( 1 ) = s k e w n e s s ( d a t a . RP19 ( 1 : 1 6 9 9 ) ) ;
51 R e s u l t s . Skew ( 2 ) = s k e w n e s s ( d a t a . RP18 ( 1 : 1 4 5 4 ) ) ;
52 R e s u l t s . Skew ( 3 ) = s k e w n e s s ( d a t a . RP17 ( 1 : 1 2 0 7 ) ) ;
53 R e s u l t s . Skew ( 4 ) = s k e w n e s s ( d a t a . RP16 ( 1 : 9 8 3 ) ) ;
54 R e s u l t s . Skew ( 5 ) = s k e w n e s s ( d a t a . RP15 ( 1 : 7 2 9 ) ) ;
55 R e s u l t s . Skew ( 6 ) = s k e w n e s s ( d a t a . RP14 ( 1 : 4 8 5 ) ) ;
56
57 R e s u l t s . ExKurt ( 1 ) = k u r t o s i s ( d a t a . RP19 ( 1 : 1 6 9 9 ) )−3;
58 R e s u l t s . ExKurt ( 2 ) = k u r t o s i s ( d a t a . RP18 ( 1 : 1 4 5 4 ) )−3;
59 R e s u l t s . ExKurt ( 3 ) = k u r t o s i s ( d a t a . RP17 ( 1 : 1 2 0 7 ) )−3;
60 R e s u l t s . ExKurt ( 4 ) = k u r t o s i s ( d a t a . RP16 ( 1 : 9 8 3 ) )−3;
61 R e s u l t s . ExKurt ( 5 ) = k u r t o s i s ( d a t a . RP15 ( 1 : 7 2 9 ) )−3;
62 R e s u l t s . ExKurt ( 6 ) = k u r t o s i s ( d a t a . RP14 ( 1 : 4 8 5 ) )−3;
63
64 f i g u r e;
65 p l o t( d a t a . Date , d a t a . RP19 )
66 h o l d on
67 p l o t( d a t a . Date , d a t a . RP18 )
68 p l o t( d a t a . Date , d a t a . RP17 )
69 p l o t( d a t a . Date , d a t a . RP16 )
70 p l o t( d a t a . Date , d a t a . RP15 )
71 p l o t( d a t a . Date , d a t a . RP14 )
72 h o l d o f f
73 l e g e n d(’RP 19 ’, ’RP 18 ’, ’RP 17 ’, ’RP 16 ’, ’RP 15 ’, ’RP 14 ’)
74 box (’ o f f ’)
75 x l a b e l(’ Year ’) ;
76 y l a b e l(’ R i s k Premium i n EUR ’)
77
78 % H i s t o r i c a l p r i c e s o f e m i s s i o n a l l o w a n c e s
79 f i g u r e;
80 p l o t( d a t a . Date , d a t a . Spot )
81 h o l d on
82 p l o t( d a t a . Date , d a t a . Fut19 ) ;
83 p l o t( d a t a . Date , d a t a . Fut18 ) ;
84 p l o t( d a t a . Date , d a t a . Fut17 ) ;
85 p l o t( d a t a . Date , d a t a . Fut16 ) ;
86 p l o t( d a t a . Date , d a t a . Fut15 ) ;
87 p l o t( d a t a . Date , d a t a . Fut14 ) ;
88 l e g e n d(’ Spot ’, ’ Fut19 ’, ’ Fut18 ’, ’ Fut17 ’, ’ Fut16 ’, ’ Fut15 ’, ’ Fut14 ’, ’ L o c a t i o n ’ , ’ SouthEast ’)
89 x l a b e l(’ Year ’) ;
90 y l a b e l(’ P r i c e ( i n EUR) ’) ;
91 h o l d o f f
92
93 %% Part 2 − ADF t e s t s
94 c l e a r;
95 c l c;
96
97 % Import d a t a
98 d a t a = r e a d t a b l e (’ Spot+DecFutures . x l s x ’) ;
99 d a t a=d a t a ( ˜any( i s m i s s i n g ( d a t a . Spot ) , 2 ) , : ) ;
100 d a t a ( 5 8 4 : 5 8 5 , : ) = [ ] ;
101 d a t a = t a b l e 2 t i m e t a b l e ( d a t a ) ;
102
103 %C r e a t i n g l o g s :
104 d a t a . Spot = l o g( d a t a . Spot ) ;
105 d a t a . Fut19 = l o g( d a t a . Fut19 ) ;
106 d a t a . Fut18 = l o g( d a t a . Fut18 ) ;
107 d a t a . Fut17 = l o g( d a t a . Fut17 ) ;
108 d a t a . Fut16 = l o g( d a t a . Fut16 ) ;
109 d a t a . Fut15 = l o g( d a t a . Fut15 ) ;
110 d a t a . Fut14 = l o g( d a t a . Fut14 ) ;
111 d a t a . E l e c t r i c i t y = l o g( d a t a . E l e c t r i c i t y ) ;
112 d a t a . E l e c = d a t a . E l e c t r i c i t y ;
113 d a t a . Coal = l o g( d a t a . Coal ) ;
114 d a t a .DAX = l o g( d a t a .DAX) ;
115 d a t a . NaturalGAS = l o g( d a t a . NaturalGAS ) ;
116 d a t a . Ngas = d a t a . NaturalGAS ;
117
118 % C r e a t e a t i m e s e r i e s c o n t a i n i n g f i r s t d i f f e r e n c e s
119 d a t a . S p o t f i r s t d i f f = d a t a . Spot − l a g m a t r i x ( d a t a . Spot , 1 ) ;
120 d a t a . F u t 1 9 f i r s t d i f f = d a t a . Fut19 − l a g m a t r i x ( d a t a . Fut19 , 1 ) ;
121 d a t a . F u t 1 8 f i r s t d i f f = d a t a . Fut18 − l a g m a t r i x ( d a t a . Fut18 , 1 ) ;
122 d a t a . F u t 1 7 f i r s t d i f f = d a t a . Fut17 − l a g m a t r i x ( d a t a . Fut17 , 1 ) ;
123 d a t a . F u t 1 6 f i r s t d i f f = d a t a . Fut16 − l a g m a t r i x ( d a t a . Fut16 , 1 ) ;
124 d a t a . F u t 1 5 f i r s t d i f f = d a t a . Fut15 − l a g m a t r i x ( d a t a . Fut15 , 1 ) ;
125 d a t a . F u t 1 4 f i r s t d i f f = d a t a . Fut14 − l a g m a t r i x ( d a t a . Fut14 , 1 ) ;
126 d a t a . O i l f d = d a t a . O i l − l a g m a t r i x ( d a t a . O i l , 1 ) ;
127 d a t a . E l e c f d = d a t a . E l e c − l a g m a t r i x ( d a t a . E l e c , 1 ) ;
128 d a t a . C o a l f d = d a t a . Coal − l a g m a t r i x ( d a t a . Coal , 1 ) ;
129 d a t a . DAX fd = d a t a .DAX− l a g m a t r i x ( d a t a .DAX, 1 ) ;
130 d a t a . N g a s f d = d a t a . Ngas − l a g m a t r i x ( d a t a . Ngas , 1 ) ;
131
132 % ADF T e s t ( Unit r o o t t e s t ) − Check e a c h t i m e s e r i e s f o r s t a t i o n a r i t y
133 r e s u l t s = t a b l e ( ) ;
134
135 i = 0 : 2 ;
136 f o r model = i
137 maxlag = 1 2 ;
138 i c = ’ AIC ’;
139 a l p h a = [ 0 . 0 1 ; 0 . 0 5 ; 0 . 1 0 ] ;
140 model
141 142
143 % Spot :
144
145 % L e v e l s
146 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Spot , model , maxlag , i c ) ;
147 d i s p(’ Spot L e v e l s ’) ;
148 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
149 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
150 r e j e c t = a d f s t a t > c r i t v a l ;
151 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
152 i f model == 0
153 r e s u l t s . S p o t L e v e l s ( 1 ) = a d f s t a t ;
154 end
155 i f model == 1
156 r e s u l t s . S p o t L e v e l s ( 2 ) = a d f s t a t ;
157 end
158 i f model == 2
159 r e s u l t s . S p o t L e v e l s ( 3 ) = a d f s t a t ;
160 end
161 162
163 % F i r s t d i f f e r e n c e s
164 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . S p o t f i r s t d i f f ( 2 :end) , model , maxlag , i c ) ;
165 d i s p(’ Spot f i r s t d i f f e r e n c e s ’) ;
166 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
167 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
168 r e j e c t = a d f s t a t > c r i t v a l ;
169 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
170 i f model == 0
171 r e s u l t s . S p o t D i f f ( 1 ) = a d f s t a t ;
172 end
173 i f model == 1
174 r e s u l t s . S p o t D i f f ( 2 ) = a d f s t a t ;
175 end
176 i f model == 2
177 r e s u l t s . S p o t D i f f ( 3 ) = a d f s t a t ;
178 end
179
180 % Dec2019 Future
181 % L e v e l s
182 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Fut19 ( 1 : 1 6 9 9 ) , model , maxlag , i c ) ;
183 d i s p(’ Fut19 L e v e l s ’) ;
184 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
185 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
186 r e j e c t = a d f s t a t > c r i t v a l ;
187 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
188 i f model == 0
189 r e s u l t s . F u t 1 9 L e v e l s ( 1 ) = a d f s t a t ;
190 end
191 i f model == 1
192 r e s u l t s . F u t 1 9 L e v e l s ( 2 ) = a d f s t a t ;
193 end
194 i f model == 2
195 r e s u l t s . F u t 1 9 L e v e l s ( 3 ) = a d f s t a t ;
196 end
197
198 % F i r s t d i f f e r e n c e s
199 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . F u t 1 9 f i r s t d i f f ( 2 : 1 6 9 9 ) , model , maxlag , i c ) ;
200 d i s p(’ Fut19 f i r s t d i f f e r e n c e s ’) ;
201 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
202 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
203 r e j e c t = a d f s t a t > c r i t v a l ;
204 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
205 i f model == 0
206 r e s u l t s . F u t 1 9 D i f f ( 1 ) = a d f s t a t ;
207 end
208 i f model == 1
209 r e s u l t s . F u t 1 9 D i f f ( 2 ) = a d f s t a t ;
210 end
211 i f model == 2
212 r e s u l t s . F u t 1 9 D i f f ( 3 ) = a d f s t a t ;
213 end
214 215
216 % Dec2018 Future
217 % L e v e l s
218 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Fut18 ( 1 : 1 4 5 4 ) , model , maxlag , i c ) ;
219 d i s p(’ Fut18 L e v e l s ’) ;
220 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
221 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
222 r e j e c t = a d f s t a t > c r i t v a l ;
223 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
224 i f model == 0
225 r e s u l t s . F u t 1 8 L e v e l s ( 1 ) = a d f s t a t ;
226 end
227 i f model == 1
228 r e s u l t s . F u t 1 8 L e v e l s ( 2 ) = a d f s t a t ;
229 end
230 i f model == 2
231 r e s u l t s . F u t 1 8 L e v e l s ( 3 ) = a d f s t a t ;
232 end
233
234 % F i r s t d i f f e r e n c e s
235 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . F u t 1 8 f i r s t d i f f ( 2 : 1 4 5 4 ) , model , maxlag , i c ) ;
236 d i s p(’ Fut18 f i r s t d i f f e r e n c e s ’) ;
237 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
238 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
239 r e j e c t = a d f s t a t > c r i t v a l ;
240 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
241 i f model == 0
242 r e s u l t s . F u t 1 8 D i f f ( 1 ) = a d f s t a t ;
243 end
244 i f model == 1
245 r e s u l t s . F u t 1 8 D i f f ( 2 ) = a d f s t a t ;
246 end
247 i f model == 2
248 r e s u l t s . F u t 1 8 D i f f ( 3 ) = a d f s t a t ;
249 end
250 251
252 % Dec2017 Future
253 % L e v e l s
254 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Fut17 ( 1 : 1 2 0 7 ) , model , maxlag , i c ) ;
255 d i s p(’ Fut17 L e v e l s ’) ;
256 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
257 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
258 r e j e c t = a d f s t a t > c r i t v a l ;
259 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
260 i f model == 0
261 r e s u l t s . F u t 1 7 L e v e l s ( 1 ) = a d f s t a t ;
262 end
263 i f model == 1
264 r e s u l t s . F u t 1 7 L e v e l s ( 2 ) = a d f s t a t ;
265 end
266 i f model == 2
267 r e s u l t s . F u t 1 7 L e v e l s ( 3 ) = a d f s t a t ;
268 end
269
270 % F i r s t d i f f e r e n c e s
271 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . F u t 1 7 f i r s t d i f f ( 2 : 1 2 0 7 ) , model , maxlag , i c ) ;
272 d i s p(’ Fut17 f i r s t d i f f e r e n c e s ’) ;
273 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
274 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
275 r e j e c t = a d f s t a t > c r i t v a l ;
276 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
277 i f model == 0
278 r e s u l t s . F u t 1 7 D i f f ( 1 ) = a d f s t a t ;
279 end
280 i f model == 1
281 r e s u l t s . F u t 1 7 D i f f ( 2 ) = a d f s t a t ;
282 end
283 i f model == 2
284 r e s u l t s . F u t 1 7 D i f f ( 3 ) = a d f s t a t ;
285 end
286 287
288 % Dec2016 Future
289 % L e v e l s
290 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Fut16 ( 1 : 9 8 3 ) , model , maxlag , i c ) ;
291 d i s p(’ Fut16 L e v e l s ’) ;
292 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
293 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
294 r e j e c t = a d f s t a t > c r i t v a l ;
295 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
296 i f model == 0
297 r e s u l t s . F u t 1 6 L e v e l s ( 1 ) = a d f s t a t ;
298 end
299 i f model == 1
300 r e s u l t s . F u t 1 6 L e v e l s ( 2 ) = a d f s t a t ;
301 end
302 i f model == 2
303 r e s u l t s . F u t 1 6 L e v e l s ( 3 ) = a d f s t a t ;
304 end
305
306 % F i r s t d i f f e r e n c e s
307 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . F u t 1 6 f i r s t d i f f ( 2 : 9 8 3 ) , model , maxlag , i c ) ;
308 d i s p(’ Fut16 f i r s t d i f f e r e n c e s ’) ;
309 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
310 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
311 r e j e c t = a d f s t a t > c r i t v a l ;
312 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
313 i f model == 0
314 r e s u l t s . F u t 1 6 D i f f ( 1 ) = a d f s t a t ;
315 end
316 i f model == 1
317 r e s u l t s . F u t 1 6 D i f f ( 2 ) = a d f s t a t ;
318 end
319 i f model == 2
320 r e s u l t s . F u t 1 6 D i f f ( 3 ) = a d f s t a t ;
321 end
322
323 % Dec2015 Future
324 % L e v e l s
325 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Fut15 ( 1 : 7 2 9 ) , model , maxlag , i c ) ;
326 d i s p(’ Fut15 L e v e l s ’) ;
327 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
328 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
329 r e j e c t = a d f s t a t > c r i t v a l ;
330 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
331 i f model == 0
332 r e s u l t s . F u t 1 5 L e v e l s ( 1 ) = a d f s t a t ;
333 end
334 i f model == 1
335 r e s u l t s . F u t 1 5 L e v e l s ( 2 ) = a d f s t a t ;
336 end
337 i f model == 2
338 r e s u l t s . F u t 1 5 L e v e l s ( 3 ) = a d f s t a t ;
339 end
340
341 % F i r s t d i f f e r e n c e s
342 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . F u t 1 5 f i r s t d i f f ( 2 : 7 2 9 ) , model , maxlag , i c ) ;
343 d i s p(’ Fut15 f i r s t d i f f e r e n c e s ’) ;
344 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
345 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
346 r e j e c t = a d f s t a t > c r i t v a l ;
347 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
348 i f model == 0
349 r e s u l t s . F u t 1 5 D i f f ( 1 ) = a d f s t a t ;
350 end
351 i f model == 1
352 r e s u l t s . F u t 1 5 D i f f ( 2 ) = a d f s t a t ;
353 end
354 i f model == 2
355 r e s u l t s . F u t 1 5 D i f f ( 3 ) = a d f s t a t ;
356 end
357
358 % Dec2014 Future
359 % L e v e l s
360 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Fut14 ( 1 : 4 8 5 ) , model , maxlag , i c ) ;
361 d i s p(’ Fut14 L e v e l s ’) ;
362 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
363 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
364 r e j e c t = a d f s t a t > c r i t v a l ;
365 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
366 i f model == 0
367 r e s u l t s . F u t 1 4 L e v e l s ( 1 ) = a d f s t a t ;
368 end
369 i f model == 1
370 r e s u l t s . F u t 1 4 L e v e l s ( 2 ) = a d f s t a t ;
371 end
372 i f model == 2
373 r e s u l t s . F u t 1 4 L e v e l s ( 3 ) = a d f s t a t ;
374 end
375
376 % F i r s t d i f f e r e n c e s
377 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . F u t 1 4 f i r s t d i f f ( 2 : 4 8 5 ) , model , maxlag , i c ) ;
378 d i s p(’ Fut14 f i r s t d i f f e r e n c e s ’) ;
379 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
380 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
381 r e j e c t = a d f s t a t > c r i t v a l ;
382 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
383 i f model == 0
384 r e s u l t s . F u t 1 4 D i f f ( 1 ) = a d f s t a t ;
385 end
386 i f model == 1
387 r e s u l t s . F u t 1 4 D i f f ( 2 ) = a d f s t a t ;
388 end
389 i f model == 2
390 r e s u l t s . F u t 1 4 D i f f ( 3 ) = a d f s t a t ;
391 end
392
393 % O i l :
394 % L e v e l s
395 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . O i l , model , maxlag , i c ) ;
396 d i s p(’ O i l L e v e l s ’) ;
397 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
398 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
399 r e j e c t = a d f s t a t > c r i t v a l ;
400 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
401 i f model == 0
402 r e s u l t s . O i l L e v e l s ( 1 ) = a d f s t a t ;
403 end
404 i f model == 1
405 r e s u l t s . O i l L e v e l s ( 2 ) = a d f s t a t ;
406 end
407 i f model == 2
408 r e s u l t s . O i l L e v e l s ( 3 ) = a d f s t a t ;
409 end
410 411
412 % F i r s t d i f f e r e n c e s
413 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . O i l f d ( 2 :end) , model , maxlag , i c ) ;
414 d i s p(’ O i l f i r s t d i f f e r e n c e s ’) ;
415 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
416 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
417 r e j e c t = a d f s t a t > c r i t v a l ;
418 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
419 i f model == 0
420 r e s u l t s . O i l D i f f ( 1 ) = a d f s t a t ;
421 end
422 i f model == 1
423 r e s u l t s . O i l D i f f ( 2 ) = a d f s t a t ;
424 end
425 i f model == 2
426 r e s u l t s . O i l D i f f ( 3 ) = a d f s t a t ;
427 end
428
429 % E l e c :
430 % L e v e l s
431 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . E l e c , model , maxlag , i c ) ;
432 d i s p(’ E l e c L e v e l s ’) ;
433 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
434 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
435 r e j e c t = a d f s t a t > c r i t v a l ;
436 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
437 i f model == 0
438 r e s u l t s . E l e c L e v e l s ( 1 ) = a d f s t a t ;
439 end
440 i f model == 1
441 r e s u l t s . E l e c L e v e l s ( 2 ) = a d f s t a t ;
442 end
443 i f model == 2
444 r e s u l t s . E l e c L e v e l s ( 3 ) = a d f s t a t ;
445 end
446
447 % F i r s t d i f f e r e n c e s
448 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . E l e c f d ( 2 :end) , model , maxlag , i c ) ;
449 d i s p(’ E l e c f i r s t d i f f e r e n c e s ’) ;
450 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
451 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
452 r e j e c t = a d f s t a t > c r i t v a l ;
453 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
454 i f model == 0
455 r e s u l t s . E l e c D i f f ( 1 ) = a d f s t a t ;
456 end
457 i f model == 1
458 r e s u l t s . E l e c D i f f ( 2 ) = a d f s t a t ;
459 end
460 i f model == 2
461 r e s u l t s . E l e c D i f f ( 3 ) = a d f s t a t ;
462 end
463 464
465 % Coal :
466 % L e v e l s
467 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( d a t a . Coal ( 5 5 7 :
end) , model , maxlag , i c ) ;
468 d i s p(’ Coal L e v e l s ’) ;
469 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
470 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
471 r e j e c t = a d f s t a t > c r i t v a l ;
472 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
473 i f model == 0
474 r e s u l t s . C o a l L e v e l s ( 1 ) = a d f s t a t ;
475 end
476 i f model == 1
477 r e s u l t s . C o a l L e v e l s ( 2 ) = a d f s t a t ;
478 end
479 i f model == 2
480 r e s u l t s . C o a l L e v e l s ( 3 ) = a d f s t a t ;
481 end
482
483 % F i r s t d i f f e r e n c e s
484 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( d a t a . C o a l f d ( 5 5 8 :end) , model , maxlag , i c ) ;
485 d i s p(’ Coal f i r s t d i f f e r e n c e s ’) ;
486 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
487 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
488 r e j e c t = a d f s t a t > c r i t v a l ;
489 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
490 i f model == 0
491 r e s u l t s . C o a l D i f f ( 1 ) = a d f s t a t ;
492 end
493 i f model == 1
494 r e s u l t s . C o a l D i f f ( 2 ) = a d f s t a t ;
495 end
496 i f model == 2
497 r e s u l t s . C o a l D i f f ( 3 ) = a d f s t a t ;
498 end
499
500 % DAX:
501 % DAX d a t a :
502 DAXdata = t a b l e ( ) ;
503 DAXdata .DAX = d a t a .DAX;
504 DAXdata . DAX fd = d a t a . DAX fd ;
505 DAXdata=DAXdata ( ˜any( i s m i s s i n g ( DAXdata .DAX) , 2 ) , : ) ;
506 DAXdata=DAXdata ( ˜any( i s m i s s i n g ( DAXdata . DAX fd ) , 2 ) , : ) ;
507
508 % L e v e l s
509 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( DAXdata .DAX( 1 : end) , model , maxlag , i c ) ;
510 d i s p(’DAX L e v e l s ’) ;
511 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
512 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
513 r e j e c t = a d f s t a t > c r i t v a l ;
514 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
515 i f model == 0
516 r e s u l t s . DAXLevels ( 1 ) = a d f s t a t ;
517 end
518 i f model == 1
519 r e s u l t s . DAXLevels ( 2 ) = a d f s t a t ;
520 end
521 i f model == 2
522 r e s u l t s . DAXLevels ( 3 ) = a d f s t a t ;
523 end
524
525 % F i r s t d i f f e r e n c e s
526 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( DAXdata . DAX fd ( 1 :end) , model , maxlag , i c ) ;
527 d i s p(’DAX f i r s t d i f f e r e n c e s ’) ;
528 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
529 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
530 r e j e c t = a d f s t a t > c r i t v a l ;
531 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
532 i f model == 0
533 r e s u l t s . DAXDiff ( 1 ) = a d f s t a t ;
534 end
535 i f model == 1
536 r e s u l t s . DAXDiff ( 2 ) = a d f s t a t ;
537 end
538 i f model == 2
539 r e s u l t s . DAXDiff ( 3 ) = a d f s t a t ;
540 end
541
542 % Ngas :
543 % Ngas d a t a :
544 Ngasdata = t a b l e ( ) ;
545 Ngasdata . Ngas = d a t a . Ngas ;
546 Ngasdata . N g a s f d = d a t a . N g a s f d ;
547 Ngasdata=Ngasdata ( ˜any( i s m i s s i n g ( Ngasdata . Ngas ) , 2 ) , : ) ;
548 Ngasdata=Ngasdata ( ˜any( i s m i s s i n g ( Ngasdata . N g a s f d ) , 2 ) , : ) ;
549
550 % L e v e l s
551 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s l e v e l ] = a u g d f a u t o l a g ( Ngasdata . Ngas ( 1 :end) , model , maxlag , i c ) ;
552 d i s p(’ Ngas L e v e l s ’) ;
553 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s l e v e l ) ) ;
554 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
555 r e j e c t = a d f s t a t > c r i t v a l ;
556 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
557 i f model == 0
558 r e s u l t s . N g a s L e v e l s ( 1 ) = a d f s t a t ;
559 end
560 i f model == 1
561 r e s u l t s . N g a s L e v e l s ( 2 ) = a d f s t a t ;
562 end
563 i f model == 2
564 r e s u l t s . N g a s L e v e l s ( 3 ) = a d f s t a t ;
565 end
566
567 % F i r s t d i f f e r e n c e s
568 [ a d f s t a t , p v a l , c r i t v a l , ˜ , l a g s f i r s t d i f f ] = a u g d f a u t o l a g ( Ngasdata . N g a s f d ( 1 :end) , model , maxlag , i c ) ;
569 d i s p(’ Ngas f i r s t d i f f e r e n c e s ’) ;
570 d i s p( t a b l e ( p v a l , a d f s t a t , l a g s f i r s t d i f f ) ) ;
571 c r i t v a l = c r i t v a l ( 1 : 3 ) ;
572 r e j e c t = a d f s t a t > c r i t v a l ;
573 d i s p( t a b l e ( alpha , c r i t v a l , r e j e c t ) ) ;
574 i f model == 0
575 r e s u l t s . N g a s D i f f ( 1 ) = a d f s t a t ;
576 end
577 i f model == 1
578 r e s u l t s . N g a s D i f f ( 2 ) = a d f s t a t ;
579 end
580 i f model == 2
581 r e s u l t s . N g a s D i f f ( 3 ) = a d f s t a t ;
582 end
583 end
584 %% Part 3 − C o i n t e g r a t i o n ( Johansen t e s t ) :
585 c l e a r;
586 c l c;
587
588 % Import d a t a and c r e a t e v a r i a b l e s :
589 d a t a = r e a d t a b l e (’ Spot+DecFutures . x l s x ’) ;
590 d a t a=d a t a ( ˜any( i s m i s s i n g ( d a t a . Spot ) , 2 ) , : ) ;
591 d a t a ( 5 8 4 : 5 8 5 , : ) = [ ] ;
592 d a t a = t a b l e 2 t i m e t a b l e ( d a t a ) ;
593 d a t a . Spot = l o g( d a t a . Spot ) ;
594 d a t a . Fut19 = l o g( d a t a . Fut19 ) ;
595 d a t a . Fut18 = l o g( d a t a . Fut18 ) ;
596 d a t a . Fut17 = l o g( d a t a . Fut17 ) ;
597 d a t a . Fut16 = l o g( d a t a . Fut16 ) ;
598 d a t a . Fut15 = l o g( d a t a . Fut15 ) ;
599 d a t a . Fut14 = l o g( d a t a . Fut14 ) ;
600
601 % D e t e r m i n i n g l a g l e v e l s :
602 % Spot and Fut19 :
603 r e g 1 = t a b l e ( ) ;
604 r e g 1 . Spot = d a t a . Spot ;
605 r e g 1 . Fut19 = d a t a . Fut19 ;
606 r e g 1 ( 1 7 0 0 :end, : ) = [ ] ;
607 r e g 1 = r e g 1{: , :};
608 [ l a g l e n g t h , AIC , l o g L ] = VARlag ( r e g 1 , 1 2 )
609 %Optimal = 12
610
611 % Spot and Fut18 :
612 r e g 2 = t a b l e ( ) ;
613 r e g 2 . Spot = d a t a . Spot ;
614 r e g 2 . Fut18 = d a t a . Fut18 ;
615 r e g 2 ( 1 4 5 5 :end, : ) = [ ] ;
616 r e g 2 = r e g 2{: , :};
617 [ l a g l e n g t h , AIC , l o g L ] = VARlag ( r e g 2 , 1 2 )
618 %Optimal = 8
619
620 % Spot and Fut17 :
621 r e g 3 = t a b l e ( ) ;
622 r e g 3 . Spot = d a t a . Spot ;
623 r e g 3 . Fut17 = d a t a . Fut17 ;
624 r e g 3 ( 1 2 0 8 :end, : ) = [ ] ;
625 r e g 3 = r e g 3{: , :};
626 [ l a g l e n g t h , AIC , l o g L ] = VARlag ( r e g 3 , 1 2 )
627 %Optimal = 12
628
629 %Spot and Fut16
630 r e g 4 = t a b l e ( ) ;
631 r e g 4 . Spot = d a t a . Spot ;
632 r e g 4 . Fut16 = d a t a . Fut16 ;
633 r e g 4 ( 9 8 4 :end, : ) = [ ] ;
634 r e g 4 = r e g 4{: , :};
635 [ l a g l e n g t h , AIC , l o g L ] = VARlag ( r e g 4 , 1 2 )
636 %Optimal = 7
637
638 % Spot and Fut15
639 r e g 5 = t a b l e ( ) ;
640 r e g 5 . Spot = d a t a . Spot ;
641 r e g 5 . Fut15 = d a t a . Fut15 ;
642 r e g 5 ( 7 3 0 :end, : ) = [ ] ;
643 r e g 5 = r e g 5{: , :};
644 [ l a g l e n g t h , AIC , l o g L ] = VARlag ( r e g 5 , 1 2 )
645 %Optimal = 10
646
647 %Spot and Fut14
648 r e g 6 = t a b l e ( ) ;
649 r e g 6 . Spot = d a t a . Spot ;
650 r e g 6 . Fut14 = d a t a . Fut14 ;
651 r e g 6 ( 4 8 6 :end, : ) = [ ] ;
652 r e g 6 = r e g 6{: , :};
653 [ l a g l e n g t h , AIC , l o g L ] = VARlag ( r e g 6 , 1 2 )
654 %Optimal = 7
655
656 %T a b l e s f o r r e s u l t s :
657 t r a c e H 0 = t a b l e ( ) ;
658 MaxEigH0 = t a b l e ( ) ;
659 t r a c e H 1 = t a b l e ( ) ;
660 MaxEigH1 = t a b l e ( ) ;
661
662 % Spot and Fut19 :
663 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h i n t e r c e p t but no t r e n d
664 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 1 , ’ model ’, ’ H1∗’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ t r a c e ’, ’ d i s p l a y ’, ’ o f f ’) ;
665 d i s p(’ t r a c e H0 ’) ;
666 d i s p( pValue ) ;
667 t r a c e H 0 . Fut19 ( 1 ) = pValue . r 0 ;
668 t r a c e H 0 . Fut19 ( 2 ) = pValue . r 1 ;
669
670 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 1 , ’ model ’, ’ H1∗’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
671 d i s p(’ max e i g e n v e c t o r H0 ’) ;
672 d i s p( pValue ) ;
673 MaxEigH0 . Fut19 ( 1 ) = pValue . r 0 ;
674 MaxEigH0 . Fut19 ( 2 ) = pValue . r 1 ;
675
676 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h no i n t e r c e p t , no t r e n d
677 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 1 , ’ model ’, ’ H2 ’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ t r a c e
’, ’ d i s p l a y ’, ’ o f f ’) ;
678 d i s p(’ t r a c e H1 ’) ;
679 d i s p( pValue )
680 t r a c e H 1 . Fut19 ( 1 ) = pValue . r 0 ;
681 t r a c e H 1 . Fut19 ( 2 ) = pValue . r 1 ;
682
683 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 1 , ’ model ’, ’ H2 ’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
684 d i s p(’ max e i g e n v e c t o r H1 ’) ;
685 d i s p( pValue ) ;
686 MaxEigH1 . Fut19 ( 1 ) = pValue . r 0 ;
687 MaxEigH1 . Fut19 ( 2 ) = pValue . r 1 ;
688
689 % Spot and Fut18 :
690 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h i n t e r c e p t but no t r e n d
691 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 2 , ’ model ’, ’ H1∗’,’ l a g s ’, 8 , ’ t e s t ’, ’ t r a c e
’, ’ d i s p l a y ’, ’ o f f ’) ;
692 d i s p(’ t r a c e H0 ’) ;
693 d i s p( pValue ) ;
694 t r a c e H 0 . Fut18 ( 1 ) = pValue . r 0 ;
695 t r a c e H 0 . Fut18 ( 2 ) = pValue . r 1 ;
696
697 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 2 , ’ model ’, ’ H1∗’,’ l a g s ’, 8 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
698 d i s p(’ max e i g e n v e c t o r H0 ’) ;
699 d i s p( pValue ) ;
700 MaxEigH0 . Fut18 ( 1 ) = pValue . r 0 ;
701 MaxEigH0 . Fut18 ( 2 ) = pValue . r 1 ;
702
703 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h no i n t e r c e p t , no t r e n d
704 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 2 , ’ model ’, ’ H2 ’,’ l a g s ’, 8 , ’ t e s t ’, ’ t r a c e ’ , ’ d i s p l a y ’, ’ o f f ’) ;
705 d i s p(’ t r a c e H1 ’) ;
706 d i s p( pValue ) ;
707 t r a c e H 1 . Fut18 ( 1 ) = pValue . r 0 ;
708 t r a c e H 1 . Fut18 ( 2 ) = pValue . r 1 ;
709
710 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 2 , ’ model ’, ’ H2 ’,’ l a g s ’, 8 , ’ t e s t ’, ’ maxeig
’, ’ d i s p l a y ’, ’ o f f ’) ;
711 d i s p(’ max e i g e n v e c t o r H1 ’) ;
712 d i s p( pValue ) ;
713 MaxEigH1 . Fut18 ( 1 ) = pValue . r 0 ;
714 MaxEigH1 . Fut18 ( 2 ) = pValue . r 1 ;
715
716 % Spot and Fut17 :
717 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h i n t e r c e p t but no t r e n d
718 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 3 , ’ model ’, ’ H1∗’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ t r a c e ’, ’ d i s p l a y ’, ’ o f f ’) ;
719 d i s p(’ t r a c e H0 ’) ;
720 d i s p( pValue ) ;
721 t r a c e H 0 . Fut17 ( 1 ) = pValue . r 0 ;
722 t r a c e H 0 . Fut17 ( 2 ) = pValue . r 1 ;
723
724 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 3 , ’ model ’, ’ H1∗’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
725 d i s p(’ max e i g e n v e c t o r H0 ’) ;
726 d i s p( pValue ) ;
727 MaxEigH0 . Fut17 ( 1 ) = pValue . r 0 ;
728 MaxEigH0 . Fut17 ( 2 ) = pValue . r 1 ;
729
730 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h no i n t e r c e p t , no t r e n d
731 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 3 , ’ model ’, ’ H2 ’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ t r a c e
’, ’ d i s p l a y ’, ’ o f f ’) ;
732 d i s p(’ t r a c e H1 ’) ;
733 d i s p( pValue ) ;
734 t r a c e H 1 . Fut17 ( 1 ) = pValue . r 0 ;
735 t r a c e H 1 . Fut17 ( 2 ) = pValue . r 1 ;
736
737 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 3 , ’ model ’, ’ H2 ’,’ l a g s ’, 1 2 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
738 d i s p(’ max e i g e n v e c t o r H1 ’) ;
739 d i s p( pValue ) ;
740 MaxEigH1 . Fut17 ( 1 ) = pValue . r 0 ;
741 MaxEigH1 . Fut17 ( 2 ) = pValue . r 1 ;
742
743 % Spot and Fut16 :
744 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h i n t e r c e p t but no t r e n d
745 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 4 , ’ model ’, ’ H1∗’,’ l a g s ’, 7 , ’ t e s t ’, ’ t r a c e
’, ’ d i s p l a y ’, ’ o f f ’) ;
746 d i s p(’ t r a c e H0 ’) ;
747 d i s p( pValue ) ;
748 t r a c e H 0 . Fut16 ( 1 ) = pValue . r 0 ;
749 t r a c e H 0 . Fut16 ( 2 ) = pValue . r 1 ;
750
751 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 4 , ’ model ’, ’ H1∗’,’ l a g s ’, 7 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
752 d i s p(’ max e i g e n v e c t o r H0 ’) ;
753 d i s p( pValue ) ;
754 MaxEigH0 . Fut16 ( 1 ) = pValue . r 0 ;
755 MaxEigH0 . Fut16 ( 2 ) = pValue . r 1 ;
756
757 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h no i n t e r c e p t , no t r e n d
758 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 4 , ’ model ’, ’ H2 ’,’ l a g s ’, 7 , ’ t e s t ’, ’ t r a c e ’ , ’ d i s p l a y ’, ’ o f f ’) ;
759 d i s p(’ t r a c e H1 ’) ;
760 d i s p( pValue ) ;
761 t r a c e H 1 . Fut16 ( 1 ) = pValue . r 0 ;
762 t r a c e H 1 . Fut16 ( 2 ) = pValue . r 1 ;
763
764 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 4 , ’ model ’, ’ H2 ’,’ l a g s ’, 7 , ’ t e s t ’, ’ maxeig
’, ’ d i s p l a y ’, ’ o f f ’) ;
765 d i s p(’ max e i g e n v e c t o r H1 ’) ;
766 d i s p( pValue ) ;
767 MaxEigH1 . Fut16 ( 1 ) = pValue . r 0 ;
768 MaxEigH1 . Fut16 ( 2 ) = pValue . r 1 ;
769
770 % Spot and Fut15 :
771 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h i n t e r c e p t but no t r e n d
772 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 5 , ’ model ’, ’ H1∗’,’ l a g s ’, 1 0 , ’ t e s t ’, ’ t r a c e ’, ’ d i s p l a y ’, ’ o f f ’) ;
773 d i s p(’ t r a c e H0 ’) ;
774 d i s p( pValue ) ;
775 t r a c e H 0 . Fut15 ( 1 ) = pValue . r 0 ;
776 t r a c e H 0 . Fut15 ( 2 ) = pValue . r 1 ;
777
778 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 5 , ’ model ’, ’ H1∗’,’ l a g s ’, 1 0 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
779 d i s p(’ max e i g e n v e c t o r H0 ’) ;
780 d i s p( pValue ) ;
781 MaxEigH0 . Fut15 ( 1 ) = pValue . r 0 ;
782 MaxEigH0 . Fut15 ( 2 ) = pValue . r 1 ;
783
784 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h no i n t e r c e p t , no t r e n d
785 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 5 , ’ model ’, ’ H2 ’,’ l a g s ’, 1 0 , ’ t e s t ’, ’ t r a c e
’, ’ d i s p l a y ’, ’ o f f ’) ;
786 d i s p(’ t r a c e H1 ’) ;
787 d i s p( pValue ) ;
788 t r a c e H 1 . Fut15 ( 1 ) = pValue . r 0 ;
789 t r a c e H 1 . Fut15 ( 2 ) = pValue . r 1 ;
790
791 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 5 , ’ model ’, ’ H2 ’,’ l a g s ’, 1 0 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
792 d i s p(’ max e i g e n v e c t o r H1 ’) ;
793 d i s p( pValue ) ;
794 MaxEigH1 . Fut15 ( 1 ) = pValue . r 0 ;
795 MaxEigH1 . Fut15 ( 2 ) = pValue . r 1 ;
796
797 % Spot and Fut14 :
798 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h i n t e r c e p t but no t r e n d
799 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 6 , ’ model ’, ’ H1∗’,’ l a g s ’, 7 , ’ t e s t ’, ’ t r a c e
’, ’ d i s p l a y ’, ’ o f f ’) ;
800 d i s p(’ t r a c e H0 ’) ;
801 d i s p( pValue ) ;
802 t r a c e H 0 . Fut14 ( 1 ) = pValue . r 0 ;
803 t r a c e H 0 . Fut14 ( 2 ) = pValue . r 1 ;
804
805 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 6 , ’ model ’, ’ H1∗’,’ l a g s ’, 7 , ’ t e s t ’, ’ maxeig ’, ’ d i s p l a y ’, ’ o f f ’) ;
806 d i s p(’ max e i g e n v e c t o r H0 ’) ;
807 d i s p( pValue ) ;
808 MaxEigH0 . Fut14 ( 1 ) = pValue . r 0 ;
809 MaxEigH0 . Fut14 ( 2 ) = pValue . r 1 ;
810
811 % N u l l h y p o t h e s i s − c o i n t e g r a t e d s e r i e s w i t h no i n t e r c e p t , no t r e n d
812 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 6 , ’ model ’, ’ H2 ’,’ l a g s ’, 7 , ’ t e s t ’, ’ t r a c e ’ , ’ d i s p l a y ’, ’ o f f ’) ;
813 d i s p(’ t r a c e H1 ’) ;
814 d i s p( pValue ) ;
815 t r a c e H 1 . Fut14 ( 1 ) = pValue . r 0 ;
816 t r a c e H 1 . Fut14 ( 2 ) = pValue . r 1 ;
817
818 [ ˜ , pValue , ˜ , ˜ , ˜ ] = j c i t e s t ( r e g 6 , ’ model ’, ’ H2 ’,’ l a g s ’, 7 , ’ t e s t ’, ’ maxeig
’, ’ d i s p l a y ’, ’ o f f ’) ;
819 d i s p(’ max e i g e n v e c t o r H1 ’) ;
820 d i s p( pValue ) ;
821 MaxEigH1 . Fut14 ( 1 ) = pValue . r 0 ;
822 MaxEigH1 . Fut14 ( 2 ) = pValue . r 1 ;
823
824 %% Part 4 −ECM and ECM−GARCH:
825 c l e a r;
826 c l c;
827
828 % Import d a t a and c r e a t e v a r i a b l e s :
829 d a t a = r e a d t a b l e (’ Spot+DecFutures . x l s x ’) ;
830 d a t a=d a t a ( ˜any( i s m i s s i n g ( d a t a . Spot ) , 2 ) , : ) ;
831 d a t a ( 5 8 4 : 5 8 5 , : ) = [ ] ;
832 d a t a = t a b l e 2 t i m e t a b l e ( d a t a ) ;
833 d a t a . Spot = l o g( d a t a . Spot ) ;
834 d a t a . Fut19 = l o g( d a t a . Fut19 ) ;
835 d a t a . Fut18 = l o g( d a t a . Fut18 ) ;
836 d a t a . Fut17 = l o g( d a t a . Fut17 ) ;
837 d a t a . Fut16 = l o g( d a t a . Fut16 ) ;
838 d a t a . Fut15 = l o g( d a t a . Fut15 ) ;
839 d a t a . Fut14 = l o g( d a t a . Fut14 ) ;
840
841 % C r e a t i n g f i r s t d i f f e r e n c e s :
842 d a t a . S p o t f i r s t d i f f = d a t a . Spot − l a g m a t r i x ( d a t a . Spot , 1 ) ;
843 d a t a . F u t 1 9 f i r s t d i f f = d a t a . Fut19 − l a g m a t r i x ( d a t a . Fut19 , 1 ) ;
844 d a t a . F u t 1 8 f i r s t d i f f = d a t a . Fut18 − l a g m a t r i x ( d a t a . Fut18 , 1 ) ;
845 d a t a . F u t 1 7 f i r s t d i f f = d a t a . Fut17 − l a g m a t r i x ( d a t a . Fut17 , 1 ) ;
846 d a t a . F u t 1 6 f i r s t d i f f = d a t a . Fut16 − l a g m a t r i x ( d a t a . Fut16 , 1 ) ;
847 d a t a . F u t 1 5 f i r s t d i f f = d a t a . Fut15 − l a g m a t r i x ( d a t a . Fut15 , 1 ) ;
848 d a t a . F u t 1 4 f i r s t d i f f = d a t a . Fut14 − l a g m a t r i x ( d a t a . Fut14 , 1 ) ;
849
850 % F i n d i n g r e s i d u a l s between Spot and l a g g e d Fut19 :
851 r e g 1 = t a b l e ( ) ;
852 r e g 1 . Date = d a t a . Date ;
853 r e g 1 . Spot = d a t a . Spot ;
854 r e g 1 . LagFut19 = l a g m a t r i x ( d a t a . Fut19 , 1 ) ;
855 r e g 1 ( 1 , : ) = [ ] ;
856 r e g 1 ( 1 7 0 0 :end, : ) = [ ] ;
857 model1 = f i t l m ( r e g 1 , ’ Spot ˜ LagFut19 ’)
858 r e g 1 . r e s i d u a l s 1 = model1 . R e s i d u a l s . Raw ;
859 f i g u r e;
860 p l o t( r e g 1 . Date , r e g 1 . r e s i d u a l s 1 ) ;
861
862 % D e f i n i n g ECM v a r i a b l e s − Spot and Fut19 :
863 ECM1 = t a b l e ( ) ;
864 ECM1. Date = r e g 1 . Date ;
865 ECM1. S p o t f i r s t d i f f = d a t a . S p o t f i r s t d i f f ( 2 : 1 7 0 0 ) ;
866 ECM1. L a g g e d R e s i d u a l s = l a g m a t r i x ( r e g 1 . r e s i d u a l s 1 , 1 ) ;
867 %Lag v a r i a b l e s − Fut :
868 ECM1. F u t 1 9 f i r s t d i f f l a g 1 = r e g 1 . LagFut19 − l a g m a t r i x ( r e g 1 . LagFut19 , 1 ) ;
869 ECM1. F u t 1 9 f i r s t d i f f l a g 2 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 1 ) ;
870 ECM1. F u t 1 9 f i r s t d i f f l a g 3 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 2 ) ;
871 ECM1. F u t 1 9 f i r s t d i f f l a g 4 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 3 ) ;
872 ECM1. F u t 1 9 f i r s t d i f f l a g 5 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 4 ) ;
873 ECM1. F u t 1 9 f i r s t d i f f l a g 6 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 5 ) ;
874 ECM1. F u t 1 9 f i r s t d i f f l a g 7 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 6 ) ;
875 ECM1. F u t 1 9 f i r s t d i f f l a g 8 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 7 ) ;
876 ECM1. F u t 1 9 f i r s t d i f f l a g 9 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 8 ) ;
877 ECM1. F u t 1 9 f i r s t d i f f l a g 1 0 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 9 ) ;
878 ECM1. F u t 1 9 f i r s t d i f f l a g 1 1 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 1 0 ) ;
879 ECM1. F u t 1 9 f i r s t d i f f l a g 1 2 = l a g m a t r i x (ECM1. F u t 1 9 f i r s t d i f f l a g 1 , 1 1 ) ;
880 %Lag v a r i a b l e s s p o t :
881 ECM1. S p o t f i r s t d i f f l a g 1 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 1 ) ;
882 ECM1. S p o t f i r s t d i f f l a g 2 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 2 ) ;
883 ECM1. S p o t f i r s t d i f f l a g 3 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 3 ) ;
884 ECM1. S p o t f i r s t d i f f l a g 4 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 4 ) ;
885 ECM1. S p o t f i r s t d i f f l a g 5 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 5 ) ;
886 ECM1. S p o t f i r s t d i f f l a g 6 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 6 ) ;
887 ECM1. S p o t f i r s t d i f f l a g 7 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 7 ) ;
888 ECM1. S p o t f i r s t d i f f l a g 8 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 8 ) ;
889 ECM1. S p o t f i r s t d i f f l a g 9 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 9 ) ;
890 ECM1. S p o t f i r s t d i f f l a g 1 0 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 1 0 ) ;
891 ECM1. S p o t f i r s t d i f f l a g 1 1 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 1 1 ) ;
892 ECM1. S p o t f i r s t d i f f l a g 1 2 = l a g m a t r i x (ECM1. S p o t f i r s t d i f f , 1 2 ) ;
893
894 ECM 1 = f i t l m (ECM1, [’ S p o t f i r s t d i f f ˜ L a g g e d R e s i d u a l s + F u t 1 9 f i r s t d i f f l a g 1 + F u t 1 9 f i r s t d i f f l a g 2 ’ . . .
895 ’+ F u t 1 9 f i r s t d i f f l a g 3 + F u t 1 9 f i r s t d i f f l a g 4 + F u t 1 9 f i r s t d i f f l a g 5 + F u t 1 9 f i r s t d i f f l a g 6 ’ . . .
896 ’+ F u t 1 9 f i r s t d i f f l a g 7 + F u t 1 9 f i r s t d i f f l a g 8 + F u t 1 9 f i r s t d i f f l a g 9 + F u t 1 9 f i r s t d i f f l a g 1 0 ’ . . .
897 ’+ F u t 1 9 f i r s t d i f f l a g 1 1 + F u t 1 9 f i r s t d i f f l a g 1 2 + S p o t f i r s t d i f f l a g 1 + S p o t f i r s t d i f f l a g 2 ’ . . .
898 ’+ S p o t f i r s t d i f f l a g 3 + S p o t f i r s t d i f f l a g 4 + S p o t f i r s t d i f f l a g 5 + S p o t f i r s t d i f f l a g 6 ’ . . .
899 ’+ S p o t f i r s t d i f f l a g 7 + S p o t f i r s t d i f f l a g 8 + S p o t f i r s t d i f f l a g 9 + S p o t f i r s t d i f f l a g 1 0 ’ . . .
900 ’+ S p o t f i r s t d i f f l a g 1 1 + S p o t f i r s t d i f f l a g 1 2 ’] )
901
902 % Engle ’ s ARCH T e s t f o r ECM F19 :
903 ECM1. S q R e s i d u a l s = (ECM 1 . R e s i d u a l s . Raw) . ˆ 2 ;
904 ECM1. r e s 1 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 1 ) ;
905 ECM1. r e s 2 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 2 ) ;
906 ECM1. r e s 3 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 3 ) ;
907 ECM1. r e s 4 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 4 ) ;
908 ECM1. r e s 5 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 5 ) ;
909 ECM1. r e s 6 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 6 ) ;
910 ECM1. r e s 7 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 7 ) ;
911 ECM1. r e s 8 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 8 ) ;
912 ECM1. r e s 9 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 9 ) ;
913 ECM1. r e s 1 0 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 1 0 ) ;
914 ECM1. r e s 1 1 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 1 1 ) ;
915 ECM1. r e s 1 2 = l a g m a t r i x (ECM1. S q R e s i d u a l s , 1 2 ) ;
916
917 ECM1 = f i l l m i s s i n g (ECM1, ’ c o n s t a n t ’, 0 , ’ D a t a V a r i a b l e s ’, . . .
918 {’ r e s 1 ’,’ r e s 2 ’,’ r e s 3 ’,’ r e s 4 ’,’ r e s 5 ’,’ r e s 6 ’,’ r e s 7 ’, . . .
919 ’ r e s 8 ’,’ r e s 9 ’,’ r e s 1 0 ’,’ r e s 1 1 ’,’ r e s 1 2 ’}) ;
920
921 % Running t h e a u x i l i a r y r e g r e s s i o n
922 AuxReg1 = f i t l m (ECM1, [ ’ S q R e s i d u a l s ˜ r e s 1 + r e s 2 + r e s 3 + r e s 3 + r e s 4 + r e s 5 ’ . . .
923 ’+ r e s 6 + r e s 7 + r e s 8 + r e s 9 + r e s 1 0 + r e s 1 1 + r e s 1 2 ’] )
924
925 % T e s t i n g f o r a u t o c o r r e l a t i o n :
926 T = 1 6 8 7 ;
927 a l p h a = [ 0 . 1 , 0 . 0 5 , 0 . 0 1 ]
928 TestStatARCH = (T)∗AuxReg1 . Rsquared . O r d i n a r y
929 pVal = 1 − c d f ( ’ C h i s q u a r e ’, TestStatARCH , 1 2 )
930 c r i t i c a l A R C H = c h i 2 i n v (1−alpha , 1 2 ) ;
931 r e j e c t i o n = TestStatARCH > c r i t i c a l A R C H
932
933 % ECM−GARCH: Spot and Fut19 :
934 GARCH1 = g a r c h ( ’ GARCHlags ’, 1 , ’ ARCHlags ’, 1 )
935 [ estMdl , estParamCov , l o g L ] = e s t i m a t e (GARCH1, ECM1. S p o t f i r s t d i f f )
936 condVar = i n f e r ( estMdl , ECM1. S p o t f i r s t d i f f ) ;
937 ECM1. condVol = s q r t( condVar ) ;
938
939 ECM GARCH 1 = f i t l m (ECM1, [ ’ S p o t f i r s t d i f f ˜ L a g g e d R e s i d u a l s + F u t 1 9 f i r s t d i f f l a g 1 + F u t 1 9 f i r s t d i f f l a g 2 ’ . . .
940 ’+ F u t 1 9 f i r s t d i f f l a g 3 + F u t 1 9 f i r s t d i f f l a g 4 + F u t 1 9 f i r s t d i f f l a g 5 + F u t 1 9 f i r s t d i f f l a g 6 ’ . . .
941 ’+ F u t 1 9 f i r s t d i f f l a g 7 + F u t 1 9 f i r s t d i f f l a g 8 + F u t 1 9 f i r s t d i f f l a g 9 + F u t 1 9 f i r s t d i f f l a g 1 0 ’ . . .
942 ’+ F u t 1 9 f i r s t d i f f l a g 1 1 + F u t 1 9 f i r s t d i f f l a g 1 2 + S p o t f i r s t d i f f l a g 1 + S p o t f i r s t d i f f l a g 2 ’ . . .
943 ’+ S p o t f i r s t d i f f l a g 3 + S p o t f i r s t d i f f l a g 4 + S p o t f i r s t d i f f l a g 5 + S p o t f i r s t d i f f l a g 6 ’ . . .
944 ’+ S p o t f i r s t d i f f l a g 7 + S p o t f i r s t d i f f l a g 8 + S p o t f i r s t d i f f l a g 9 + S p o t f i r s t d i f f l a g 1 0 ’ . . .
945 ’+ S p o t f i r s t d i f f l a g 1 1 + S p o t f i r s t d i f f l a g 1 2 + condVol ’] )
946
947 f i g u r e;
948 p l o t(ECM1. Date , ECM1. S p o t f i r s t d i f f ) ;
949 h o l d on ;
950 p l o t(ECM1. Date , ECM1. condVol ) ;
951 h o l d o f f ;
952 l e g e n d(’ Log−d i f f e r e n c e d s p o t p r i c e ’, ’ I n f e r r e d v o l a t i l i t y ’) ;
953 box (’ o f f ’) ;
954
955 % F i n d i n g r e s i d u a l s between Spot and l a g g e d Fut18 :
956 r e g 2 = t a b l e ( ) ;
957 r e g 2 . Date = d a t a . Date ;
958 r e g 2 . Spot = d a t a . Spot ;
959 r e g 2 . LagFut18 = l a g m a t r i x ( d a t a . Fut18 , 1 ) ;
960 r e g 2 ( 1 , : ) = [ ] ;
961 r e g 2 ( 1 4 5 5 :end, : ) = [ ] ;
962 model2 = f i t l m ( r e g 2 , ’ Spot ˜ LagFut18 ’)
963 r e g 2 . r e s i d u a l s = model2 . R e s i d u a l s . Raw ;
964 p l o t( r e g 2 . Date , r e g 2 . r e s i d u a l s )
965
966 % D e f i n i n g ECM v a r i a b l e s − Spot and Fut18 :
967 ECM2 = t a b l e ( ) ;
968 ECM2. Date = r e g 2 . Date ;
969 ECM2. S p o t f i r s t d i f f = d a t a . S p o t f i r s t d i f f ( 2 : 1 4 5 5 ) ;
970 ECM2. L a g g e d R e s i d u a l s = l a g m a t r i x ( r e g 2 . r e s i d u a l s , 1 ) ;
971 %Lag v a r i a b l e s − Fut :
972 ECM2. F u t 1 8 f i r s t d i f f l a g 1 = r e g 2 . LagFut18 − l a g m a t r i x ( r e g 2 . LagFut18 , 1 ) ;