Module: Quant
- Defined in:
- lib/quant.rb,
lib/quant/version.rb
Constant Summary collapse
- VERSION =
"0.0.3"
Class Method Summary collapse
Class Method Details
.donchian_channel(ohlc, n) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/quant.rb', line 20 def self.donchian_channel(ohlc, n) dc = [] ohlc.each_with_index do |e, i| if i < (n - 1) dc << [not_a_number, not_a_number] else c = ohlc[(i - n + 1)..(i)].flatten dc << [c.max, c.min] end end dc end |
.sma(values, n) ⇒ Object
5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/quant.rb', line 5 def self.sma(values, n) acc = 0 values.inject_with_index([]) do |m, e, i| acc += e if i < (n - 1) m << not_a_number elsif i == (n - 1) m << acc / n else acc = acc - values[i - n] m << acc / n end end end |