The gFOBI method for blind source separation problem. It is used in case of time series with stochastic volatility. The method is a generalization of FOBI, which is a method designed for iid data.
1 2 3 4 5 6 
X 
Numeric matrix or multivariate time series object of class 
k 
Vector of lags. Lag can be any nonnegative integer, or a vector consisting of them. Default is 
eps 
Convergence tolerance. 
maxiter 
Maximum number of iterations. 
method 
Method to use for the joint diagonalization, options are 
... 
Other arguments passed on to chosen joint diagonalization method. 
Assume that Y has p columns and it is whitened, i.e. Y = S^(1/2)*(X  (1/T)*sum_t(X_(ti))), where S is a sample covariance matrix of X. Algorithm first calculates
B^ij_k(Y) = (1/(T  k))*sum[Y_(t + k) Y_t' E^ij Y_t Y_(t + k)'],
where t = 1, …, T, and then
B_k(Y) = sum(B^ii_k(Y)),
for i = 1, …, p.
The algorithm finds an orthogonal matrix U by maximizing
sum(diag(U B_k(Y) U')^2).
The final unmixing matrix is then W = U S^(1/2).
A list with class 'bss' containing the following components:
W 
The estimated unmixing matrix. 
k 
The vector of the used lags. 
S 
Estimated sources as time series object standardized to have mean 0 and unit variances. 
Markus Matilainen, Klaus Nordhausen
Cardoso, J.F., (1989), Source separation using higher order moments, in: Proceedings of the IEEE International Conference on Acoustics, Speech and Signal Processing, 2109–2112.
Matilainen, M., Nordhausen, K. and Oja, H. (2015), New independent component analysis tools for time series, Statistics & Probability Letters, 105, 80–87.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18  library(stochvol)
n < 10000
A < matrix(rnorm(9), 3, 3)
# simulate SV models
s1 < svsim(n, mu = 10, phi = 0.8, sigma = 0.1)$y
s2 < svsim(n, mu = 10, phi = 0.9, sigma = 0.2)$y
s3 < svsim(n, mu = 10, phi = 0.95, sigma = 0.4)$y
X < cbind(s1, s2, s3) %*% t(A)
res < gFOBI(X)
res
coef(res)
plot(res)
head(bss.components(res))
MD(res$W, A) # Minimum Distance Index, should be close to zero

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
Please suggest features or report bugs with the GitHub issue tracker.
All documentation is copyright its authors; we didn't write any of that.