jaggedsoft / eterbase-api

Javascript API for Eterbase, lightning fast and easy to use. ⚡

Home Page:https://www.eterbase.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Latest Version GitHub last commit npm downloads

NPM

Installation

npm install eterbase

This project is designed to help you make your own projects that interact with the Eterbase API in node.js. Eterbase is Europe's Premier Digital Asset Exchange, the first compliant cryptocurrency exchange in Europe with crypto to fiat banking. Sign up to Eterbase here.

Getting Started

( async () => {
    const eterbase = require( "eterbase" );
    
    // Load credentials from json: (accountId, key and secret)
    await eterbase.auth( "options.json" );
    console.log( await eterbase.balances() );
    
    // Or authenticate manually:
    await eterbase.auth( accountId, key, secret );
    console.log( await eterbase.balance( "BTC" ) );
} )();

Examples

// Get all actively trading symbols:
console.log( await eterbase.symbols() );

// Get price of all assets:
console.log( await eterbase.tickers() );

// Get price of a specific asset:
console.log( await eterbase.ticker( "XBASE-EUR" ) );

// Get all market IDs, asset precision, minimum orders and allowed order types:
console.log( await eterbase.markets() );

// Get total balances:
console.log( await eterbase.balances() );

// Market buy:
console.log( await eterbase.marketBuy( {
    symbol: "XBASE-ETH",
    cost: "0.006"
} ) );

// Limit buy:
console.log( await eterbase.limitBuy( {
    symbol: "XBASE-ETH",
    amount: 320,
    price: 0.00002333
} ) );

// Market sell:
console.log( await eterbase.marketSell( {
    symbol: "ETH-BTC",
    amount: 0.01
} ) );

// Check open orders:
console.log( await eterbase.openOrders( { symbol: "XBASE-ETH" } ) );

// Get a list of all trades (fills)
console.log( await eterbase.orderFills( { symbol: "XBASE-ETH" } ) );

// Market depth
console.log( await eterbase.orderBook( { symbol: "XBASE-EUR" } ) );

// Download OHLC candlestick information:
console.log( await eterbase.ohlcv( {
    symbol: "ETH-BTC",
    interval: 1440,
    start: 1560000000000,
    end: 1568322090000
} ) );

WebSocket Examples

await eterbase.connect();

// Stream orderbook - snapshot is the current state of the order book and update messages is what is actually streamed
eterbase.orderBookStream( "XBASE-ETH",
    message => {
        console.log( "orderBook snapshot: " + message )
    },
    message => {
        console.log( "orderBook update: " + message )
    } );

// Stream OHLCV - every new tick triggers the callback
eterbase.ohlcvStream( "XBASE-ETH",
    message => {
        console.log( "ohlcvStream: " + message )
    } );

// Stream trades - every incoming trade triggers the callback
eterbase.tradeHistoryStream( "XBASE-ETH",
    message => {
        console.log( "tradeHistory: " + message );
    } );
    
// Stream of new orders
eterbase.myOrdersStream( "XBASE-ETH",
    message => {
        console.log( "myOrders: " + message );
    } );

Troubleshooting

Automatically 'throw' errors to reveal more information:

process.on( 'unhandledRejection', up => { throw up } );

Views jaggedsoft on Twitter ETERBASE on Twitter

About

Javascript API for Eterbase, lightning fast and easy to use. ⚡

https://www.eterbase.com

License:MIT License


Languages

Language:JavaScript 100.0%