Package Exports
- 1broker-client
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (1broker-client) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
1Broker-client
####This is a node.js wrapper for 1Broker's API, this package is mainly used and maintaned by @telebroker_bot an incredible bot to open orders and manage trades directly from Telegram !!!
####Join us at 1Broker Trollbox for some trades and trolling, feel free to use the group to ask anything about the Telegram bot as well!
This library implements all 1Broker API methods and also a couple extra features:
- % Stop Loss and Take Profit when creating Market or Limit orders.
- Option to use "MAX", "HALF" or "QUARTER" as leverage, so it will dynamically adjust based on market MAX leverage.
- Market information is cached on details.json allowing quick and smart calculations, for instance:
- How many points you making in your position?
- At what value will a reach that many points?
- How many percent a given difference represents with a given leverage?
Telegram bot
All this functionality from this library is available through @telebroker_bot for Telegram, this way you don't have to run commands from your command line and similars, using the bot you get some sort of API REPL which is a lot of fun!
I also created a Thread on reddit to speak about it, i'll hopefully keep improving the bot and keeping reddit up to date with the features.
Feel free to contact me there or open a new issue!
Installing
npm install --save 1broker-client
Unfortunately new versions might break backwards compatibility so please make sure you specify a version on your package.json file.
basics
All functions take "callback" as last parameter:
OneBroker = require( "1broker-client" )
client = OneBroker( "YOU_API_KEY" )
client.user.overview( function( error, overview ) {
if( error ) return console.error( error );
console.log( overview );
} );
Functions which need parameters will take them as object, for instance:
client.market.quotes({
symbols: "BTCUSD,GOLD"
}, function( error, quotes ) {
console.log( quotes );
});
Most methods from the API V2 have been implemented
client.user.bitcoin_deposit_address( callback )
client.user.details( callback )
client.user.overview( callback )
client.market.details( params, callback )
client.market.get_bars( params, callback )
client.market.list( callback )
client.market.quotes( params, callback )
client.order.cancel( params, callback )
client.order.create( params, callback )
client.order.list_open( params, callback )
client.position.edit( params, callback )
client.position.history( params, callback )
client.position.open( params, callback )
client.position.close( position_id, callback )
client.position.close_cancel( position_id, callback )
For full API documentation please refer to the Official API
examples
Simple examples are provided on the /examples folder, including the % Stop Loss and Take Profit syntax.
Before running the examples you will need:
Api Token ( Create one in Settings )
Coffee-Script
npm install coffee-script --global
Download the example files
$ git clone https://github.com/flyingunicorn222/1broker-client.git
$ cd 1broker-client/
$ npm install
$ cd examples
- Edit _key file and add your key between the quotes
# examples/_key.coffee
module.exports ='YOUR_TOKEN_GOES_HERE'
Now you can run examples, for instance:
$coffee long_eurusd.coffee
or
$coffee short_btcusd.coffee
Examples source code is pretty simple, please go ahead an explore!
===
I'm also developing more extra functions, called "helpers" which will hopefully simplify the implementation of mechanical tasks.
todo
- Simple implementation
- Examples
- Extra methods ( long, short, close, reverse, [...] )
- Documentation
- Tests
- Parameters validation
- Please create an issue if you need something else
contributing
The source code is also pretty simple and self explainatory so feel free to edit and submit a pull request.
In case you find an issue, have a request or recommendation feel free to open an issue, it will be highly appreciated.
You can also donate to support this library and more freebies!
BTC 1AsB6GtqUjHrLRXBzA19RMYyD7G9aVARbx
Feel free to send me a message on reddit, I'm flyingunicorn222
Thank You!
disclaimer
By default when creating an order this library will use my referral_id, which means I'll receive a small amount of BTC from 1broker when you create an order! It would be great if you could keep it this way! If you don't agree update the value on the config file.
1broker links on this documentation also constains my referral link