class Finnhub::Forex_Timeseries

Public Class Methods

new(client:, symbol:, resolution: "D", count: nil, from: nil, to: nil, format: nil) click to toggle source
# File lib/Forex.rb, line 45
def initialize(client:, symbol:, resolution: "D", count: nil,
  from: nil, to: nil, format: nil)
  url = "/forex/candle?symbol=#{symbol}&resolution=#{resolution}"
  url += "&count=#{count}" unless count.nil?
  from = from.to_i if from.is_a?(Time)
  url += "&from=#{from}" unless from.nil?
  to = to.to_i if to.is_a?(Time)
  url += "&to=#{to}" unless to.nil?
  url += "&format=#{format}" unless format.nil?
  @output = client.request(url)
  if @output.is_a?(Hash) && @output[:s] == "ok"
    @timestamps = @output[:t]&.map{|t| DateTime.strptime(t.to_s,'%s')}
  else
    @timestamps = []
  end
end