Class: BC::Quote

Inherits:
Object
  • Object
show all
Defined in:
lib/bloomberg_currency/quote.rb

Overview

Represents a currency quote

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(currency_one:, currency_two:) ⇒ Quote

Returns a new instance of Quote.



33
34
35
36
37
38
39
40
41
42
# File 'lib/bloomberg_currency/quote.rb', line 33

def initialize(currency_one:, currency_two:)
  quote_data       = BC::API::Site.new(currency_one, currency_two).quote

  @price           = BC::API::Parser.parse_price(quote_data["price"])
  @last_updated_at = BC::API::Parser.parse_datetime(quote_data["lastUpdate"])
  @delta           = quote_data["priceChange1Day"]
  @delta_percent   = quote_data["percentChange1Day"]
  @name            = quote_data["longName"]
  @detail          = build_quote_detail(quote_data)
end

Instance Attribute Details

#deltaObject (readonly)

Returns the value of attribute delta.



31
32
33
# File 'lib/bloomberg_currency/quote.rb', line 31

def delta
  @delta
end

#delta_percentObject (readonly)

Returns the value of attribute delta_percent.



31
32
33
# File 'lib/bloomberg_currency/quote.rb', line 31

def delta_percent
  @delta_percent
end

#detailObject (readonly)

Returns the value of attribute detail.



31
32
33
# File 'lib/bloomberg_currency/quote.rb', line 31

def detail
  @detail
end

#last_updated_atObject (readonly)

Returns the value of attribute last_updated_at.



31
32
33
# File 'lib/bloomberg_currency/quote.rb', line 31

def last_updated_at
  @last_updated_at
end

#nameObject (readonly)

Returns the value of attribute name.



31
32
33
# File 'lib/bloomberg_currency/quote.rb', line 31

def name
  @name
end

#priceObject (readonly)

Returns the value of attribute price.



31
32
33
# File 'lib/bloomberg_currency/quote.rb', line 31

def price
  @price
end