Giter Site home page Giter Site logo

bitex's Introduction

#This documentation is outdated. You must be a Senior Python Developer in order to understand what is going on. Don't try to run an exchange without an expert.

BlinkTrade

BlinkTrade - Open Source Exchange Platform

How to install on Google Compute Engine

Build Status

#Get Started

$ pip install -r requirements.txt

#Build and Run

Download and install the pyblinktrade package from https://github.com/blinktrade/pyblinktrade

cd ~
cd pyblinktrade
chmod +x setup.py
sudo ./setup.py install

Download and install the frontend project from https://github.com/blinktrade/frontend.git

$ cd ./jsdev
$ ./build_release.sh  # Or ./build_release.bat [Windows]

$ ./apps/trade/main.py
$ ./apps/ws_gateway/main.py
$ ./apps/mailer/main.py

Applications - Trade

Matching engine and the core of the BitEx platform

Applications - Ws Gateway

The HTTP/WebSocket gateway is based on Tornado. It relays HTTP or websocket API requests to the trade engine in order to place orders or fetching market data.

Applications - Mailer

The mailing application... sends mail. To that end, it uses Mailchimp's transaction email solution, Mandrill.

E-mail templates are stored under the templates/ dir, and which template to use (and the data to fill it out) are supplied by listening on the zeromq socket.

Translating

cd ./jsdev/tools
$ python extract_messages.py  > /tmp/file_to_be_translated.xml

# translate the xml
$ cp /tmp/file_to_be_translated.xml  ./jsdev/translations/pt_BR.xtb

# edit the build_release.sh to include the translated version.
$ vi ./jsdev/build_release.sh

$ ./jsdev/build_release.sh  # recompile the application using the translated file

# translated the html static page
# vi ./static/statoshi_square.html

#Why the name of the folder is Bitex ?

Bitex stands for Bitcoin EXchange and it was the first that we came up it name of our platform, by mid 2014 a company called bitex.la was formed in Argentina and we were forced to change our name, this source code it is not related in any form to bitex.la.

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request

#License

Code released under the GNU GPL license.

Copyright 2014 BitEx, LTDA. BitEx is a trademark maintained by BitEx, LTDA.

VIOLATORS OF THE GNU GPL LICENSE WILL BE PROSECUTED TO THE FULL EXTENT OF THE LAW FREE SOFTWARE FOR FREE PEOPLE

bitex's People

Contributors

bilthon avatar bitcoinland avatar cesardeazevedo avatar ismaelezequiel avatar mmmelo avatar pinhopro avatar pjz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bitex's Issues

Need API documentation

Need an API for automated exchange bots. This increases trading and helps make the market more efficient.

Keep getting signed out

Refreshing the page or clicking the logo signs a user out. Even if you've just signed in.

Help: Message from server: Error - Not connected to the server

I'm trying to set this up in a test server. It seems to work to some degree but I keep getting this message in browser:
Message from server: Error - Not connected to the server

I can't register nor do anything else. See here:
https://bitex.himeko.ro

Server seems to work, I can see output like this in the console:

1:08:14 engine.1 | [I 140829 11:08:14 trade_application:68] OUT,TRADE_IN_REP,REP,{"TestReqID": "0", "MsgType": "0"}
11:08:44 engine.1 | [I 140829 11:08:44 trade_application:68] IN,TRADE_IN_REQ,REQ,ZI6AJHAHWIVOKH3J,{"TestReqID": "0", "MsgType": "1"}
11:08:44 engine.1 | [I 140829 11:08:44 trade_application:68] OUT,TRADE_IN_REP,REP,{"TestReqID": "0", "MsgType": "0"}
11:09:14 engine.1 | [I 140829 11:09:14 trade_application:68] IN,TRADE_IN_REQ,REQ,ZI6AJHAHWIVOKH3J,{"TestReqID": "0", "MsgType": "1"}
11:09:14 engine.1 | [I 140829 11:09:14 trade_application:68] OUT,TRADE_IN_REP,REP,{"TestReqID": "0", "MsgType": "0"}
11:09:44 engine.1 | [I 140829 11:09:44 trade_application:68] IN,TRADE_IN_REQ,REQ,ZI6AJHAHWIVOKH3J,{"TestReqID": "0", "MsgType": "1"}
11:09:44 engine.1 | [I 140829 11:09:44 trade_application:68] OUT,TRADE_IN_REP,REP,{"TestReqID": "0", "MsgType": "0"}
11:09:54 gateway.1 | [I 140829 11:09:53 main:511] INFO,CONNECTION_OPEN,78.97.67.68
11:09:54 engine.1 | [I 140829 11:09:53 trade_application:68] IN,TRADE_IN_REQ,OPN,GNGQRP2YGKCRVY7I
11:09:54 engine.1 | [I 140829 11:09:53 trade_application:68] OUT,TRADE_IN_REP,OPN,GNGQRP2YGKCRVY7I
11:09:54 gateway.1 | [I 140829 11:09:53 main:511] INFO,REGISTER_CONNECTION,{'trade.connection_id': 'GNGQRP2YGKCRVY7I', 'remote_ip': '78.9x.6x.xx'}
11:10:14 engine.1 | [I 140829 11:10:14 trade_application:68] IN,TRADE_IN_REQ,REQ,ZI6AJHAHWIVOKH3J,{"TestReqID": "0", "MsgType": "1"}
11:10:14 engine.1 | [I 140829 11:10:14 trade_application:68] OUT,TRADE_IN_REP,REP,{"TestReqID": "0", "MsgType": "0"}

Can anyone help?

Publish a REST API for basic market data (ticker)

I know @pinhopro opposes a REST API:

Unfortunately, most of those websites keep pooling the website for more data. This is just not right, that is why I will never release any public REST api.

I think you should reconsider this. Sure he is right, those websites should use Websockets instead of pooling a REST API. However, Websockets are not a good solution in all scenarios (to each problem its solution). I would like to add bitex based exchanges to Boilr (check drpout/boilr#170). Boilr fetches the last value with a given update interval (e.g. 5 min). On mobile apps, such as Boilr, you should not leave a Websocket open in background as it would waste energy and bandwidth resources. Opening it every time you need to fetch last value isn't good either, (depending on the implementation) you may have to wait until the next trade takes places, which can take an indefinite amount of time. In this scenario a REST API is the best solution.

As @amingilani correctly said:

Web server load is only a scalability issue. If it's that large a problem, a separate instance can easily be spawned to deal with that part of the problem 😕

Furthermore, you can always block consecutive REST API calls coming from the same IP address (e.g. cap it to one request per second per IP).

Web socket api blinktrade

Hi Rodrigo , please could you provide us a way to track the order book trought a websocket API , also the documentations of foxbit api are missing on webpage, thanks alot.

Keep getting signed out... just for using the UI

I'm in the process of trying to figure out how to adapt bitex to handle trading pure equities. To start I added (to config/bootstrap/demo.ini):

under [currencies]:

BNL=[ "BNL" , "B"  , "Buy'N'Large" ,  true,  1,    "{:,.0f}",     "B #,##0.00000000;(B #,##0.00000000)" ,  {:,.0f}",           "B #,##0.00000000;(B #,##0.0000000)"          ]

and under [instruments]:

BNLUSD=["BNLUSD", "USD", "Buy 'N Large instrument"]  

...with my thinking being that it might be okay to just set up a fake currency that can't be traded and is, essentially, 'shares of BNL' that happen to be purchased using BNLUSD. Sadly, doing this causes the frontend to... misbehave. Trying to change the Market dropdown in the sidebar from BTC / USD to 'Buy 'N Large instrument' causes a logout. As does just trying to go to the ledger.

Hints? help? What did I overlook?

Update example config (`config/bitex.ini.example`)

Hi, when I did

$ ./apps/ws_gateway/main.py -i ws_gateway -c config/myconfig.ini

I got
AttributeError: 'ProjectOptions' object has no attribute 'url_payment_processor'

even though the included config/bitex.ini.example doesn't have that key in the [ws_gateway_xxx] section. Is there an updated example config someone could add? I can add this one key, but it's unclear to me if all the sections are still valid, much less individual keys. Thanks!

Database fields too short

Currently Broker has:

phone_number_1        = Column(String(15))
phone_number_2        = Column(String(15))
skype                 = Column(String(30))
email                 = Column(String(15))

which strike me as a bit... short. Your demo data (in bootstrap/demo.ini) thinks so too, since it overflows the email field (len("[email protected]") is > 15).

My suggested fix is to make phone numbers 30 characters and skype and email 254 characters. I could submit a PR, but I don't know how you guys are doing schema change management so didn't want to trample on it and risk messing with someone's live database.

Also, the name field in DepositMethods should likely be increased to 30; the current 15 is overflowed by demo.ini's usps_money_order.

Not a problem-I want to help!

Sorry to open this, but I would like to help in the project, even if initially as a final client of testing deployments, please tell me how I should proceed.

Att

install

Is someone familiar with the installation steps ?

Where are the demo .conf files?

I managed to install to get the demo running connected to your server.

But can't manage to get it to work locally.

Is there a demo configuration files for trade.conf and/or api_receive.conf

In addition, shouldn't there be an "apps/api_receive" directory?

Very hard to evaluate the potential of this software suite without minimum documentation.

Orderbook with additionals colums like bitcoin accumulated amount

Me gustaría que se mostrase el acumulado de bitcoins ofertados / demandados, como en la imagen que adjunto.

ordenes

Y si no puede ser en la página principal, tal vez en una página secundaria, un libro de ordenes ampliado, que además del acumulado de bitcoins ofertados, muestre cuanto es la cantidad de BsF requerida para esa oferta y/o para esa oferta y las superiores, y además la tasa promedio de adquisición, adjunto ejemplo.

De esta imagen puedo concluir que un poco menos de 118.000 BsF puedo comprar los 2,19 BTC ofertados a una tasa promedio de 53820,32

O si quiero mantenerme en una tasa razonable, adquirir hasta la oferta de 0,1 BTC de Yosemir (cuarta de abajo hacia arriba); donde con 66334,48 BsF puedo adquirir 1,63163 BTC a una tasa promedio de 40655 BsF/BTC.

ordenes2

Bitcoin buy offers limited to fiat balance

It surbitcoin I saw people offering 10.000 VEF/BTC for 20.000 BTC, they need 200.000.000 to cover that offer, I suppose that they doesn't have that amount of money.

Then the bitcoin buy offers must be limited to fiat balance.

Veo gente ofreciendo 10.000 BsF/BTC para 20.000 BTC, por lo que debería tener de saldo 200.000.000 BsF de saldo para cubrir esa oferta.

Esto crea una distorsión en el mercado.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.