Commit Graph

6672 Commits

Author SHA1 Message Date
narumi
3fe4568dc2 check quote balance before submitting order 2024-10-07 21:37:49 +08:00
c9s
a5d4130625
Merge pull request #1768 from c9s/c9s/xmaker/improvements2
IMPROVE: [xmaker] add more improvements
2024-10-07 17:38:49 +08:00
c9s
80b1a3262d
Merge pull request #1767 from c9s/c9s/pricesolver/float64
IMPROVE: use float64 in pricesolver internally to make it more precise
2024-10-07 17:15:10 +08:00
c9s
544c172a9c
xmaker: improve fee price updating 2024-10-07 17:12:49 +08:00
c9s
2599a4bcd3
xmaker: add SubscribeFeeTokenMarkets option 2024-10-07 17:09:01 +08:00
c9s
969e813c7f
xmaker: fix profit fixer fee settings 2024-10-07 17:09:01 +08:00
c9s
2cdd9072c2
Merge pull request #1766 from c9s/c9s/refactor/account-value-calc
REFACTOR: refactor account value calculator with price solver
2024-10-07 17:08:49 +08:00
c9s
a0cdfc2b8e
xmaker: fix aggregatePriceVolumeSliceWithPriceFilter
Some checks failed
Go / build (1.21, 6.2) (push) Has been cancelled
golang-lint / lint (push) Has been cancelled
2024-10-06 12:18:03 +08:00
c9s
efc3bbeb5b
allow redis persistence config could be created with an existing redis client 2024-10-06 12:12:33 +08:00
c9s
113695eabf
Merge pull request #1749 from r03921081/task/change_circuitbreaker
Use new circuitbreaker in common strategy
2024-10-06 12:10:22 +08:00
c9s
a94d1b424f
pricesolver: use float64 internally to make it faster and more precise 2024-10-05 14:26:15 +08:00
c9s
7506fb63a8
refactor account value calculator 2024-10-05 14:22:13 +08:00
c9s
6079e7b06a
all: refactor NewAccountValueCalculator 2024-10-05 13:09:31 +08:00
c9s
a718e30bb4
refactor tests 2024-10-04 23:46:43 +08:00
c9s
8f0d58aee9
add new test helper to create balance map objects
Signed-off-by: c9s <yoanlin93@gmail.com>
2024-10-04 23:32:11 +08:00
c9s
14fa561f6e
Fix account value tests with price solver
Signed-off-by: c9s <yoanlin93@gmail.com>
2024-10-04 19:45:07 +08:00
c9s
c3bf0ed7e7
only query ticker on the symbol that is defined in the market map
Signed-off-by: c9s <yoanlin93@gmail.com>
2024-10-04 19:16:39 +08:00
c9s
8199428b61
Add ticker test helper
Signed-off-by: c9s <yoanlin93@gmail.com>
2024-10-04 19:10:05 +08:00
c9s
83ab00a601
allow redis persistence config could be created with an existing redis client 2024-10-04 18:11:15 +08:00
kbearXD
a548596c16
Merge pull request #1760 from c9s/chiahung/max/query-depth
Some checks failed
Go / build (1.21, 6.2) (push) Has been cancelled
golang-lint / lint (push) Has been cancelled
FEATURE: [max] add QueryDepth v3 API to query orderbook
2024-10-04 13:11:05 +08:00
Lan Phan
dad7b53d9c add new tag ignore to prevent printing specific field 2024-10-02 23:00:48 +07:00
edwin
fc4a9769c9 pkg/exchange: use individual rate limit 2024-10-02 17:23:20 +08:00
edwin
771a136acd pkg/exchange: fix redundant code 2024-10-01 21:22:42 +08:00
kbearXD
2bbaf48057 move to convert.go 2024-10-01 17:16:28 +08:00
c9s
5e7627cc7a
xmaker: fix signal depth metrics
Some checks are pending
Go / build (1.21, 6.2) (push) Waiting to run
golang-lint / lint (push) Waiting to run
2024-10-01 16:52:58 +08:00
kbearXD
d1c5671a83 FEATURE: [max] add QueryDepth v3 API to query orderbook 2024-10-01 14:53:32 +08:00
bailantaotao
7e908c3ff7
Merge pull request #1759 from c9s/edwin/bybit/add-v5-execution-request
FEATURE: [bybit] integrate the v5 trade history
2024-10-01 14:06:46 +08:00
edwin
a68764b763 pkg/exchange: merge FeeRatePoller into StreamDataProvider 2024-10-01 11:45:33 +08:00
edwin
7f1e1a3a51 pkg/exchange: export SymbolFeeDetail struct 2024-10-01 11:45:33 +08:00
edwin
eb2a7421da pkg/exchange: integrate the v5 query trade api 2024-10-01 11:45:31 +08:00
edwin
d2c1ae0642 pkg/exchange: move fee rate calculate method outside 2024-10-01 00:06:47 +08:00
edwin
f6e58ded02 pkg/exchange: add PollAndGet method and declare an interface 2024-10-01 00:06:43 +08:00
bailantaotao
a639a5831b
Merge pull request #1757 from c9s/edwin/bybit/add-v5-execution-request
Some checks are pending
Go / build (1.21, 6.2) (push) Waiting to run
golang-lint / lint (push) Waiting to run
FEATURE: [bybit] add v5 execution request
2024-09-30 17:51:26 +08:00
c9s
3c48663032
add more tests 2024-09-30 17:32:46 +08:00
edwin
bdfcbdcf56 pkg/exchange: move common execution field to bybitapi.trade 2024-09-30 16:28:07 +08:00
edwin
aac833d135 pkg/exchange: add execution list request to bybit 2024-09-30 16:27:33 +08:00
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