Module: NasdaqSchedule

Defined in:
lib/nasdaq_schedule.rb,
lib/nasdaq_schedule/errors.rb,
lib/nasdaq_schedule/version.rb,
lib/nasdaq_schedule/stock_market.rb

Defined Under Namespace

Modules: Errors, StockMarket

Constant Summary collapse

VERSION =
"1.0.0"

Instance Method Summary collapse

Instance Method Details

#in_nasdaq_time_zoneObject



8
9
10
# File 'lib/nasdaq_schedule.rb', line 8

def in_nasdaq_time_zone
  same_zone? ? self : self.in_time_zone(market_zone)
end

#nasdaq_closeObject



27
28
29
# File 'lib/nasdaq_schedule.rb', line 27

def nasdaq_close
  nasdaq_working_hours[:close]
end

#nasdaq_closest_closeObject



43
44
45
# File 'lib/nasdaq_schedule.rb', line 43

def nasdaq_closest_close
  nasdaq_closest_working_hours[:close]
end

#nasdaq_closest_openObject



39
40
41
# File 'lib/nasdaq_schedule.rb', line 39

def nasdaq_closest_open
  nasdaq_closest_working_hours[:open]
end

#nasdaq_holiday?Boolean

Returns:

  • (Boolean)


12
13
14
# File 'lib/nasdaq_schedule.rb', line 12

def nasdaq_holiday?
  !nasdaq_holiday.nil?
end

#nasdaq_next_dayObject



35
36
37
# File 'lib/nasdaq_schedule.rb', line 35

def nasdaq_next_day
  nasdaq_day(:tomorrow)
end

#nasdaq_openObject



23
24
25
# File 'lib/nasdaq_schedule.rb', line 23

def nasdaq_open
  nasdaq_working_hours[:open]
end

#nasdaq_previous_dayObject



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

def nasdaq_previous_day
  nasdaq_day(:yesterday)
end

#nasdaq_working_day?Boolean

Returns:

  • (Boolean)


16
17
18
19
20
21
# File 'lib/nasdaq_schedule.rb', line 16

def nasdaq_working_day?
  market_time.send(:weekday?) &&
    !market_time.nasdaq_holiday? &&
    !(market_time.monday? && market_time.yesterday.nasdaq_holiday?) &&
    !(market_time.friday? && market_time.tomorrow.nasdaq_holiday? && !market_time.send(:nasdaq_end_of_accounting_period_on_friday?))
end