Class: Darwinex::Api::TradingApi
- Defined in:
- lib/darwinex/api/trading_api.rb
Constant Summary collapse
- BASE_URI =
'https://api.darwinex.com/trading/1.1'
Instance Method Summary collapse
- #create_buy_order(account_id, buy_order) ⇒ Object
- #create_conditional_order(account_id, conditional_order_dto) ⇒ Object
- #create_product_stopout(account_id, product_name) ⇒ Object
- #create_sell_order(account_id, sell_order) ⇒ Object
- #create_stopout(account_id) ⇒ Object
- #delete_conditional_order(account_id, conditional_order_id) ⇒ Object
- #get_leverage(account_id) ⇒ Object
- #get_product_market_status ⇒ Object
-
#initialize(config:, logger:) ⇒ TradingApi
constructor
A new instance of TradingApi.
- #update_conditional_order(account_id, conditional_order_id, conditional_order_dto) ⇒ Object
- #update_leverage(account_id, leverage) ⇒ Object
Methods inherited from Api
Constructor Details
#initialize(config:, logger:) ⇒ TradingApi
Returns a new instance of TradingApi.
14 15 16 17 |
# File 'lib/darwinex/api/trading_api.rb', line 14 def initialize(config:, logger:) super(logger) @config = config end |
Instance Method Details
#create_buy_order(account_id, buy_order) ⇒ Object
51 52 53 54 55 56 57 |
# File 'lib/darwinex/api/trading_api.rb', line 51 def create_buy_order(account_id, buy_order) body = { body: buy_order.to_json } send('post', "/investoraccounts/#{account_id}/orders/buy", .merge(body), max_retries: config.max_retries) end |
#create_conditional_order(account_id, conditional_order_dto) ⇒ Object
19 20 21 22 23 24 25 |
# File 'lib/darwinex/api/trading_api.rb', line 19 def create_conditional_order(account_id, conditional_order_dto) body = { body: conditional_order_dto.to_json } send('post', "/investoraccounts/#{account_id}/conditionalorders", .merge(body), max_retries: config.max_retries) end |
#create_product_stopout(account_id, product_name) ⇒ Object
71 72 73 |
# File 'lib/darwinex/api/trading_api.rb', line 71 def create_product_stopout(account_id, product_name) send('post', "/investoraccounts/#{account_id}/stopout/#{product_name}", , max_retries: config.max_retries) end |
#create_sell_order(account_id, sell_order) ⇒ Object
59 60 61 62 63 64 65 |
# File 'lib/darwinex/api/trading_api.rb', line 59 def create_sell_order(account_id, sell_order) body = { body: sell_order.to_json } send('post', "/investoraccounts/#{account_id}/orders/sell", .merge(body), max_retries: config.max_retries) end |
#create_stopout(account_id) ⇒ Object
67 68 69 |
# File 'lib/darwinex/api/trading_api.rb', line 67 def create_stopout(account_id) send('post', "/investoraccounts/#{account_id}/stopout", , max_retries: config.max_retries) end |
#delete_conditional_order(account_id, conditional_order_id) ⇒ Object
35 36 37 |
# File 'lib/darwinex/api/trading_api.rb', line 35 def delete_conditional_order(account_id, conditional_order_id) send('delete', "/investoraccounts/#{account_id}/conditionalorders/#{conditional_order_id}", , max_retries: config.max_retries) end |
#get_leverage(account_id) ⇒ Object
39 40 41 |
# File 'lib/darwinex/api/trading_api.rb', line 39 def get_leverage(account_id) send('get', "/investoraccounts/#{account_id}/leverage", , max_retries: config.max_retries) end |
#get_product_market_status ⇒ Object
75 76 77 |
# File 'lib/darwinex/api/trading_api.rb', line 75 def get_product_market_status send('get', '/productmarket/status', , max_retries: config.max_retries) end |
#update_conditional_order(account_id, conditional_order_id, conditional_order_dto) ⇒ Object
27 28 29 30 31 32 33 |
# File 'lib/darwinex/api/trading_api.rb', line 27 def update_conditional_order(account_id, conditional_order_id, conditional_order_dto) body = { body: conditional_order_dto.to_json } send('put', "/investoraccounts/#{account_id}/conditionalorders/#{conditional_order_id}", .merge(body), max_retries: config.max_retries) end |
#update_leverage(account_id, leverage) ⇒ Object
43 44 45 46 47 48 49 |
# File 'lib/darwinex/api/trading_api.rb', line 43 def update_leverage(account_id, leverage) body = { body: { leverage: leverage }.to_json } send('put', "/investoraccounts/#{account_id}/leverage", .merge(body), max_retries: config.max_retries) end |