statsample-timeseries 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.document +5 -0
- data/.travis.yml +13 -0
- data/Gemfile +22 -0
- data/LICENSE.txt +22 -0
- data/README.rdoc +72 -0
- data/Rakefile +47 -0
- data/VERSION +1 -0
- data/bin/bio-statsample-timeseries +74 -0
- data/features/acf.feature +31 -0
- data/features/pacf.feature +42 -0
- data/features/step_definitions/bio-statsample-timeseries_steps.rb +0 -0
- data/features/step_definitions/step_definitions.rb +37 -0
- data/features/step_definitions/step_definitions_acf.rb +8 -0
- data/features/support/env.rb +15 -0
- data/lib/statsample-timeseries.rb +18 -0
- data/lib/statsample-timeseries/arima.rb +246 -0
- data/lib/statsample-timeseries/arima/kalman.rb +148 -0
- data/lib/statsample-timeseries/arima/likelihood.rb +101 -0
- data/lib/statsample-timeseries/timeseries.rb +291 -0
- data/lib/statsample-timeseries/timeseries/pacf.rb +164 -0
- data/lib/statsample-timeseries/utility.rb +154 -0
- data/test/fixtures/stock_data.csv +500 -0
- data/test/helper.rb +81 -0
- data/test/test_arima_ks.rb +106 -0
- data/test/test_arima_simulators.rb +186 -0
- data/test/test_matrix.rb +92 -0
- data/test/test_pacf.rb +52 -0
- data/test/test_tseries.rb +103 -0
- data/test/test_wald.rb +71 -0
- metadata +273 -0
data/test/test_pacf.rb
ADDED
@@ -0,0 +1,52 @@
|
|
1
|
+
require(File.expand_path(File.dirname(__FILE__)+'/helper.rb'))
|
2
|
+
class StatsampleTimeSeriesPacfTestCase < MiniTest::Unit::TestCase
|
3
|
+
context(Statsample::TimeSeries) do
|
4
|
+
include Statsample::TimeSeries
|
5
|
+
setup do
|
6
|
+
@ts = (1..20).map { |x| x * 10 }.to_ts
|
7
|
+
#setting up a proc to get a closure for pacf calling with variable lags and methods
|
8
|
+
@pacf_proc =->(k, method) { @ts.pacf(k, method) }
|
9
|
+
end
|
10
|
+
|
11
|
+
should "return correct correct pacf size for lags = 5" do
|
12
|
+
assert_equal @pacf_proc.call(5, 'yw').size, 6
|
13
|
+
assert_equal @pacf_proc.call(5, 'mle').size, 6
|
14
|
+
#first element is 1.0
|
15
|
+
end
|
16
|
+
|
17
|
+
should "return correct correct pacf size for lags = 10" do
|
18
|
+
assert_equal @pacf_proc.call(10, 'yw').size, 11
|
19
|
+
assert_equal @pacf_proc.call(10, 'mle').size, 11
|
20
|
+
#first element is 1.0
|
21
|
+
end
|
22
|
+
|
23
|
+
should "have first element as 1.0" do
|
24
|
+
assert_equal @pacf_proc.call(10, 'yw')[0], 1.0
|
25
|
+
assert_equal @pacf_proc.call(10, 'mle')[0], 1.0
|
26
|
+
end
|
27
|
+
|
28
|
+
should "give correct pacf results for unbiased yule-walker" do
|
29
|
+
result_10 = [1.0, 0.8947368421052632, -0.10582010582010604, -0.11350188273265083, -0.12357534824820737, -0.13686534216335522, -0.15470588235294147, -0.17938011883732036, -0.2151192288178601, -0.2707082833133261, -0.3678160919540221]
|
30
|
+
result_5 = [1.0, 0.8947368421052632, -0.10582010582010604, -0.11350188273265083, -0.12357534824820737, -0.13686534216335522]
|
31
|
+
assert_equal @pacf_proc.call(10, 'yw'), result_10
|
32
|
+
assert_equal @pacf_proc.call(5, 'yw'), result_5
|
33
|
+
|
34
|
+
#Checking for lag = (1..10)
|
35
|
+
1.upto(10) do |i|
|
36
|
+
assert_equal @pacf_proc.call(i, 'yw'), result_10[0..i]
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
should "give correct pacf results for mle yule-walker" do
|
41
|
+
result_10 = [1.0, 0.85, -0.07566212829370711, -0.07635069706072706, -0.07698628638512295, -0.07747034005560738, -0.0776780981161499, -0.07744984679625189, -0.0765803323191094, -0.07480650005932366, -0.07179435184923755]
|
42
|
+
result_5 = [1.0, 0.85, -0.07566212829370711, -0.07635069706072706, -0.07698628638512295, -0.07747034005560738]
|
43
|
+
assert_equal @pacf_proc.call(10, 'mle'), result_10
|
44
|
+
assert_equal @pacf_proc.call(5, 'mle'), result_5
|
45
|
+
|
46
|
+
#Checking for lag = (1..10)
|
47
|
+
1.upto(10) do |i|
|
48
|
+
assert_equal @pacf_proc.call(i, 'mle'), result_10[0..i]
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -0,0 +1,103 @@
|
|
1
|
+
require(File.expand_path(File.dirname(__FILE__)+'/helper.rb'))
|
2
|
+
|
3
|
+
class StatsampleTestTimeSeries < MiniTest::Unit::TestCase
|
4
|
+
include Statsample::Shorthand
|
5
|
+
|
6
|
+
# All calculations are compared to the output of the equivalent function in R
|
7
|
+
|
8
|
+
def setup
|
9
|
+
# daily closes of iShares XIU on the TSX
|
10
|
+
@xiu = Statsample::TimeSeries::Series.new [17.28, 17.45, 17.84, 17.74, 17.82, 17.85, 17.36, 17.3, 17.56, 17.49, 17.46, 17.4, 17.03, 17.01,
|
11
|
+
16.86, 16.86, 16.56, 16.36, 16.66, 16.77], :scale
|
12
|
+
end
|
13
|
+
|
14
|
+
def test_acf
|
15
|
+
acf = @xiu.acf
|
16
|
+
|
17
|
+
assert_equal 14, acf.length
|
18
|
+
|
19
|
+
# test the first few autocorrelations
|
20
|
+
assert_in_delta 1.0, acf[0], 0.0001
|
21
|
+
assert_in_delta 0.852, acf[1], 0.001
|
22
|
+
assert_in_delta 0.669, acf[2], 0.001
|
23
|
+
assert_in_delta 0.486, acf[3], 0.001
|
24
|
+
end
|
25
|
+
|
26
|
+
def test_lag
|
27
|
+
#test of default lag
|
28
|
+
lag1 = @xiu.lag
|
29
|
+
|
30
|
+
assert_in_delta 16.66, lag1[lag1.size - 1], 0.001
|
31
|
+
assert_in_delta 16.36, lag1[lag1.size - 2], 0.001
|
32
|
+
|
33
|
+
#test with different lagging unit
|
34
|
+
lag2 = @xiu.lag(2)
|
35
|
+
|
36
|
+
assert_in_delta 16.36, lag2[lag2.size - 1], 0.001
|
37
|
+
assert_in_delta 16.56, lag2[lag2.size - 2], 0.001
|
38
|
+
end
|
39
|
+
|
40
|
+
def test_delta
|
41
|
+
diff = @xiu.diff
|
42
|
+
|
43
|
+
assert_in_delta 0.11, diff[@xiu.size - 1], 0.001
|
44
|
+
assert_in_delta 0.30, diff[@xiu.size - 2], 0.001
|
45
|
+
assert_in_delta -0.20, diff[@xiu.size - 3], 0.001
|
46
|
+
end
|
47
|
+
|
48
|
+
def test_ma
|
49
|
+
# test default
|
50
|
+
ma10 = @xiu.ma
|
51
|
+
|
52
|
+
assert_in_delta ma10[-1], 16.897, 0.001
|
53
|
+
assert_in_delta ma10[-5], 17.233, 0.001
|
54
|
+
assert_in_delta ma10[-10], 17.587, 0.001
|
55
|
+
|
56
|
+
# test with a different lookback period
|
57
|
+
ma5 = @xiu.ma 5
|
58
|
+
|
59
|
+
assert_in_delta ma5[-1], 16.642, 0.001
|
60
|
+
assert_in_delta ma5[-10], 17.434, 0.001
|
61
|
+
assert_in_delta ma5[-15], 17.74, 0.001
|
62
|
+
end
|
63
|
+
|
64
|
+
def test_ema
|
65
|
+
# test default
|
66
|
+
ema10 = @xiu.ema
|
67
|
+
|
68
|
+
assert_in_delta ema10[-1], 16.87187, 0.00001
|
69
|
+
assert_in_delta ema10[-5], 17.19187, 0.00001
|
70
|
+
assert_in_delta ema10[-10], 17.54918, 0.00001
|
71
|
+
|
72
|
+
# test with a different lookback period
|
73
|
+
ema5 = @xiu.ema 5
|
74
|
+
|
75
|
+
assert_in_delta ema5[-1], 16.71299, 0.0001
|
76
|
+
assert_in_delta ema5[-10], 17.49079, 0.0001
|
77
|
+
assert_in_delta ema5[-15], 17.70067, 0.0001
|
78
|
+
|
79
|
+
# test with a different smoother
|
80
|
+
ema_w = @xiu.ema 10, true
|
81
|
+
|
82
|
+
assert_in_delta ema_w[-1], 17.08044, 0.00001
|
83
|
+
assert_in_delta ema_w[-5], 17.33219, 0.00001
|
84
|
+
assert_in_delta ema_w[-10], 17.55810, 0.00001
|
85
|
+
end
|
86
|
+
|
87
|
+
def test_macd
|
88
|
+
# MACD uses a lot more data than the other ones, so we need a bigger vector
|
89
|
+
data = File.readlines(File.dirname(__FILE__) + "/fixtures/stock_data.csv").map(&:to_f).to_time_series
|
90
|
+
|
91
|
+
macd, signal = data.macd
|
92
|
+
|
93
|
+
# check the MACD
|
94
|
+
assert_in_delta 3.12e-4, macd[-1], 1e-6
|
95
|
+
assert_in_delta -1.07e-2, macd[-10], 1e-4
|
96
|
+
assert_in_delta -5.65e-3, macd[-20], 1e-5
|
97
|
+
|
98
|
+
# check the signal
|
99
|
+
assert_in_delta -0.00628, signal[-1], 1e-5
|
100
|
+
assert_in_delta -0.00971, signal[-10], 1e-5
|
101
|
+
assert_in_delta -0.00338, signal[-20], 1e-5
|
102
|
+
end
|
103
|
+
end
|
data/test/test_wald.rb
ADDED
@@ -0,0 +1,71 @@
|
|
1
|
+
require(File.expand_path(File.dirname(__FILE__)+'/helper.rb'))
|
2
|
+
|
3
|
+
class StatsampleWaldTest < MiniTest::Unit::TestCase
|
4
|
+
# Wald test is useful to test a series of n acf with Chi-square
|
5
|
+
# degree of freedom. It is extremely useful to test fit the fit of
|
6
|
+
# an ARIMA model to test the residuals.
|
7
|
+
|
8
|
+
include Statsample::TimeSeries
|
9
|
+
include Statsample::Shorthand
|
10
|
+
include Distribution
|
11
|
+
|
12
|
+
def setup
|
13
|
+
#create time series to evaluate later
|
14
|
+
@wald = 100.times.map { rand(100) }.to_ts
|
15
|
+
end
|
16
|
+
|
17
|
+
def sum_of_squares_of_acf_series(lags)
|
18
|
+
#perform sum of squares for a series of acf with specified lags
|
19
|
+
acf = @wald.acf(lags)
|
20
|
+
return acf.map { |x| x ** 2 }.inject(:+)
|
21
|
+
end
|
22
|
+
|
23
|
+
def chisquare_cdf(sum_of_squares, lags)
|
24
|
+
1 - ChiSquare.cdf(sum_of_squares, lags)
|
25
|
+
end
|
26
|
+
|
27
|
+
|
28
|
+
def test_wald_with_5_lags
|
29
|
+
#number of lags for acf = 5
|
30
|
+
lags = 5
|
31
|
+
sum_of_squares = sum_of_squares_of_acf_series(lags)
|
32
|
+
assert_in_delta chisquare_cdf(sum_of_squares, lags), 1, 0.05
|
33
|
+
assert_equal @wald.acf(lags).size, lags + 1
|
34
|
+
end
|
35
|
+
|
36
|
+
|
37
|
+
def test_wald_with_10_lags
|
38
|
+
#number of lags for acf = 10
|
39
|
+
lags = 10
|
40
|
+
sum_of_squares = sum_of_squares_of_acf_series(lags)
|
41
|
+
assert_in_delta chisquare_cdf(sum_of_squares, lags), 1, 0.05
|
42
|
+
assert_equal @wald.acf(lags).size, lags + 1
|
43
|
+
end
|
44
|
+
|
45
|
+
|
46
|
+
def test_wald_with_15_lags
|
47
|
+
#number of lags for acf = 15
|
48
|
+
lags = 15
|
49
|
+
sum_of_squares = sum_of_squares_of_acf_series(lags)
|
50
|
+
assert_in_delta chisquare_cdf(sum_of_squares, lags), 1, 0.05
|
51
|
+
assert_equal @wald.acf(lags).size, lags + 1
|
52
|
+
end
|
53
|
+
|
54
|
+
|
55
|
+
def test_wald_with_20_lags
|
56
|
+
#number of lags for acf = 20
|
57
|
+
lags = 20
|
58
|
+
sum_of_squares = sum_of_squares_of_acf_series(lags)
|
59
|
+
assert_in_delta chisquare_cdf(sum_of_squares, lags), 1, 0.05
|
60
|
+
assert_equal @wald.acf(lags).size, lags + 1
|
61
|
+
end
|
62
|
+
|
63
|
+
|
64
|
+
def test_wald_with_25_lags
|
65
|
+
#number of lags for acf = 25
|
66
|
+
lags = 25
|
67
|
+
sum_of_squares = sum_of_squares_of_acf_series(lags)
|
68
|
+
assert_in_delta chisquare_cdf(sum_of_squares, lags), 1, 0.05
|
69
|
+
assert_equal @wald.acf(lags).size, lags + 1
|
70
|
+
end
|
71
|
+
end
|
metadata
ADDED
@@ -0,0 +1,273 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: statsample-timeseries
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.2
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Ankur Goel
|
9
|
+
- Claudio Bustos
|
10
|
+
autorequire:
|
11
|
+
bindir: bin
|
12
|
+
cert_chain: []
|
13
|
+
date: 2013-09-25 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: statsample
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
none: false
|
19
|
+
requirements:
|
20
|
+
- - '='
|
21
|
+
- !ruby/object:Gem::Version
|
22
|
+
version: 1.2.0
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
27
|
+
requirements:
|
28
|
+
- - '='
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
version: 1.2.0
|
31
|
+
- !ruby/object:Gem::Dependency
|
32
|
+
name: activesupport
|
33
|
+
requirement: !ruby/object:Gem::Requirement
|
34
|
+
none: false
|
35
|
+
requirements:
|
36
|
+
- - '='
|
37
|
+
- !ruby/object:Gem::Version
|
38
|
+
version: 3.2.10
|
39
|
+
type: :runtime
|
40
|
+
prerelease: false
|
41
|
+
version_requirements: !ruby/object:Gem::Requirement
|
42
|
+
none: false
|
43
|
+
requirements:
|
44
|
+
- - '='
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: 3.2.10
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: shoulda
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :development
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
none: false
|
59
|
+
requirements:
|
60
|
+
- - ! '>='
|
61
|
+
- !ruby/object:Gem::Version
|
62
|
+
version: '0'
|
63
|
+
- !ruby/object:Gem::Dependency
|
64
|
+
name: rdoc
|
65
|
+
requirement: !ruby/object:Gem::Requirement
|
66
|
+
none: false
|
67
|
+
requirements:
|
68
|
+
- - ~>
|
69
|
+
- !ruby/object:Gem::Version
|
70
|
+
version: '3.12'
|
71
|
+
type: :development
|
72
|
+
prerelease: false
|
73
|
+
version_requirements: !ruby/object:Gem::Requirement
|
74
|
+
none: false
|
75
|
+
requirements:
|
76
|
+
- - ~>
|
77
|
+
- !ruby/object:Gem::Version
|
78
|
+
version: '3.12'
|
79
|
+
- !ruby/object:Gem::Dependency
|
80
|
+
name: minitest
|
81
|
+
requirement: !ruby/object:Gem::Requirement
|
82
|
+
none: false
|
83
|
+
requirements:
|
84
|
+
- - ~>
|
85
|
+
- !ruby/object:Gem::Version
|
86
|
+
version: 4.7.5
|
87
|
+
type: :development
|
88
|
+
prerelease: false
|
89
|
+
version_requirements: !ruby/object:Gem::Requirement
|
90
|
+
none: false
|
91
|
+
requirements:
|
92
|
+
- - ~>
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: 4.7.5
|
95
|
+
- !ruby/object:Gem::Dependency
|
96
|
+
name: cucumber
|
97
|
+
requirement: !ruby/object:Gem::Requirement
|
98
|
+
none: false
|
99
|
+
requirements:
|
100
|
+
- - ! '>='
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
version: '0'
|
103
|
+
type: :development
|
104
|
+
prerelease: false
|
105
|
+
version_requirements: !ruby/object:Gem::Requirement
|
106
|
+
none: false
|
107
|
+
requirements:
|
108
|
+
- - ! '>='
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: bundler
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
none: false
|
115
|
+
requirements:
|
116
|
+
- - ~>
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
version: 1.3.5
|
119
|
+
type: :development
|
120
|
+
prerelease: false
|
121
|
+
version_requirements: !ruby/object:Gem::Requirement
|
122
|
+
none: false
|
123
|
+
requirements:
|
124
|
+
- - ~>
|
125
|
+
- !ruby/object:Gem::Version
|
126
|
+
version: 1.3.5
|
127
|
+
- !ruby/object:Gem::Dependency
|
128
|
+
name: jeweler
|
129
|
+
requirement: !ruby/object:Gem::Requirement
|
130
|
+
none: false
|
131
|
+
requirements:
|
132
|
+
- - ~>
|
133
|
+
- !ruby/object:Gem::Version
|
134
|
+
version: 1.8.4
|
135
|
+
type: :development
|
136
|
+
prerelease: false
|
137
|
+
version_requirements: !ruby/object:Gem::Requirement
|
138
|
+
none: false
|
139
|
+
requirements:
|
140
|
+
- - ~>
|
141
|
+
- !ruby/object:Gem::Version
|
142
|
+
version: 1.8.4
|
143
|
+
- !ruby/object:Gem::Dependency
|
144
|
+
name: bio
|
145
|
+
requirement: !ruby/object:Gem::Requirement
|
146
|
+
none: false
|
147
|
+
requirements:
|
148
|
+
- - ! '>='
|
149
|
+
- !ruby/object:Gem::Version
|
150
|
+
version: 1.4.2
|
151
|
+
type: :development
|
152
|
+
prerelease: false
|
153
|
+
version_requirements: !ruby/object:Gem::Requirement
|
154
|
+
none: false
|
155
|
+
requirements:
|
156
|
+
- - ! '>='
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: 1.4.2
|
159
|
+
- !ruby/object:Gem::Dependency
|
160
|
+
name: rdoc
|
161
|
+
requirement: !ruby/object:Gem::Requirement
|
162
|
+
none: false
|
163
|
+
requirements:
|
164
|
+
- - ~>
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '3.12'
|
167
|
+
type: :development
|
168
|
+
prerelease: false
|
169
|
+
version_requirements: !ruby/object:Gem::Requirement
|
170
|
+
none: false
|
171
|
+
requirements:
|
172
|
+
- - ~>
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: '3.12'
|
175
|
+
- !ruby/object:Gem::Dependency
|
176
|
+
name: mocha
|
177
|
+
requirement: !ruby/object:Gem::Requirement
|
178
|
+
none: false
|
179
|
+
requirements:
|
180
|
+
- - ~>
|
181
|
+
- !ruby/object:Gem::Version
|
182
|
+
version: 0.14.0
|
183
|
+
type: :development
|
184
|
+
prerelease: false
|
185
|
+
version_requirements: !ruby/object:Gem::Requirement
|
186
|
+
none: false
|
187
|
+
requirements:
|
188
|
+
- - ~>
|
189
|
+
- !ruby/object:Gem::Version
|
190
|
+
version: 0.14.0
|
191
|
+
- !ruby/object:Gem::Dependency
|
192
|
+
name: gsl
|
193
|
+
requirement: !ruby/object:Gem::Requirement
|
194
|
+
none: false
|
195
|
+
requirements:
|
196
|
+
- - ! '>='
|
197
|
+
- !ruby/object:Gem::Version
|
198
|
+
version: '0'
|
199
|
+
type: :development
|
200
|
+
prerelease: false
|
201
|
+
version_requirements: !ruby/object:Gem::Requirement
|
202
|
+
none: false
|
203
|
+
requirements:
|
204
|
+
- - ! '>='
|
205
|
+
- !ruby/object:Gem::Version
|
206
|
+
version: '0'
|
207
|
+
description: Statsample-timeseries is an extension to Statsample. It incorporates
|
208
|
+
helpful timeseries functions and modules like ARMA, ARIMA, acf, pacf, lags etc.
|
209
|
+
email: ankurgel@gmail.com
|
210
|
+
executables:
|
211
|
+
- bio-statsample-timeseries
|
212
|
+
extensions: []
|
213
|
+
extra_rdoc_files:
|
214
|
+
- LICENSE.txt
|
215
|
+
- README.rdoc
|
216
|
+
files:
|
217
|
+
- .document
|
218
|
+
- .travis.yml
|
219
|
+
- Gemfile
|
220
|
+
- LICENSE.txt
|
221
|
+
- README.rdoc
|
222
|
+
- Rakefile
|
223
|
+
- VERSION
|
224
|
+
- bin/bio-statsample-timeseries
|
225
|
+
- features/acf.feature
|
226
|
+
- features/pacf.feature
|
227
|
+
- features/step_definitions/bio-statsample-timeseries_steps.rb
|
228
|
+
- features/step_definitions/step_definitions.rb
|
229
|
+
- features/step_definitions/step_definitions_acf.rb
|
230
|
+
- features/support/env.rb
|
231
|
+
- lib/statsample-timeseries.rb
|
232
|
+
- lib/statsample-timeseries/arima.rb
|
233
|
+
- lib/statsample-timeseries/arima/kalman.rb
|
234
|
+
- lib/statsample-timeseries/arima/likelihood.rb
|
235
|
+
- lib/statsample-timeseries/timeseries.rb
|
236
|
+
- lib/statsample-timeseries/timeseries/pacf.rb
|
237
|
+
- lib/statsample-timeseries/utility.rb
|
238
|
+
- test/fixtures/stock_data.csv
|
239
|
+
- test/helper.rb
|
240
|
+
- test/test_arima_ks.rb
|
241
|
+
- test/test_arima_simulators.rb
|
242
|
+
- test/test_matrix.rb
|
243
|
+
- test/test_pacf.rb
|
244
|
+
- test/test_tseries.rb
|
245
|
+
- test/test_wald.rb
|
246
|
+
homepage: http://github.com/AnkurGel/statsample-timeseries
|
247
|
+
licenses: []
|
248
|
+
post_install_message:
|
249
|
+
rdoc_options: []
|
250
|
+
require_paths:
|
251
|
+
- lib
|
252
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
253
|
+
none: false
|
254
|
+
requirements:
|
255
|
+
- - ! '>='
|
256
|
+
- !ruby/object:Gem::Version
|
257
|
+
version: '0'
|
258
|
+
segments:
|
259
|
+
- 0
|
260
|
+
hash: -237853649
|
261
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
262
|
+
none: false
|
263
|
+
requirements:
|
264
|
+
- - ! '>='
|
265
|
+
- !ruby/object:Gem::Version
|
266
|
+
version: '0'
|
267
|
+
requirements: []
|
268
|
+
rubyforge_project:
|
269
|
+
rubygems_version: 1.8.25
|
270
|
+
signing_key:
|
271
|
+
specification_version: 3
|
272
|
+
summary: TimeSeries modules for Statsample
|
273
|
+
test_files: []
|