Skip to content

Releases: c9s/bbgo

BBGO v1.46.0

19 Apr 06:30
45a27ff
Compare
Choose a tag to compare

Full Changelog

  • #1153: FEATURE: [grid2] move metrics to defer funciton
  • #1121: FEATURE: add hhllstop
  • #1151: FIX: types: do not return for normal closure
  • #1147: FEATURE: max get-order v3 api support client order id parameter
  • #1150: FIX: interact: fix concurrent map write - add mutex on interact
  • #1149: CHORE: max: add max auth authenticated log
  • #1148: FIX: fix emit ready twice and add error log
  • #1146: FIX: grid2: emit grid error when open grid failed
  • #1145: FEATURE: add market info in-mem cache
  • #1144: FIX: maxapi: fix nonce updater
  • #1143: FIX: maxapi: pass context object to the requests
  • #1141: REFACTOR: maxapi: refactor and add max v2 markets api test
  • #1142: FIX: max: move more rate limiter to the exchange instance
  • #1139: REFACTOR: [max] refactor api requests
  • #1140: FIX: maxapi: improve log message
  • #1138: FIX: maxapi: use sync.Once to prevent duplicated update and avoid update negative offset
  • #1137: FIX: maxapi: improve nonce update with retry
  • #1135: FIX: recover even though inital order id is 0

BBGO v1.45.0

02 Apr 16:38
f54fe28
Compare
Choose a tag to compare

Full Changelog

  • #1134: strategy: [xfunding] fix binance api and add initial setup for futures account
  • #1133: FIX: end batch query if start > end
  • #1132: strategy: xfunding: add profit stats and collect funding fee info
  • #1131: strategy: xfunding: improve sync goroutine, add mutex lock, fix binance websocket message parsing ...
  • #1127: feature: strategy: xfunding
  • #1125: FEATURE: [grid2] using dnum
  • #1129: strategy: fixedmaker: replenish on start
  • #1126: FIX: max: move submitOrderLimiter to the exchange wide var
  • #1124: FEATURE: emit grid error when failed to recover or open grid
  • #1122: strategy: fixedmaker: clamp skew
  • #1123: exits/trailingstop: fix typo
  • #1119: FEATURE: make PinOrderMap's key from string to Pin
  • #1120: REFACTOR: [grid2] pull out backoff cancel all to cancelAllOrdersUntilSuccessful
  • #1117: strategy: fixedmaker: add option to use ATR to adjust spread ratio
  • #1118: MINOR: use Debug config for debug log
  • #1113: strategy: fixedmaker: add skew to adjust bid/ask price
  • #1116: FIX: fix gracefully shutdown SaveState call for Isolation
  • #1115: FIX: [grid2] fix correct price metrics
  • #1114: FEATURE: verify the grids before emit filled orders
  • #1112: FIX: fix wrong fee currency
  • #1111: strategy: rebalance: make CreatePositions and CreateProfitStats public

BBGO v1.44.1

15 Mar 05:44
4c6fc4a
Compare
Choose a tag to compare

Full Changelog

  • #1109: FIX: rebalance: fix positions and profit stats map
  • #1110: FIX: [bollmaker] MinProfitActivationRate is disabled if it's not set
  • #1107: FEATURE: make MAX QueryTrades support start_time, end_time
  • #1097: FEATURE: get filled orders when bbgo down
  • #1104: FIX: rebalance: adjust max amount by balance

BBGO v1.44.0

13 Mar 14:31
a5641f6
Compare
Choose a tag to compare

Full Changelog

  • #1105: IMPROVE: [grid2]: use newClientOrderID only for max
  • #1052: IMPROVE: strategy: linregmaker minprofit
  • #1100: FIX: [grid2] specify client order id explicitly
  • #1098: FIX: fix format string float point issue
  • #1103: strategy: rebalance: graceful cancel
  • #1102: FIX: strategy: fix fixedmaker
  • #1101: strategy: add fixedmaker
  • #1099: FIX: [grid2] avoid handling one orderID twice
  • #1090: fix/scale: fix LinearScale calculation
  • #1096: FEATURE: [grid2] add ClearDuplicatedPriceOpenOrders option
  • #1087: FEATURE: recover grids with open orders by querying trades process an…
  • #1095: FIX: filter wrong order id from self-trade trades
  • #1094: FIX: use updated_at instead of created_at to convert MAX order to typ…
  • #1093: strategy: rebalance: add positions and profit stats
  • #1092: FEATURE: [grid2] add more metrics and fix metric-related issues
  • #1091: FEATURE: split self trades when use MAX RESTful API to query trades
  • #1089: IMPROVE: exit: show symbol in trailing stop triggered message
  • #1088: FIX: [grid2] fix isCompleteGrid condition
  • #1086: FIX: [grid2] round down quoteQuantity/baseQuantity after the fee reduction
  • #1085: FIX: [grid2] group id should be bound by MaxInt32
  • #1080: strategy: marketcap: add orderType parameter
  • #1083: FIX: add group id on submit order API
  • #1084: FIX: [grid2] avoid initializing metrics twice
  • #1082: FIX: add mutex in memory store
  • #1081: FIX: [grid2] fix active orderbook at recovering
  • #1079: FIX: [grid2]: add write context for submitting orders
  • #1078: FIX: [grid2]: improve the onStart callback and the cancel loop
  • #1077: FEATURE: save expiring data to redis
  • #1076: FIX: [grid2]: quantity fee reduction for quote currency
  • #1069: DOC: add private strategy demo trading-gpt
  • #1075: FEATURE: add persistence service to environment
  • #1074: strategy: rebalance: add order type parameter
  • #1073: FIX: fix fixedpoint rounding
  • #1072: FIX: [grid2]: calculate grid profit only when the reverse order is placed
  • #1070: FIX: add context, exponential backoff and max retry limit
  • #1071: FEATURE: [grid2]: use UseCancelAllOrdersApiWhenClose
  • #1066: FIX: [grid2]: fix fee reduction by rounding
  • #1065: FEATURE: submit order backoff
  • #1064: FIX: emit order update handler from the pending maker order
  • #1063: IMPROVE: [grid2]: improve logging
  • #1062: FIX: [grid2]: fix recover sorting
  • #1061: FIX: [grid2] fix quote accumulation
  • #1060: FIX: process pending order update for active order book
  • #1059: FIX: [grid2]: emit grid ready once the grid is recovered
  • #1058: FIX: [grid2]: fix grid order recover
  • #1057: FIX: [grid2]: fix HasPrice
  • #1056: FIX: [grid2]: fix upper price error
  • #1053: FEATURE: get historical public trades from binance
  • #1023: implement indicators from phemex
  • #1050: FEATURE: New indicators
  • #1051: FIX: [grid2]: fix grid num calculation
  • #1049: FEATURE: [grid2]: make OpenGrid, CloseGrid api public
  • #1048: FEATURE: [grid2]: integrate prometheus metrics
  • #1047: FEATURE: add RSI to StandardIndicatorSet
  • #1043: FEATURE: service: add redis namespace support
  • #1036: FIX: create log dir to avoid error
  • #1035: FEATURE: strategy: [grid2] add grid callbacks
  • #1034: FEATURE: strategy: [grid2]: use initial order ID to query closed order history to recover grid
  • #1033: FEATURE: strategy: [grid2]: improve recovering process [part 3]

BBGO v1.43.1

23 Dec 17:52
1be5c11
Compare
Choose a tag to compare

Fixes

  • Fixed grid2 order recovering

Full Changelog

  • #1032: strategy: grid2: recover grid orders [part 2]

BBGO v1.43.0

23 Dec 05:33
3e87cbb
Compare
Choose a tag to compare

All

  • Removed FTX code.

Fixes

  • Fixed binance websocket execution report message parsing.
  • Fixed margin history sync query.
  • Fixed rebalance backtest
  • Fixed SerialMarketDataStore together with backtests.
  • Fixed order executor for avoid checking base balance for futures.

Features

  • Added cancel order for exit roi take profit and loss
  • Added rollbar support.
  • Added docker image to quay.io.
  • Added FastSubmitOrders method to order exeuctor.
  • Added new optimizer / hoptimizer object types.
  • Added aggTrade for binance

Strategies

  • Added grid2 strategy.
  • Added LinReg maker strategy.
  • Updated supertrend config.
  • Improved IRR strategy. (see PRs for details)
  • Improved Drift strategy. (see PRs for details)

Full Changelog

  • #1030: strategy: grid2: recover functions.
  • #1031: feature: push to quay.io
  • #1027: strategy: LinReg Maker
  • #1028: strategy: grid2: improve notification support
  • #1025: feature: add rollbar support
  • #1024: fix: binance my trades api
  • #1022: strategy: grid2: more refactoring, fix bugs and add more tests
  • #1021: strategy: grid2: add test case for aggregateOrderBaseFee
  • #1020: strategy: grid2: run backtest in test and add more details
  • #1019: strategy: grid2: profit spread, prune historical trades . etc
  • #1018: strategy: grid2 [part2] -- reverse order and arb profit calculation
  • #1017: feature: add sync_time.sh utility
  • #1006: strategy: grid2 [part 1] - initializing grid orders
  • #1016: doc: add series extend documentation
  • #1013: feature: bbgo completion
  • #1014: all: remove ftx
  • #1011: strategy/supertrend: update supertrend config
  • #1008: improve: speed-up live trade
  • #1009: optimizer / hoptimizer add new object
  • #1004: strategy: irr rollback to original nirr and consume kline
  • #989: strategy: irr: a mean reversion based on box of klines in same direction
  • #1000: fix: rebalance: fix backtest
  • #997: fix: SerialMarketDataStore together with backtests
  • #1001: add cancel order for exit roi take profit and loss
  • #996: fix/general-order-executor: do not check for base balance for futures
  • #995: feature: telegram notify to become async
  • #993: fix: indicator timeframe 1s
  • #994: feature: add aggTrade for binance
  • #991: fix/risk: remove balance check in CalculateBaseQuantity()
  • #990: fix: change variable names

BBGO v1.42.0

13 Oct 18:48
1d9cc54
Compare
Choose a tag to compare

Improvements

  • added isolation context

Fixes

  • fixed order executor ClosePosition for futures.
  • fixed backtest order quantity check.
  • fixed max kline api
  • fixed optimizer limit

Strategies

  • strategy/supertrend: fixed linreg baseline slope.
  • strategy/drift: added more fixes and updates
  • strategy/irr: added new strategy.
  • strategy/harmonic: added new harmonic shark pattern strategy.
  • strategy/marketcap: reduce frequency of querying data from coinmarketcap

Full Changelog

  • #987: fix: supertrend-strategy: LinReg baseline slope wrongly calculated
  • #986: fix: general order executor: ClosePosition() works on futures position
  • #983: fix: backtest: add order quantity check
  • #982: refactor isolation context for persistence facade configuration
  • #981: fix optimizer limit
  • #976: strategy: add harmonic shark pattern recognition
  • #977: strategy: fix irr
  • #978: refactor: refactor isolation and add more tests
  • #979: fix: fix max kline api
  • #974: refactor persistence for isolation
  • #973: refactor/feature: add isolation context support
  • #972: fix/drift_stoploss
  • #970: refactor: extract stoploss, fix highest/lowest in trailingExit
  • #969: fix: reduce Quantity precheck, drift condition, ewo refactor
  • #959: stratgy: add irr
  • #968: feature: add config dump / param dump / param modify for elliottwave
  • #965: binance: fix futures order conversion
  • #967: fix: wrong tag in drift
  • #955: feature: marketcap: reduce frequency of querying data from coinmarketcap
  • #963: feature: limit how many metrics is shown by optimizer
  • #964: series.Filter + drift.openPosition + modify openPosition behavior + fix consts
  • #962: fix: add rate limit on telegram api and split messages by unicode

BBGO v1.41.0

20 Sep 07:58
08e6e5e
Compare
Choose a tag to compare

Feature

  • Added auto-repay to protective stop loss exit method
  • Added --lightweight mode option

Improvements

  • Removed the old submitOrder notification and added the new notification switches.
  • Improved accumulated volume stop method
  • binance: add queryTrades rate limiter

Fixes

  • Fixed net asset value calculation
  • Fixed telegram message error, there must be one message to send

Strategies

  • drift: fixed drift minus weight, preloaded kline not enough
  • trendtrader: added new trendline trader strategy.
  • pivotshort: fix fast high filtering.
  • pivotshort: call open position and add more position options.

Full Changelog

  • #960: improve: improve the existing notification switch settings
  • #961: Feature: Add auto-repay to exit_protective_stop_loss
  • #958: strategy/pivotshort: more improvements
  • #957: bbgo: remove submitOrder notification
  • #956: improve: bbgo: use margin asset borrowable amount to adjust the quantity
  • #953: fix: drift minus weight, preloaded kline not enough
  • #950: strategy/pivotshort
  • #954: DOC: update slack.md
  • #942: feature: add modify tg command. fix wdrift ma length
  • #952: fix: fix profit stats calculation and since time field initialisation
  • #951: DOC: add marketcap doc
  • #920: strategy: add trend trader
  • #947: improve: accumulated volume stop method
  • #945: FEATURE: marketcap: get marketcap values from coinmarketcap
  • #946: bbgo: fix telegram message error, there must be one message to send
  • #944: fix: fix net asset calculation
  • #943: FIX: fix market error
  • #941: pivotshort: fix fast high filtering
  • #940: pivotshort: call open position and add more position options
  • #939: binance: add queryTrades rate limiter
  • #938: bbgo: add lightweight mode

BBGO v1.40.4

11 Sep 17:04
c489794
Compare
Choose a tag to compare

Full Changelog

  • #935: bbgo: add price check and add max leverage for cross margin
  • #937: notifier: redirect error, panic, fatal error to telegram
  • #936: bollmaker: fix settings overriding
  • #934: pnl: fix nil position point issue
  • #933: bollmaker: fix backward compatibility of dynamic spread settings

BBGO v1.40.3

11 Sep 10:26
cacc24f
Compare
Choose a tag to compare

Fixes

  • Fixed order executor close position (check base balance for long position).
  • Fixed TrendEMA for pivotshort.
  • Fixed tradeStats counter for live trading.
  • Handle binance listenKeyExpired event to reconnect.
  • Improved order submit remapping issue and retry.

Interaction

  • Added telegram image support.
  • Added /resetposition command.

Strategies

  • supertrend: added pnl image support.
  • supertrend: use MA by day instead of by trade.
  • elliotwave: renewal.
  • bollmaker: added trendEMA support

Full Changelog

  • #932: feature: strategy/bolllmaker trend ema
  • #930: Fix: Pivotshort
  • #929: feature: strategy/supertrend: draw pnl on
  • #931: fix: binance listenkey expired
  • #928: refactor: refactor interact strategy filter functions
  • #927: refactor: simplify submit order
  • #926: fix: handle created orders before we retry
  • #925: feature: order executor open position method
  • #922: fix: types/tradeStats: use last order id to identity consecutive win and loss
  • #921: strategy/supertrend: use ma by day instead of by trade
  • #910: SerialMarketDataStore, elliottwave renewal
  • #919: feature: add fixedpoint.Reducer, Counter and add update stats method on TradeStats