foxbit-api
v1.0.16
Published
Package NPM for Foxbit API.
Downloads
30
Maintainers
Readme
Foxbit API (WebSocket)
Pacote NPM de acesso via WebSocket para a API da exchange brasileira Foxbit.
Autor: Miguel Medeiros [Site] [Youtube] [Twitter] Exchange: [Foxbit] Documentação da API: [Site da Foxbit] [PDF da Alphapoint]
Gostou do trabalho? Então me pague um café! Carteira BTC: 1NM76h5SvdhTdmS8dksGwWpHNbnVngWczR
Esse pacote foi desenvolvido para uso próprio. Portanto, não é um pacote oficial da Foxbit. USE POR SUA CONTA E RISCO!
Readme Index
- Instalação
- Configuração
- Funções
- Funções Públicas
- Connect: Conecta na API via WebSocket.
- LogOut: Finaliza conexão com o WebSocket.
- GetInstrument: Retorna as informações par de moedas por ID.
- GetInstruments: Retorna um array de pares de moedas cadastrados.
- GetOpenOrders: Retorna as ordens abertas no livro de ordens.
- GetProduct: Retorna a moeda cadastrado por ID.
- GetProducts: Retorna as moedas cadastradas.
- GetL2Snapshot: Retorna um spanshot do Orderbook.
- GetTickerHistory: Retorna um histórico de Tickers.
- SubscribeTicker: Se inscreve para receber Tickers atualizados.
- SubscribeTrades: Se inscreve para receber Trades atualizadas.
- UnsubscribeTicker: Se desinscreve do Ticker.
- UnsubscribeTrades: Se desinscreve das Trades.
- Funções Privadas
- GetUserConfig: Retorna configurações definidas pelo usuário.
- GetUserInfo: Retorna os dados das informações de Usuário.
- GetUserPermissions: Retorna permissões do usuário solicitante.
- GetOrdersHistory: Retorna um array com o histórico de ordens.
- SendOrder: Envia Ordem de Compra/Venda.
- CancelAllOrders: Cancela todas as ordens abertas.
- CancelOrder: Cancela ordem que ainda não foi executada.
- GetAccountInfo: Retorna informação sobre a conta do usuário logado.
- GetAccountPositions: Retorna um array com o balanço do usuário.
- GetAccountTrades: Retorna um array com o histórico do ordens executadas do usuário.
- GetAccountTransactions: Retorna um array com o histórico de transações abertas do usuário.
- Funções Públicas
- Contribua com Código
- License
Instalação
Você precisa importar o pacote para seu projeto:
npm i foxbit-api --save
Configuração
// importar foxbit api package
const foxbit = require("foxbit-api");
Funções
Segue a lista de funções para se conectar com o WebSocket da API da Foxbit.
Funções Públicas
Não é necessária de credenciais para acessar os métodos públicos.
Connect
Conecta na API via WebSocket.Link Documentação
// Variáveis das suas credenciais
// Necessárias somente para métodos privados.
let user = "";
let password = "";
// Dispara chamada para conectar com o WebSocket.
foxbit.Connect(user, password);
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
console.log(res);
});
Logout
Finaliza conexão com o WebSocket.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada LogOut.
foxbit.LogOut();
});
// Evento disparado quando o LogOut foi efetuado.
foxbit.eventEmitter.on("LogOut", res => {
console.log(res);
});
GetInstrument
Retorna as informações par de moedas por ID.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada GetInstrument.
foxbit.GetInstrument();
});
// Evento disparado quando o GetInstrument foi efetuado.
foxbit.eventEmitter.on("GetInstrument", res => {
console.log(res);
});
GetInstruments
Retorna um array de pares de moedas cadastrados.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada GetInstruments.
foxbit.GetInstruments();
});
// Evento disparado quando o GetInstruments foi efetuado.
foxbit.eventEmitter.on("GetInstruments", res => {
console.log(res);
});
GetOpenOrders
Retorna as ordens abertas no livro de ordens.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada GetProducts.
foxbit.GetProducts();
});
// Evento disparado quando o GetProducts foi efetuado.
foxbit.eventEmitter.on("GetProducts", res => {
console.log(res);
});
GetProduct
Retorna a moeda cadastrado por ID.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada GetProduct.
foxbit.GetProduct(1);
});
// Evento disparado quando o GetProduct foi efetuado.
foxbit.eventEmitter.on("GetProduct", res => {
console.log(res);
});
GetProducts
Retorna as moedas cadastradas.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada GetProducts.
foxbit.GetProducts();
});
// Evento disparado quando o GetProducts foi efetuado.
foxbit.eventEmitter.on("GetProducts", res => {
console.log(res);
});
GetL2Snapshot
Retorna um spanshot do Orderbook.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada GetL2Snapshot.
foxbit.GetL2Snapshot(100);
});
// Evento disparado quando o GetL2Snapshot foi efetuado.
foxbit.eventEmitter.on("GetL2Snapshot", res => {
console.log(res);
});
GetTickerHistory
Retorna um histórico de Tickers.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
//Variável de parametrização
let lastMinutes = 60;
// Dispara chamada GetTickerHistory.
foxbit.GetTickerHistory(lastMinutes);
});
// Evento disparado quando o GetTickerHistory foi efetuado.
foxbit.eventEmitter.on("GetTickerHistory", res => {
console.log(res);
});
SubscribeTicker
Se inscreve para receber Tickers atualizados.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada SubscribeTicker.
foxbit.SubscribeTicker(1);
});
// Evento disparado quando o SubscribeTicker foi efetuado.
foxbit.eventEmitter.on("SubscribeTicker", res => {
console.log(res);
});
// Evento disparado quando o Ticker é atualizado.
foxbit.eventEmitter.on("TickerDataUpdateEvent", res => {
console.log(res);
});
SubscribeTrades
Se inscreve para receber Trades atualizadas.
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada SubscribeTrades.
foxbit.SubscribeTrades();
});
// Evento disparado quando o SubscribeTrades foi efetuado.
foxbit.eventEmitter.on("SubscribeTrades", res => {
console.log(res);
});
// Evento disparado quando alguma Trade foi efetuada.
foxbit.eventEmitter.on("TradeDataUpdateEvent", res => {
console.log(res);
});
UnsubscribeTicker
Se desinscreve do Ticker.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada UnsubscribeTicker.
foxbit.UnsubscribeTicker();
});
// Evento disparado quando o UnsubscribeTicker foi efetuado.
foxbit.eventEmitter.on("UnsubscribeTicker", res => {
console.log(res);
});
UnsubscribeTrades
Se desinscreve das Trades.
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada UnsubscribeTrades.
foxbit.UnsubscribeTrades();
});
// Evento disparado quando o UnsubscribeTrades foi efetuado.
foxbit.eventEmitter.on("UnsubscribeTrades", res => {
console.log(res);
});
Funções Privadas
Ao se conectar é necessário usar credenciais (usuário e senha) para acessar os métodos privados.
GetUserInfo
Retorna os dados das informações de Usuário.Link Documentação
// Evento disparado quando o WebSocket foi conectado.
foxbit.eventEmitter.on("Connected", res => {
// Dispara chamada GetUserInfo.
foxbit.GetUserInfo();
});
// Evento disparado quando o GetUserInfo foi efetuado.
foxbit.eventEmitter.on("GetUserInfo", res => {
console.log(res);
});
GetUserConfig
Retorna configurações definidas pelo usuário.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada GetUserConfig.
foxbit.GetUserConfig();
});
// Evento disparado quando o GetUserConfig foi efetuado.
foxbit.eventEmitter.on("GetUserConfig", res => {
console.log(res);
});
GetUserPermissions
Retorna permissões do usuário solicitante.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada GetUserPermissions.
foxbit.GetUserPermissions();
});
// Evento disparado quando o GetUserPermissions foi efetuado.
foxbit.eventEmitter.on("GetUserPermissions", res => {
console.log(res);
});
GetOrdersHistory
Retorna um array com o histórico de ordens.
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada GetOrdersHistory.
foxbit.GetOrdersHistory();
});
// Evento disparado quando o GetOrdersHistory foi efetuado.
foxbit.eventEmitter.on("GetOrdersHistory", res => {
console.log(res);
});
SendOrder
Envia Ordem de Compra/Venda.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Variáveis de parametrização
let Side = "Sell"; // Buy, Sell
// Market, Limit, StopMarket, StopLimit, TralingStopMarket, TrailingStopLimit, BlockTrade
let OrderType = "Limit";
let Quantity = 0.0001; // BTC
let Price = 40000; // BRL
// Dispara chamada SendOrder.
foxbit.SendOrder(Side, OrderType, Quantity, Price);
});
// Evento disparado quando o SendOrder foi efetuado.
foxbit.eventEmitter.on("SendOrder", res => {
console.log(res);
});
CancelAllOrders
Cancela todas as ordens abertas.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada CancelAllOrders.
foxbit.CancelAllOrders();
});
// Evento disparado quando o CancelAllOrders foi efetuado.
foxbit.eventEmitter.on("CancelAllOrders", res => {
console.log(res);
});
CancelOrder
Cancela ordem que ainda não foi executada.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Variáveis de Parametrização
let ClientOrderId = 11111;
let orderId = 9999;
// Dispara chamada CancelOrder.
foxbit.CancelOrder(ClientOrderId, orderId);
});
// Evento disparado quando o CancelOrder foi efetuado.
foxbit.eventEmitter.on("CancelOrder", res => {
console.log(res);
});
GetAccountInfo
Retorna informação sobre a conta do usuário logado.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada CancelOrder.
foxbit.GetAccountInfo();
});
// Evento disparado quando o GetAccountInfo foi efetuado.
foxbit.eventEmitter.on("GetAccountInfo", res => {
console.log(res);
});
GetAccountPositions
Retorna um array com o balanço do usuário.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada GetAccountPositions.
foxbit.GetAccountPositions();
});
// Evento disparado quando o GetAccountPositions foi efetuado.
foxbit.eventEmitter.on("GetAccountPositions", res => {
console.log(res);
});
GetAccountTrades
Retorna um array com o histórico do ordens executadas do usuário.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada GetAccountTrades.
foxbit.GetAccountTrades();
});
// Evento disparado quando o GetAccountTrades foi efetuado.
foxbit.eventEmitter.on("GetAccountTrades", res => {
console.log(res);
});
GetAccountTransactions
Retorna um array com o histórico de transações abertas do usuário.Link Documentação
// Evento disparado quando o WebSocket foi conectado
// e recebeu as informações do usuário.
foxbit.eventEmitter.on("Ready", res => {
// Dispara chamada GetAccountTransactions.
foxbit.GetAccountTransactions();
});
// Evento disparado quando o GetAccountTransactions foi efetuado.
foxbit.eventEmitter.on("GetAccountTransactions", res => {
console.log(res);
});
Contribua com Código
Ainda faltam algumas chamadas para completar a API como um todo. Vou adorar se você quiser contribuir para deixar esse pacote mais completo! Sinta-se à vontade em fazer um 'pull request'! Afinal esse repositório é aberto! <3