module OandaApiV20::Orders
Public Instance Methods
order(*args)
click to toggle source
POST /v3/accounts/:account_id/orders GET /v3/accounts/:account_id/orders/:order_id PUT /v3/accounts/:account_id/orders/:order_id PUT /v3/accounts/:account_id/orders/:order_id/clientExtensions PUT /v3/accounts/:account_id/orders/:order_id/cancel
# File lib/oanda_api_v20/orders.rb, line 9 def order(*args) id_or_options = args.shift id_or_options.is_a?(Hash) ? options = id_or_options : id = id_or_options options = args.shift unless args.nil? || args.empty? url = id ? "#{base_uri}/accounts/#{account_id}/orders/#{id}" : "#{base_uri}/accounts/#{account_id}/orders" url = order_url_for_put(url, options) if http_verb == :put options ? Client.send(http_verb, url, headers: headers, body: options.to_json) : Client.send(http_verb, url, headers: headers) end
orders(options = {})
click to toggle source
GET /v3/accounts/:account_id/orders
# File lib/oanda_api_v20/orders.rb, line 21 def orders(options = {}) Client.send(http_verb, "#{base_uri}/accounts/#{account_id}/orders", headers: headers, query: options) end
pending_orders()
click to toggle source
GET /v3/accounts/:account_id/pendingOrders
# File lib/oanda_api_v20/orders.rb, line 26 def pending_orders Client.send(http_verb, "#{base_uri}/accounts/#{account_id}/pendingOrders", headers: headers) end
Private Instance Methods
order_url_for_put(url, options = nil)
click to toggle source
# File lib/oanda_api_v20/orders.rb, line 32 def order_url_for_put(url, options = nil) return "#{url}/cancel" unless options return "#{url}/clientExtensions" if options['clientExtensions'] || options['tradeClientExtensions'] return url if options['order'] return url end