diff --git a/web/yaamp/core/backend/markets.php b/web/yaamp/core/backend/markets.php index 2a8c202..7413cae 100644 --- a/web/yaamp/core/backend/markets.php +++ b/web/yaamp/core/backend/markets.php @@ -15,6 +15,7 @@ function BackendPricesUpdate() updatePoloniexMarkets(); updateBleutradeMarkets(); updateCryptoBridgeMarkets(); + updateEscoDexMarkets(); updateGateioMarkets(); updateGraviexMarkets(); updateKrakenMarkets(); @@ -370,6 +371,49 @@ function updateCryptoBridgeMarkets($force = false) } } +function updateEscoDexMarkets($force = false) +{ + $exchange = 'escodex'; + if (exchange_get($exchange, 'disabled')) return; + + $count = (int) dboscalar("SELECT count(id) FROM markets WHERE name LIKE '$exchange%'"); + if ($count == 0) return; + $result = escodex_api_query('ticker'); + if(!is_array($result)) return; + foreach($result as $ticker) + { + if (is_null(objSafeVal($ticker,'id'))) continue; + #$pairs = explode('_', $ticker->id); + $symbol = $ticker->quote; $base = $ticker->base; + if($symbol == 'BTC' || $base != 'BTC') continue; + if (market_get($exchange, $symbol, "disabled")) { + $market->disabled = 1; + $market->message = 'disabled from settings'; + } + + $coin = getdbosql('db_coins', "symbol='{$symbol}'"); + if(!$coin) continue; + if(!$coin->installed && !$coin->watch) continue; + $market = getdbosql('db_markets', "coinid={$coin->id} and name='{$exchange}'"); + if(!$market) continue; + + $price2 = ($ticker->highest_bid + $ticker->lowest_ask)/2; + $market->price2 = AverageIncrement($market->price2, $price2); + $market->price = AverageIncrement($market->price, $ticker->highest_bid); + $market->pricetime = time(); + $market->priority = -1; + $market->txfee = 0.2; // trade pct + $market->save(); + //debuglog("$exchange: update $symbol: {$market->price} {$market->price2}"); + if ((empty($coin->price))||(empty($coin->price2))) { + $coin->price = $market->price; + $coin->price2 = $market->price2; + $coin->market = $exchange; + $coin->save(); + } + } +} + ///////////////////////////////////////////////////////////////////////////////////////////// function updateGateioMarkets($force = false) diff --git a/web/yaamp/core/backend/rawcoins.php b/web/yaamp/core/backend/rawcoins.php index 7db705c..8a289b2 100644 --- a/web/yaamp/core/backend/rawcoins.php +++ b/web/yaamp/core/backend/rawcoins.php @@ -14,6 +14,7 @@ function updateRawcoins() exchange_set_default('coinbene', 'disabled', true); exchange_set_default('coinexchange', 'disabled', true); exchange_set_default('coinsmarkets', 'disabled', true); + exchange_set_default('escodex', 'disabled', true); exchange_set_default('gateio', 'disabled', true); exchange_set_default('jubi', 'disabled', true); exchange_set_default('nova', 'disabled', true); @@ -219,6 +220,21 @@ function updateRawcoins() } } + if (!exchange_get('escodex', 'disabled')) { + $list = escodex_api_query('ticker'); + if(is_array($list) && !empty($list)) + { + dborun("UPDATE markets SET deleted=true WHERE name='escodex'"); + foreach($list as $ticker) { + #debuglog (json_encode($ticker)); + if (strtoupper($ticker->base) !== 'BTC') + continue; + $symbol = strtoupper($ticker->quote); + updateRawCoin('escodex', $symbol); + } + } + } + if (!exchange_get('hitbtc', 'disabled')) { $list = hitbtc_api_query('symbols'); if(is_object($list) && isset($list->symbols) && is_array($list->symbols)) @@ -464,7 +480,7 @@ function updateRawCoin($marketname, $symbol, $name='unknown') } // some other to ignore... - if (in_array($marketname, array('crex24','yobit','coinbene','kucoin','tradesatoshi'))) + if (in_array($marketname, array('crex24','escodex','yobit','coinbene','kucoin','tradesatoshi'))) return; if (market_get($marketname, $symbol, "disabled")) { diff --git a/web/yaamp/core/exchange/escodex.php b/web/yaamp/core/exchange/escodex.php new file mode 100644 index 0000000..ba75620 --- /dev/null +++ b/web/yaamp/core/exchange/escodex.php @@ -0,0 +1,14 @@ +