Class: Oddsmaker::Odd::Fractional

Inherits:
Base
  • Object
show all
Defined in:
lib/oddsmaker/odd/fractional.rb

Overview

Fractional odds express the fraction of a dollar that would be won from a $1 bet.

Instance Attribute Summary

Attributes inherited from Base

#id, #value

Instance Method Summary collapse

Methods inherited from Base

#<=>, #==, #implied_probability, #multiplier, #overround!, #profit, #to_h, #to_json, #to_s, #wager, #without_vig

Constructor Details

#initialize(value, id = nil) ⇒ Fractional

Returns a new instance of Fractional.



6
7
8
9
# File 'lib/oddsmaker/odd/fractional.rb', line 6

def initialize(value, id = nil)
  @id    = id || value
  @value = value.is_a?(String) ? value.to_r : value.rationalize
end

Instance Method Details

#americanAmerican

Convert to American odds, returning a new object.

Returns:



21
22
23
# File 'lib/oddsmaker/odd/fractional.rb', line 21

def american
  @american ||= implied_probability.american
end

#decimalDecimal

Convert to decimal odds, returning a new object.

Returns:



28
29
30
# File 'lib/oddsmaker/odd/fractional.rb', line 28

def decimal
  @decimal ||= implied_probability.decimal
end

#fractionalself

Returns self. This creates a consistent API for all odds.

Returns:

  • (self)


14
15
16
# File 'lib/oddsmaker/odd/fractional.rb', line 14

def fractional
  self
end