Engine changes

Add addr helpers (will be split off into own package)
Engine status updates (log and data dir display)
Use GetPairFormat for various exchanges instead of calling the config
QA fixes
Implement GCTRPC exchange deposit address handling
This commit is contained in:
Adrian Gallagher
2019-06-24 17:34:07 +10:00
parent 9ff4471a45
commit 1daaa66830
15 changed files with 247 additions and 78 deletions

View File

@@ -485,7 +485,7 @@ func (a *ANX) GetActiveOrders(getOrdersRequest *exchange.GetOrdersRequest) ([]ex
Amount: resp[i].TradedCurrencyAmount,
CurrencyPair: currency.NewPairWithDelimiter(resp[i].TradedCurrency,
resp[i].SettlementCurrency,
a.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
a.GetPairFormat(asset.Spot, false).Delimiter),
OrderDate: orderDate,
Exchange: a.Name,
ID: resp[i].OrderID,
@@ -527,7 +527,7 @@ func (a *ANX) GetOrderHistory(getOrdersRequest *exchange.GetOrdersRequest) ([]ex
Status: resp[i].OrderStatus,
CurrencyPair: currency.NewPairWithDelimiter(resp[i].TradedCurrency,
resp[i].SettlementCurrency,
a.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
a.GetPairFormat(asset.Spot, false).Delimiter),
}
orders = append(orders, orderDetail)

View File

@@ -447,7 +447,7 @@ func (b *Bithumb) GetActiveOrders(getOrdersRequest *exchange.GetOrdersRequest) (
Status: string(exchange.ActiveOrderStatus),
CurrencyPair: currency.NewPairWithDelimiter(resp.Data[i].OrderCurrency,
resp.Data[i].PaymentCurrency,
b.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
b.GetPairFormat(asset.Spot, false).Delimiter),
}
if resp.Data[i].Type == "bid" {
@@ -490,7 +490,7 @@ func (b *Bithumb) GetOrderHistory(getOrdersRequest *exchange.GetOrdersRequest) (
RemainingAmount: resp.Data[i].UnitsRemaining,
CurrencyPair: currency.NewPairWithDelimiter(resp.Data[i].OrderCurrency,
resp.Data[i].PaymentCurrency,
b.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
b.GetPairFormat(asset.Spot, false).Delimiter),
}
if resp.Data[i].Type == "bid" {

View File

@@ -519,7 +519,7 @@ func (b *Bitmex) GetActiveOrders(getOrdersRequest *exchange.GetOrdersRequest) ([
Status: resp[i].OrdStatus,
CurrencyPair: currency.NewPairWithDelimiter(resp[i].Symbol,
resp[i].SettlCurrency,
b.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
b.GetPairFormat(asset.PerpetualContract, false).Delimiter),
}
orders = append(orders, orderDetail)
@@ -561,7 +561,7 @@ func (b *Bitmex) GetOrderHistory(getOrdersRequest *exchange.GetOrdersRequest) ([
Status: resp[i].OrdStatus,
CurrencyPair: currency.NewPairWithDelimiter(resp[i].Symbol,
resp[i].SettlCurrency,
b.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
b.GetPairFormat(asset.PerpetualContract, false).Delimiter),
}
orders = append(orders, orderDetail)

View File

@@ -505,6 +505,9 @@ func (b *Bitstamp) OpenInternationalBankWithdrawal(amount float64, currency,
// crypto - example "btc", "ltc", "eth", "xrp" or "bch"
func (b *Bitstamp) GetCryptoDepositAddress(crypto currency.Code) (string, error) {
var resp string
v2Resp := struct {
Address string `json:"address"`
}{}
switch crypto {
case currency.BTC:
@@ -512,20 +515,20 @@ func (b *Bitstamp) GetCryptoDepositAddress(crypto currency.Code) (string, error)
b.SendAuthenticatedHTTPRequest(bitstampAPIBitcoinDeposit, false, nil, &resp)
case currency.LTC:
return resp,
b.SendAuthenticatedHTTPRequest(bitstampAPILitecoinDeposit, true, nil, &resp)
return v2Resp.Address,
b.SendAuthenticatedHTTPRequest(bitstampAPILitecoinDeposit, true, nil, &v2Resp)
case currency.ETH:
return resp,
b.SendAuthenticatedHTTPRequest(bitstampAPIEthereumDeposit, true, nil, &resp)
return v2Resp.Address,
b.SendAuthenticatedHTTPRequest(bitstampAPIEthereumDeposit, true, nil, &v2Resp)
case currency.XRP:
return resp,
b.SendAuthenticatedHTTPRequest(bitstampAPIXrpDeposit, true, nil, &resp)
return v2Resp.Address,
b.SendAuthenticatedHTTPRequest(bitstampAPIXrpDeposit, true, nil, &v2Resp)
case currency.BCH:
return resp,
b.SendAuthenticatedHTTPRequest(bitstampAPIBitcoinCashDeposit, true, nil, &resp)
return v2Resp.Address,
b.SendAuthenticatedHTTPRequest(bitstampAPIBitcoinCashDeposit, true, nil, &v2Resp)
default:
return resp, fmt.Errorf("unsupported cryptocurrency string %s", crypto)

View File

@@ -473,7 +473,8 @@ func (b *BTCMarkets) GetActiveOrders(getOrdersRequest *exchange.GetOrdersRequest
Price: resp[i].Price,
Status: resp[i].Status,
CurrencyPair: currency.NewPairWithDelimiter(resp[i].Instrument,
resp[i].Currency, "-"),
resp[i].Currency,
b.GetPairFormat(asset.Spot, false).Delimiter),
}
for j := range resp[i].Trades {
@@ -542,7 +543,7 @@ func (b *BTCMarkets) GetOrderHistory(getOrdersRequest *exchange.GetOrdersRequest
Status: respOrders[i].Status,
CurrencyPair: currency.NewPairWithDelimiter(respOrders[i].Instrument,
respOrders[i].Currency,
b.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
b.GetPairFormat(asset.Spot, false).Delimiter),
}
for j := range respOrders[i].Trades {

View File

@@ -459,7 +459,7 @@ func (g *Gemini) GetOrderHistory(getOrdersRequest *exchange.GetOrdersRequest) ([
Price: trades[i].Price,
CurrencyPair: currency.NewPairWithDelimiter(trades[i].BaseCurrency,
trades[i].QuoteCurrency,
g.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
g.GetPairFormat(asset.Spot, false).Delimiter),
})
}

View File

@@ -443,7 +443,7 @@ func (l *LocalBitcoins) GetActiveOrders(getOrdersRequest *exchange.GetOrdersRequ
OrderSide: side,
CurrencyPair: currency.NewPairWithDelimiter(currency.BTC.String(),
resp[i].Data.Currency,
l.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
l.GetPairFormat(asset.Spot, false).Delimiter),
Exchange: l.Name,
})
}
@@ -516,7 +516,7 @@ func (l *LocalBitcoins) GetOrderHistory(getOrdersRequest *exchange.GetOrdersRequ
Status: status,
CurrencyPair: currency.NewPairWithDelimiter(currency.BTC.String(),
allTrades[i].Data.Currency,
l.CurrencyPairs.Get(asset.Spot).ConfigFormat.Delimiter),
l.GetPairFormat(asset.Spot, false).Delimiter),
Exchange: l.Name,
})
}