SDK for Paradex API trading with Java.
Build jar with following command
mvn clean installTODO...
See more complex examples. You can also checkout the repo and run any of the examples.
import trade.paradex.ParadexClient;
import trade.paradex.api.dto.*;
import trade.paradex.api.dto.request.ParadexCreateOrderRequestDTO;
import trade.paradex.api.order.ParadexOrderAPI;
import trade.paradex.model.ParadexAccount;
import trade.paradex.model.ParadexEnvironment;
import java.util.List;
public class Example {
private static final String ACCOUNT_ADDRESS = "..."; // Paradex account address
private static final String ACCOUNT_PRIVATE_KEY = "..."; // Paradex account private key
public static void main(String[] args) {
ParadexAccount account = new ParadexAccount(ACCOUNT_ADDRESS, ACCOUNT_PRIVATE_KEY);
ParadexClient client = ParadexClient.builder(ParadexEnvironment.TESTNET) // or ParadexEnvironment.MAINNET
.build();
// Create market order
ParadexCreateOrderRequestDTO createMarketOrderRequest = ParadexCreateOrderRequestDTO.builder()
.market("BTC-USD-PERP")
.orderType(OrderType.MARKET)
.size(0.25)
.orderSide(OrderSide.BUY)
.build();
ParadexOrderDTO marketOrder = client.orderAPI().createOrder(account, createMarketOrderRequest);
System.out.println(marketOrder);
// Create limit order
ParadexCreateOrderRequestDTO createLimitOrderRequest = ParadexCreateOrderRequestDTO.builder()
.market("BTC-USD-PERP")
.orderType(OrderType.LIMIT)
.size(0.25)
.price(80000.0d)
.orderSide(OrderSide.BUY)
.build();
ParadexOrderDTO limitOrder = client.orderAPI().createOrder(account, createLimitOrderRequest);
System.out.println(limitOrder);
// Get account positions
ParadexResultsResponseDTO<ParadexPositionDTO> positions = client.accountAPI().getPositions(account);
System.out.println(positions);
}
}import com.fasterxml.jackson.databind.JsonNode;
import trade.paradex.ParadexClient;
import trade.paradex.model.ParadexEnvironment;
import trade.paradex.utils.JsonUtils;
import trade.paradex.ws.ParadexSubscriptionListener;
import trade.paradex.ws.ParadexWebsocketClient;
public class WebsocketExample {
public static void main(String[] args) throws Exception {
ParadexEnvironment environment = ParadexEnvironment.TESTNET; // or ParadexEnvironment.MAINNET
ParadexClient client = ParadexClient.builder(environment)
.build();
ParadexWebsocketClient websocketClient = new ParadexWebsocketClient(environment.getWsUrl() + "/v1", client);
ParadexSubscriptionListener subscriptionListener = new ParadexSubscriptionListener() {
@Override
public void onMessage(String channel, JsonNode data) {
System.out.println("Channel: " + channel + ", data: " + data); // print channel and data to console
}
};
websocketClient.subscribe("markets_summary", subscriptionListener);
websocketClient.connectBlocking();
Thread.sleep(10_000); // await 10 seconds
websocketClient.shutdown(); // close ws connection and shutdown the client
}
}| List of implemented API |
|---|
| Account API |
| Auth API |
| Market API |
| Liquidations API |
| Order API |
| System API |
| Vault API |