tulirb 0.1.0 → 1.0.0

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/lib/tulirb.rb CHANGED
@@ -6,12 +6,917 @@ require_relative("tulirb/tulirb")
6
6
  module Tulirb
7
7
  class Error < StandardError; end
8
8
  extend(Ext)
9
- # Your code goes here...
10
9
 
11
- INDICATORS_INFO.each do |k, v|
12
- define_singleton_method(k) do |inputs, **options|
13
- opts = v[:options].map { |o| options[o.to_sym] || raise(ArgumentError, "missing keyword: :#{o}") }
14
- super(inputs, opts)
10
+ class << self
11
+ # Vector Absolute Value.
12
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
13
+ # @return [Array<Array<Numeric>>] 2d array of results.
14
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/abs)
15
+ def abs(inputs)
16
+ super(inputs, [])
17
+ end
18
+
19
+ # Vector Arccosine.
20
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
21
+ # @return [Array<Array<Numeric>>] 2d array of results.
22
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/acos)
23
+ def acos(inputs)
24
+ super(inputs, [])
25
+ end
26
+
27
+ # Accumulation/Distribution Line.
28
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
29
+ # @return [Array<Array<Numeric>>] 2d array of results.
30
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/ad)
31
+ def ad(inputs)
32
+ super(inputs, [])
33
+ end
34
+
35
+ # Vector Addition.
36
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
37
+ # @return [Array<Array<Numeric>>] 2d array of results.
38
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/add)
39
+ def add(inputs)
40
+ super(inputs, [])
41
+ end
42
+
43
+ # Accumulation/Distribution Oscillator.
44
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
45
+ # @param short_period [Numeric] Short Period.
46
+ # @param long_period [Numeric] Long Period.
47
+ # @return [Array<Array<Numeric>>] 2d array of results.
48
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/adosc)
49
+ def adosc(inputs, short_period:, long_period:)
50
+ super(inputs, [short_period, long_period])
51
+ end
52
+
53
+ # Average Directional Movement Index.
54
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
55
+ # @param period [Numeric] Period.
56
+ # @return [Array<Array<Numeric>>] 2d array of results.
57
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/adx)
58
+ def adx(inputs, period:)
59
+ super(inputs, [period])
60
+ end
61
+
62
+ # Average Directional Movement Rating.
63
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
64
+ # @param period [Numeric] Period.
65
+ # @return [Array<Array<Numeric>>] 2d array of results.
66
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/adxr)
67
+ def adxr(inputs, period:)
68
+ super(inputs, [period])
69
+ end
70
+
71
+ # Awesome Oscillator.
72
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
73
+ # @return [Array<Array<Numeric>>] 2d array of results.
74
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/ao)
75
+ def ao(inputs)
76
+ super(inputs, [])
77
+ end
78
+
79
+ # Absolute Price Oscillator.
80
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
81
+ # @param short_period [Numeric] Short Period.
82
+ # @param long_period [Numeric] Long Period.
83
+ # @return [Array<Array<Numeric>>] 2d array of results.
84
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/apo)
85
+ def apo(inputs, short_period:, long_period:)
86
+ super(inputs, [short_period, long_period])
87
+ end
88
+
89
+ # Aroon.
90
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
91
+ # @param period [Numeric] Period.
92
+ # @return [Array<Array<Numeric>>] 2d array of results.
93
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/aroon)
94
+ def aroon(inputs, period:)
95
+ super(inputs, [period])
96
+ end
97
+
98
+ # Aroon Oscillator.
99
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
100
+ # @param period [Numeric] Period.
101
+ # @return [Array<Array<Numeric>>] 2d array of results.
102
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/aroonosc)
103
+ def aroonosc(inputs, period:)
104
+ super(inputs, [period])
105
+ end
106
+
107
+ # Vector Arcsine.
108
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
109
+ # @return [Array<Array<Numeric>>] 2d array of results.
110
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/asin)
111
+ def asin(inputs)
112
+ super(inputs, [])
113
+ end
114
+
115
+ # Vector Arctangent.
116
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
117
+ # @return [Array<Array<Numeric>>] 2d array of results.
118
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/atan)
119
+ def atan(inputs)
120
+ super(inputs, [])
121
+ end
122
+
123
+ # Average True Range.
124
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
125
+ # @param period [Numeric] Period.
126
+ # @return [Array<Array<Numeric>>] 2d array of results.
127
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/atr)
128
+ def atr(inputs, period:)
129
+ super(inputs, [period])
130
+ end
131
+
132
+ # Average Price.
133
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
134
+ # @return [Array<Array<Numeric>>] 2d array of results.
135
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/avgprice)
136
+ def avgprice(inputs)
137
+ super(inputs, [])
138
+ end
139
+
140
+ # Bollinger Bands.
141
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
142
+ # @param period [Numeric] Period.
143
+ # @param stddev [Numeric] Stddev.
144
+ # @return [Array<Array<Numeric>>] 2d array of results.
145
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/bbands)
146
+ def bbands(inputs, period:, stddev:)
147
+ super(inputs, [period, stddev])
148
+ end
149
+
150
+ # Balance of Power.
151
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
152
+ # @return [Array<Array<Numeric>>] 2d array of results.
153
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/bop)
154
+ def bop(inputs)
155
+ super(inputs, [])
156
+ end
157
+
158
+ # Commodity Channel Index.
159
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
160
+ # @param period [Numeric] Period.
161
+ # @return [Array<Array<Numeric>>] 2d array of results.
162
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/cci)
163
+ def cci(inputs, period:)
164
+ super(inputs, [period])
165
+ end
166
+
167
+ # Vector Ceiling.
168
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
169
+ # @return [Array<Array<Numeric>>] 2d array of results.
170
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/ceil)
171
+ def ceil(inputs)
172
+ super(inputs, [])
173
+ end
174
+
175
+ # Chande Momentum Oscillator.
176
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
177
+ # @param period [Numeric] Period.
178
+ # @return [Array<Array<Numeric>>] 2d array of results.
179
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/cmo)
180
+ def cmo(inputs, period:)
181
+ super(inputs, [period])
182
+ end
183
+
184
+ # Vector Cosine.
185
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
186
+ # @return [Array<Array<Numeric>>] 2d array of results.
187
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/cos)
188
+ def cos(inputs)
189
+ super(inputs, [])
190
+ end
191
+
192
+ # Vector Hyperbolic Cosine.
193
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
194
+ # @return [Array<Array<Numeric>>] 2d array of results.
195
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/cosh)
196
+ def cosh(inputs)
197
+ super(inputs, [])
198
+ end
199
+
200
+ # Crossany.
201
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
202
+ # @return [Array<Array<Numeric>>] 2d array of results.
203
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/crossany)
204
+ def crossany(inputs)
205
+ super(inputs, [])
206
+ end
207
+
208
+ # Crossover.
209
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
210
+ # @return [Array<Array<Numeric>>] 2d array of results.
211
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/crossover)
212
+ def crossover(inputs)
213
+ super(inputs, [])
214
+ end
215
+
216
+ # Chaikins Volatility.
217
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
218
+ # @param period [Numeric] Period.
219
+ # @return [Array<Array<Numeric>>] 2d array of results.
220
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/cvi)
221
+ def cvi(inputs, period:)
222
+ super(inputs, [period])
223
+ end
224
+
225
+ # Linear Decay.
226
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
227
+ # @param period [Numeric] Period.
228
+ # @return [Array<Array<Numeric>>] 2d array of results.
229
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/decay)
230
+ def decay(inputs, period:)
231
+ super(inputs, [period])
232
+ end
233
+
234
+ # Double Exponential Moving Average.
235
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
236
+ # @param period [Numeric] Period.
237
+ # @return [Array<Array<Numeric>>] 2d array of results.
238
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/dema)
239
+ def dema(inputs, period:)
240
+ super(inputs, [period])
241
+ end
242
+
243
+ # Directional Indicator.
244
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
245
+ # @param period [Numeric] Period.
246
+ # @return [Array<Array<Numeric>>] 2d array of results.
247
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/di)
248
+ def di(inputs, period:)
249
+ super(inputs, [period])
250
+ end
251
+
252
+ # Vector Division.
253
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
254
+ # @return [Array<Array<Numeric>>] 2d array of results.
255
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/div)
256
+ def div(inputs)
257
+ super(inputs, [])
258
+ end
259
+
260
+ # Directional Movement.
261
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
262
+ # @param period [Numeric] Period.
263
+ # @return [Array<Array<Numeric>>] 2d array of results.
264
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/dm)
265
+ def dm(inputs, period:)
266
+ super(inputs, [period])
267
+ end
268
+
269
+ # Detrended Price Oscillator.
270
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
271
+ # @param period [Numeric] Period.
272
+ # @return [Array<Array<Numeric>>] 2d array of results.
273
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/dpo)
274
+ def dpo(inputs, period:)
275
+ super(inputs, [period])
276
+ end
277
+
278
+ # Directional Movement Index.
279
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
280
+ # @param period [Numeric] Period.
281
+ # @return [Array<Array<Numeric>>] 2d array of results.
282
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/dx)
283
+ def dx(inputs, period:)
284
+ super(inputs, [period])
285
+ end
286
+
287
+ # Exponential Decay.
288
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
289
+ # @param period [Numeric] Period.
290
+ # @return [Array<Array<Numeric>>] 2d array of results.
291
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/edecay)
292
+ def edecay(inputs, period:)
293
+ super(inputs, [period])
294
+ end
295
+
296
+ # Exponential Moving Average.
297
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
298
+ # @param period [Numeric] Period.
299
+ # @return [Array<Array<Numeric>>] 2d array of results.
300
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/ema)
301
+ def ema(inputs, period:)
302
+ super(inputs, [period])
303
+ end
304
+
305
+ # Ease of Movement.
306
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
307
+ # @return [Array<Array<Numeric>>] 2d array of results.
308
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/emv)
309
+ def emv(inputs)
310
+ super(inputs, [])
311
+ end
312
+
313
+ # Vector Exponential.
314
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
315
+ # @return [Array<Array<Numeric>>] 2d array of results.
316
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/exp)
317
+ def exp(inputs)
318
+ super(inputs, [])
319
+ end
320
+
321
+ # Fisher Transform.
322
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
323
+ # @param period [Numeric] Period.
324
+ # @return [Array<Array<Numeric>>] 2d array of results.
325
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/fisher)
326
+ def fisher(inputs, period:)
327
+ super(inputs, [period])
328
+ end
329
+
330
+ # Vector Floor.
331
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
332
+ # @return [Array<Array<Numeric>>] 2d array of results.
333
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/floor)
334
+ def floor(inputs)
335
+ super(inputs, [])
336
+ end
337
+
338
+ # Forecast Oscillator.
339
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
340
+ # @param period [Numeric] Period.
341
+ # @return [Array<Array<Numeric>>] 2d array of results.
342
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/fosc)
343
+ def fosc(inputs, period:)
344
+ super(inputs, [period])
345
+ end
346
+
347
+ # Hull Moving Average.
348
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
349
+ # @param period [Numeric] Period.
350
+ # @return [Array<Array<Numeric>>] 2d array of results.
351
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/hma)
352
+ def hma(inputs, period:)
353
+ super(inputs, [period])
354
+ end
355
+
356
+ # Kaufman Adaptive Moving Average.
357
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
358
+ # @param period [Numeric] Period.
359
+ # @return [Array<Array<Numeric>>] 2d array of results.
360
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/kama)
361
+ def kama(inputs, period:)
362
+ super(inputs, [period])
363
+ end
364
+
365
+ # Klinger Volume Oscillator.
366
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
367
+ # @param short_period [Numeric] Short Period.
368
+ # @param long_period [Numeric] Long Period.
369
+ # @return [Array<Array<Numeric>>] 2d array of results.
370
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/kvo)
371
+ def kvo(inputs, short_period:, long_period:)
372
+ super(inputs, [short_period, long_period])
373
+ end
374
+
375
+ # Lag.
376
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
377
+ # @param period [Numeric] Period.
378
+ # @return [Array<Array<Numeric>>] 2d array of results.
379
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/lag)
380
+ def lag(inputs, period:)
381
+ super(inputs, [period])
382
+ end
383
+
384
+ # Linear Regression.
385
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
386
+ # @param period [Numeric] Period.
387
+ # @return [Array<Array<Numeric>>] 2d array of results.
388
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/linreg)
389
+ def linreg(inputs, period:)
390
+ super(inputs, [period])
391
+ end
392
+
393
+ # Linear Regression Intercept.
394
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
395
+ # @param period [Numeric] Period.
396
+ # @return [Array<Array<Numeric>>] 2d array of results.
397
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/linregintercept)
398
+ def linregintercept(inputs, period:)
399
+ super(inputs, [period])
400
+ end
401
+
402
+ # Linear Regression Slope.
403
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
404
+ # @param period [Numeric] Period.
405
+ # @return [Array<Array<Numeric>>] 2d array of results.
406
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/linregslope)
407
+ def linregslope(inputs, period:)
408
+ super(inputs, [period])
409
+ end
410
+
411
+ # Vector Natural Log.
412
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
413
+ # @return [Array<Array<Numeric>>] 2d array of results.
414
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/ln)
415
+ def ln(inputs)
416
+ super(inputs, [])
417
+ end
418
+
419
+ # Vector Base-10 Log.
420
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
421
+ # @return [Array<Array<Numeric>>] 2d array of results.
422
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/log10)
423
+ def log10(inputs)
424
+ super(inputs, [])
425
+ end
426
+
427
+ # Moving Average Convergence/Divergence.
428
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
429
+ # @param short_period [Numeric] Short Period.
430
+ # @param long_period [Numeric] Long Period.
431
+ # @param signal_period [Numeric] Signal Period.
432
+ # @return [Array<Array<Numeric>>] 2d array of results.
433
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/macd)
434
+ def macd(inputs, short_period:, long_period:, signal_period:)
435
+ super(inputs, [short_period, long_period, signal_period])
436
+ end
437
+
438
+ # Market Facilitation Index.
439
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
440
+ # @return [Array<Array<Numeric>>] 2d array of results.
441
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/marketfi)
442
+ def marketfi(inputs)
443
+ super(inputs, [])
444
+ end
445
+
446
+ # Mass Index.
447
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
448
+ # @param period [Numeric] Period.
449
+ # @return [Array<Array<Numeric>>] 2d array of results.
450
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/mass)
451
+ def mass(inputs, period:)
452
+ super(inputs, [period])
453
+ end
454
+
455
+ # Maximum In Period.
456
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
457
+ # @param period [Numeric] Period.
458
+ # @return [Array<Array<Numeric>>] 2d array of results.
459
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/max)
460
+ def max(inputs, period:)
461
+ super(inputs, [period])
462
+ end
463
+
464
+ # Mean Deviation Over Period.
465
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
466
+ # @param period [Numeric] Period.
467
+ # @return [Array<Array<Numeric>>] 2d array of results.
468
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/md)
469
+ def md(inputs, period:)
470
+ super(inputs, [period])
471
+ end
472
+
473
+ # Median Price.
474
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
475
+ # @return [Array<Array<Numeric>>] 2d array of results.
476
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/medprice)
477
+ def medprice(inputs)
478
+ super(inputs, [])
479
+ end
480
+
481
+ # Money Flow Index.
482
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
483
+ # @param period [Numeric] Period.
484
+ # @return [Array<Array<Numeric>>] 2d array of results.
485
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/mfi)
486
+ def mfi(inputs, period:)
487
+ super(inputs, [period])
488
+ end
489
+
490
+ # Minimum In Period.
491
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
492
+ # @param period [Numeric] Period.
493
+ # @return [Array<Array<Numeric>>] 2d array of results.
494
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/min)
495
+ def min(inputs, period:)
496
+ super(inputs, [period])
497
+ end
498
+
499
+ # Momentum.
500
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
501
+ # @param period [Numeric] Period.
502
+ # @return [Array<Array<Numeric>>] 2d array of results.
503
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/mom)
504
+ def mom(inputs, period:)
505
+ super(inputs, [period])
506
+ end
507
+
508
+ # Mesa Sine Wave.
509
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
510
+ # @param period [Numeric] Period.
511
+ # @return [Array<Array<Numeric>>] 2d array of results.
512
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/msw)
513
+ def msw(inputs, period:)
514
+ super(inputs, [period])
515
+ end
516
+
517
+ # Vector Multiplication.
518
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
519
+ # @return [Array<Array<Numeric>>] 2d array of results.
520
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/mul)
521
+ def mul(inputs)
522
+ super(inputs, [])
523
+ end
524
+
525
+ # Normalized Average True Range.
526
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
527
+ # @param period [Numeric] Period.
528
+ # @return [Array<Array<Numeric>>] 2d array of results.
529
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/natr)
530
+ def natr(inputs, period:)
531
+ super(inputs, [period])
532
+ end
533
+
534
+ # Negative Volume Index.
535
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
536
+ # @return [Array<Array<Numeric>>] 2d array of results.
537
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/nvi)
538
+ def nvi(inputs)
539
+ super(inputs, [])
540
+ end
541
+
542
+ # On Balance Volume.
543
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
544
+ # @return [Array<Array<Numeric>>] 2d array of results.
545
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/obv)
546
+ def obv(inputs)
547
+ super(inputs, [])
548
+ end
549
+
550
+ # Percentage Price Oscillator.
551
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
552
+ # @param short_period [Numeric] Short Period.
553
+ # @param long_period [Numeric] Long Period.
554
+ # @return [Array<Array<Numeric>>] 2d array of results.
555
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/ppo)
556
+ def ppo(inputs, short_period:, long_period:)
557
+ super(inputs, [short_period, long_period])
558
+ end
559
+
560
+ # Parabolic SAR.
561
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
562
+ # @param acceleration_factor_step [Numeric] Acceleration Factor Step.
563
+ # @param acceleration_factor_maximum [Numeric] Acceleration Factor Maximum.
564
+ # @return [Array<Array<Numeric>>] 2d array of results.
565
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/psar)
566
+ def psar(inputs, acceleration_factor_step:, acceleration_factor_maximum:)
567
+ super(inputs, [acceleration_factor_step, acceleration_factor_maximum])
568
+ end
569
+
570
+ # Positive Volume Index.
571
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
572
+ # @return [Array<Array<Numeric>>] 2d array of results.
573
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/pvi)
574
+ def pvi(inputs)
575
+ super(inputs, [])
576
+ end
577
+
578
+ # Qstick.
579
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
580
+ # @param period [Numeric] Period.
581
+ # @return [Array<Array<Numeric>>] 2d array of results.
582
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/qstick)
583
+ def qstick(inputs, period:)
584
+ super(inputs, [period])
585
+ end
586
+
587
+ # Rate of Change.
588
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
589
+ # @param period [Numeric] Period.
590
+ # @return [Array<Array<Numeric>>] 2d array of results.
591
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/roc)
592
+ def roc(inputs, period:)
593
+ super(inputs, [period])
594
+ end
595
+
596
+ # Rate of Change Ratio.
597
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
598
+ # @param period [Numeric] Period.
599
+ # @return [Array<Array<Numeric>>] 2d array of results.
600
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/rocr)
601
+ def rocr(inputs, period:)
602
+ super(inputs, [period])
603
+ end
604
+
605
+ # Vector Round.
606
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
607
+ # @return [Array<Array<Numeric>>] 2d array of results.
608
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/round)
609
+ def round(inputs)
610
+ super(inputs, [])
611
+ end
612
+
613
+ # Relative Strength Index.
614
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
615
+ # @param period [Numeric] Period.
616
+ # @return [Array<Array<Numeric>>] 2d array of results.
617
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/rsi)
618
+ def rsi(inputs, period:)
619
+ super(inputs, [period])
620
+ end
621
+
622
+ # Vector Sine.
623
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
624
+ # @return [Array<Array<Numeric>>] 2d array of results.
625
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/sin)
626
+ def sin(inputs)
627
+ super(inputs, [])
628
+ end
629
+
630
+ # Vector Hyperbolic Sine.
631
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
632
+ # @return [Array<Array<Numeric>>] 2d array of results.
633
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/sinh)
634
+ def sinh(inputs)
635
+ super(inputs, [])
636
+ end
637
+
638
+ # Simple Moving Average.
639
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
640
+ # @param period [Numeric] Period.
641
+ # @return [Array<Array<Numeric>>] 2d array of results.
642
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/sma)
643
+ def sma(inputs, period:)
644
+ super(inputs, [period])
645
+ end
646
+
647
+ # Vector Square Root.
648
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
649
+ # @return [Array<Array<Numeric>>] 2d array of results.
650
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/sqrt)
651
+ def sqrt(inputs)
652
+ super(inputs, [])
653
+ end
654
+
655
+ # Standard Deviation Over Period.
656
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
657
+ # @param period [Numeric] Period.
658
+ # @return [Array<Array<Numeric>>] 2d array of results.
659
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/stddev)
660
+ def stddev(inputs, period:)
661
+ super(inputs, [period])
662
+ end
663
+
664
+ # Standard Error Over Period.
665
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
666
+ # @param period [Numeric] Period.
667
+ # @return [Array<Array<Numeric>>] 2d array of results.
668
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/stderr)
669
+ def stderr(inputs, period:)
670
+ super(inputs, [period])
671
+ end
672
+
673
+ # Stochastic Oscillator.
674
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
675
+ # @param k_period [Numeric] K Period.
676
+ # @param k_slowing_period [Numeric] K Slowing Period.
677
+ # @param d_period [Numeric] D Period.
678
+ # @return [Array<Array<Numeric>>] 2d array of results.
679
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/stoch)
680
+ def stoch(inputs, k_period:, k_slowing_period:, d_period:)
681
+ super(inputs, [k_period, k_slowing_period, d_period])
682
+ end
683
+
684
+ # Stochastic RSI.
685
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
686
+ # @param period [Numeric] Period.
687
+ # @return [Array<Array<Numeric>>] 2d array of results.
688
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/stochrsi)
689
+ def stochrsi(inputs, period:)
690
+ super(inputs, [period])
691
+ end
692
+
693
+ # Vector Subtraction.
694
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
695
+ # @return [Array<Array<Numeric>>] 2d array of results.
696
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/sub)
697
+ def sub(inputs)
698
+ super(inputs, [])
699
+ end
700
+
701
+ # Sum Over Period.
702
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
703
+ # @param period [Numeric] Period.
704
+ # @return [Array<Array<Numeric>>] 2d array of results.
705
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/sum)
706
+ def sum(inputs, period:)
707
+ super(inputs, [period])
708
+ end
709
+
710
+ # Vector Tangent.
711
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
712
+ # @return [Array<Array<Numeric>>] 2d array of results.
713
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/tan)
714
+ def tan(inputs)
715
+ super(inputs, [])
716
+ end
717
+
718
+ # Vector Hyperbolic Tangent.
719
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
720
+ # @return [Array<Array<Numeric>>] 2d array of results.
721
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/tanh)
722
+ def tanh(inputs)
723
+ super(inputs, [])
724
+ end
725
+
726
+ # Triple Exponential Moving Average.
727
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
728
+ # @param period [Numeric] Period.
729
+ # @return [Array<Array<Numeric>>] 2d array of results.
730
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/tema)
731
+ def tema(inputs, period:)
732
+ super(inputs, [period])
733
+ end
734
+
735
+ # Vector Degree Conversion.
736
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
737
+ # @return [Array<Array<Numeric>>] 2d array of results.
738
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/todeg)
739
+ def todeg(inputs)
740
+ super(inputs, [])
741
+ end
742
+
743
+ # Vector Radian Conversion.
744
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
745
+ # @return [Array<Array<Numeric>>] 2d array of results.
746
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/torad)
747
+ def torad(inputs)
748
+ super(inputs, [])
749
+ end
750
+
751
+ # True Range.
752
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
753
+ # @return [Array<Array<Numeric>>] 2d array of results.
754
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/tr)
755
+ def tr(inputs)
756
+ super(inputs, [])
757
+ end
758
+
759
+ # Triangular Moving Average.
760
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
761
+ # @param period [Numeric] Period.
762
+ # @return [Array<Array<Numeric>>] 2d array of results.
763
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/trima)
764
+ def trima(inputs, period:)
765
+ super(inputs, [period])
766
+ end
767
+
768
+ # Trix.
769
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
770
+ # @param period [Numeric] Period.
771
+ # @return [Array<Array<Numeric>>] 2d array of results.
772
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/trix)
773
+ def trix(inputs, period:)
774
+ super(inputs, [period])
775
+ end
776
+
777
+ # Vector Truncate.
778
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
779
+ # @return [Array<Array<Numeric>>] 2d array of results.
780
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/trunc)
781
+ def trunc(inputs)
782
+ super(inputs, [])
783
+ end
784
+
785
+ # Time Series Forecast.
786
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
787
+ # @param period [Numeric] Period.
788
+ # @return [Array<Array<Numeric>>] 2d array of results.
789
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/tsf)
790
+ def tsf(inputs, period:)
791
+ super(inputs, [period])
792
+ end
793
+
794
+ # Typical Price.
795
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
796
+ # @return [Array<Array<Numeric>>] 2d array of results.
797
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/typprice)
798
+ def typprice(inputs)
799
+ super(inputs, [])
800
+ end
801
+
802
+ # Ultimate Oscillator.
803
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
804
+ # @param short_period [Numeric] Short Period.
805
+ # @param medium_period [Numeric] Medium Period.
806
+ # @param long_period [Numeric] Long Period.
807
+ # @return [Array<Array<Numeric>>] 2d array of results.
808
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/ultosc)
809
+ def ultosc(inputs, short_period:, medium_period:, long_period:)
810
+ super(inputs, [short_period, medium_period, long_period])
811
+ end
812
+
813
+ # Variance Over Period.
814
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
815
+ # @param period [Numeric] Period.
816
+ # @return [Array<Array<Numeric>>] 2d array of results.
817
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/var)
818
+ def var(inputs, period:)
819
+ super(inputs, [period])
820
+ end
821
+
822
+ # Vertical Horizontal Filter.
823
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
824
+ # @param period [Numeric] Period.
825
+ # @return [Array<Array<Numeric>>] 2d array of results.
826
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/vhf)
827
+ def vhf(inputs, period:)
828
+ super(inputs, [period])
829
+ end
830
+
831
+ # Variable Index Dynamic Average.
832
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
833
+ # @param short_period [Numeric] Short Period.
834
+ # @param long_period [Numeric] Long Period.
835
+ # @param alpha [Numeric] Alpha.
836
+ # @return [Array<Array<Numeric>>] 2d array of results.
837
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/vidya)
838
+ def vidya(inputs, short_period:, long_period:, alpha:)
839
+ super(inputs, [short_period, long_period, alpha])
840
+ end
841
+
842
+ # Annualized Historical Volatility.
843
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
844
+ # @param period [Numeric] Period.
845
+ # @return [Array<Array<Numeric>>] 2d array of results.
846
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/volatility)
847
+ def volatility(inputs, period:)
848
+ super(inputs, [period])
849
+ end
850
+
851
+ # Volume Oscillator.
852
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
853
+ # @param short_period [Numeric] Short Period.
854
+ # @param long_period [Numeric] Long Period.
855
+ # @return [Array<Array<Numeric>>] 2d array of results.
856
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/vosc)
857
+ def vosc(inputs, short_period:, long_period:)
858
+ super(inputs, [short_period, long_period])
859
+ end
860
+
861
+ # Volume Weighted Moving Average.
862
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
863
+ # @param period [Numeric] Period.
864
+ # @return [Array<Array<Numeric>>] 2d array of results.
865
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/vwma)
866
+ def vwma(inputs, period:)
867
+ super(inputs, [period])
868
+ end
869
+
870
+ # Williams Accumulation/Distribution.
871
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
872
+ # @return [Array<Array<Numeric>>] 2d array of results.
873
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/wad)
874
+ def wad(inputs)
875
+ super(inputs, [])
876
+ end
877
+
878
+ # Weighted Close Price.
879
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
880
+ # @return [Array<Array<Numeric>>] 2d array of results.
881
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/wcprice)
882
+ def wcprice(inputs)
883
+ super(inputs, [])
884
+ end
885
+
886
+ # Wilders Smoothing.
887
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
888
+ # @param period [Numeric] Period.
889
+ # @return [Array<Array<Numeric>>] 2d array of results.
890
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/wilders)
891
+ def wilders(inputs, period:)
892
+ super(inputs, [period])
893
+ end
894
+
895
+ # Williams %R.
896
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
897
+ # @param period [Numeric] Period.
898
+ # @return [Array<Array<Numeric>>] 2d array of results.
899
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/willr)
900
+ def willr(inputs, period:)
901
+ super(inputs, [period])
902
+ end
903
+
904
+ # Weighted Moving Average.
905
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
906
+ # @param period [Numeric] Period.
907
+ # @return [Array<Array<Numeric>>] 2d array of results.
908
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/wma)
909
+ def wma(inputs, period:)
910
+ super(inputs, [period])
911
+ end
912
+
913
+ # Zero-Lag Exponential Moving Average.
914
+ # @param inputs [Array<Array<Numeric>>] 2d array of inputs.
915
+ # @param period [Numeric] Period.
916
+ # @return [Array<Array<Numeric>>] 2d array of results.
917
+ # @see Official TulipIndicators docs for detailed explanation and formular for this indicator function: (https://tulipindicators.org/zlema)
918
+ def zlema(inputs, period:)
919
+ super(inputs, [period])
15
920
  end
16
921
  end
17
922
  end