A Golang cryptocurrency trading API & Library. Support Binance, BitMEX, Deribit, Bybit, Huobi DM, OKEX Futures and more.

GitHub go.mod Go version license build status

CREX

中文 | English

CREX 是一个用Golang语言开发的量化交易库。支持tick级别数字币期货平台的回测和实盘。实盘与回测无缝切换,无需更改代码。

回测

示例 @backtest

交易结果

开源策略

https://github.com/coinrust/trading-strategies

主要特性

  • 使用简单
  • Tick级别回测
  • 实盘、回测公用策略代码
  • 支持 WebSocket 共有和私有订阅
  • 支持期货、现货回测
  • 支持期货双向合约,正反向合约

支持交易所

CREX库当前支持以下8个加密货币交易市场和交易API

logo id name ver ws doc
binance binancefutures Binance Futures 1 N API
bitmex bitmex BitMEX 1 Y API
deribit deribit Deribit 2 Y API
bybit bybit Bybit 2 Y API
huobi hbdm Huobi DM 1 Y API
huobi hbdmswap Huobi Swap 1 Y API
okex okexfutures OKEX Futures 3 Y API
okex okexswap OKEX Swap 3 Y API

示例

package main

import (
	. "github.com/516310460/trade-api"
	"github.com/516310460/trade-api/exchanges"
	"log"
	"time"
)

type BasicStrategy struct {
	StrategyBase
}

func (s *BasicStrategy) OnInit() error {
	return nil
}

func (s *BasicStrategy) OnTick() error {
	currency := "BTC"
	symbol := "BTC-PERPETUAL"

	balance, err := s.Exchange.GetBalance(currency)
	if err != nil {
		log.Fatal(err)
	}
	log.Printf("balance: %#v", balance)

	s.Exchange.GetOrderBook(symbol, 10)

	s.Exchange.OpenLong(symbol, OrderTypeLimit, 5000, 10)
	s.Exchange.CloseLong(symbol, OrderTypeLimit, 6000, 10)

	//Trailing Stop Market Order - Binance - sell stop loss order for long position
	callbackRate := 5.0 // from 0.1% until 5% allowed
	s.Exchange.PlaceOrder(symbol, Sell, OrderTypeTrailingStopMarket, 0.0, 10,
		OrderCallbackRateOption(callbackRate), 
		OrderActivationPriceOption(5000.0), // optional - default as the latest price
		OrderReduceOnlyOption(true),
	)

	s.Exchange.PlaceOrder(symbol,
		Buy, OrderTypeLimit, 1000.0, 10, OrderPostOnlyOption(true))

	s.Exchange.GetOpenOrders(symbol)
	s.Exchange.GetPositions(symbol)
	return nil
}

func (s *BasicStrategy) Run() error {
	// run loop
	for {
		s.OnTick()
		time.Sleep(1 * time.Second)
	}
	return nil
}

func (s *BasicStrategy) OnExit() error {
	return nil
}

func main() {
	exchange := exchanges.NewExchange(exchanges.Deribit,
		ApiProxyURLOption("socks5://127.0.0.1:1080"), // 使用代理
		//ApiAccessKeyOption("[accessKey]"),
		//ApiSecretKeyOption("[secretKey]"),
		ApiTestnetOption(true))

	s := &BasicStrategy{}

	s.Setup(TradeModeLiveTrading, exchange)

	s.OnInit()
	s.Run()
	s.OnExit()
}

WebSocket 示例

package main

import (
	. "github.com/516310460/trade-api"
	"github.com/516310460/trade-api/exchanges"
	"log"
)

func main() {
	ws := exchanges.NewExchange(exchanges.OkexFutures,
		ApiProxyURLOption("socks5://127.0.0.1:1080"), // 使用代理
		//ApiAccessKeyOption("[accessKey]"),
		//ApiSecretKeyOption("[secretKey]"),
		//ApiPassPhraseOption("[passphrase]"),
		ApiWebSocketOption(true)) // 开启 WebSocket

	market := Market{
		Symbol: "BTC-USD-200626",
	}
	// 订阅订单薄
	ws.SubscribeLevel2Snapshots(market, func(ob *OrderBook) {
		log.Printf("%#v", ob)
	})
	// 订阅成交记录
	ws.SubscribeTrades(market, func(trades []*Trade) {
		log.Printf("%#v", trades)
	})
	// 订阅订单成交信息
	ws.SubscribeOrders(market, func(orders []*Order) {
		log.Printf("%#v", orders)
	})
	// 订阅持仓信息
	ws.SubscribePositions(market, func(positions []*Position) {
		log.Printf("%#v", positions)
	})

	select {}
}

回测数据

1. 标准 CSV 数据格式

  • 列定界符: , (逗号)
  • 换行标记: \n (LF)
  • 日期时间格式: Unix 时间戳 (ms)

时间格式

列名 描述
t Unix 时间戳 (ms)
asks[0-X].price 卖单价(升序)
asks[0-X].amount 卖单量
bids[0-X].price 买单价(降序)
bids[0-X].amount 买单量

样本数据示例

t,asks[0].price,asks[0].amount,asks[1].price,asks[1].amount,asks[2].price,asks[2].amount,asks[3].price,asks[3].amount,asks[4].price,asks[4].amount,asks[5].price,asks[5].amount,asks[6].price,asks[6].amount,asks[7].price,asks[7].amount,asks[8].price,asks[8].amount,asks[9].price,asks[9].amount,bids[0].price,bids[0].amount,bids[1].price,bids[1].amount,bids[2].price,bids[2].amount,bids[3].price,bids[3].amount,bids[4].price,bids[4].amount,bids[5].price,bids[5].amount,bids[6].price,bids[6].amount,bids[7].price,bids[7].amount,bids[8].price,bids[8].amount,bids[9].price,bids[9].amount
1569888000143,8304.5,7010,8305,60,8305.5,1220,8306,80,8307,200,8307.5,1650,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185750,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,90,8300,71320,8299.5,310
1569888000285,8304.5,7010,8305,60,8305.5,1220,8306,80,8307,200,8307.5,1650,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185750,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,5090,8300,71320,8299.5,310
1569888000307,8304.5,7010,8305,60,8305.5,1220,8306,80,8307,200,8307.5,11010,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185750,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,5090,8300,71320,8299.5,310
1569888000309,8304.5,7010,8305,60,8305.5,1220,8306,80,8307,200,8307.5,20370,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185750,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,5090,8300,71320,8299.5,310
1569888000406,8304.5,7010,8305,60,8305.5,1220,8306,80,8307,8960,8307.5,11010,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185750,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,5090,8300,71320,8299.5,310
1569888000500,8304.5,7010,8305,60,8305.5,1220,8306,80,8307,200,8307.5,20370,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185750,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,5090,8300,71320,8299.5,310
1569888000522,8304.5,10270,8305,60,8305.5,1220,8306,80,8307,200,8307.5,20370,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185750,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,5090,8300,71320,8299.5,310
1569888000527,8304.5,10270,8305,60,8305.5,1220,8306,80,8307,200,8307.5,20370,8308,68260,8308.5,120000,8309,38400,8309.5,8400,8304,185010,8303.5,52200,8303,20600,8302.5,4500,8302,2000,8301.5,18200,8301,18000,8300.5,5090,8300,71320,8299.5,310

2. MongoDB (推荐)

  • Database. for example: tick_db
  • Collection. for example: deribit:BTC-PERPETUAL
  • Document: t: timestamp (ms) a: asks Array [[ask_price_0,ask_amount_0],[ask_price_1,ask_amount_1],...] b: bids Array [[bid_price_0,ask_amount_0],[bid_price_1,bid_amount_1],...]
{"_id":{"$oid":"5eb946d88316c7a9c541705c"},"t":{"$numberLong":"1569888000143"},"a":[[8304.5,7010],[8305,60],[8305.5,1220],[8306,80],[8307,200],[8307.5,1650],[8308,68260],[8308.5,120000],[8309,38400],[8309.5,8400]],"b":[[8304,185750],[8303.5,52200],[8303,20600],[8302.5,4500],[8302,2000],[8301.5,18200],[8301,18000],[8300.5,90],[8300,71320],[8299.5,310]]}

数据处理示例

Example of importing data into a database:

cd ./cmd/deribit-data-to-db
go build
./deribit-data-to-db

TODO

  • Paper trading.

QQ群

QQ群: 932289088

捐赠

METHOD ADDRESS
BTC 1Nk4AsGj5HEJ5csRenTUPab1sjUySCZ3Pq
ETH 0xa74eade7ea08a8c48d7de4d582fac145afc86e3d

LICENSE

MIT ©coinrust

Comments
  • Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.6

    Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.6

    Bumps github.com/frankrap/bybit-api from 1.0.3 to 1.0.6.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump go.mongodb.org/mongo-driver from 1.5.1 to 1.8.3

    Bump go.mongodb.org/mongo-driver from 1.5.1 to 1.8.3

    Bumps go.mongodb.org/mongo-driver from 1.5.1 to 1.8.3.

    Release notes

    Sourced from go.mongodb.org/mongo-driver's releases.

    MongoDB Go Driver 1.8.3

    The MongoDB Go driver team is pleased to release version 1.8.3 of the official Go driver.

    This release contains a bug fix to allow the loading of multiple certs within a single PEM file.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the links below:

    MongoDB Go Driver 1.8.2

    The MongoDB Go driver team is pleased to release version 1.8.2 of the official Go driver.

    This release adds the ability to configure the recently added maxConnecting rate limit via the SetMaxConnecting function or the maxConnecting= URI option. The maxConnecting value sets the maximum number of new connections that can be created simultaneously.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the links below:

    MongoDB Go Driver 1.8.1

    The MongoDB Go driver team is pleased to release version 1.8.1 of the official Go driver.

    This release contains a bug fix to correct the error type returned by IndexView.CreateMany.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the link below:

    MongoDB Go Driver 1.8.0

    The MongoDB Go driver team is pleased to release version 1.8.0 of the official Go driver.

    This release supports additional features introduced in MongoDB version 5.1 and includes a refactor to our connection-pooling logic.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    CSFLE 1.0 KMIP Support

    Supports using KMIP as a KMS provider for client side encryption.

    Example of registering a client with auto-encryption through a KMIP KMS server with TLS.

    // Provide KMS providers map with KMIP endpoint.
    kmipKmsProviderMap := map[string]map[string]interface{}{
    </tr></table> 
    

    ... (truncated)

    Commits
    • 0cc7c8b Update version to v1.8.3
    • 67dcab6 GODRIVER-2263 Load all certs in a PEM (#834)
    • 60ee08b Update version to v1.8.3+prerelease
    • dc5bfa7 Update version to v1.8.2
    • ad4f187 GODRIVER-2219 Make maxConnecting configurable via ClientOptions or URI option...
    • f0843e9 Update version to v1.8.2+prerelease
    • 9a6cd35 Update version to v1.8.1
    • d3f6dae GODRIVER-2243 Wrap write errors in IndexView.CreateMany (#820)
    • 3c1c1d7 Update version to v1.8.1+prerelease
    • 25bc272 Update version to v1.8.0
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.5

    Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.5

    Bumps github.com/frankrap/bybit-api from 1.0.3 to 1.0.5.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.4

    Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.4

    Bumps github.com/frankrap/bybit-api from 1.0.3 to 1.0.4.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.4

    Bump github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.4

    Bumps github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.4.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/tidwall/gjson from 1.7.4 to 1.13.0

    Bump github.com/tidwall/gjson from 1.7.4 to 1.13.0

    Bumps github.com/tidwall/gjson from 1.7.4 to 1.13.0.

    Commits
    • 38071ea Add tostr and fromstr modifiers
    • ba95ef8 Update SYNTAX.md
    • 65bbebb Fixed typo
    • db00337 Set array index as key for ForEach
    • bd76212 Add syntax badge
    • 9eae1fa Added JSON Literals
    • d3a1349 Fix modifier bug in multipath selector
    • 6b6af2a Added new static value character
    • 2c9fd24 Added Path and Paths for getting the original path of a Result
    • 7cadbb5 Ensure Parse handles NaN/Inf and returns correct Index
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/BurntSushi/toml from 0.3.1 to 1.0.0

    Bump github.com/BurntSushi/toml from 0.3.1 to 1.0.0

    Bumps github.com/BurntSushi/toml from 0.3.1 to 1.0.0.

    Release notes

    Sourced from github.com/BurntSushi/toml's releases.

    v1.0.0

    This release adds much more detailed errors, support for the toml.Marshaler interface, and several fixes.

    There is no special meaning in the jump to v1.0; the 0.x releases were always treated as if they're 1.x with regards to compatibility; the versioning scheme for this library predates the release of modules.

    New features

    • Error reporting is much improved; the reported position of errors should now always be correct and the library can print more detailed errors (#299, #332)

      Decode always return a toml.ParseError, which has three methods:

      • Error() behaves as before and shows a single concise line with the error.

      • ErrorWithLocation() shows the same error, but also shows the line the error occurred at, similar to e.g. clang or the Rust compiler.

      • ErrorWithUsage() is the same as ErrorWithPosition(), but may also show a longer usage guidance message. This isn't always present (in which case it behaves identical to ErrorWithPosition()), but it should be present for most common mistakes and sources of confusion.

      Which error the correct one to use is depends on your application and preferences; in general I would recommend using at least ErrorWithPosition() for user-facing errors, as it's much more helpful for users of any skill level. If your users are likely to be non-technical then ErrorWithUsage() is probably a good idea; I did my best to avoid technical jargon such as "newline" and phrase things in a way that's understandable by most people not intimately familiar with these sort of things.

      Additionally, the TOML key that fialed should now always be reported in all errors.

    • Add toml.Marshaler interface. This can be used if you want full control over how something is marshalled as TOML, similar to json.Marshaler etc. This takes precedence over encoding.TextMarshaler. (#327)

    • Allow TOML integers to be decoded to a Go float (#325)

      Previously int = 42 could only be decoded to an int* type; now this can also be decoded in a float type as long as it can be represented without loss of data.

    Fixes

    • Key.String() is now quoted when needed (#333)

    • Fix decoding of nested structs on 32bit platforms (#314)

    • Empty slices are now always []T{} rather than nil, which was the behaviour in v0.3.1 and before. While they are identical for most purposes, encoding/json encodes them different ([] vs. null), making it an (accidentally) incompatible change (#339)

    Release v0.4.1

    This fixes a cyclic module dependency issue with github.com/BurntSushi/toml-test that prevented some people from updating. See #313 for some details.

    v0.4.0

    After some time of inactivity this package is now maintained again.

    This release should support alll of TOML 1.0 and has various bugfixes and a few small improvements.

    This requires Go 1.13 or newer; older Go versions will no longer work.

    TOML 1.0 support

    Previously this library implemented TOML 0.3; now all of TOML 1.0 is supported:

    • Support dotted keys (a.b = 1, a = {b.c = 2}).

    ... (truncated)

    Commits
    • 4272474 Reject control characters everywhere
    • 9bbaaec Update toml-test
    • 8a54f3e Merge TestDecodeInterfaceSlice in TestDecodeSlices
    • 9515b92 Decode S=[] into a non-nil []interface{}. (#339)
    • 7d0236f Make sure quoted keys with dots work well (#333)
    • ff0a3f8 Add back build tags for toml-test files
    • 7356d5f Few staticcheck fixes
    • b1471ff Don't allow "0_0"
    • 847ee8a Update toml-test
    • 4619257 Clearer errors when decoding to invalid types (#332)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/tidwall/gjson from 1.7.4 to 1.12.1

    Bump github.com/tidwall/gjson from 1.7.4 to 1.12.1

    Bumps github.com/tidwall/gjson from 1.7.4 to 1.12.1.

    Commits
    • db00337 Set array index as key for ForEach
    • bd76212 Add syntax badge
    • 9eae1fa Added JSON Literals
    • d3a1349 Fix modifier bug in multipath selector
    • 6b6af2a Added new static value character
    • 2c9fd24 Added Path and Paths for getting the original path of a Result
    • 7cadbb5 Ensure Parse handles NaN/Inf and returns correct Index
    • 0b52f9a Fix empty string operator not matching
    • 8ac7a76 Update README.md
    • 5784e48 cleanup test
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.3

    Bump github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.3

    Bumps github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.3.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump go.mongodb.org/mongo-driver from 1.5.1 to 1.8.2

    Bump go.mongodb.org/mongo-driver from 1.5.1 to 1.8.2

    Bumps go.mongodb.org/mongo-driver from 1.5.1 to 1.8.2.

    Release notes

    Sourced from go.mongodb.org/mongo-driver's releases.

    MongoDB Go Driver 1.8.2

    The MongoDB Go driver team is pleased to release version 1.8.2 of the official Go driver.

    This release adds the ability to configure the recently added maxConnecting rate limit via the SetMaxConnecting function or the maxConnecting= URI option. The maxConnecting value sets the maximum number of new connections that can be created simultaneously.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the links below:

    MongoDB Go Driver 1.8.1

    The MongoDB Go driver team is pleased to release version 1.8.1 of the official Go driver.

    This release contains a bug fix to correct the error type returned by IndexView.CreateMany.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the link below:

    MongoDB Go Driver 1.8.0

    The MongoDB Go driver team is pleased to release version 1.8.0 of the official Go driver.

    This release supports additional features introduced in MongoDB version 5.1 and includes a refactor to our connection-pooling logic.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    CSFLE 1.0 KMIP Support

    Supports using KMIP as a KMS provider for client side encryption.

    Example of registering a client with auto-encryption through a KMIP KMS server with TLS.

    // Provide KMS providers map with KMIP endpoint.
    kmipKmsProviderMap := map[string]map[string]interface{}{
            "kmip": {
    	        "endpoint": "IP.of.KMIP.Server",
            },
    }
    

    // Create TLS config with tlsCertificateKeyFile and tlsCAFile. tlsConfig := make(map[string]*tls.Config) tlsOpts := map[string]interface{}{ "tlsCertificateKeyFile": "path/to/tls/certfile", "tlsCAFile": "path/to/tls/cafile", }

    </tr></table>

    ... (truncated)

    Commits
    • dc5bfa7 Update version to v1.8.2
    • ad4f187 GODRIVER-2219 Make maxConnecting configurable via ClientOptions or URI option...
    • f0843e9 Update version to v1.8.2+prerelease
    • 9a6cd35 Update version to v1.8.1
    • d3f6dae GODRIVER-2243 Wrap write errors in IndexView.CreateMany (#820)
    • 3c1c1d7 Update version to v1.8.1+prerelease
    • 25bc272 Update version to v1.8.0
    • a452f51 GODRIVER-2222 Prevent removing valid servers when updating SRV hosts. (#805)
    • 13af40d GODRIVER-2210: Update libmongocrypt dependency to 1.3.0 (#817)
    • 517aca9 GODRIVER-2237: Run KMS KMIP spec and prose tests in Evergreen (#816)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/BurntSushi/toml from 0.3.1 to 0.4.1

    Bump github.com/BurntSushi/toml from 0.3.1 to 0.4.1

    Bumps github.com/BurntSushi/toml from 0.3.1 to 0.4.1.

    Release notes

    Sourced from github.com/BurntSushi/toml's releases.

    Release v0.4.1

    This fixes a cyclic module dependency issue with github.com/BurntSushi/toml-test that prevented some people from updating. See #313 for some details.

    v0.4.0

    After some time of inactivity this package is now maintained again.

    This release should support alll of TOML 1.0 and has various bugfixes and a few small improvements.

    This requires Go 1.13 or newer; older Go versions will no longer work.

    TOML 1.0 support

    Previously this library implemented TOML 0.3; now all of TOML 1.0 is supported:

    • Support dotted keys (a.b = 1, a = {b.c = 2}).

    • Mixed arrays: in previous TOML versions array values all had to be of the same type; you can now freely mix types, including inline tables.

    • Support hex (0x2f9a), binary (0b0110), and octal (0o777) literals, and support nan and inf for floats.

    • Support local datetimes, dates, and times. These are dates and times without a timezone and are parsed in the local timezone.

    • Allow accidental whitespace between backslash and newline in the line continuation operator in multi-line basic strings.

    There should be no incompatibilities as such; all existing valid TOML files should continue to work. However, the parser previously allowed the following invalid values:

    • It would allow literal control characters in strings.

    • It would allow leading zeroes in decimal ints and floats.

    Neither of these was ever valid TOML, and are explicitly forbidden by the specification. But the library erroneously permitted them.

    Other changes

    • Set up Go modules.

    • Allow escaping the \, and allow triple-quotes strings to end with a quote (e.g. x="""x"""").

    • All control characters inside strings are properly escaped when encoding.

    • Support encoding nested anonymous structs.

    • Encode toml.Primitive values.

    • You get a more helpful error on UTF-16 files (probably the most common non-UTF-8 compatible encoding). Also read over UTF-16 BOM in UTF-8 files.

    • Call MarshalText and UnmarshalText consistently on all types; before this didn't always happen in some cases.

    • Allow empty quoted keys ("" = 1); silly, but explicitly mentioned as valid.

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/BurntSushi/toml from 0.3.1 to 1.1.0

    Bump github.com/BurntSushi/toml from 0.3.1 to 1.1.0

    Bumps github.com/BurntSushi/toml from 0.3.1 to 1.1.0.

    Release notes

    Sourced from github.com/BurntSushi/toml's releases.

    v1.1.0

    Just a few bugfixes:

    • Skip fields with toml:"-" even when they're unsupported types. Previously something like this would fail to encode due to func being an unsupported type:

      struct {
          Str  string `toml:"str"
          Func func() `toml:"-"`
      }
      
    • Multiline strings can't end with \. This is valid:

      # Valid
      key = """ foo \
      """
      

      Invalid

      key = """ foo \ """

    • Don't quote values in TOMLMarshaler. Previously they would always include quoting (e.g. "value"), while the entire point of this interface is to bypass that.

    v1.0.0

    This release adds much more detailed errors, support for the toml.Marshaler interface, and several fixes.

    There is no special meaning in the jump to v1.0; the 0.x releases were always treated as if they're 1.x with regards to compatibility; the versioning scheme for this library predates the release of modules.

    New features

    • Error reporting is much improved; the reported position of errors should now always be correct and the library can print more detailed errors (#299, #332)

      Decode always return a toml.ParseError, which has three methods:

      • Error() behaves as before and shows a single concise line with the error.

      • ErrorWithPosition() shows the same error, but also shows the line the error occurred at, similar to e.g. clang or the Rust compiler.

      • ErrorWithUsage() is the same as ErrorWithPosition(), but may also show a longer usage guidance message. This isn't always present (in which case it behaves identical to ErrorWithPosition()), but it should be present for most common mistakes and sources of confusion.

      Which error the correct one to use is depends on your application and preferences; in general I would recommend using at least ErrorWithPosition() for user-facing errors, as it's much more helpful for users of any skill level. If your users are likely to be non-technical then ErrorWithUsage() is probably a good idea; I did my best to avoid technical jargon such as "newline" and phrase things in a way that's understandable by most people not intimately familiar with these sort of things.

      Additionally, the TOML key that fialed should now always be reported in all errors.

    • Add toml.Marshaler interface. This can be used if you want full control over how something is marshalled as TOML, similar to json.Marshaler etc. This takes precedence over encoding.TextMarshaler. (#327)

    • Allow TOML integers to be decoded to a Go float (#325)

      Previously int = 42 could only be decoded to an int* type; now this can also be decoded in a float type as long as it can be represented without loss of data.

    Fixes

    ... (truncated)

    Commits
    • 891d261 Don't error out if a multiline string ends with an incomplete UTF-8 sequence
    • ef65e34 Don't run Unmarshal() through Decode()
    • 573cad4 Merge pull request #347 from zhsj/fix-32
    • f3633f4 Fix test on 32 bit arch
    • 551f4a5 Merge pull request #344 from lucasbutn/hotfix-341-marshaler-shouldnot-writequ...
    • dec5825 Removed write quote in marshal to allow write other types than strings
    • 2249a9c Multiline strings can't end with ""
    • 51b22f2 Fix README
    • 01e5516 Skip fields with toml:"-", even when they're unsupported types
    • 87b9f05 Fix tests for older Go versions
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/stretchr/testify from 1.7.0 to 1.7.1

    Bump github.com/stretchr/testify from 1.7.0 to 1.7.1

    Bumps github.com/stretchr/testify from 1.7.0 to 1.7.1.

    Commits
    • 083ff1c Fixed didPanic to now detect panic(nil).
    • 1e36bfe Use cross Go version compatible build tag syntax
    • e798dc2 Add docs on 1.17 build tags
    • 83198c2 assert: guard CanConvert call in backward compatible wrapper
    • 087b655 assert: allow comparing time.Time
    • 7bcf74e fix msgAndArgs forwarding
    • c29de71 add tests for correct msgAndArgs forwarding
    • f87e2b2 Update builds
    • ab6dc32 fix linting errors in /assert package
    • edff5a0 fix funtion name
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.5

    Bump github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.5

    Bumps github.com/adshao/go-binance/v2 from 2.2.2 to 2.3.5.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump go.mongodb.org/mongo-driver from 1.5.1 to 1.8.4

    Bump go.mongodb.org/mongo-driver from 1.5.1 to 1.8.4

    Bumps go.mongodb.org/mongo-driver from 1.5.1 to 1.8.4.

    Release notes

    Sourced from go.mongodb.org/mongo-driver's releases.

    MongoDB Go Driver 1.8.4

    The MongoDB Go driver team is pleased to release version 1.8.4 of the official Go driver.

    This release resolves a bug that prevented an empty readPreferenceTags value in a connection string from acting as a "fail-safe" read preference tag that matches any eligible member (see documentation here).

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the links below:

    MongoDB Go Driver 1.8.3

    The MongoDB Go driver team is pleased to release version 1.8.3 of the official Go driver.

    This release contains a bug fix to allow the loading of multiple certs within a single PEM file.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the links below:

    MongoDB Go Driver 1.8.2

    The MongoDB Go driver team is pleased to release version 1.8.2 of the official Go driver.

    This release adds the ability to configure the recently added maxConnecting rate limit via the SetMaxConnecting function or the maxConnecting= URI option. The maxConnecting value sets the maximum number of new connections that can be created simultaneously.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the links below:

    MongoDB Go Driver 1.8.1

    The MongoDB Go driver team is pleased to release version 1.8.1 of the official Go driver.

    This release contains a bug fix to correct the error type returned by IndexView.CreateMany.

    Documentation can be found on pkg.go.dev and the MongoDB documentation site. BSON library documentation is also available on pkg.go.dev. Questions and inquiries can be asked on the MongoDB Developer Community. Bugs can be reported in the Go Driver Jira where a list of current issues can be found.

    Release Notes

    For a full list of tickets included in this release, please see the link below:

    MongoDB Go Driver 1.8.0

    The MongoDB Go driver team is pleased to release version 1.8.0 of the official Go driver.

    ... (truncated)

    Commits
    • 1139ea1 Update version to v1.8.4
    • 20ac04a GODRIVER-2242 Update estimatedDocumentCount test for ADL (#821)
    • 1159598 GODRIVER-2322 Skip tests with capped collections on serverless (#857)
    • 5477be6 GODRIVER-2315 Update tests that expect errors with capped collection deletes ...
    • 744f96b GODRIVER-2292 Support dedicated load balancer port in tests. (#852)
    • 7d50ea3 GODRIVER-2300 remove example.com from CSFLE tests (#848)
    • 4ccc008 GODRIVER-2265 Further improve the assertions in the SDAM heartbeat test. (#844)
    • 63ad6ba GODRIVER-2265 Make more correct assertions in SDAM heartbeat test. (#837)
    • dcd5484 GODRIVER-2248 Use mock deployment for slow BulkWrite update test (#827)
    • c5019a7 GODRIVER-2305 Correctly append empty tagset from URI (#853)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump go.uber.org/zap from 1.16.0 to 1.21.0

    Bump go.uber.org/zap from 1.16.0 to 1.21.0

    Bumps go.uber.org/zap from 1.16.0 to 1.21.0.

    Release notes

    Sourced from go.uber.org/zap's releases.

    v1.21.0

    1.21.0 (7 Feb 2022)

    Enhancements:

    • #1047[]: Add zapcore.ParseLevel to parse a Level from a string.
    • #1048[]: Add zap.ParseAtomicLevel to parse an AtomicLevel from a string.

    Bugfixes:

    • #1058[]: Fix panic in JSON encoder when EncodeLevel is unset.

    Other changes:

    • #1052[]: Improve encoding performance when the AddCaller and AddStacktrace options are used together.

    #1047: uber-go/zap#1047 #1048: uber-go/zap#1048 #1052: uber-go/zap#1052 #1058: uber-go/zap#1058

    Thanks to @​aerosol and @​Techassi for their contributions to this release.

    v1.20.0

    Enhancements:

    • #989[]: Add EncoderConfig.SkipLineEnding flag to disable adding newline characters between log statements.
    • #1039[]: Add EncoderConfig.NewReflectedEncoder field to customize JSON encoding of reflected log fields.

    Bugfixes:

    • #1011[]: Fix inaccurate precision when encoding complex64 as JSON.
    • #554[], #1017[]: Close JSON namespaces opened in MarshalLogObject methods when the methods return.
    • #1033[]: Avoid panicking in Sampler core if thereafter is zero.

    Other changes:

    • #1028[]: Drop support for Go < 1.15.

    #554: uber-go/zap#554 #989: uber-go/zap#989 #1011: uber-go/zap#1011 #1017: uber-go/zap#1017 #1028: uber-go/zap#1028 #1033: uber-go/zap#1033 #1039: uber-go/zap#1039

    Thanks to @​psrajat, @​lruggieri, @​sammyrnycreal for their contributions to this release.

    v1.19.1

    ... (truncated)

    Changelog

    Sourced from go.uber.org/zap's changelog.

    1.21.0 (7 Feb 2022)

    Enhancements:

    • #1047[]: Add zapcore.ParseLevel to parse a Level from a string.
    • #1048[]: Add zap.ParseAtomicLevel to parse an AtomicLevel from a string.

    Bugfixes:

    • #1058[]: Fix panic in JSON encoder when EncodeLevel is unset.

    Other changes:

    • #1052[]: Improve encoding performance when the AddCaller and AddStacktrace options are used together.

    #1047: uber-go/zap#1047 #1048: uber-go/zap#1048 #1052: uber-go/zap#1052 #1058: uber-go/zap#1058

    Thanks to @​aerosol and @​Techassi for their contributions to this release.

    1.20.0 (4 Jan 2022)

    Enhancements:

    • #989[]: Add EncoderConfig.SkipLineEnding flag to disable adding newline characters between log statements.
    • #1039[]: Add EncoderConfig.NewReflectedEncoder field to customize JSON encoding of reflected log fields.

    Bugfixes:

    • #1011[]: Fix inaccurate precision when encoding complex64 as JSON.
    • #554[], #1017[]: Close JSON namespaces opened in MarshalLogObject methods when the methods return.
    • #1033[]: Avoid panicking in Sampler core if thereafter is zero.

    Other changes:

    • #1028[]: Drop support for Go < 1.15.

    #554: uber-go/zap#554 #989: uber-go/zap#989 #1011: uber-go/zap#1011 #1017: uber-go/zap#1017 #1028: uber-go/zap#1028 #1033: uber-go/zap#1033 #1039: uber-go/zap#1039

    Thanks to @​psrajat, @​lruggieri, @​sammyrnycreal for their contributions to this release.

    1.19.1 (8 Sep 2021)

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.8

    Bump github.com/frankrap/bybit-api from 1.0.3 to 1.0.8

    Bumps github.com/frankrap/bybit-api from 1.0.3 to 1.0.8.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
A more elegant Client for huobi API with golang

huobi A more elegant Client for huobi API example package main import ( "context" "log" "os" "github.com/zhenzou/huobi" "github.com/zhenzou/huo

Dec 28, 2021
The goal of Binance Smart Chain is to bring programmability and interoperability to Binance Chain

Binance Smart Chain The goal of Binance Smart Chain is to bring programmability

Aug 17, 2022
Tradingview-2-exchange - Place buy/sell orders in exchange(binance) when trading view strategy raise alert message

TradingView-2-Exchange This application is used to place a buy/sell order in Bin

Sep 27, 2022
Huobi Eco Chain client based on the go-ethereum fork

The Huobi Open Platform is a unified infrastructure platform based on the technical, traffic and ecological resources of the Huobi Group, and will be gradually open to the blockchain industry.

Dec 31, 2022
A Binance Chain vanity address generator written in golang.
A Binance Chain vanity address generator written in golang.

VaniBNB A Binance Chain vanity address generator written in golang. For example address ending with 0xkat Raw https://github.com/makevoid/vanieth http

Sep 9, 2022
Yet another Binance Smart Chain client based on TrustFi Network

TrustFi Smart Chain The goal of TrustFi Smart Chain is to bring programmability and interoperability to Binance Chain. In order to embrace the existin

Mar 27, 2021
This repo is some SDK of Binance

Binance API Go Language SDK This is a Binance Go language sdk that uses a method similar to HuobiRDCenter/huobi_Golang Official Documents Please make

Jun 1, 2021
A Binance Smart Chain client based on the go-ethereum fork

A Binance Smart Chain client based on the go-ethereum fork

Dec 31, 2022
A Binance Smart Chain client based on the erigon fork

Erigon Erigon is an implementation of Ethereum (aka "Ethereum client"), on the efficiency frontier, written in Go. System Requirements Usage Getting S

Sep 17, 2022
A Binance Smart Chain client based on the go-ethereum fork

Binance Smart Chain The goal of Binance Smart Chain is to bring programmability and interoperability to Binance Chain. In order to embrace the existin

Feb 8, 2022
Community-run technology powering the cryptocurrency, and decentralized applications on TrustFi Network

Go TrustFi-Ethereum Official Golang implementation of the TrustFi-Ethereum protocol. Automated builds are available for stable releases and the unstab

May 26, 2021
SwissWallet is a deterministic cryptocurrency wallet generator heavily based on MindWallet and MemWallet

SwissWallet SwissWallet is a deterministic cryptocurrency wallet generator heavily based on MindWallet and MemWallet but using argon2 and scrypt by de

Jul 28, 2022
Arbitrum is a Layer 2 cryptocurrency platform that makes smart contracts scalable, fast, and private.
Arbitrum is a Layer 2 cryptocurrency platform that makes smart contracts scalable, fast, and private.

Arbitrum is a Layer 2 cryptocurrency platform that makes smart contracts scalable, fast, and private. Arbitrum interoperates closely with Ethereum, so Ethereum developers can easily cross-compile their contracts to run on Arbitrum. Arbitrum achieves these goals through a unique combination of incentives, network protocol design, and virtual machine architecture.

Jan 8, 2023
🍕 PizzaCoin - cryptocurrency for buying and selling pizza or another stuff
🍕 PizzaCoin - cryptocurrency for buying and selling pizza or another stuff

?? PizzaCoin Cryptocurrency for buying and selling pizza or another stuff Installation Compilation Windows go build -o pizzacoin.exe ./cmd/PizzaCoin/m

Nov 21, 2021
This project was builded to improve my knowledge about blockchain and cryptocurrency

Blockchain Hello World in GoLang This project was builded to improve my knowledge about blockchain and cryptocurrency. To build this project, I've fol

Feb 20, 2022
Trader is a framework that automated cryptocurrency exchange with strategy
Trader is a framework that automated cryptocurrency exchange with strategy

A framework that automated cryptocurrency exchange with strategy

Nov 29, 2022
A decentralized, cryptocurrency platform that can change this world!

Go Detonus Official Golang implementation of the Detonus protocol. Building the source For prerequisites and detailed build instructions please read t

Oct 19, 2021
Example of a cryptocurrency portfolio balancer with Ninjabot
Example of a cryptocurrency portfolio balancer with Ninjabot

Ninjabot Portfolio Balancer Example of strategy that balances a given portfolio with weights. Related Discussion: https://github.com/rodrigo-brito/nin

Jan 8, 2022
A cryptocurrency implementation in less than 1500 lines of code
A cryptocurrency implementation in less than 1500 lines of code

Naivecoin - a cryptocurrency implementation in less than 1500 lines of code Motivation Cryptocurrencies and smart-contracts on top of a blockchain are

Dec 11, 2022