An open API service indexing awesome lists of open source software.

https://github.com/nntaoli-project/goex

Cryptocurrency Exchange REST API SDK Wrapper Implemented With the golang, Supporting OKX, Huobi, Binance
https://github.com/nntaoli-project/goex

api-rest binance huobi okx quant

Last synced: 5 days ago
JSON representation

Cryptocurrency Exchange REST API SDK Wrapper Implemented With the golang, Supporting OKX, Huobi, Binance

Awesome Lists containing this project

README

        

### Introduction
* Unified and standardize the interfaces of various cryptocurrency trading platforms.

![goex](goex_struct.png)

### Donate
* [BTC] 1GoEXwVvXG7kNdQSFaUNF35A3izHojLGxP
* [USDT-TRC20] TGoExC6xvzE4wSA9cYZnwcPaXEjibA5Vtc

### Example

```golang
package main

import (
goexv2 "github.com/nntaoli-project/goex/v2"
"github.com/nntaoli-project/goex/v2/logger"
"github.com/nntaoli-project/goex/v2/model"
"github.com/nntaoli-project/goex/v2/options"
"log"
)

func main() {
logger.SetLevel(logger.DEBUG) // set log level
//goexv2.DefaultHttpCli.SetProxy("socks5://127.0.0.1:1080") //socks5 proxy
goexv2.DefaultHttpCli.SetTimeout(5) // 5 second

_, _, err := goexv2.OKx.Spot.GetExchangeInfo() //must call
if err != nil {
panic(err)
}

//This CurrencyPair structure contains various information about the trading pair, such as price_precision and qty_precision,min_qty ...
btcUSDTCurrencyPair, err := goexv2.OKx.Spot.NewCurrencyPair(model.BTC, model.USDT)
if err != nil {
panic(err)
}

//public api
log.Println(goexv2.OKx.Spot.GetTicker(btcUSDTCurrencyPair))

//private api
okxPrvApi := goexv2.OKx.Spot.NewPrvApi(
options.WithApiKey(""),
options.WithApiSecretKey(""),
options.WithPassphrase(""))

//create order api
order, _, err := okxPrvApi.CreateOrder(btcUSDTCurrencyPair, 0.01, 18000, model.Spot_Buy, model.OrderType_Limit)
log.Println(err)
log.Println(order)
}
```

### FAQ
#### 1. okx simulated trading
See ([issues/238](https://github.com/nntaoli-project/goex/issues/238))

#### 2. Filled The OrderClientID

```
ord, resp, err := okxPrvApi.CreateOrder(btcUSDTCurrencyPair, 0.01, 23000,
model.Spot_Buy, model.OrderType_Limit,
model.OptionParameter{}.OrderClientID("goex123027892")) //client id: goex123027892
```

### Thanks
JetBrains