@dydxprotocol/dydx.js
TypeScript icon, indicating that this package has built-in type declarations

0.9.14 • Public • Published

CI Coverage Status License NPM Slack

A TypeScript library for interacting with the dYdX protocol.

Usage

Install

npm install --save @dydxprotocol/dydx.js

Initialize

import { DYDX } from '@dydxprotocol/dydx.js';

const dydx = new DYDX();
await dydx.initialize(provider, networkId);

Short & Leveraged Tokens

Mint

await dydx.shortToken.mint(
  positionId,
  trader,
  tokensToMint,
  payInHeldToken,
  exchangeWrapper,
  orderData,
  options,
);

Or mint with ETH:

await dydx.shortToken.mintWithETH(
  positionId,
  trader,
  tokensToMint,
  ethToSend,
  ethIsHeldToken,
  exchangeWrapper,
  orderData,
  options,
);

Or mint directly (you will put up all held token [DAI for sETH] and will receive owed token [WETH for sETH]):

// Set your allowance on our proxy contract - you only need to do this once
await dydx.token.setMaximumProxyAllowance(
  heldTokenAddress, // DAI address for sETH
  traderAddress, // your address
);

await dydx.shortToken.mintDirectly(
  positionId, // Can get from expo API
  trader, // your address
  tokensToMint, // BigNumber - Number of tokens to mint in base units (10^18 is 1 sETH)
);

Close

Close directly (you will pay all owed token owed to lenders [WETH for sETH] and will receive all held token collateral [DAI for sETH])

// Set your allowance on our proxy contract - you only need to do this once
await dydx.token.setMaximumProxyAllowance(
  owedTokenAddress, // WETH address for sETH
  traderAddress, // your address
);

await dydx.shortToken.closeDirectly(
  positionId, // Can get from expo API
  closer, // your address
  tokensToClose, // BigNumber - Number of tokens to close in base units (10^18 is 1 sETH)
);

Development

Install

npm install

Compile

npm run build

/@dydxprotocol/dydx.js/

    Package Sidebar

    Install

    npm i @dydxprotocol/dydx.js

    Weekly Downloads

    0

    Version

    0.9.14

    License

    Apache-2.0

    Unpacked Size

    404 kB

    Total Files

    111

    Last publish

    Collaborators