@@ -1033,7 +1033,7 @@ type BinancePriceResponse struct {
10331033// ]
10341034//
10351035// ]
1036- type CandlestickResponse [][]interface {}
1036+ type CandlestickResponse [][]any
10371037
10381038func badStickElement (key string , element interface {}) Candlesticks {
10391039 log .Errorf ("Unable to decode %s from candlestick: %T: %v" , key , element , element )
@@ -2016,7 +2016,7 @@ type KucoinPriceResponse struct {
20162016// ]
20172017type KucoinCandlestickResponse struct {
20182018 // Code string `json:"code"`
2019- Data [][]interface {} `json:"data"`
2019+ Data [][]string `json:"data"`
20202020}
20212021
20222022func (r KucoinCandlestickResponse ) translate () Candlesticks {
@@ -2026,58 +2026,34 @@ func (r KucoinCandlestickResponse) translate() Candlesticks {
20262026 log .Error ("Unable to decode candlestick response. Not enough elements." )
20272027 return Candlesticks {}
20282028 }
2029- unixMsStr , ok := rawStick [0 ].(string )
2030- if ! ok {
2031- return badStickElement ("start time" , rawStick [0 ])
2032- }
2033-
2034- unixMsFlt , err := strconv .Atoi (unixMsStr )
2029+
2030+ unixMsFlt , err := strconv .Atoi (rawStick [0 ])
20352031 if err != nil {
20362032 return badStickElement ("start time" , err )
20372033 }
20382034 startTime := time .Unix (int64 (unixMsFlt / 1e3 ), 0 )
20392035
2040- openStr , ok := rawStick [1 ].(string )
2041- if ! ok {
2042- return badStickElement ("open" , rawStick [1 ])
2043- }
2044- open , err := strconv .ParseFloat (openStr , 64 )
2036+ open , err := strconv .ParseFloat (rawStick [1 ], 64 )
20452037 if err != nil {
20462038 return badStickElement ("open float" , err )
20472039 }
20482040
2049- closeStr , ok := rawStick [2 ].(string )
2050- if ! ok {
2051- return badStickElement ("close" , rawStick [4 ])
2052- }
2053- close , err := strconv .ParseFloat (closeStr , 64 )
2041+ close , err := strconv .ParseFloat (rawStick [2 ], 64 )
20542042 if err != nil {
20552043 return badStickElement ("close float" , err )
20562044 }
20572045
2058- highStr , ok := rawStick [3 ].(string )
2059- if ! ok {
2060- return badStickElement ("high" , rawStick [2 ])
2061- }
2062- high , err := strconv .ParseFloat (highStr , 64 )
2046+ high , err := strconv .ParseFloat (rawStick [3 ], 64 )
20632047 if err != nil {
20642048 return badStickElement ("high float" , err )
20652049 }
20662050
2067- lowStr , ok := rawStick [4 ].(string )
2068- if ! ok {
2069- return badStickElement ("low" , rawStick [3 ])
2070- }
2071- low , err := strconv .ParseFloat (lowStr , 64 )
2051+ low , err := strconv .ParseFloat (rawStick [4 ], 64 )
20722052 if err != nil {
20732053 return badStickElement ("low float" , err )
20742054 }
20752055
2076- volumeStr , ok := rawStick [5 ].(string )
2077- if ! ok {
2078- return badStickElement ("volume" , rawStick [5 ])
2079- }
2080- volume , err := strconv .ParseFloat (volumeStr , 64 )
2056+ volume , err := strconv .ParseFloat (rawStick [5 ], 64 )
20812057 if err != nil {
20822058 return badStickElement ("volume float" , err )
20832059 }
0 commit comments