-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathParadexOrderAPI.java
More file actions
92 lines (80 loc) · 3.2 KB
/
Copy pathParadexOrderAPI.java
File metadata and controls
92 lines (80 loc) · 3.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
package trade.paradex.api.order;
import trade.paradex.api.dto.ParadexModifyOrderDTO;
import trade.paradex.api.dto.ParadexOrderDTO;
import trade.paradex.api.dto.ParadexPagedResultsResponseDTO;
import trade.paradex.api.dto.ParadexResultsResponseDTO;
import trade.paradex.api.dto.request.ParadexCreateOrderRequestDTO;
import trade.paradex.api.dto.request.ParadexModifyOrderRequestDTO;
import trade.paradex.api.dto.request.ParadexOrdersHistoryRequestDTO;
import trade.paradex.model.ParadexAccount;
public interface ParadexOrderAPI {
/**
* Get current account open orders.
*
* @param account {@link ParadexAccount}
* @param market specific market. Optional
* @return List of {@link ParadexOrderDTO}
*/
ParadexResultsResponseDTO<ParadexOrderDTO> getOrders(ParadexAccount account, String market);
/**
* Get an order by id. Only return orders in OPEN or NEW status.
*
* @param account {@link ParadexAccount}
* @param paradexOrderId Paradex order id
* @return {@link ParadexOrderDTO}
*/
ParadexOrderDTO getOrder(ParadexAccount account, String paradexOrderId);
/**
* Get an order by client id. Only returns orders in OPEN status.
*
* @param account {@link ParadexAccount}
* @param clientId client id
* @return {@link ParadexOrderDTO}
*/
ParadexOrderDTO getOrderByClientId(ParadexAccount account, String clientId);
/**
* Get order history for account.
*
* @param account {@link ParadexAccount}
* @param requestDTO {@link ParadexOrdersHistoryRequestDTO}
* @return List of {@link ParadexOrderDTO}
*/
ParadexPagedResultsResponseDTO<ParadexOrderDTO> getOrdersHistory(ParadexAccount account, ParadexOrdersHistoryRequestDTO requestDTO);
/**
* Creates a new order with given parameters.
*
* @param account {@link ParadexAccount}
* @param order {@link ParadexCreateOrderRequestDTO} order data.
* @return returns a new {@link ParadexOrderDTO}.
*/
ParadexOrderDTO createOrder(ParadexAccount account, ParadexCreateOrderRequestDTO order);
/**
* Modify an existing open order by changing its price and/or size. The modified order maintains its original order ID.
*
* @param account {@link ParadexAccount}
* @param modifyOrder {@link ParadexModifyOrderRequestDTO}
* @return {@link ParadexModifyOrderDTO}
*/
ParadexModifyOrderDTO modifyOrder(ParadexAccount account, ParadexModifyOrderRequestDTO modifyOrder);
/**
* Cancel all open orders for specific market(if present), otherwise cancel all orders for all markets.
*
* @param account {@link ParadexAccount}
* @param market specific market. Optional
*/
void cancelAllOrders(ParadexAccount account, String market);
/**
* Cancel order by Paradex order id.
*
* @param account {@link ParadexAccount}
* @param paradexOrderId Paradex order id
*/
void cancelOrder(ParadexAccount account, String paradexOrderId);
/**
* Cancel order by client id.
*
* @param account {@link ParadexAccount}
* @param clientId client id
*/
void cancelOrderByClientId(ParadexAccount account, String clientId);
}