Commit Graph

6686 Commits

Author SHA1 Message Date
c9s
39fad2e0b5
xmaker: add depth ratio signal 2024-09-30 16:21:22 +08:00
c9s
f776914e8c
do not return when failed cleaning up orders
Some checks failed
Go / build (1.21, 6.2) (push) Has been cancelled
golang-lint / lint (push) Has been cancelled
2024-09-27 21:23:11 +08:00
c9s
4661ec629d
xdepthmaker: add priceImpactRatio detection 2024-09-27 20:14:34 +08:00
c9s
be353c533b
xmaker: bind price solver with market data stream 2024-09-27 18:43:09 +08:00
c9s
e8c063c09b
xdepthmaker: support countery party 5 hedge and force full replenish 2024-09-27 18:43:09 +08:00
c9s
5dcd375279
add more update methods for price solver 2024-09-27 18:43:09 +08:00
c9s
9194a9152c
extend ticker method 2024-09-27 18:43:09 +08:00
c9s
d5a6930545
add disconnectedC method 2024-09-27 18:43:09 +08:00
c9s
98011e1e97
extend price volume slice methods 2024-09-27 18:43:09 +08:00
c9s
79b636fa02
move bbo monitor to bbgo package 2024-09-27 18:43:09 +08:00
c9s
091eb5d9c5
xdepthmaker: return when we can't clean up the open orders 2024-09-27 14:27:20 +08:00
c9s
fb35a2b79f
types: add AnyDisconnected() method on ConnectivityGroup 2024-09-27 13:31:37 +08:00
c9s
c07661af57
all: refactor depthmaker with connectivity 2024-09-27 13:24:03 +08:00
c9s
ccb617f30f
types: add connectivity test 2024-09-27 12:56:44 +08:00
c9s
431d6964d5
xdepthmaker: split quote worker and hedge worker 2024-09-26 17:57:12 +08:00
c9s
0c842e0eb5
Merge pull request #1753 from c9s/c9s/xdepthmaker/improvements
Some checks are pending
Go / build (1.21, 6.2) (push) Waiting to run
golang-lint / lint (push) Waiting to run
IMPROVE: [xdepthmaker] use order query to update the canceled order, fix depth price, fix symbol column lengths, fix covered position
2024-09-26 15:06:12 +08:00
c9s
6e19777277
Merge pull request #1751 from lanphan/fixemitnew
fix OnNew event must be called before OnFilled
2024-09-26 12:26:34 +08:00
c9s
1b5da22c90
xdepthmaker: fix coveredPosition reduction 2024-09-25 18:16:04 +08:00
c9s
f4e905833c
xdepthmaker: improve HedgeMaxOrderQuantity check 2024-09-25 18:16:03 +08:00
c9s
42cd3cba1e
xdepthmaker: clean up todo 2024-09-25 18:16:03 +08:00
c9s
67fd15c88f
xdepthmaker: log covered position 2024-09-25 18:16:03 +08:00
c9s
d83297b605
migrations: add table column symbol length fix 2024-09-25 18:16:03 +08:00
c9s
e11db4a2d1
xdepthmaker: avoid using the same depth price for the new maker order 2024-09-25 18:16:02 +08:00
c9s
6a5ab424c9
xdepthmaker: add hedgeMaxOrderQuantity protection 2024-09-25 15:52:23 +08:00
c9s
b3d58a9e05
bbgo: add types.ExchangeOrderQueryService support for checking canceled orders 2024-09-25 14:13:23 +08:00
c9s
768428a7eb
bbgo: pass the actual context object instead of background context 2024-09-25 13:36:49 +08:00
c9s
329b8a40d9
xdepthmaker: adjust covered position when order is canceled 2024-09-25 13:36:31 +08:00
c9s
60d5126b61
xdepthmaker: add HedgeStrategyBboQueue1 hedge method 2024-09-24 17:10:50 +08:00
c9s
59191cf6bf
xdepthmaker: support bbgo counter party 1 hedge method 2024-09-24 16:33:53 +08:00
c9s
566234d3ab
xdepthmaker: rename last price var to just price 2024-09-24 16:14:03 +08:00
c9s
e7c76ddd26
xdepthmaker: refactor hedge methods 2024-09-24 16:12:17 +08:00
c9s
61ea41d999
xdepthmaker: simplify hedge 2024-09-23 22:16:53 +08:00
c9s
b02580f9f6
xdepthmaker: remove shared mutex lock usage 2024-09-23 18:28:46 +08:00
c9s
345c92c295
all: improve UniversalCancelAllOrders and add mutex to covered position 2024-09-23 18:26:23 +08:00
c9s
a8444e9796
bybit,biget: improve bitget, bybit query log messages 2024-09-23 17:51:33 +08:00
Lan Phan
2a767aba71 fix OnNew event must be called before OnFilled 2024-09-20 20:01:24 +07:00
Andy Liao
7137343ba0 Use new circuitbreaker in common strategy 2024-09-18 22:35:35 +08:00
c9s
8265ada5a0
compile and update migration package 2024-09-18 13:30:56 +08:00
c9s
a0c41f89f2
bump version to v1.60.3 2024-09-16 00:31:00 +08:00
c9s
26b1fd2ae7
xmaker: fix price initialization 2024-09-16 00:29:37 +08:00
Lan Phan
1f8b2b3710 call b.EmitNew() when new order is added into activeorderbook 2024-09-14 18:26:36 +07:00
c9s
aca2c32442
bump version to v1.60.2 2024-09-12 17:51:57 +08:00
c9s
0d6b7b29d5
Merge pull request #1742 from c9s/c9s/fix-ws-close-err
FIX: types/stream: change errorf to warnf
2024-09-12 17:46:24 +08:00
c9s
ea8f3a5485
types/stream: change errorf to warnf 2024-09-12 17:35:13 +08:00
c9s
52f32e0ad0
upgrade github.com/c9s/requestgen to 1.4.3 2024-09-12 17:27:30 +08:00
c9s
de0d11b511
max: regenerate order cancel requests 2024-09-11 16:47:20 +08:00
kbearXD
f83491af26 FEATURE: [dca2] set exchange fee rate for round position 2024-09-11 15:40:59 +08:00
edwin
619cce53f6 pkg/exchange: update to latest 2024-09-10 17:11:58 +08:00
c9s
d7ddc9c462
Merge pull request #1737 from c9s/c9s/xmaker/ioc-arb
Some checks are pending
Go / build (1.21, 6.2) (push) Waiting to run
golang-lint / lint (push) Waiting to run
FEATURE: [xmaker] implement tryArbitrage
2024-09-09 22:57:20 +08:00
c9s
34ef50d889
xmaker: refactor and clean up tryArbitrage 2024-09-09 22:03:06 +08:00
c9s
52925c5643
xmaker: calculate balance for arbitrage 2024-09-09 18:12:46 +08:00
c9s
b4f2748892
xmaker: fix sides 2024-09-09 18:03:03 +08:00
c9s
ceda1e06b9
xmaker: implement tryArbitrage 2024-09-09 17:49:53 +08:00
c9s
bc1715f8ad
Merge pull request #1736 from c9s/kbearXD/session/remove-log
Some checks are pending
Go / build (1.21, 6.2) (push) Waiting to run
golang-lint / lint (push) Waiting to run
MINOR: [session] remove environment nil validation log
2024-09-09 16:17:17 +08:00
c9s
f361b19564
Merge pull request #1734 from c9s/c9s/xmaker/ioc-arb
REFACTOR: [xmaker] refactor for supporting ioc arb [part1]
2024-09-09 16:05:11 +08:00
kbearXD
f44486447e MINOR: [session] remove environment nil validation log 2024-09-09 16:04:04 +08:00
kbearXD
129e2c438e FIX: add debug log 2024-09-09 15:13:02 +08:00
c9s
90749f4873
xmaker: pull out s.UseDepthPrice dependency 2024-09-09 15:04:56 +08:00
c9s
77dfe213e5
xmaker: pull out getLayerPrice and add test against the method 2024-09-09 14:41:41 +08:00
c9s
960ea89d8c
testhelper: add more test helpers 2024-09-09 14:41:27 +08:00
c9s
f24a96c8c3
xmaker: refactor getInitialLayerQuantity for quantity multiplier 2024-09-07 14:19:07 +08:00
c9s
6ad16b7488
xmaker: add EnableArbitrage option and makerBook 2024-09-07 13:47:34 +08:00
c9s
e14f09a914
xmaker: add sourceDepthLevel option 2024-09-06 21:47:43 +08:00
c9s
3cc96ff6ad
Merge pull request #1724 from dropbigfish/main
Some checks failed
Go / build (1.21, 6.2) (push) Has been cancelled
golang-lint / lint (push) Has been cancelled
fix: fix slice init length
2024-09-06 18:06:21 +08:00
c9s
a282654c02
bbgo: fix the defaults / initialize steps 2024-09-06 17:33:31 +08:00
kbearXD
63a58e1b12 FIX: fix memory leak 2024-09-05 17:05:58 +08:00
longhutianjie
c75a685cc0
bug: fix json tag 2024-09-04 17:58:27 +08:00
c9s
9fc3a1b44a
xmaker: rename to aggTradeVolume 2024-09-04 16:09:58 +08:00
c9s
656112de45
xmaker: call signalConfig.TradeVolumeWindowSignal.Bind 2024-09-04 16:07:28 +08:00
c9s
ba73eeaad1
xmaker: add TradeVolumeWindowSignal 2024-09-04 15:59:21 +08:00
c9s
2527c0c7b7
max: convert v3 DepositStateFailed into rejected 2024-09-04 15:00:37 +08:00
c9s
a2f8fe5f72
max: add v3 DepositStateFailed state 2024-09-04 14:59:58 +08:00
c9s
ed51eff242
max: drop unused function 2024-09-04 14:59:10 +08:00
c9s
24de49860f
bump version to v1.60.1 2024-09-04 14:58:07 +08:00
c9s
ec68e3c5f6
Merge pull request #1727 from lanphan/ioc
FIX: update timeInForce for binance margin order
2024-09-04 14:38:40 +08:00
c9s
f27afac77b
max: use error log instead of warning log for convertion 2024-09-04 11:20:30 +08:00
c9s
d404b20bd1
deposit2transfer: fix comments 2024-09-04 11:19:43 +08:00
c9s
1b8d7bd805
max: fix v3 deposit state conversion 2024-09-04 11:17:56 +08:00
c9s
7d034d1ba8
bbgo: add stringer method to the quota struct
Some checks failed
Go / build (1.21, 6.2) (push) Has been cancelled
golang-lint / lint (push) Has been cancelled
2024-09-03 03:26:47 +08:00
c9s
7135895006
xmaker: fix MaxExposurePosition check condition 2024-09-03 03:25:37 +08:00
Lan Phan
ba913ce4de update timeInForce for binance margin order 2024-09-03 00:38:17 +07:00
c9s
f12ba1adb9
bbgo: add comments to the quota methods
Some checks are pending
Go / build (1.21, 6.2) (push) Waiting to run
golang-lint / lint (push) Waiting to run
2024-09-02 22:18:13 +08:00
c9s
294e529a98
xmaker: add more logs 2024-09-02 16:08:51 +08:00
c9s
f30aca1b5a
xmaker: update position metrics when restored 2024-09-02 15:51:31 +08:00
c9s
f9b9832fff
add more logs 2024-09-02 15:51:31 +08:00
c9s
4d1c357c3d
xmaker: reuse makerMarket field 2024-09-01 17:55:00 +08:00
c9s
a4833524cf
xmaker: add more logs 2024-09-01 16:41:16 +08:00
c9s
ed073264f1
xmaker: add MaxHedgeAccountLeverage option 2024-09-01 15:42:36 +08:00
c9s
ad6056834e
xmaker: separate maximumValueInUsd in a new var 2024-09-01 01:34:25 +08:00
c9s
8b1306a6a6
xmaker: calculate maximum leveraged account value 2024-09-01 01:31:50 +08:00
c9s
d85da78e17
xmaker: improve hedge account credit calculation 2024-09-01 00:58:50 +08:00
dropbigfish
9d581adc04 fix: fix slice init length
Signed-off-by: dropbigfish <fillfish@foxmail.com>
2024-09-01 00:36:43 +08:00
c9s
cff7103ece
fix math import
Some checks failed
Go / build (1.21, 6.2) (push) Has been cancelled
golang-lint / lint (push) Has been cancelled
2024-08-30 22:41:13 +08:00
c9s
d501e8ff4d
xmaker: apply math.Abs on signal for margin scale 2024-08-30 22:38:59 +08:00
c9s
ec80cbfd9f
xmaker: check 0.0 2024-08-30 17:52:28 +08:00
c9s
7c4b3e81df
xmaker: add more logs 2024-08-30 17:42:20 +08:00
c9s
cc820d3df0
xmaker: apply margin from signal 2024-08-30 17:39:25 +08:00
c9s
371db8e7d1
xmaker: update signal conditions to metrics 2024-08-30 17:18:29 +08:00
c9s
b8abc065de
xmaker: initialize bollinger band signal 2024-08-30 17:15:12 +08:00
c9s
9ebab4f4f7
xmaker: add signal providers 2024-08-30 15:44:55 +08:00
c9s
d9fb9ff3e0
xmaker: remove unused var 2024-08-29 13:18:50 +08:00
c9s
88d7783843
bbgo/activeOrderBook: filter market order when filtering existing orders 2024-08-29 00:38:44 +08:00
c9s
86e464b1bc
xmaker: when submitting hedge orders, do not add it to the active orderbook 2024-08-29 00:33:04 +08:00
c9s
8de0c67503
xmaker: fix aggregatePrice function 2024-08-28 22:36:44 +08:00
c9s
e187614179
xmaker: log best bid and best ask 2024-08-28 22:32:56 +08:00
c9s
d36bbe5fb5
xmaker: adjust accountUpdater's ticker to 3 min 2024-08-28 16:41:50 +08:00
c9s
77b7b29739
xmaker: adjust credit buffer algo 2024-08-28 16:37:39 +08:00
c9s
1d6282a10b
xmaker: add account updater and handle margin account to add more flexibility 2024-08-28 16:07:11 +08:00
c9s
108fb6138a
xmaker: check hedge balance only when it's spot account 2024-08-28 14:48:38 +08:00
c9s
1e2f086643
xmaker: set notional var back 2024-08-27 22:45:43 +08:00
c9s
6011fd5157
xmaker: set profitChanged only when Hedge is called 2024-08-27 22:45:11 +08:00
c9s
9939b5ce68
xmaker: improve bid/ask pricing when UseDepthPrice and DepthQuantity are on 2024-08-27 20:05:46 +08:00
c9s
a740ef10c2
xmaker: add price checker and field logger 2024-08-27 20:05:45 +08:00
c9s
f81ce5ce95
xmaker: improve bollinger band trend detection 2024-08-27 20:05:45 +08:00
c9s
4ae8ad77b3
xmaker: add profit changed flag for notification 2024-08-27 20:05:45 +08:00
c9s
3819feacf3
xmaker: improve dust quantity check 2024-08-27 20:05:45 +08:00
c9s
3d4ccd1344
xmaker: integrate bid/ask margin metrics 2024-08-27 15:39:38 +08:00
c9s
b3c8739983
xmaker: add config bid/ask margin metrics 2024-08-27 15:35:39 +08:00
c9s
7e65aca62e
xmaker: add more config metrics 2024-08-27 15:22:06 +08:00
c9s
199b86df86
xmaker: add comments 2024-08-27 14:52:27 +08:00
c9s
6fb6467d59
xmaker: refactor hedge worker and quote worker 2024-08-27 14:48:30 +08:00
c9s
e3079c134c
xmaker: add todo note 2024-08-26 18:37:02 +08:00
c9s
7367ea73b8
xmaker: profit object can be nil 2024-08-26 18:35:10 +08:00
c9s
866751cc3d
Merge pull request #1712 from c9s/c9s/xmaker/add-profit-fixer
FEATURE: [xmaker] add profit fixer
2024-08-26 13:32:41 +08:00
c9s
80949bf0e1
Merge pull request #1710 from c9s/c9s/xmaker/stb-improvements
IMPROVE: [xmaker] improve stability
2024-08-26 13:32:19 +08:00
c9s
90bcd25bef
Merge pull request #1711 from lanphan/autoborrowrepay
FEATURE: [binance] add new margin order side effect AUTO_BORROW_REPAY
2024-08-26 13:15:21 +08:00
c9s
7fdb3f671f
risk: add Enabled config to circuitbreaker 2024-08-26 12:50:13 +08:00
c9s
77e185ffa7
xmaker: add profit fixer 2024-08-26 12:45:18 +08:00
Lan Phan
9a7517a72a add new sideeffect AUTO_BORROW_REPAY 2024-08-25 12:31:10 +07:00
c9s
9a1d9ae27b
xmaker: rewrite maker order submission logics and integrate metrics 2024-08-24 21:22:35 +08:00
c9s
c76a80da6a
xmaker: add xmaker metrics 2024-08-24 21:22:34 +08:00
c9s
afac81a3e8
all: integrate metrics into stream book 2024-08-24 21:22:34 +08:00
c9s
0df56ad6e7
xmaker: use v2 indicator boll 2024-08-24 13:28:32 +08:00
c9s
1c1959b8a8
all: rename priceresolver to pricesolver
integrate pricesolver into xmaker
2024-08-24 12:28:05 +08:00
c9s
9f01dc28c8
xmaker: remove report ticker and
isolate rate limiter for each different instance
2024-08-24 12:19:34 +08:00
c9s
e8bd370aa2
xmaker: remove duplicated log entry 2024-08-24 12:13:44 +08:00
c9s
5ca1c4fb62
xmaker: rewrite and clean up order submission 2024-08-24 12:13:15 +08:00
c9s
f7dc07327e
xmaker: assign position strategy id and instance id 2024-08-24 12:01:11 +08:00
c9s
6ef8aa62e5
xmaker: integrate CircuitBreaker 2024-08-24 11:58:09 +08:00
c9s
5f65e87e89
change default HaltDuration to 1h 2024-08-24 11:43:12 +08:00
c9s
14fff8dbad
xmaker: integrate circuitbreaker 2024-08-24 11:42:16 +08:00
c9s
40a0585187
types: fix missing labels 2024-08-23 19:59:56 +08:00
c9s
9f510da78b
xmaker: use margin order to hedge positions 2024-08-23 16:57:29 +08:00
c9s
b2f1f7d735
Merge pull request #1700 from c9s/narumi/autobuy-boll
Fix: [autobuy] fix error when bollinger settings is not set
2024-08-23 13:05:18 +08:00
narumi
1b06fcc961 validate parameters 2024-08-22 14:36:06 +08:00
narumi
b820fccce1 add order type to config 2024-08-22 14:36:06 +08:00
c9s
72575e3cd8
elliottwave: use AverageCost instead 2024-08-22 11:26:46 +08:00
c9s
a900c72032
types/position: drop approximateAverageCost 2024-08-22 11:19:54 +08:00
c9s
5635e31487
types: pull out calculateFeeInQuote method 2024-08-22 11:07:45 +08:00
c9s
e2d68f2a86
types: add fee cost settter to the position 2024-08-22 10:59:38 +08:00
c9s
9136877207
types: update position metrics after adding trades 2024-08-21 16:35:57 +08:00
c9s
c063df6467
document privateChannels and privateChannelSymbols 2024-08-21 16:24:19 +08:00
c9s
80fc10a1fd
bbgo: add session name to the metrics 2024-08-21 15:46:09 +08:00
c9s
fead99aaa6
add more balance metrics 2024-08-21 15:33:27 +08:00
c9s
40d3a40277
types: add marginType 2024-08-21 15:24:43 +08:00
c9s
055cfbb3ff
Merge pull request #1699 from c9s/c9s/refactor-twap
REFACTOR: [twap] upgrade twap command and add optional order update rate limiter
2024-08-21 15:20:57 +08:00
c9s
d855d9bbc0
bump version to v1.60.0 2024-08-21 14:42:59 +08:00
narumi
731fa9af7e fix error when bollinger settings is not set 2024-08-21 13:28:22 +08:00
c9s
a06b63c897
twap: rename constructor 2024-08-20 18:13:42 +08:00
c9s
ebaf3a330f
twap: pull out submitOrder method 2024-08-20 17:53:19 +08:00
c9s
a0cbf82d97
twap: handle delayInterval after canceling order 2024-08-20 17:51:44 +08:00
c9s
9a2b792ed1
twap: split doneSignal into a single file 2024-08-20 17:49:18 +08:00
c9s
2392fddc3c
fix method name 2024-08-20 17:47:39 +08:00
c9s
c92c395f67
twap: improve rate limiter syntax parser and support order update rate limiter in twap 2024-08-20 17:07:29 +08:00
c9s
48029f95cc
cmd: pull out and refine twap order executor command 2024-08-20 16:24:34 +08:00
c9s
baffefac07
Merge pull request #1689 from anywhy/fix_float64_series
fix float64 series use mean or stdev function result is zero
2024-08-20 14:41:29 +08:00
c9s
6d3a18ad55
twap: call trade collector process when shutdown 2024-08-20 14:30:08 +08:00
c9s
d1617b6a0b
Merge pull request #1697 from c9s/c9s/refactor-twap
FEATURE: redesign and refactor twap order executor
2024-08-20 14:24:48 +08:00
c9s
b9c41b7ad7
twap: improve cancelContextIfTargetQuantityFilled check method 2024-08-20 14:14:19 +08:00
c9s
0530809834
fix position test 2024-08-20 14:10:22 +08:00
c9s
d8fad8250c
fix duplicated field 2024-08-20 14:01:19 +08:00
c9s
c8aea81505
twap: implement twap mock testing 2024-08-20 14:01:04 +08:00
c9s
cec078f4bf
twap: add stream executor test 2024-08-20 14:01:04 +08:00
c9s
648e10fd7c
binance: fix time in force setting for limit maker 2024-08-20 14:01:04 +08:00
c9s
b7d18e687e
twap: implement orderUpdater 2024-08-20 14:01:03 +08:00
c9s
51c1b995c2
twap: add v2 fixed quantity executor 2024-08-20 14:01:03 +08:00
c9s
47c7714d33
Merge pull request #1698 from c9s/feature/max/update-get-trade-api
FEATURE: update get trades api
2024-08-20 13:49:39 +08:00
c9s
f7ad141b04
Merge pull request #1693 from anywhy/fix_binance_query_order
fix binance exchange query futures order
2024-08-19 18:01:03 +08:00
kbearXD
90712aff29 FEATURE: update get trades api 2024-08-19 17:05:02 +08:00
c9s
0a83c26fd5
types: add warning to the price type 2024-08-17 14:15:43 +08:00
c9s
1294cd95be
rename twap.Execution to twap.StreamExecutor 2024-08-17 14:09:25 +08:00
c9s
9dd85623b9
types,strategy: refactor price type and add more bbo (best bid offer) 2024-08-17 14:05:29 +08:00
c9s
621a2b86cf
twap: move twap execution to a single package 2024-08-17 13:29:27 +08:00
c9s
e9bf4babe2
core: log number of loaded converters 2024-08-16 20:57:28 +08:00
c9s
52abb9193d
core: fix InitializeConverter return value 2024-08-16 20:53:21 +08:00
c9s
3d7453f18c
core: setting.InitializeConverter could return a nil converter object 2024-08-16 20:52:28 +08:00
c9s
b88aff6d73
max: fix GetDepositHistoryRequest 2024-08-16 13:40:34 +08:00
c9s
4154cc9d53
max: fix max withdrawal api parameters 2024-08-16 13:27:14 +08:00
anywhy
714275fedb fix binance exchange query futures order 2024-08-16 13:06:43 +08:00
anywhy
b27fc896f9 add serie_float64 test case 2024-08-15 16:44:45 +08:00
edwin
5596589bff pkg/exchange: delete v1 file 2024-08-13 11:14:31 +08:00
edwin
ee04e12210 pkg/exchange: upgrade market trade ws to v2 2024-08-13 11:14:29 +08:00
edwin
b02be2cf70 pkg/exchange: upgrade kline ws to v2 2024-08-13 00:24:51 +08:00
c9s
9911a4f711
all: fix converter initialization 2024-08-12 15:56:24 +08:00
c9s
1b0d4599e2
all: add trade converter to trade pnl fixer 2024-08-12 15:02:02 +08:00
c9s
473a6bc108
xdepthmaker: set converter manager 2024-08-10 15:50:20 +08:00
c9s
1ad2bc5f34
core: add Initialize() method to the converter interface 2024-08-08 17:37:58 +08:00
c9s
df8d52adda
core: add TestSymbolConverter 2024-08-08 17:33:35 +08:00
c9s
00e860df26
core: add dynamic converter 2024-08-08 17:18:17 +08:00
c9s
f277b191d2
core: add ConverterManager 2024-08-08 17:00:45 +08:00