class Bitfinex::Models::MarginInfo

Attributes

buy[RW]
gross_balance[RW]
margin_balance[RW]
margin_net[RW]
sell[RW]
symbol[RW]
tradable_balance[RW]
type[RW]
user_pl[RW]
user_swaps[RW]

Public Class Methods

new(data) click to toggle source
Calls superclass method
# File lib/models/margin_info.rb, line 9
def initialize (data)
  super(data, {}, [])
end
unserialize(arr) click to toggle source
# File lib/models/margin_info.rb, line 38
def self.unserialize (arr)
  type = arr[0]

  if type == 'base'
    payload = arr[1]

    return {
      :type => type,
      :user_pl => payload[0],
      :user_swaps => payload[1],
      :margin_balance => payload[2],
      :margin_net => payload[3]
    }
  else
    symbol = arr[1]
    payload = arr[2]

    return {
      :type => type,
      :symbol => symbol,
      :tradable_balance => payload[0],
      :gross_balance => payload[1],
      :buy => payload[2],
      :sell => payload[3]
    }
  end
end

Public Instance Methods

serialize() click to toggle source
# File lib/models/margin_info.rb, line 13
def serialize ()
  if self.type == 'base'
    return [
      self.type,
      [
        self.user_pl,
        self.user_swaps,
        self.margin_balance,
        self.margin_net
      ]
    ]
  else
    return [
      self.type,
      self.symbol,
      [
        self.tradable_balance,
        self.gross_balance,
        self.buy,
        self.sell
      ]
    ]
  end
end