Skip to content

Instantly share code, notes, and snippets.

/*USAGE:
npm install ws lodash async moment crc-32
mkdir logs
node bfx_test_book.js BTCUSD
*/
const WS = require('ws')
const _ = require('lodash')
const async = require('async')
const fs = require('fs')
import requests # pip install requests
import json
import base64
import hashlib
import hmac
import time #for nonce
class Test(object):
BASE_URL = "https://api.bitfinex.com/"
KEY=""
const WS = require('ws')
const _ = require('lodash')
const async = require('async')
const fs = require('fs')
const moment = require('moment')
const CRC = require('crc-32')
const pair = process.argv[2]
const conf = {

Keybase proof

I hereby claim:

  • I am prdn on github.
  • I am prdn (https://keybase.io/prdn) on keybase.
  • I have a public key whose fingerprint is A27A CB60 3D97 4B61 87D2 34CE F830 2259 0E52 D8E9

To claim this, I am signing this object:

pair = 'BTCUSD'
csv = [['Date', 'Open', 'High', 'Low', 'Close', 'Volume']]
end_t = Time.now.to_i * 1000
loop do
body = HTTParty.get("https://api.bitfinex.com/v2/candles/trade:1h:t#{pair}/hist?_bfx=1&limit=1500&end="+end_t.to_s).body
body = Oj.load(body) rescue nil
break if body.nil?
break if body.size == 0
body.each do |e|
csv << [Time.at(e[0] / 1000).strftime('%Y-%m-%d %H:00:00'), e[1], e[3], e[4], e[2], e[5]]
// npm install ws crypto-js
const WebSocket = require('ws')
const crypto = require('crypto-js')
const apiKey = ''
const apiSecret = ''
const authNonce = Date.now() * 1000
const authPayload = 'AUTH' + authNonce
/*USAGE:
npm install ws lodash async moment crc-32
mkdir logs
node bfx_test_book.js BTCUSD
*/
const WS = require('ws')
const _ = require('lodash')
const async = require('async')
const fs = require('fs')
/*
npm install ws lodash async moment
mkdir logs
node bfx_test_book_raw.js BTCUSD &
tail -f logs/ws-book-*
*/
var WS = require('ws')