Class: FinancialDataPull::Stock
- Inherits:
-
Object
- Object
- FinancialDataPull::Stock
- Defined in:
- lib/financial_data_pull/stock.rb
Instance Attribute Summary collapse
-
#ask ⇒ Object
Returns the value of attribute ask.
-
#avgvolume ⇒ Object
Returns the value of attribute avgvolume.
-
#beta ⇒ Object
Returns the value of attribute beta.
-
#bid ⇒ Object
Returns the value of attribute bid.
-
#daysrange ⇒ Object
Returns the value of attribute daysrange.
-
#divyield ⇒ Object
Returns the value of attribute divyield.
-
#epsttm ⇒ Object
Returns the value of attribute epsttm.
-
#fiftytwoweekrange ⇒ Object
Returns the value of attribute fiftytwoweekrange.
-
#marketcap ⇒ Object
Returns the value of attribute marketcap.
-
#nextearningdate ⇒ Object
Returns the value of attribute nextearningdate.
-
#oneyeartarget ⇒ Object
Returns the value of attribute oneyeartarget.
-
#open ⇒ Object
Returns the value of attribute open.
-
#pettm ⇒ Object
Returns the value of attribute pettm.
-
#prevclose ⇒ Object
Returns the value of attribute prevclose.
-
#ticker ⇒ Object
Returns the value of attribute ticker.
-
#title ⇒ Object
Returns the value of attribute title.
-
#volume ⇒ Object
Returns the value of attribute volume.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(prevclose = nil, open = nil, bid = nil, ask = nil, oneyeartarget = nil, beta = nil, nextearningdate = nil, daysrange = nil, fiftytwoweekrange = nil, volume = nil, avgvolume = nil, marketcap = nil, pettm = nil, epsttm = nil, divyield = nil, title = nil) ⇒ Stock
constructor
A new instance of Stock.
Constructor Details
#initialize(prevclose = nil, open = nil, bid = nil, ask = nil, oneyeartarget = nil, beta = nil, nextearningdate = nil, daysrange = nil, fiftytwoweekrange = nil, volume = nil, avgvolume = nil, marketcap = nil, pettm = nil, epsttm = nil, divyield = nil, title = nil) ⇒ Stock
Returns a new instance of Stock.
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
# File 'lib/financial_data_pull/stock.rb', line 34 def initialize(prevclose=nil, open=nil, bid=nil, ask=nil, oneyeartarget=nil, beta=nil, nextearningdate=nil, daysrange=nil, fiftytwoweekrange=nil, volume=nil, avgvolume=nil, marketcap=nil, pettm=nil, epsttm=nil, divyield=nil, title=nil) @prevclose = prevclose @open = open @bid = bid @ask = ask @oneyeartarget = oneyeartarget @beta = beta @nextearningdate = nextearningdate @daysrange = daysrange @fiftytwoweekrange = fiftytwoweekrange @volume = volume @avgvolume = avgvolume @marketcap = marketcap @pettm = pettm @epsttm = epsttm @divyield = divyield @title = title end |
Instance Attribute Details
#ask ⇒ Object
Returns the value of attribute ask.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def ask @ask end |
#avgvolume ⇒ Object
Returns the value of attribute avgvolume.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def avgvolume @avgvolume end |
#beta ⇒ Object
Returns the value of attribute beta.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def beta @beta end |
#bid ⇒ Object
Returns the value of attribute bid.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def bid @bid end |
#daysrange ⇒ Object
Returns the value of attribute daysrange.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def daysrange @daysrange end |
#divyield ⇒ Object
Returns the value of attribute divyield.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def divyield @divyield end |
#epsttm ⇒ Object
Returns the value of attribute epsttm.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def epsttm @epsttm end |
#fiftytwoweekrange ⇒ Object
Returns the value of attribute fiftytwoweekrange.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def fiftytwoweekrange @fiftytwoweekrange end |
#marketcap ⇒ Object
Returns the value of attribute marketcap.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def marketcap @marketcap end |
#nextearningdate ⇒ Object
Returns the value of attribute nextearningdate.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def nextearningdate @nextearningdate end |
#oneyeartarget ⇒ Object
Returns the value of attribute oneyeartarget.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def oneyeartarget @oneyeartarget end |
#open ⇒ Object
Returns the value of attribute open.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def open @open end |
#pettm ⇒ Object
Returns the value of attribute pettm.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def pettm @pettm end |
#prevclose ⇒ Object
Returns the value of attribute prevclose.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def prevclose @prevclose end |
#ticker ⇒ Object
Returns the value of attribute ticker.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def ticker @ticker end |
#title ⇒ Object
Returns the value of attribute title.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def title @title end |
#volume ⇒ Object
Returns the value of attribute volume.
3 4 5 |
# File 'lib/financial_data_pull/stock.rb', line 3 def volume @volume end |
Class Method Details
.new_from_scrape(website) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/financial_data_pull/stock.rb', line 8 def self.new_from_scrape(website) self.new( # 0 - 14 from table @prevclose = website.css("td.yfnc_tabledata1")[0].text, @open = website.css("td.yfnc_tabledata1")[1].text, @bid = website.css("td.yfnc_tabledata1")[2].text, @ask = website.css("td.yfnc_tabledata1")[3].text, @oneyeartarget = website.css("td.yfnc_tabledata1")[4].text, @beta = website.css("td.yfnc_tabledata1")[5].text, @nextearningdate = website.css("td.yfnc_tabledata1")[6].text, @daysrange = website.css("td.yfnc_tabledata1")[7].text, @fiftytwoweekrange = website.css("td.yfnc_tabledata1")[8].text, @volume = website.css("td.yfnc_tabledata1")[9].text, @avgvolume = website.css("td.yfnc_tabledata1")[10].text, @marketcap = website.css("td.yfnc_tabledata1")[11].text, @pettm = website.css("td.yfnc_tabledata1")[12].text, @epsttm = website.css("td.yfnc_tabledata1")[13].text, @divyield = website.css("td.yfnc_tabledata1")[14].text, #title @title = website.css(".title h2").text ) printstock end |
.printstock ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
# File 'lib/financial_data_pull/stock.rb', line 53 def self.printstock puts "......................................." puts " --->#{@title}<---" puts " Prev Close: #{@prevclose}" puts " Open: #{@open}" puts " Bid: #{@bid}" puts " Ask: #{@ask}" puts " 1y Target Est: #{@oneyeartarget}" puts " Beta: #{@beta}" puts " Next Earnings Date: #{@nextearningdate}" puts " Day's Range: #{@daysrange}" puts " 52wk Range: #{@fiftytwoweekrange}" puts " Volume: #{@volume}" puts " Avg Vol (3m): #{@avgvolume}" puts " Market Cap: #{@marketcap}" puts " P/E (ttm): #{@pettm}" puts " EPS (ttm): #{@epsttm}" puts " Div & Yield: #{@divyield}" puts ".......................................\n\n" end |