Installation Setup

Overview of supported trading markets and installation prerequisites for using the API.

Supported Markets

This API provides information for the following trading markets:

Asset

Market ID

Description

APT/USDC

396

Aptos-based trading market.

BTC/USDC

397

Bitcoin-based trading market.

ETH/USDC

398

Ethereum-based trading market.

Prerequisites

Before using the API, ensure you have the following:

  1. Node.js: Install version 16 or higher. Download here.

  2. npm: Verify npm is installed to manage packages.

Install Required Packages

Run these commands to install the required dependencies:

  1. Install dotenv and axios:

    npm install dotenv axios
  2. Install the Aptos SDK for TypeScript:

    npm install @aptos-labs/ts-sdk

Example Setup in TypeScript

Create a file, e.g., setup.ts, and use the following code:

// Import required packages
import dotenv from 'dotenv';
import axios from 'axios';
import { AptosConfig, Aptos, Network, Account, Ed25519PrivateKey, PrivateKeyVariants } from "@aptos-labs/ts-sdk";

// Load environment variables from .env file
dotenv.config();

// Setup the client
const config = new AptosConfig({ network: Network.TESTNET });
const aptos = new Aptos(config);
const formattedPrivateKey = PrivateKey.formatPrivateKey(
    process.env.APTOS_PRIVATEKEY || '',
    'ed25519' as PrivateKeyVariants
);
const account = Account.fromPrivateKey({
    privateKey: new Ed25519PrivateKey(formattedPrivateKey),
});

Size Conversion Details:

APT Market

  • base_decimals: 8

  • lot_size_multiplier: 100000

BTC Market

  • base_decimals: 8

  • lot_size_multiplier: 1000

ETH Market

  • base_decimals: 8

  • lot_size_multiplier: 10000

Size Conversion Example in TypeScript:

import BigNumber from "bignumber.js";

async function main(): Promise<void> {

    // Size conversion
    const size = new BigNumber("your_size_value"); // Eg: 5.67
    const baseDecimals = "your_base_decimals_value"; // Eg: 8
    const lotSizeMultiplier = new BigNumber("your_lot_size_multiplier_value"); // Eg: 100000

    // 10^baseDecimals
    const sizeScalingFactor = new BigNumber(10).pow(baseDecimals);

    // Convert size and remove decimals
    const convertedSize = size.multipliedBy(sizeScalingFactor).dividedBy(lotSizeMultiplier).integerValue(BigNumber.ROUND_FLOOR);

    console.log("Converted Size: ", convertedSize.toString());
}

main().catch(error => {
    console.error('An error occurred:', error);
});

Price Conversion Details:

APT Market

  • price_precision: 3

BTC Market

  • price_precision: 0

ETH Market

  • price_precision: 1

Price Conversion Example in TypeScript:

import BigNumber from "bignumber.js";

async function main(): Promise<void> {

    // Price conversion
    const price = new BigNumber("your_price_value"); // Eg: 8.356
    const pricePrecision = "your_price_precision_value"; // Eg: 3

    // 10^pricePrecision
    const priceMultiplier = new BigNumber(10).pow(pricePrecision);

    // Convert price and remove decimals
    const convertedPrice = price.multipliedBy(priceMultiplier).integerValue(BigNumber.ROUND_FLOOR);

    console.log("Converted Price: ", convertedPrice.toString());
}

main().catch(error => {
    console.error('An error occurred:', error);
});

Last updated