Commit Graph

1495 Commits

Author SHA1 Message Date
c9s
4aca676b4d
all: add exchange field to types.Market 2024-02-23 18:36:52 +08:00
c9s
3b8a3bed5f
add universal cancel all orders api helper 2024-02-23 16:56:30 +08:00
bailantaotao
d0ed34c4e1
Merge pull request #1544 from c9s/edwin/bitget/batch-subscribe
FIX: [bitget] batch subscribe channel
2024-02-23 16:07:49 +08:00
edwin
3a18edd5ab pkg/exchange: batch subscribe channel 2024-02-23 15:48:57 +08:00
edwin
5c7509523b pkg/exchange: use new size instead of size 2024-02-23 14:08:35 +08:00
c9s
06c533f3d7
Merge pull request #1531 from c9s/c9s/improve-deposit2transfer-logs
improve: [deposit2transfer] improve deposit logging
2024-02-22 22:47:17 +08:00
c9s
0f001a9151
Merge pull request #1534 from c9s/edwin/okx/refine-rate-limit
FIX: [okx] refine okx rate limiter
2024-02-22 22:46:43 +08:00
c9s
75cb5dd09c
check order pointer 2024-02-22 14:26:01 +08:00
edwin
f135b6dcc4 pkg/exchange: refine okx rate limiter 2024-02-22 09:21:04 +08:00
c9s
3cee573dbd
Merge pull request #1538 from c9s/c9s/fix-and-improve-query-order-until-filled
FIX: [retry] fix and improve QueryOrderUntilFilled status check
2024-02-21 17:09:02 +08:00
c9s
c68832459d
retry: fix and improve QueryOrderUntilFilled status check 2024-02-21 16:56:11 +08:00
edwin
b6261c2516 pkg/exchange: add limit maker type to place order 2024-02-20 18:20:07 +08:00
edwin
516c5e8137 pkg/exchange: print more logs 2024-02-20 17:55:47 +08:00
edwin
3bd2d90e3c pkg/exchange: allow char in place order 2024-02-20 15:14:09 +08:00
c9s
c6db392a26
deposit2transfer: improve deposit logging 2024-02-15 11:43:59 +08:00
edwin
262c05f83c pkg/exchange: fix trade id 2024-02-08 01:37:35 +08:00
c9s
d015670d63
binance: add TestClient_GetDepth test 2024-02-06 15:33:55 +08:00
c9s
0cf028d192
binance: define more event types 2024-02-06 15:28:56 +08:00
c9s
5206ec98c8
binance: make util functions private 2024-02-06 15:28:56 +08:00
c9s
e031acca13
binance: support partial depth event parsing 2024-02-06 15:28:56 +08:00
c9s
87364d0ca7
binance: refine the IsBookTicker checker written by tonyq 2024-02-06 15:28:56 +08:00
c9s
fce603064f
binance: define event types and add partial depth detection 2024-02-06 15:28:56 +08:00
c9s
97b922a8b2
binance: remove debug code 2024-02-06 15:28:56 +08:00
c9s
f734c699bc
add LastUpdateId to the SliceOrderBook struct 2024-02-06 15:28:55 +08:00
c9s
b3ef66dff4
binance: set snapshot.Time to now() 2024-02-06 15:28:55 +08:00
c9s
7e5d25a7e0
binance: implement GetDepthRequest with requestgen 2024-02-06 15:28:55 +08:00
c9s
24952581fe
Merge pull request #1526 from c9s/c9s/simplify-booksignal-struct
FIX: simplify booksignal struct
2024-02-06 13:02:25 +08:00
bailantaotao
1c98e603b1
Merge pull request #1525 from c9s/edwin/binance-update-api-changes-3
FEATURE: [binance] add margin request
2024-02-06 10:02:38 +08:00
edwin
836f1f9490 pkg/exchange: use fixedpoint as value 2024-02-06 09:37:04 +08:00
c9s
24e465e5b6
binance: fix parser parsebytes 2024-02-06 00:36:49 +08:00
c9s
eea4c43619
binance: use predecl return vars 2024-02-06 00:36:49 +08:00
c9s
75a2abeeab
max: reduce kline parsing cost 2024-02-06 00:36:49 +08:00
c9s
f64b0e7a9f
binance: pre-allocate PriceVolumeSlice memory 2024-02-06 00:36:48 +08:00
c9s
2ec01e3d28
binance: use fastjson parser pool 2024-02-06 00:36:48 +08:00
edwin
54784f8c54 pkg/exchange: rm timestamp 2024-02-05 17:02:46 +08:00
edwin
c73fc65c6d pkg/exchange: add margin transfer request 2024-02-05 17:00:57 +08:00
c9s
565cdef54f
Merge pull request #1524 from c9s/edwin/binance-update-api-changes-2
MINOR: [binance] update borrow/repay api changes
2024-02-05 15:08:44 +08:00
edwin
f77d03d270 pkg/exchange: update borrow/repay api changes 2024-02-05 12:11:36 +08:00
c9s
aad3f89492
Merge pull request #1523 from c9s/edwin/binance/update-api-changes
MAJOR: [binance] replace margin/transfer to asset/transfer
2024-02-05 11:42:25 +08:00
edwin
b6717f2fcf pkg/exchange: replace /sapi/v1/margin/transfer to /sapi/v1/asset/transfer 2024-02-05 11:18:40 +08:00
edwin
3846b2aead pkg/exchange: add response validation func 2024-02-01 14:40:59 +08:00
Edwin
f0ad014837 pkg/exchange: support kline subscriptions 2024-01-30 12:17:50 +08:00
Edwin
429036985c pkg/exchange: add new kline stream 2024-01-30 10:23:10 +08:00
Edwin
d2b45f5d58 pkg/exchange: refactor kline api 2024-01-29 20:59:53 +08:00
c9s
c1484771ea
binance: make the error message clear 2024-01-24 18:22:35 +08:00
c9s
3aa6b0c13c
max: remove unused parseBookEntries function 2024-01-24 17:56:04 +08:00
c9s
18ccc78d83
binance: apply DefaultDepthLimit to 5000 2024-01-24 17:53:04 +08:00
c9s
07eb723da4
binance: support more depth level 2024-01-24 17:51:02 +08:00
c9s
6cf5300650
max: preallocate fastjson array object var memory 2024-01-24 16:58:42 +08:00
c9s
e67155d6cc
max: optimize book parsing 2024-01-24 16:58:42 +08:00
c9s
fcd367b8c2
max: pre-allocate price volume slice memory 2024-01-24 16:58:42 +08:00
c9s
e6f911380d
max: set max websocket book default level 2024-01-24 13:52:49 +08:00
Edwin
7841813fe0 pkg/exchange: fix okx query open order time param 2024-01-23 14:26:40 +08:00
Edwin
ac649b3bd4 pkg/exchange: add cash trade mode to place order req 2024-01-18 14:13:38 +08:00
bailantaotao
8ceadd80f3
Merge pull request #1504 from c9s/edwin/okx/implement-ping-interval
FEATURE: [okx] set ping interval
2024-01-18 09:17:08 +08:00
bailantaotao
62c19b4d99
Merge pull request #1502 from c9s/edwin/okx/order-trade-event
REFACTOR: [okx] refactor order trade event by json.Unmarshal
2024-01-17 16:20:17 +08:00
Edwin
80d8c000bc pkg/exchange: set ping interval 2024-01-17 15:58:54 +08:00
Edwin
c5d2047605 pkg/exchange: emit balance snapshot after authed 2024-01-17 14:15:44 +08:00
Edwin
91913f021c pkg/exchange: refactor order trade event by json.Unmarshal 2024-01-16 15:36:51 +08:00
Edwin
11506fb605 pkg/exchange: fix queryTrades and queryOrderTrade api 2024-01-16 09:10:33 +08:00
Edwin
fa145a3622 pkg/exchange: refactor query closed order 2024-01-15 11:41:17 +08:00
Edwin
b352ae855f pkg/exchange: add query open orders 2024-01-14 15:52:54 +08:00
c9s
c01be14c70
max: remove unused var 2024-01-11 15:20:38 +08:00
c9s
68be0badca
max: improve depth parsing speed 2024-01-11 15:20:19 +08:00
c9s
905148a34f
maxapi: use fastjson parser pool 2024-01-11 15:20:06 +08:00
Edwin
373242d306 pkg/exchange: generate cancel order by requestgen 2024-01-11 11:29:04 +08:00
bailantaotao
8eb555619f
Merge pull request #1494 from c9s/edwin/okx/place-order
FEATURE: [okx] generate place order request by requestgen
2024-01-11 10:33:31 +08:00
Edwin
260eef3b0c pkg/exchange: generate place order request by requestgen 2024-01-10 16:17:13 +08:00
Edwin
a7aa34c396 pkg/exchange: add comment 2024-01-10 14:07:25 +08:00
Edwin
1dedd32f42 pkg/exchange: support unsubscribe and resubscribe 2024-01-10 13:56:17 +08:00
Edwin
9297293a46 pkg/exchange: refactor query account balance 2024-01-09 15:59:05 +08:00
Edwin
a463c02183 pkg/exchange: generate account by requestgen 2024-01-09 15:58:42 +08:00
bailantaotao
c2e3fed6d3
Merge pull request #1492 from c9s/edwin/okx/refactor-tickers
FEATURE: [okx] generate ticker request by requestgen
2024-01-09 15:38:28 +08:00
bailantaotao
0bf1e4ed59
Merge pull request #1489 from c9s/edwin/okx/refactor-account-info
REFACTOR: [okx] refactor account info
2024-01-09 14:45:17 +08:00
Edwin
188b781116 pkg/exchange: add rate limiter to ticker/tickers 2024-01-09 13:57:19 +08:00
Edwin
6d7a01ffae pkg/exchange: generate ticker request by requestgen 2024-01-09 13:57:03 +08:00
Edwin
caef31d760 pkg/exchange: early return if error 2024-01-09 11:58:43 +08:00
Edwin
6e160e7a36 pkg/exchange: add rate limiter to QueryMarkets 2024-01-09 11:56:10 +08:00
Edwin
ba5882f7b6 pkg/exchange: generate instrument request by requestgen 2024-01-09 11:55:49 +08:00
Edwin
147b31d81d pkg/exchange: refactor account stream 2024-01-09 10:59:35 +08:00
bailantaotao
a680df2938
Merge pull request #1486 from c9s/edwin/okx/add-market-trade-stream
FEATURE: [okx] support market trade streaming
2024-01-09 10:58:24 +08:00
Edwin
2e34f7840a pkg/exchange: support market trade streaming 2024-01-08 21:27:26 +08:00
c9s
11309ac8c8
Merge pull request #1487 from c9s/c9s/bitget-ignore-offline-symbols
FIX: [bitget] ignore offline symbols
2024-01-08 18:19:01 +08:00
c9s
e358da10dd
bitget: log symbol status 2024-01-08 18:13:26 +08:00
c9s
cfe3b6466c
update bitget v2 get_symbols_request_requestgen 2024-01-08 17:47:52 +08:00
c9s
33deaea6e5
bitget: bitget ignore offline symbols 2024-01-08 17:46:09 +08:00
Edwin
0b906606fe pkg/exchange: refactor book and kline 2024-01-08 10:30:11 +08:00
c9s
6e03626b36
Merge pull request #1476 from c9s/edwin/okx/add-streaming-test
CHORE: [okex] add stream test for book
2024-01-03 16:37:12 +08:00
bailantaotao
769d3ce2d8
Merge pull request #1456 from c9s/edwin/bitget/get-account-assets
FEATURE: [bitget] get account assets
2024-01-03 13:01:35 +08:00
Edwin
b5ff066aa2 pkg/exchange: print symbol 2024-01-03 11:30:50 +08:00
Edwin
30164acdcf pkg/exchange: use v2 get account asset api 2024-01-03 11:25:46 +08:00
Edwin
9ad94aa7e0 pkg/exchange: add stream test for book 2024-01-02 12:02:33 +08:00
chiahung.lin
bfd9c8ac64 FEATURE: run state machine
FEATURE: support recover

FEATURE: add order into orderStore and recover position

recover position/budget

FEATURE: support recover budget
2023-12-20 16:02:37 +08:00
c9s
841229518a
bitget: add more debug logs for orderEvent and tradeEvent 2023-12-18 16:31:04 +08:00
c9s
038d180711
bitget: check bitget websocket trade id and order status 2023-12-18 14:44:33 +08:00
Edwin
c5decf9bf8 pkg/exchange: support v2 get asset api 2023-12-18 12:17:49 +08:00
c9s
2c7e42922b
Merge pull request #1429 from c9s/edwin/bybit/get-fee-rate-on-private-stream-only 2023-12-13 18:50:19 +08:00
Edwin
29550f0013 pkg/exchange: we don't need the fee rate in the public stream 2023-12-13 13:53:58 +08:00
c9s
6cbb17fb76
all: refactor log formatter functions 2023-12-13 09:47:18 +08:00
c9s
f3ce4c2cc6
bitget: refactor debug function tool 2023-12-13 09:28:34 +08:00
c9s
b022a6119f
bitget: add bitget log prefix 2023-12-13 09:28:34 +08:00
Edwin
c2724c4f62 pkg/exchange: fix price is zero when order not executed 2023-12-12 17:30:51 +08:00
c9s
c5282a8f9b
bitget: add more debug logs 2023-12-12 16:37:43 +08:00
c9s
b9c4002704
bitget: handle order type limit maker 2023-12-08 15:18:34 +08:00
c9s
214f9fe75e
bitget: improve bitget websocket depth subscription 2023-12-07 17:38:57 +08:00
c9s
96f6f9e0d0
exchange/retry: add QueryOrderUntilCancelled 2023-12-07 16:18:23 +08:00
chiahung.lin
c67737a6d6 use retry package 2023-12-06 16:16:17 +08:00
chiahung.lin
c906d6a74d rename variable 2023-12-06 11:27:06 +08:00
chiahung.lin
d54b7365dd FEATURE: use types.OrderMap to avoid missing and duplicated orders 2023-12-05 20:10:37 +08:00
chiahung
a1d98e25c6 FEATURE: use max v3 new open orders api 2023-12-05 19:57:00 +08:00
chiahung.lin
165e788c3d fix 2023-12-05 16:59:26 +08:00
chiahung.lin
9fab37a284 use getLaunchDate 2023-12-05 15:34:31 +08:00
chiahung.lin
21c037a877 FIX: fix list closed orders api limit 2023-12-04 20:01:54 +08:00
chiahung.lin
800148b271 remain only template part 2023-11-23 16:45:28 +08:00
kbearXD
9722c3eb49
Merge pull request #1421 from c9s/feature/maxapi/get-closed-orders
FEATURE: use new max v3 api to query closed orders by timestamp
2023-11-23 12:46:30 +08:00
Edwin
87d763598f pkg/exchange: use backoff retry 2023-11-21 18:01:21 +08:00
Edwin
51718b6eb2 pkg/exchnage: add log rate limiter to stream event 2023-11-21 18:01:18 +08:00
chiahung
7cb8da08cd use asc as order by to query closed orders 2023-11-21 17:14:33 +08:00
c9s
c360c6045c
bbgo: call retry.QueryAccountUntilSuccessful in the startup time 2023-11-20 16:20:39 +08:00
chiahung.lin
ce76ad3c03 use OrderByType 2023-11-20 15:32:04 +08:00
c9s
5795a71111
binance,max: store original order status into the order struct 2023-11-17 17:14:52 +08:00
c9s
3cfc810f8d
max: group the request building statement 2023-11-17 16:57:47 +08:00
c9s
f223703247
max: force type check on max.Exchange 2023-11-17 16:57:47 +08:00
chiahung.lin
592cdede66 FEATURE: use new max v3 api to query closed orders by timestamp 2023-11-17 16:21:20 +08:00
Edwin
4f224c1c2a *: fix comments 2023-11-17 12:24:04 +08:00
Edwin
5eb1ddb49a pkg/exchange: fix out-of-index 2023-11-16 13:33:42 +08:00
Edwin
93f8b79b69 pkg/exchange: use GTC if time-in-force empty 2023-11-16 13:33:17 +08:00
Edwin
6d39c9a5d1 pkg/exchange: use the now - 90 days instead of return err if since is 90 days earlier 2023-11-15 22:22:55 +08:00
Edwin
687ffe985c pkg/exchange: use time.Time instead of int64 to represent time 2023-11-15 22:20:26 +08:00
Edwin
cf527a6f05 pkg/exchange: make the CTime and UTime to qualified name 2023-11-15 17:16:07 +08:00
Edwin
4f94f7acc0 pkg/exchange: implement order trade user stream 2023-11-15 17:16:05 +08:00
bailantaotao
580c6d2030
Merge pull request #1417 from c9s/edwin/skip-ping-pong-event
REFACTOR: [stream] skip pong event on emitting raw message
2023-11-14 20:49:13 +08:00
bailantaotao
43c50b46a6
Merge pull request #1415 from c9s/edwin/bitget/use-v2-tickers
FEATURE: [bitget] use v2 tickers
2023-11-14 20:48:52 +08:00
Edwin
562f85af75 pkg/exchange: rename v2Client -> v2client 2023-11-14 20:42:11 +08:00
Edwin
5808e0184b pkg/types: skip pong event on emitting raw message 2023-11-14 20:41:07 +08:00
bailantaotao
8ca8e4c946
Merge pull request #1416 from c9s/edwin/bitget/add-restful-api-validator
FEATURE: [bitget] add response validator
2023-11-14 20:38:15 +08:00
Edwin
53bce6d5c1 pkg/exchange: use v2 query ticker 2023-11-14 15:40:45 +08:00
Edwin
737f2fc86d pkg/exchange: add response validator 2023-11-14 15:26:07 +08:00
Edwin
5e5b8e1388 pkg/exchange: use v2 symbols 2023-11-14 14:35:16 +08:00
Edwin
eb04eaeea4 pkg/exchange: types.kline end time should -1 time.Millisecond 2023-11-14 14:21:31 +08:00
Edwin
755ea5e427 pkg/exchange: implement query kline api 2023-11-14 14:21:29 +08:00
bailantaotao
784030821e
Merge pull request #1406 from c9s/edwin/bitget/add-balance-event
FEATURE: [bitget]add balance event
2023-11-14 11:12:41 +08:00
bailantaotao
594ad89c67
Merge pull request #1409 from c9s/edwin/bybit/pint-log
CHORE: [bybit] print fee rate log
2023-11-13 12:28:55 +08:00
Edwin
ef280077cd pkg/exchange: print fee rate log 2023-11-13 11:53:41 +08:00
c9s
38507f4dd1
bitget: add channel api code 2023-11-11 07:59:44 +08:00
Edwin
f49b14ac45 pkg/exchange: add balance event 2023-11-10 22:35:39 +08:00
Edwin
6c96d12d99 pkg/exchange: add login method 2023-11-10 21:56:18 +08:00
Edwin
639947c8b7 pkg/exchange: support cancel order 2023-11-10 16:41:42 +08:00
Edwin
a26b158230 pkg/exchange: support query trades 2023-11-10 16:31:15 +08:00
bailantaotao
58a810ecc9
Merge pull request #1399 from c9s/edwin/bitget/submit-orders
FEATURE: [bitget] support submit order
2023-11-10 16:02:59 +08:00