Browse Source

instantdex modifications and new tradebot tab

release/v0.1
vineetbhargav86 9 years ago
parent
commit
7d3e2d12c8
  1. 52
      iguana/app/startup.js
  2. 45
      iguana/example.js
  3. 71
      iguana/index.html
  4. 11
      iguana/js/api.js
  5. 6
      iguana/js/common.js
  6. 117
      iguana/js/instantdex.js
  7. 289
      iguana/js/tradebot.js
  8. 12
      iguana/pnacl/Release/iguana.nmf
  9. BIN
      iguana/pnacl/Release/iguana.pexe

52
iguana/app/startup.js

@ -94,7 +94,57 @@ $(function () {
else if(e.className && e.className.indexOf('clear-response-coin') != -1){
$(".coin_result").text("JSON response");
}
///clear-response-coin
else if(e.className && e.className.indexOf('instantdex_set_userid') != -1){
InstantDEX_setuserid();
}
else if(e.className && e.className.indexOf('Tradebot_set_method_table') != -1){
tradebot_set_method_table(e.getAttribute("data-method"));
}
else if(e.className && e.className.indexOf('Tradebot_monitorall') != -1){
Tradebot_monitorall_api();
}
else if(e.className && e.className.indexOf('Tradebot_monitor') != -1){
Tradebot_monitor_api();
}
else if(e.className && e.className.indexOf('Tradebot_unmonitor_api') != -1){
Tradebot_unmonitor_api();
}
else if(e.className && e.className.indexOf('Tradebot_accumulate') != -1){
Tradebot_accumulate_api();
}
else if(e.className && e.className.indexOf('Tradebot_divest') != -1){
Tradebot_divest_api();
}
else if(e.className && e.className.indexOf('Tradebot_activebots') != -1){
Tradebot_activebots_api();
}
else if(e.className && e.className.indexOf('Tradebot_status') != -1){
Tradebot_status_api();
}
else if(e.className && e.className.indexOf('Tradebot_pause') != -1){
Tradebot_pause_api();
}
else if(e.className && e.className.indexOf('Tradebot_stop') != -1){
Tradebot_stop_api();
}
else if(e.className && e.className.indexOf('Tradebot_resume') != -1){
Tradebot_resume_api();
}
else if(e.className && e.className.indexOf('instantdex_allpairs') != -1){
InstantDEX_allpairs();
}
//
};
$("div .btn-primary").on("click",function(){
$("div .btn-primary").each(function(){
$(this).removeClass('btn-raised');
});
$(this).addClass("btn-raised");
});
});

45
iguana/example.js

@ -244,6 +244,7 @@ function ArrayBufferToString(buf) { return String.fromCharCode.apply(null, new U
function handleMessage(message_event) {
var data = message_event.data;
if ((typeof(data) === 'string' || data instanceof String)) {
check_if_pexe_7778_working(data);
common.logMessage(data);
}
else if (data instanceof Object)
@ -279,3 +280,47 @@ function handleMessage(message_event) {
common.logMessage('Error: Unknow message `' + data + '` received from NaCl module.');
}
}
var APPLICATION={pexe:"not loaded",port7778:"Not binded"};
var check_if_pexe_7778_working=function(string){
var if_changed=0;
if(string.indexOf("iguana_rpcloop")>-1 && string.indexOf("bind sock")>-1 ){
APPLICATION.port7778="successfully binded";
if_changed=1;
}else if(string.indexOf("finished DidCreate iguana")>-1){
APPLICATION.pexe="Loaded";
if_changed=1;
}else if(string.indexOf("ERROR BINDING PORT.7778")>-1){
//APPLICATION.state="Loading..";
APPLICATION.port7778="Retrying";
/*if(APPLICATION.pexe.indexOf("not loaded")>-1 || APPLICATION.pexe.indexOf("crashed")>-1){
APPLICATION.state="not working";
}*/
if_changed=1;
}else if(string.indexOf("NaCl module crashed")>-1){
APPLICATION.pexe="crashed";
if_changed=1;
}else if(string.indexOf("try again: Address already in use")>-1){
APPLICATION.port7778="bind failed";
if_changed=1;
}
if(if_changed){change_app_status();}
//finished DidCreate iguana
// ERROR BINDING PORT.7778. will exit. wait up to a minute and try again. dont worry, this is normal
// NativeClient: NaCl module crashed
//string.indexOf(substring) > -1
//bind(127.0.0.1) port.7778 try again: Address already in use sock.4. errno.98
};
var change_app_status=function(){
var html="<tr><td>Parameter</td><td>Status</td></tr>";
//html=html+"<tr><td>Application state:</td><td>"+APPLICATION.state+"</td></tr>";
html=html+"<tr><td>Pexe state:</td><td>"+APPLICATION.pexe+"</td></tr>";
html=html+"<tr><td>Port 7778 state:</td><td>"+APPLICATION.port7778+"</td></tr>";
$("#appstatus").html(html);
};

71
iguana/index.html

@ -47,7 +47,7 @@ data-path="{tc}/{config}">
<!--<a class="navbar-brand" href="#">
<img alt="Brand" style="z-index:-1;" src="logo.png" width="25" height="25">
</a>-->
<a href="javascript:void(0)" class="navbar-brand">Iguana</a>
<a href="#" class="navbar-brand">Iguana</a>
</div>
<!-- Collect the nav links, forms, and other content for toggling -->
<div class="collapse navbar-collapse" id="bs-example-navbar-collapse">
@ -280,6 +280,45 @@ data-path="{tc}/{config}">
</div>
</div>
</div>
<div id="Tradebot_page" class="page">
<div class="row">
<div class="panel panel-default">
<div class="panel-heading">
<h3>
<span>Tradebot</span>
</h3>
</div>
<div class="panel-body center button_div">
<button class="btn btn-primary Tradebot_set_method_table" data-method="monitor" >monitor</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="monitorall" >monitorall</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="unmonitor" >unmonitor</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="accumulate" >accumulate</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="divest" >divest</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="activebots" >activebots</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="status" >status</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="pause" >pause</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="stop" >stop</button>
<button class="btn btn-primary Tradebot_set_method_table" data-method="resume" >resume</button>
</div>
<div class="panel-body">
<table id="tradebot_input" class="table table-hover table-bordered">
</table>
<table id="trade_output" class="table table-hover table-bordered">
</table>
</div>
</div>
</div>
</div>
<div id="Settings_page" class="page">
@ -402,9 +441,10 @@ data-path="{tc}/{config}">
</table>
</div>
<p>
** Awaiting specific requirements **
</p>
<table id="appstatus" class="table table-hover table-bordered">
</table>
</div>
</div>
<style type="text/css">
@ -422,10 +462,13 @@ data-path="{tc}/{config}">
<h3>Instandex tab</h3>
</div>
<div class="panel-body center">
<button class="btn btn-primary instantdex_set_method_table" data-method="orderbook" >orderbook</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="apikeypair" >API Keypair</button>
<button class="btn xyz_button_click btn-primary instantdex_set_method_table" data-method="orderbook" >orderbook</button>
<button class="btn xyz_button_click btn-primary instantdex_set_method_table" data-method="apikeypair" >API Keypair</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="setuserid" >Set Userid</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="allpairs" >Allpairs</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="balance" >Balance</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="support" >Support</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="support" >Supports</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="sell" >Sell</button>
<button class="btn btn-primary instantdex_set_method_table" data-method="buy" >Buy</button>
@ -441,15 +484,12 @@ data-path="{tc}/{config}">
</div>
<div class="panel-body center">
<table id="Instandex_form_table">
<table id="Instandex_form_table" class="table table-hover table-bordered">
</table>
<table >
<tr>
<td id="Instandex_output_table">
</td>
</tr>
</div>
<div class="panel-body center">
<table id="Instandex_output_table" class="table table-hover table-bordered" >
</table>
</div>
</div>
@ -496,6 +536,7 @@ data-path="{tc}/{config}">
<script type="text/javascript " src="js/pangea.js" ></script>
<script type="text/javascript " src="js/blockexplorer.js" ></script>
<script type="text/javascript " src="js/instantdex.js" ></script>
<script type="text/javascript " src="js/tradebot.js" ></script>
<script type="text/javascript " src="js/storage.js" ></script>
</body>

11
iguana/js/api.js

@ -11,7 +11,7 @@ function tagGen(len)
var SPNAPI = (function(SPNAPI, $, undefined) {
SPNAPI.methods = {};
SPNAPI.pages = ["Settings","Instandex", "Pangea", "Peers","Debug", "Coins", "Blockexplorer"];
SPNAPI.pages = ["Settings","Tradebot","Instandex", "Pangea", "Peers","Debug", "Coins", "Blockexplorer"];
SPNAPI.pageContent = {};
SPNAPI.page = "Blockexplorer";
/*
@ -42,8 +42,13 @@ var SPNAPI = (function(SPNAPI, $, undefined) {
}else if(page==="Coins"){
addInitCoins();
}else if(page==="Instandex"){
ListAllExchanges();
}else if(page==="Blockexplorer"){
if(!saved_exchanges){
ListAllExchanges();}
}else if(page==="Tradebot"){
if(!saved_exchanges){
ListAllExchanges();}
}
else if(page==="Blockexplorer"){
filesystem_show_file_name();
}

6
iguana/js/common.js

@ -207,6 +207,8 @@ var common = (function() {
// loaded.
var moduleEl = document.getElementById('nacl_module');
updateStatus('ERROR [' + moduleEl.lastError + ']');
APPLICATION.pexe="Error encountered";
change_app_status();
}
/**
@ -223,6 +225,8 @@ var common = (function() {
if (typeof window.handleCrash !== 'undefined') {
window.handleCrash(common.naclModule.lastError);
}
APPLICATION.pexe="crashed";
change_app_status();
}
/**
@ -237,6 +241,8 @@ var common = (function() {
if (typeof window.moduleDidLoad !== 'undefined') {
window.moduleDidLoad();
}
APPLICATION.pexe="loaded";
change_app_status();
}
/**

117
iguana/js/instantdex.js

@ -6,10 +6,19 @@
var exchanges="";
var saved_exchanges=false;
var show_resposnse=function(response){
$('#Instandex_output_table').html("");
response=JSON.parse(response);
for(var i in response){
if(i==='tag') continue;
$('#Instandex_output_table').append("<tr><td align='center'>"+i+"</td><td align='center'>"+response[i]+"</td></tr>");
}
};
var setUeseridandAPIkeyPair=function(){
InstantDEX_setuserid();
setAPIkeyPair();
};
@ -18,12 +27,10 @@ var setAPIkeyPair=function(){
var exchange=$('#Instandex_exchange').val();
var apikey=$('#Instandex_apikey').val();
var passphrase=$('#Instandex_apipassphrase').val();
var request='{"agent":"InstantDEX","method":"apikeypair","exchange":"'+exchange+'","apikey":"'+apikey+'","apisecret":"'+passphrase+'"}';
SPNAPI.makeRequest(request, function(request,response){
//response=JSON.parse(response);
$('#Instandex_output_table').append(response);
show_resposnse(response);
}
);
@ -42,8 +49,8 @@ var InstantDEX_setuserid=function(){
var request='{"agent":"InstantDEX","method":"setuserid","exchange":"'+exchange+'","userid":"'+userid+'","tradepassword":"'+tradepassword+'"}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
setAPIkeyPair();
show_resposnse(response);
});
};
@ -56,7 +63,7 @@ var ListAllExchanges=function(){
response=JSON.parse(response);
if(response.result && response.result instanceof Array ){
for(var i in response.result){
$('#Instandex_exchange').append('<option value="'+response.result[i]+'">'+response.result[i]+'</option>');
//$('#Instandex_exchange').append('<option value="'+response.result[i]+'">'+response.result[i]+'</option>');
exchanges=exchanges+'<option value="'+response.result[i]+'">'+response.result[i]+'</option>';
}
@ -71,6 +78,21 @@ var ListAllExchanges=function(){
};
var InstantDEX_allpairs=function(){
var exchange=$('#Instandex_exchange').val();
var request='{"agent":"InstantDEX","method":"allpairs","exchange":"'+exchange+'"}';
SPNAPI.makeRequest(request, function(request,response){
response=JSON.parse(response);
//show_resposnse(response);
if(response.result){
for(var i in response.result){
$('#Instandex_output_table').append("<tr><td align='center'>"+response.result[i][0]+"</td><td align='center'>"+response.result[i][1]+"</td></tr>");
}}
});
};
//THREE_STRINGS_AND_THREE_INTS(InstantDEX,orderbook,exchange,base,rel,depth,allfields,invert);
var orderbook=function(){
var exchange=$('#Instandex_exchange').val();
@ -87,7 +109,7 @@ var orderbook=function(){
$('#Instandex_output_table').append("<tr class='row history-row'><th width='100px'>Bid price</th><th width='100px'>Ask price</th></tr>");
response=JSON.parse(response);
for(var i=0;i<response.numbids;i++){
$('#Instandex_output_table').append("<tr class='row history-row'><td>"+response.bids[i]+"</td><td>"+response.asks[i]+"</td></tr>");
$('#Instandex_output_table').append("<tr class='row history-row'><td align='center' >"+response.bids[i]+"</td><td align='center' >"+response.asks[i]+"</td></tr>");
}
});
@ -106,11 +128,12 @@ var exchange=$('#Instandex_exchange').val();
var base=$('#Instandex_base').val();
var rel=$('#Instandex_rel').val();
var price=$('#Instandex_price').val();
var volume=$('#Instandex_volume').val();
var request='{"agent":"InstantDEX","method":"buy","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'","price":'+price+',"volume":0,"dotrade":0}';
var request='{"agent":"InstantDEX","method":"buy","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'","price":'+price+',"volume":'+volume+',"dotrade":1}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
@ -121,11 +144,12 @@ var InstantDEXSell=function(){
var base=$('#Instandex_base').val();
var rel=$('#Instandex_rel').val();
var price=$('#Instandex_price').val();
var volume=$('#Instandex_volume').val();
var request='{"agent":"InstantDEX","method":"sell","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'","price":'+price+',"volume":0,"dotrade":0}';
var request='{"agent":"InstantDEX","method":"sell","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'","price":'+price+',"volume":'+volume+',"dotrade":1}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
@ -141,7 +165,7 @@ var InstantDEXWithdaw=function(){
console.log(request);
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
@ -157,7 +181,8 @@ var InstantDEX_supports=function(){
var request='{"agent":"InstantDEX","method":"supports","exchange":"'+exchange+'","userid":"'+base+'","rel":"'+rel+'"}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
@ -173,12 +198,7 @@ var InstantDEX_balance=function(){
var request='{"agent":"InstantDEX","method":"balance","exchange":"'+exchange+'","base":"'+base+'"}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html("");
response=JSON.parse(response);
for(var i in response){
if(i==='tag') continue;
$('#Instandex_output_table').append("<tr><th width='100px'>"+i+"</th><td width='200px'>"+response[i]+"</td></tr>");
}
show_resposnse(response);
});
};
@ -192,7 +212,7 @@ var InstantDEX_orderstatus=function(){
var request='{"agent":"InstantDEX","method":"orderstatus","exchange":"'+exchange+'","orderid":"'+orderid+'"}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
@ -208,7 +228,7 @@ var InstantDEX_cancelorder=function(){
var request='{"agent":"InstantDEX","method":"cancelorder","exchange":"'+exchange+'","orderid":"'+orderid+'"}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
@ -221,7 +241,7 @@ var InstantDEX_openorders=function(){
var request='{"agent":"InstantDEX","method":"openorders","exchange":"'+exchange+'"}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
@ -235,7 +255,7 @@ var InstantDEX_tradehistory=function(){
var request='{"agent":"InstantDEX","method":"tradehistory","exchange":"'+exchange+'"}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
@ -249,41 +269,48 @@ var InstantDEX_pollgap=function(){
var request='{"agent":"InstantDEX","method":"pollgap","exchange":"'+exchange+'","pollgap":'+pollgap+'}';
SPNAPI.makeRequest(request, function(request,response){
$('#Instandex_output_table').html(response);
show_resposnse(response);
});
};
var set_setuserid_table=function (){
var html='<tr><td align="center" > UserID:</td><td align="center" ><input type="text" id="Instandex_userid"/></td></tr><tr><td align="center" > Password:</td><td align="center" ><input type="text" id="Instandex_tradepassword"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_set_userid" >Set Userid</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_apikeypass_table=function (){
var html='<tr><td> UserID:</td><td><input type="text" id="Instandex_userid"/></td></tr><tr><td> Password:</td><td><input type="text" id="Instandex_tradepassword"/></td></tr><tr><td> Apikey:</td><td><input type="text" id="Instandex_apikey"/></td></tr><tr><td> Passphrase:</td><td><input type="text" id="Instandex_apipassphrase"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_set_keypair" >Set keypair</button></td><td></td></tr>';
var html='<tr><td align="center" > Apikey:</td><td align="center" ><input size="40" type="text" id="Instandex_apikey"/></td></tr><tr><td align="center" > Passphrase:</td><td align="center" ><input size="40" type="text" id="Instandex_apipassphrase"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_set_keypair" >Set keypair</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_orderbook_table=function (){
var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td></tr><tr><td>Rel:</td><td><input type="text" id="Instandex_rel"/></td></tr><tr><td>Depth:</td><td><input type="text" id="Instandex_orderbook_depth"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_orderbook" >orderbook</button></td><td></td></tr>';
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Instandex_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Instandex_rel"/></td></tr><tr><td align="center" >Depth:</td><td align="center" ><input type="text" id="Instandex_orderbook_depth"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_orderbook" >orderbook</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_sell_table=function (){
var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td></tr><tr><td>Rel:</td><td><input type="text" id="Instandex_rel"/></td></tr><tr><td>Price:</td><td><input type="text" id="Instandex_price"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_sell" >Sell</button></td><td></td></tr>';
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Instandex_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Instandex_rel"/></td></tr><tr><td align="center" >Price:</td><td align="center" ><input type="text" id="Instandex_price"/></td></tr><tr><td align="center" >Volume:</td><td align="center" ><input type="text" id="Instandex_volume"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_sell" >Sell</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_buy_table=function (){
var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td></tr><tr><td>Rel:</td><td><input type="text" id="Instandex_rel"/></td></tr><tr><td>Price:</td><td><input type="text" id="Instandex_price"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_buy" >Buy</button></td><td></td></tr>';
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Instandex_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Instandex_rel"/></td></tr><tr><td align="center" >Price:</td><td align="center" ><input type="text" id="Instandex_price"/></td></tr><tr><td align="center" >Volume:</td><td align="center" ><input type="text" id="Instandex_volume"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_buy" >Buy</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_balance_table=function (){
var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_balance" >Check balance</button></td><td></td></tr>';
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Instandex_base"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center" > <button class="btn btn-primary instantdex_balance" >Check balance</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
@ -291,7 +318,7 @@ var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td><
var set_support_table=function (){
var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td></tr><tr><td>Rel:</td><td><input type="text" id="Instandex_rel"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_support" >Check Support</button></td><td></td></tr>';
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Instandex_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Instandex_rel"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_support" >Check Support</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
@ -299,14 +326,14 @@ var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td><
var set_withdraw_table=function (){
var html='<tr><td> Base:</td><td><input type="text" id="Instandex_base"/></td></tr><tr><td>Destination address:</td><td><input type="text" id="Instandex_destaddr"/></td></tr><tr><td>Amount:</td><td><input type="text" id="Instandex_amount"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_withdraw" >Withdraw</button></td><td></td></tr>';
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Instandex_base"/></td></tr><tr><td align="center" >Destination address:</td><td align="center" ><input type="text" id="Instandex_destaddr"/></td></tr><tr><td align="center" >Amount:</td><td align="center" ><input type="text" id="Instandex_amount"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_withdraw" >Withdraw</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_order_status_table=function (){
var html='<tr><td> Order ID:</td><td><input type="text" id="Instandex_orderid"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_order_status" >Check order status</button></td><td></td></tr>';
var html='<tr><td align="center" > Order ID:</td><td align="center" ><input type="text" id="Instandex_orderid"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_order_status" >Check order status</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
@ -314,7 +341,7 @@ var html='<tr><td> Order ID:</td><td><input type="text" id="Instandex_orderid"/
var set_open_order_table=function (){
var html='<tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_open_orders" >Open orders</button></td><td></td></tr>';
var html='<tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_open_orders" >Open orders</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
@ -322,26 +349,34 @@ var html='<tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Inst
var set_trade_history_table=function (){
var html='<tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_trade_history" >See Trade History</button></td><td></td></tr>';
var html='<tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_trade_history" >See Trade History</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_order_cancel_table=function (){
var html='<tr><td> Order ID:</td><td><input type="text" id="Instandex_orderid"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_order_cancel" >Cancel order</button></td><td></td></tr>';
var html='<tr><td align="center" > Order ID:</td><td align="center" ><input type="text" id="Instandex_orderid"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_order_cancel" >Cancel order</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_pollgap_table=function (){
var html='<tr><td> Pollgap:</td><td><input type="text" id="Instandex_pollgap"/></td></tr><tr><td> Exchange:</td><td><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td> <button class="btn btn-primary instantdex_pollgap" >Pollgap</button></td><td></td></tr>';
var html='<tr><td align="center" > Pollgap:</td><td align="center" ><input type="text" id="Instandex_pollgap"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_pollgap" >Pollgap</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);}
};
var set_allpair_table=function (){
var html='<tr><td align="center" > Exchange:</td><td align="center" ><select name="Instandex_exchange" id="Instandex_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary instantdex_allpairs" >Get allpairs</button></td></tr>';
$('#Instandex_form_table').html(html);
if(exchanges!==""){
$('#Instandex_exchange').html(exchanges);
}
};
var instantdex_set_method_table=function (method){
if(method==="apikeypair"){
@ -376,6 +411,12 @@ var instantdex_set_method_table=function (method){
else if(method==="pollgap"){
set_pollgap_table();
}
else if(method==="setuserid"){
set_setuserid_table();
}
else if(method==="allpairs"){
set_allpair_table();
}
else{
console.log("wrong method value");

289
iguana/js/tradebot.js

@ -0,0 +1,289 @@
//THREE_STRINGS_AND_DOUBLE(tradebot,monitor,exchange,base,rel,commission);
var Tradebot_monitor_api=function(){
var exchange=$('#Tradebot_exchange').val();
var base=$('#Tradebot_base').val();
var rel=$('#Tradebot_rel').val();
var commission=$('#Tradebot_commission').val();
var request='{"agent":"tradebot","method":"monitor","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'", "commission":'+commission+'}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
//console.log("Monitor called");
};
var set_Tradebot_monitor_table=function(){
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Tradebot_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Tradebot_rel"/></td></tr><tr><td align="center" >Commission:</td><td align="center" ><input type="text" id="Tradebot_commission"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_monitor" >Monitor Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//STRING_AND_DOUBLE(tradebot,monitorall,exchange,commission);
var Tradebot_monitorall_api=function(){
var exchange=$('#Tradebot_exchange').val();
var commission=$('#Tradebot_commission').val();
var request='{"agent":"tradebot","method":"monitorall","exchange":"'+exchange+'","commission":'+commission+'}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_monitorall_table=function(){
var html='<tr><td align="center" >Commission:</td><td align="center" ><input type="text" id="Tradebot_commission"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_monitorall" >Monitor all Exchanges</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//THREE_STRINGS(tradebot,unmonitor,exchange,base,rel);
var Tradebot_unmonitor_api=function(){
var exchange=$('#Tradebot_exchange').val();
var base=$('#Tradebot_base').val();
var rel=$('#Tradebot_rel').val();
//var commission=$('#Tradebot_commission').val();
var request='{"agent":"tradebot","method":"unmonitor","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'"}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
//console.log("Monitor called");
};
var set_Tradebot_unmonitor_table=function(){
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Tradebot_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Tradebot_rel"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_unmonitor_api" >UnMonitor Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//THREE_STRINGS_AND_THREE_DOUBLES(tradebot,accumulate,exchange,base,rel,price,volume,duration);
var Tradebot_accumulate_api=function(){
var exchange=$('#Tradebot_exchange').val();
var base=$('#Tradebot_base').val();
var rel=$('#Tradebot_rel').val();
var price=$('#Tradebot_price').val();
var volume=$('#Tradebot_volume').val();
var duration=$('#Tradebot_duration').val();
var request='{"agent":"tradebot","method":"accumulate","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'", "price":'+price+',"volume":'+volume+',"duration":'+duration+' }';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_accumulate_table=function(){
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Tradebot_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Tradebot_rel"/></td></tr><tr><td align="center" >Price:</td><td align="center" ><input type="text" id="Tradebot_price"/></td></tr><tr><td align="center" >Volume:</td><td align="center" ><input type="text" id="Tradebot_volume"/></td></tr><tr><td align="center" >Duration:</td><td align="center" ><input type="text" id="Tradebot_duration"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_accumulate" >Accumulate Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//THREE_STRINGS_AND_THREE_DOUBLES(tradebot,divest,exchange,base,rel,price,volume,duration);
var Tradebot_divest_api=function(){
var exchange=$('#Tradebot_exchange').val();
var base=$('#Tradebot_base').val();
var rel=$('#Tradebot_rel').val();
var price=$('#Tradebot_price').val();
var volume=$('#Tradebot_volume').val();
var duration=$('#Tradebot_duration').val();
var request='{"agent":"tradebot","method":"divest","exchange":"'+exchange+'","base":"'+base+'","rel":"'+rel+'", "price":'+price+',"volume":'+volume+',"duration":'+duration+' }';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_divest_table=function(){
var html='<tr><td align="center" > Base:</td><td align="center" ><input type="text" id="Tradebot_base"/></td></tr><tr><td align="center" >Rel:</td><td align="center" ><input type="text" id="Tradebot_rel"/></td></tr><tr><td align="center" >Price:</td><td align="center" ><input type="text" id="Tradebot_price"/></td></tr><tr><td align="center" >Volume:</td><td align="center" ><input type="text" id="Tradebot_volume"/></td></tr><tr><td align="center" >Duration:</td><td align="center" ><input type="text" id="Tradebot_duration"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_divest" >Divest Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//STRING_ARG(tradebot,activebots,exchange);
var Tradebot_activebots_api=function(){
var exchange=$('#Tradebot_exchange').val();
var request='{"agent":"tradebot","method":"activebots","exchange":"'+exchange+'"}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_activebots_table=function(){
var html='<tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_activebots" >Get active Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//TWO_STRINGS(tradebot,status,exchange,botid);
var Tradebot_status_api=function(){
var exchange=$('#Tradebot_exchange').val();
var botid=$('#Tradebot_botid').val();
var request='{"agent":"tradebot","method":"status","exchange":"'+exchange+'","botid":"'+botid+'"}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_status_table=function(){
var html='<tr><td align="center" >Botid:</td><td align="center" ><input type="text" id="Tradebot_botid"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_status" >Check status of Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);}
};
//TWO_STRINGS(tradebot,pause,exchange,botid);
var Tradebot_pause_api=function(){
var exchange=$('#Tradebot_exchange').val();
var botid=$('#Tradebot_botid').val();
var request='{"agent":"tradebot","method":"pause","exchange":"'+exchange+'","botid":"'+botid+'"}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_pause_table=function(){
var html='<tr><td align="center" >Botid:</td><td align="center" ><input type="text" id="Tradebot_botid"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_pause" >Pause Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//TWO_STRINGS(tradebot,stop,exchange,botid);
var Tradebot_stop_api=function(){
var exchange=$('#Tradebot_exchange').val();
var botid=$('#Tradebot_botid').val();
var request='{"agent":"tradebot","method":"stop","exchange":"'+exchange+'","botid":"'+botid+'"}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_stop_table=function(){
var html='<tr><td align="center" >Botid:</td><td align="center" ><input type="text" id="Tradebot_botid"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_stop" >Stop Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
//TWO_STRINGS(tradebot,resume,exchange,botid);
var Tradebot_resume_api=function(){
var exchange=$('#Tradebot_exchange').val();
var botid=$('#Tradebot_botid').val();
var request='{"agent":"tradebot","method":"resume","exchange":"'+exchange+'","botid":"'+botid+'"}';
SPNAPI.makeRequest(request, function(request,response){
show_tradebot_resposnse(response);
}
);
};
var set_Tradebot_resume_table=function(){
var html='<tr><td align="center" >Botid:</td><td align="center" ><input type="text" id="Tradebot_botid"/></td></tr><tr><td align="center" > Exchange:</td><td align="center" ><select name="Tradebot_exchange" id="Tradebot_exchange"></select></td></tr><tr><td colspan="2" align="center"> <button class="btn btn-primary Tradebot_resume" >Resume Tradebot</button></td></tr>';
$('#tradebot_input').html(html);
if(exchanges!==""){
$('#Tradebot_exchange').html(exchanges);
}
};
var tradebot_set_method_table=function (method){
if(method==="monitor"){
set_Tradebot_monitor_table();
}else if(method==="monitorall"){
set_Tradebot_monitorall_table();
}else if(method==="unmonitor"){
set_Tradebot_unmonitor_table();
}else if(method==="accumulate"){
set_Tradebot_accumulate_table();
}else if(method==="divest"){
set_Tradebot_divest_table();
}
else if(method==="activebots"){
set_Tradebot_activebots_table();
}
else if(method==="status"){
set_Tradebot_status_table();
}
else if(method==="pause"){
set_Tradebot_pause_table();
}
else if(method==="stop"){
set_Tradebot_stop_table();
}
else if(method==="resume"){
set_Tradebot_resume_table();
}
else{
console.log("wrong method value");
}
$('#trade_output').html("");
};
var show_tradebot_resposnse=function(response){
$('#trade_output').html("");
response=JSON.parse(response);
for(var i in response){
if(i==='tag') continue;
var value="";
if(response[i] instanceof Array){
value=value+"<ul>";
for(var x in response[i]){
value=value+"<li>"+response[i][x]+"<li>";
}
value=value+"</ul>";
}else{value=response[i];}
$('#trade_output').append("<tr><td align='center'>"+i+"</td><td align='center'>"+value+"</td></tr>");
}
};

12
iguana/pnacl/Release/iguana.nmf

@ -1,12 +0,0 @@
{
"program": {
"portable": {
"pnacl-translate": {
"url": "iguana.pexe"
},
"pnacl-debug": {
"url": "iguana_unstripped.bc"
}
}
}
}

BIN
iguana/pnacl/Release/iguana.pexe

Binary file not shown.
Loading…
Cancel
Save