Class: ROdds::OddStandardizer::ImpliedProbability

Inherits:
Object
  • Object
show all
Defined in:
lib/r_odds/odd_standardizers/implied_probability.rb

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(params) ⇒ ImpliedProbability

Returns a new instance of ImpliedProbability.



9
10
11
# File 'lib/r_odds/odd_standardizers/implied_probability.rb', line 9

def initialize(params)
  @odd = params[:odd]
end

Class Method Details

.call(params) ⇒ Object



5
6
7
# File 'lib/r_odds/odd_standardizers/implied_probability.rb', line 5

def self.call(params)
  new(params).call
end

Instance Method Details

#callObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/r_odds/odd_standardizers/implied_probability.rb', line 13

def call
  if odd_is_a_probability_fraction
    rational_odd = odd.to_r

    ROdds::Odd::ImpliedProbability.new(
      numerator: rational_odd.numerator,
      denominator: rational_odd.denominator
    )
  elsif odd_is_a_percentage
    rational_odd = odd.to_r

    ROdds::Odd::ImpliedProbability.new(
      numerator: rational_odd,
      denominator: Rational(100)
    )
  end
end