0.1.29 ā€¢ Published 10 months ago

botiq v0.1.29

Weekly downloads
-
License
GPLv3
Repository
github
Last release
10 months ago

BOTIQ

High-level node.js library useful for creating cryptocurrency bots and apps for the Binance CEX and Ethereum-compatible blockchains. Features automatic fiat conversions where available.

Binance Limit Buy Example

const connection = botiq.binance.createConnection({
    apiKey: 'PASTE_API_KEY_HERE',  
    apiSecret: 'PASTE_API_SECRET_HERE'
});

const ethTracker = await connection.createTracker({
    tokenSymbol: 'ETH', 
    comparatorSymbol: 'USDT'
});

await botiq.modules.awaitPriceMovement.awaitPriceFall({
    tracker: ethTracker,
    triggerPriceString: '10%'
});

const binanceBuyResult = await connection.buyTokensWithExact({
    tokenSymbol: ethTracker.token.symbol, 
    comparatorSymbol: ethTracker.comparator.symbol, 
    exactComparatorQuantity: '50%', //percentage of balance
});
console.log(binanceBuyResult);

Ethereum Limit Buy Example

const wallet = botiq.ethers.createWalletFromPrivateKey({
    privateKey: 'PASTE_PRIVATE_KEY_HERE'
}) 

const ethereumEndpoint = await botiq.ethers.createJsonRpcEndpoint({
    accessURL: 'PASTE_ACCESS_URL_HERE',
    rateLimitPerSecond: 2,
});

const tokenTracker = await ethereumEndpoint.createTracker({
    exchange: botiq.ethers.chains.ethereum.exchanges.uniswapV2,
    tokenAddress: 'PASTE_TOKEN_ADDRESS_HERE',
});

await botiq.modules.awaitPriceMovement.awaitPriceFall({
    tracker: tokenTracker,
    triggerPriceString: '10%',
});

const buyResult = await botiq.ethers.UniswapV2.buyTokensWithExact({
    tracker: tokenTracker,
    privateKey: wallet.privateKey, 
    exactComparatorQuantity: '-0.01', //use 100% of balance minus 0.01 
    slippagePercent: '1%',
});
console.log(buyResult);

See ./examples/ for more.

Notes

  • Has NOT undergone extensive testing.
  • The ethers backend will only work for factories and routers that abide by uniswap v2.
  • An informal TODO is in index.js. If you want to add to it, please make use of github's issue tracker.

Basic code structure

ethers.js and binance.js handle the specifics of their tokens, while common.js is the place to look for the actual tracker API. It should be quite easy to add CEXs if you make judicious use of common.massageCexMarketSwapData.

Supporting the Project

I am neither financially comfortable nor hungry. Donations support my work and are always greatly appreciated!

šŸ™ 0xeF6102cf13Bf075BD5A61BBa1ec7E509899f7152 šŸ™

0.1.27

10 months ago

0.1.28

10 months ago

0.1.29

10 months ago

0.1.20

2 years ago

0.1.21

2 years ago

0.1.22

2 years ago

0.1.23

2 years ago

0.1.24

2 years ago

0.1.25

1 year ago

0.1.26

1 year ago

0.1.10

2 years ago

0.1.11

2 years ago

0.1.12

2 years ago

0.1.13

2 years ago

0.1.14

2 years ago

0.1.15

2 years ago

0.1.16

2 years ago

0.1.8

2 years ago

0.1.17

2 years ago

0.1.7

2 years ago

0.1.18

2 years ago

0.1.19

2 years ago

0.1.9

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.4

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago