class Psei::Security
Public Class Methods
new(headers={}, parser=nil)
click to toggle source
# File lib/psei/security.rb, line 3 def initialize(headers={}, parser=nil) @parser = parser || Psei::Parser.new(Psei::SOURCE_URL, headers) @parsed = @parser.process @formatter = Psei::Formatter.new end
Public Instance Methods
date()
click to toggle source
# File lib/psei/security.rb, line 22 def date Psei::Date.new(@parsed).get end
symbols()
click to toggle source
# File lib/psei/security.rb, line 9 def symbols securities_hash.keys end
value(symbol)
click to toggle source
Returns the data of a specific security
# File lib/psei/security.rb, line 18 def value symbol security symbol end
values()
click to toggle source
# File lib/psei/security.rb, line 13 def values symbols.collect{ |x| value x } end
Private Instance Methods
find_by_symbol(symbol)
click to toggle source
# File lib/psei/security.rb, line 28 def find_by_symbol symbol securities = securities_filter securities.detect{ |s| s['securitySymbol'] == symbol.to_s } end
securities_array()
click to toggle source
# File lib/psei/security.rb, line 43 def securities_array @sec_array ||= securities_filter.collect do |item| [item['securitySymbol'], item['lastTradedPrice'].to_f] end end
securities_filter()
click to toggle source
# File lib/psei/security.rb, line 33 def securities_filter @sec_filter ||= @parsed.reject do |x| (Psei::INDEX_ALIASES).include?(x['securityAlias']) || x['securitySymbol'] == Psei::HEADING_ALIAS end end
securities_hash()
click to toggle source
# File lib/psei/security.rb, line 39 def securities_hash @sec_hash ||= Hash[securities_array] end
security(sym)
click to toggle source
# File lib/psei/security.rb, line 49 def security sym sec = securities_filter.select{|x| x['securitySymbol'] == sym }.first @formatter.process sec end