diff --git a/pkg/strategy/tri/strategy_test.go b/pkg/strategy/tri/strategy_test.go index cf6e6d44b..b15d6638f 100644 --- a/pkg/strategy/tri/strategy_test.go +++ b/pkg/strategy/tri/strategy_test.go @@ -3,24 +3,20 @@ package tri import ( - "context" "fmt" "testing" "github.com/stretchr/testify/assert" - "github.com/c9s/bbgo/pkg/cache" - "github.com/c9s/bbgo/pkg/exchange/binance" "github.com/c9s/bbgo/pkg/fixedpoint" "github.com/c9s/bbgo/pkg/types" + "github.com/c9s/bbgo/pkg/util" ) var markets = make(types.MarketMap) func init() { - var err error - markets, err = cache.LoadExchangeMarketsWithCache(context.Background(), &binance.Exchange{}) - if err != nil { + if err := util.ReadJsonFile("../../../testdata/binance-markets.json", &markets); err != nil { panic(err) } } diff --git a/pkg/util/json.go b/pkg/util/json.go index 1e7740967..b11dd89b6 100644 --- a/pkg/util/json.go +++ b/pkg/util/json.go @@ -2,7 +2,9 @@ package util import ( "encoding/json" + "io" "io/ioutil" + "os" ) func WriteJsonFile(p string, obj interface{}) error { @@ -13,3 +15,24 @@ func WriteJsonFile(p string, obj interface{}) error { return ioutil.WriteFile(p, out, 0644) } + +func ReadJsonFile(file string, obj interface{}) error { + f, err := os.Open(file) + if err != nil { + return err + } + + defer f.Close() + + byteResult, err := io.ReadAll(f) + if err != nil { + return err + } + + err = json.Unmarshal([]byte(byteResult), obj) + if err != nil { + return err + } + + return nil +} diff --git a/testdata/binance-markets.json b/testdata/binance-markets.json index 90b58b53a..d8059ed0a 100644 --- a/testdata/binance-markets.json +++ b/testdata/binance-markets.json @@ -62,5 +62,21 @@ "minPrice": 0.01, "maxPrice": 100000, "tickSize": 0.01 + }, + "ETHBTC": { + "symbol": "ETHBTC", + "localSymbol": "ETHBTC", + "pricePrecision": 8, + "volumePrecision": 8, + "quoteCurrency": "BTC", + "baseCurrency": "ETH", + "minNotional": 0.0001, + "minAmount": 0.0001, + "minQuantity": 0.0001, + "maxQuantity": 100000, + "stepSize": 0.0001, + "minPrice": 1e-05, + "maxPrice": 922327, + "tickSize": 1e-05 } }