diff --git a/matlab/print_expectations.m b/matlab/print_expectations.m
index 79d000c92fe2b4d05c14e1e32f86fb67703c67ce..3c529c793c4d845832f4a42987598226b966d78b 100644
--- a/matlab/print_expectations.m
+++ b/matlab/print_expectations.m
@@ -253,6 +253,10 @@ if isequal(expectationmodel.auxiliary_model_type, 'trend_component')
     maxlag = maxlag+1;
 end
 
+if isequal(expectationmodelkind, 'var')
+    timeindices = (0:(maxlag-1))+abs(expectationmodel.time_shift);
+end
+
 if isequal(expectationmodelkind, 'var') && isequal(expectationmodel.auxiliary_model_type, 'var')
     id = id+1;
     expression = sprintf('%1.16f', M_.params(expectationmodel.param_indices(id)));
@@ -304,8 +308,8 @@ for i=1:maxlag
         end
         switch expectationmodelkind
           case 'var'
-            if i>1
-                variable = sprintf('dbase.%s(-%d)', variable, i-1);
+            if timeindices(i)>0
+                variable = sprintf('dbase.%s(-%d)', variable, timeindices(i));
             else
                 variable = sprintf('dbase.%s', variable);
             end