lamassu-server/lib/plugins/exchange/kraken/kraken.js
Josh Harvey 35fb620b38 WIP
2017-06-25 16:52:14 +03:00

41 lines
1.1 KiB
JavaScript

const Kraken = require('kraken-api')
const common = require('../../common/kraken')
var PAIRS = common.PAIRS
module.exports = {buy, sell}
function buy (account, cryptoAtoms, fiatCode, cryptoCode) {
return trade(account, 'buy', cryptoAtoms, fiatCode, cryptoCode)
}
function sell (account, cryptoAtoms, fiatCode, cryptoCode) {
return trade(account, 'sell', cryptoAtoms, fiatCode, cryptoCode)
}
function trade (account, type, cryptoAtoms, fiatCode, cryptoCode) {
const kraken = new Kraken(account.apiKey, account.privateKey)
const amount = common.toUnit(cryptoAtoms, cryptoCode)
const amountStr = amount.toFixed(6)
const pair = PAIRS[cryptoCode][fiatCode]
var orderInfo = {
pair: pair,
type: type,
ordertype: 'market',
volume: amountStr,
expiretm: '+60'
}
return new Promise((resolve, reject) => {
kraken.api('AddOrder', orderInfo, function (error, response) {
if (error) {
// TODO: handle: EOrder:Order minimum not met (volume too low)
return reject(error)
} else {
console.log('DEBUG900: %j', response)
return resolve()
}
})
})
}