Sha256: ccb68663c0387eeaa41f54f9c9ada8a2c90fbeead4f8b29052d80116ca1256b2

Contents?: true

Size: 730 Bytes

Versions: 1

Compression:

Stored size: 730 Bytes

Contents

class StockIndex

  class BsymSearch

    require 'csv'

    FILES = {
      us: 'bsym/US.csv'
    }

    EXCEPTIONS = {
      'BIDU' => {name: 'BAIDU INC', bbgid: 'BBG000QXWHD1'},
      'LVNTA' => {name: 'LIBERTY VENTURES', bbgid: 'BBG0038K9G41'},
      'VIP' => {name: 'VIMPELCOM LTD', bbgid: 'BBG000QCW561'},
      'VOD' => {name: 'VODAFONE GROUP PLC', bbgid: 'BBG000C4R6H6'}
    }

    class << self

      def find(symbol, pricing_source = :us)
        return {name: EXCEPTIONS[symbol][:name], bbgid: EXCEPTIONS[symbol][:bbgid]} if EXCEPTIONS.keys.include? symbol
        CSV.foreach(FILES[pricing_source]) do |row|
          return {name: row[1], bbgid: row[2]} if row[0] == symbol
        end
      end

    end

  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
stock_index-0.6.0 lib/stock_index/bsym_search.rb