You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
jl777 dcdc5f50c4 Test 7 years ago
..
DB Test 7 years ago
SVM Test 7 years ago
confs Test 7 years ago
genesis Test 7 years ago
tmp Test 7 years ago
DEXstats.h Test 7 years ago
LP_bitcoin.c Test 7 years ago
LP_coins.c Test 7 years ago
LP_commands.c Test 7 years ago
LP_forwarding.c Test 7 years ago
LP_include.h Test 7 years ago
LP_nativeDEX.c Test 7 years ago
LP_network.c Test 7 years ago
LP_ordermatch.c Test 7 years ago
LP_peers.c Test 7 years ago
LP_prices.c Test 7 years ago
LP_remember.c Test 7 years ago
LP_rpc.c Test 7 years ago
LP_scan.c Test 7 years ago
LP_secp.c Test 8 years ago
LP_statemachine.c Test 7 years ago
LP_swap.c Test 7 years ago
LP_transaction.c Test 7 years ago
LP_utxos.c Test 7 years ago
PAX.c test 8 years ago
README.md Randval -> passphrase 7 years ago
autotrade Bestfit 7 years ago
bestfit Bestfit 7 years ago
bitcoin.c Test 7 years ago
bitcoin.h test 8 years ago
bitfinex.c test 8 years ago
bitstamp.c test 8 years ago
bittrex.c Test 8 years ago
btc38.c test 8 years ago
btce.c test 8 years ago
cancelorder Test 7 years ago
checkbalance.c exchanges API 9 years ago
client Randval -> passphrase 7 years ago
client_osx Randval -> passphrase 7 years ago
coinbase.c test 8 years ago
coins Test 7 years ago
debug Test 7 years ago
disable Test 7 years ago
enable Test 7 years ago
exchange_supports.h test 8 years ago
exchange_undefs.h test 8 years ago
forward Test 7 years ago
fxcm.c Xcode 8 8 years ago
getcoins Test 7 years ago
getpeers Test 7 years ago
getpeersIP Test 7 years ago
getprices Test 7 years ago
getutxos Test 7 years ago
help Test 7 years ago
huobi.c test 8 years ago
instaforex.c test 8 years ago
install Test 7 years ago
inv Test 7 years ago
jumblr.c test 8 years ago
lakebtc.c test 8 years ago
lookup Test 7 years ago
loop Test 7 years ago
message Test 7 years ago
mm.c Test 7 years ago
myprice Test 7 years ago
myprices Test 7 years ago
numutxos Test 7 years ago
nxtae.c Test 7 years ago
okcoin.c test 8 years ago
orderbook Test 7 years ago
ordermatch Test 7 years ago
passphrase Randval -> passphrase 7 years ago
poloniex.c test 8 years ago
pub Test 7 years ago
quadriga.c test 8 years ago
register Test 7 years ago
registerall Test 7 years ago
run Randval -> passphrase 7 years ago
run_osx Randval -> passphrase 7 years ago
setprice Test 7 years ago
stats.c Test 7 years ago
status Test 7 years ago
swapstatus Test 7 years ago
trade Test 7 years ago
truefx.c test 8 years ago
unconf.c test 8 years ago
userpass Test 7 years ago
utxos Test 7 years ago

README.md

Latest Readme is at http://pad.supernet.org/barterdex-readme

DEPENDENCIES First of all you are going to need to have the komodod daemon and the assetchains running. Install dependency packages: sudo apt-get install build-essential pkg-config libc6-dev m4 g++-multilib autoconf libtool libncurses5-dev unzip git python zlib1g-dev wget bsdmainutils automake libboost-all-dev libssl-dev libprotobuf-dev protobuf-compiler libqt4-dev libqrencode-dev libdb++-dev ntp ntpdate vim software-properties-common curl libcurl4-gnutls-dev cmake clang Some Linux machines are now providing nanomsg package version 1.0. If it is available via package manager, you can install it from there. Else, you should use github repo of nanomsg and compile it yourself. For Ubuntu 14.04 you need to install it yourself cd /tmp wget https://github.com/nanomsg/nanomsg/archive/1.0.0.tar.gz -O nanomsg-1.0.0.tar.gz tar -xzvf nanomsg-1.0.0.tar.gz cd nanomsg-1.0.0 mkdir build cd build cmake .. -DCMAKE_INSTALL_PREFIX=/usr cmake --build . sudo cmake --build . --target install sudo ldconfig Or the following for 16.04 git clone https://github.com/nanomsg/nanomsg cd nanomsg cmake . make sudo make install sudo ldconfig COMPILE LP NODE To compile the BarterDEX you need to build iguana one time: cd ~ git clone https://github.com/jl777/SuperNET cd SuperNET/iguana git checkout dev ./m_LP IGUANA DAEMON STARTUP Then launch the iguana daemon by executing: ../agents/iguana & Now iguana should be running and providing port 7778 API: 127.0.0.1:7778 page in the browser will show the API testpage, but for marketmaker these functions are not used very much. it is port 7779 that is used and the marketmaker program is what provides those functions. BarterDEX EXCHANGE INSTALL cd ~/SuperNET/iguana/exchanges ./install Now, move to ~/SuperNET/iguana/dexscripts: cd ~/SuperNET/iguana/dexscripts Now in the ~/SuperNET/iguana/dexscripts directory you will have example scripts that you can change without new git updates overwriting them. These scripts will have example commands that you will need to customize to work with the coins you want to trade. Of course, if a new update to a script is made and you dont run install again then you wont have the latest versions. For example: if you want to enable the JUMBLR coin, you need to edit the enable file: nano ~SuperNET/iguana/dexscripts/enable copy the default command and paste it below but with the coin edited to JUMBLR in this case: curl --url "http://127.0.0.1:7779" --data "{"userpass":"$userpass","method":"enable","coin":"JUMBLR"}" The same will happen for any other script in the dexscripts directory. You will need to edit the scripts to include or exclude the coins you want to trade. IMPORTANT: All these scripts are expecting a userpass file, which contains the definition of the $userpass variable to authenticate API access. This avoids evil webpages that try to issue port 7779 calls to steal your money. At first you wont know the value of userpass. To find out, just run any API script. The first one will return all the required data, the "userpass" field is first and you can copy that value and put it into ~/SuperNET/iguana/dexscripts/userpass file. If you dont, all subsequent API calls will get authorization errors.The userpass variable is linked to each passphrase and that is defined in the passphrase file. Put your passphrase in that file. You can find templates for these two files in the iguana/exchanges dir. (you need to copy the edited version of these files to ~/SuperNET/iguana/dexscripts). cd ~/SuperNET/iguana/dexscripts ./enable (look for the userpass passphrase that will be generated and copy it) Now you have to paste the passphrase in both userpass and passphrase files: nano ./userpass nano ./passphrase ( paste the passphrase generated into the files where it says: “”) EXCHANGE CLIENT STARTUP Next step is to actually start the marketmaker from ~/SuperNET/iguana/dexscripts. cd ~/SuperNET/iguana/dexscripts ./client (for client mode) or ./run (for LPnode mode) Assuming you created the userpass file properly, you can now issue barterDEX api calls using all the scripts in the dexscripts dir. Please look at these scripts, they are simple curl invocations of a couple lines. Nothing scary and should be self explanatory. The help script displays all the api endpoints you should need. You can customize any of the dexscripts for your desired usage, make sure you edit them with the right coins, as if you issue a script for BTC it will do it for BTC instead of the coin you wanted. These scripts wont read your mind, they just do what is in them FUNDING SMARTADDRESS In order to start trading, you need to fund your smartaddress (as listed on the first API call return) from the getcoins API call. To see which is your smart address go to ~/SuperNET/iguana/dexscritps and execute: ./getcoins To make sure you have utxo pairs for both the bob and alice usage, it is best to send utxo in triplets of X, 1.2 X and 0.01 X. So if X is 10, send 10, 12, and 0.1 coins using sendtoaddress to your smartaddress. This means you will have to send 3 different transactions to the same address with 3 different quantities for example: If i want to fund my komodo smartaddress with 100 komodo i need to first send a tx with 100kmd then another tx with 120kmd and a third tx with only 10kmd After this, it should appear in the inventory. To see the inventory you need to execute: ./inv SETTING PRICE To set price you need to edit the ./setprice script in the dexscripts folder. This scripts contains a curl command that looks like this: curl --url "http://127.0.0.1:7779" --data "{"userpass":"$userpass","method":"setprice","base":"REVS","rel":"KMD","price":1.234}" In this command you should edit the coin (in this case is REVS) and then set the price per coin based in Komodo. In the command above we are setting a price of 1.23KMD per REVS. After you setprice (./setprice), then it will appear in orderbooks with that coin in either the base or rel.