Library for creating limit/stoploss orders via Autonomy Network
npm install @autonomylabs/limit-stop-ordersPlace limit/stoploss orders on BSC and Avalanche using Autonomy Registry.
yarn add -D @autonomylabs/limit-stop-orders
or
npm install --save-dev @autonomylabs/limit-stop-orders
``typescript
import { AutonomyLimitStopOrders } from "@autonomylabs/limit-stop-orders";
const autonomyLimitStopOrders = new AutonomyLimitStopOrders(
chainId, // BSC = 56, Avalanche = 43114
signerOrProvider, // Web3 Signer or Provider
routerAddress, // DEX router address, Apeswap by default on BSC / TraderJoe by default on Avalanche
factoryAddress, // DEX factory adderss, Apeswap by default on BSC / TraderJoe by default on Avalanche
initCodeHash // DEX init code hash, Apeswap by default on BSC / TraderJoe by default on Avalanche
);
`
`typescript`
await autonomyLimitStopOrders.approve(
inputToken, // input token address
inputAmount, // input amount in BigNumber
recipient // recipient address
);
`typescript`
await autonomyLimitStopOrders.submitOrder(
orderType, // Limit or Stop
inputToken, // input token address
inputAmount, // input amount in BigNumber
outputToken, // output token address
outputAmount, // output amount in BigNumber
recipient, // recipient address
autonomyPrepay // if true, small amount will be pre-paid
);
`typescript`
await autonomyLimitStopOrders.cancelOrder(order);
#### Get all orders
`typescript`
const allOrders = await autonomyLimitStopOrders.getOrders(requesterAddress);
#### Get open orders
`typescript`
const openOrders = await autonomyLimitStopOrders.getOpenOrders(requesterAddress);
#### Get executed orders
`typescript`
const executedOrders = await autonomyLimitStopOrders.getExecutedOrders(requesterAddress);
#### Get cancelled orders
`typescript`
const cancelledOrders = await autonomyLimitStopOrders.getCancelledOrders(requesterAddress);
#### Get orders by type
`typescript``
const limitOrders = await autonomyLimitStopOrders.getOrdersByType(requesterAddress, "Limit");
const stopLossOrders = await autonomyLimitStopOrders.getOrdersByType(requesterAddress, "Stop");