Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // You need node: https://nodejs.org/en/
- // Download: https://github.com/nocaremc/nodex-ws
- // Replace app.js contents with this paste
- // In the same directory as app.js: npm install
- // to run: npm start
- /* Example output:
- USD:BTS - 0.20012536757755442
- CNY:BTS - 1.282795829167645
- BTS:target - 19.41670234815228
- USD:target - 3.8857746945679392
- CNY:target - 24.907664788399362
- */
- const log = require('./src/Log.js')
- const API = require('./src/API.js')
- let api = new API('wss://la.dexnode.net/ws', {perMessageDeflate: false})
- api.on("open", () => {
- api.database(database => {
- // api.database_api.lookup_asset_symbols(JSON.stringify(['EUR']), result => {
- // log.warn(result)
- // })
- let usd = {id: '1.3.121'}
- let cny = {id: '1.3.113'}
- let bts = {id: '1.3.0'}
- let target = {id: '1.3.120'} // bitEUR
- let bts_target = {latest: undefined}
- let usd_bts = {latest: undefined}
- let cny_bts = {latest: undefined}
- // Get ticker for bts:target
- api.database_api.get_ticker(bts.id, target.id, result => {
- // Calculate an average from latest and bids/asks
- bts_target.latest = sum(result)
- bts_target.average_latest = bts_target.latest / 3
- api.database_api.get_ticker(usd.id, bts.id, result => {
- // Calculate an average from latest and bids/asks
- usd_bts.latest = sum(result)
- usd_bts.average_latest = usd_bts.latest / 3
- api.database_api.get_ticker(cny.id, bts.id, result => {
- cny_bts.latest = sum(result)
- cny_bts.average_latest = cny_bts.latest / 3
- log.error("USD:BTS - " + usd_bts.average_latest)
- log.error("CNY:BTS - " + cny_bts.average_latest)
- log.error("BTS:target - " + bts_target.average_latest)
- log.error("USD:target - " + usd_bts.average_latest * bts_target.average_latest)
- log.error("CNY:target - " + cny_bts.average_latest * bts_target.average_latest)
- //api.close()
- })
- })
- })
- })
- })
- function sum(result) {
- return [
- result.latest, result.lowest_ask, result.highest_bid
- ].reduce((price, last) => {
- return parseFloat(last) + parseFloat(price)
- })
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement