mirror of
https://github.com/d0zingcat/gocryptotrader.git
synced 2026-06-08 07:26:48 +00:00
Binance: Fixes expiring futures contract pair formatting (#836)
* Fixes expiring contract formatting * minor simplification * shazniterinos * Removes secret scientific test * continue to address nits * Shazniterinos * Adds `bypassConfigFormatUpgrades` feature. Fixes Binance pair parsing. * lint fix * Adds test for binance func * Consistent messaging and oopsie fix
This commit is contained in:
@@ -201,50 +201,51 @@ func (g *Gemini) Run() {
|
||||
}
|
||||
|
||||
forceUpdate := false
|
||||
format, err := g.GetPairFormat(asset.Spot, false)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys, "%s failed to get enabled currencies. Err %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
return
|
||||
}
|
||||
|
||||
enabled, err := g.CurrencyPairs.GetPairs(asset.Spot, true)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys, "%s failed to get enabled currencies. Err %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
return
|
||||
}
|
||||
|
||||
avail, err := g.CurrencyPairs.GetPairs(asset.Spot, false)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys, "%s failed to get available currencies. Err %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
return
|
||||
}
|
||||
|
||||
if !common.StringDataContains(enabled.Strings(), format.Delimiter) ||
|
||||
!common.StringDataContains(avail.Strings(), format.Delimiter) {
|
||||
var enabledPairs currency.Pairs
|
||||
enabledPairs, err = currency.NewPairsFromStrings([]string{
|
||||
currency.BTC.String() + format.Delimiter + currency.USD.String()})
|
||||
if !g.BypassConfigFormatUpgrades {
|
||||
format, err := g.GetPairFormat(asset.Spot, false)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys, "%s failed to update currencies. Err %s\n",
|
||||
log.Errorf(log.ExchangeSys, "%s failed to get enabled currencies. Err %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
} else {
|
||||
log.Warn(log.ExchangeSys,
|
||||
"Available pairs for Gemini reset due to config upgrade, please enable the ones you would like to use again")
|
||||
forceUpdate = true
|
||||
return
|
||||
}
|
||||
|
||||
err = g.UpdatePairs(enabledPairs, asset.Spot, true, true)
|
||||
enabled, err := g.CurrencyPairs.GetPairs(asset.Spot, true)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys, "%s failed to get enabled currencies. Err %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
return
|
||||
}
|
||||
|
||||
avail, err := g.CurrencyPairs.GetPairs(asset.Spot, false)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys, "%s failed to get available currencies. Err %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
return
|
||||
}
|
||||
|
||||
if !common.StringDataContains(enabled.Strings(), format.Delimiter) ||
|
||||
!common.StringDataContains(avail.Strings(), format.Delimiter) {
|
||||
var enabledPairs currency.Pairs
|
||||
enabledPairs, err = currency.NewPairsFromStrings([]string{
|
||||
currency.BTC.String() + format.Delimiter + currency.USD.String()})
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys,
|
||||
"%s failed to update currencies. Err: %s\n",
|
||||
log.Errorf(log.ExchangeSys, "%s failed to update currencies. Err %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
} else {
|
||||
log.Warnf(log.ExchangeSys, exchange.ResetConfigPairsWarningMessage, g.Name, asset.Spot, enabledPairs)
|
||||
forceUpdate = true
|
||||
|
||||
err = g.UpdatePairs(enabledPairs, asset.Spot, true, true)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys,
|
||||
"%s failed to update currencies. Err: %s\n",
|
||||
g.Name,
|
||||
err)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -252,7 +253,7 @@ func (g *Gemini) Run() {
|
||||
if !g.GetEnabledFeatures().AutoPairUpdates && !forceUpdate {
|
||||
return
|
||||
}
|
||||
err = g.UpdateTradablePairs(context.TODO(), forceUpdate)
|
||||
err := g.UpdateTradablePairs(context.TODO(), forceUpdate)
|
||||
if err != nil {
|
||||
log.Errorf(log.ExchangeSys,
|
||||
"%s failed to update tradable pairs. Err: %s",
|
||||
|
||||
Reference in New Issue
Block a user