Commit Graph

327 Commits

Author SHA1 Message Date
c9s
cc0e5f71b0 clean up binance stream 2022-01-02 12:02:36 +08:00
c9s
85c14e5966 binance: fix parser tests 2022-01-02 02:44:47 +08:00
c9s
dcea623264 binance: change listen key update interval to 10 minutes 2022-01-02 02:41:58 +08:00
c9s
9d382a6b8c binance: use sync.Once to protect the set server time calls 2022-01-02 02:14:04 +08:00
c9s
f4bfd8cc6b all: move Reconnector to standard stream 2022-01-02 02:08:34 +08:00
c9s
6f6dac611e refactor websocket stream into standard websocket stream 2022-01-02 01:54:47 +08:00
austin362667
9483a0d10d binance: modify methods for registering callbacks 2021-12-31 00:11:47 +08:00
austin362667
65d37c1983 binance: add futures stream 2021-12-31 00:08:27 +08:00
austin362667
5cc768031e binance: add FuturesPosition conversion 2021-12-31 00:08:27 +08:00
c9s
3c2704c4ae add binance.us support 2021-12-30 23:46:43 +08:00
c9s
cfc66dc13e bbgo: add session connection notification 2021-12-30 17:18:04 +08:00
c9s
8995ce2824 binance: adjust timeout 2021-12-30 16:51:30 +08:00
c9s
890fb5327a rename StreamRequest to WebSocketCommand 2021-12-30 16:49:07 +08:00
c9s
35e0b1d146 binance: fix binance stream graceful shutdown 2021-12-30 16:47:39 +08:00
c9s
ff87fb007e binance: pull out dispatchEvent 2021-12-30 16:30:02 +08:00
c9s
bae7df806f binance: pull out getEndpointUrl 2021-12-30 16:22:29 +08:00
c9s
d72d57526c binance: add DEBUG_BINANCE_STREAM env var 2021-12-30 16:20:32 +08:00
c9s
a2931da92c move math rand 2021-12-30 16:18:32 +08:00
c9s
e73866a232 tmp 2021-12-30 16:17:26 +08:00
c9s
3b9a191c95 binance: refactor binance stream handlers 2021-12-30 14:02:36 +08:00
c9s
8f97ee7787 binance: add isolated margin flag 2021-12-29 17:36:08 +08:00
c9s
2ef4d713f8 binance: fix margin order cancel 2021-12-29 17:35:27 +08:00
c9s
1a820936c4 binance: change log level from info to debug 2021-12-29 17:30:04 +08:00
c9s
6030a62cf0 change to debug level message 2021-12-29 17:28:45 +08:00
c9s
b637d46c83 adjust keep alive interval 2021-12-29 17:27:37 +08:00
c9s
eec699cbc9 binance: adjust timeout and interval 2021-12-29 15:25:59 +08:00
austin362667
d691bfa106 binance: add futures parser 2021-12-28 06:26:27 +08:00
c9s
50fac9d491 kucoin: pull out queryDepth method to exchange 2021-12-25 23:53:34 +08:00
Yo-An Lin
8aa2ae1b32
Merge pull request #397 from austin362667/refactor/futures-account
binance: add futures related conversion
2021-12-25 23:17:27 +08:00
c9s
f0d4236169 all: fix and improve kucoin orderbook stream 2021-12-25 19:34:27 +08:00
c9s
3d1ca46c77 depth: remove updates assertion 2021-12-25 02:14:49 +08:00
c9s
217499528d binance: refactor binance depthBuffer with depth query 2021-12-25 02:14:49 +08:00
c9s
7e7115b18f replace binance.depthFrame with the extracted depth.Buffer 2021-12-25 02:14:49 +08:00
austin362667
ba972e4058 binance: add futures related conversion
binance: remove comments
2021-12-24 01:38:10 +08:00
c9s
c4838f5631 binance: fix depth event conversion 2021-12-23 23:55:13 +08:00
c9s
fdc5d6a54e binance: use types.PriceVolumeSlice for depth entry 2021-12-23 23:55:02 +08:00
c9s
dae104cf9f binance: optimize depth parsing 2021-12-23 23:54:43 +08:00
c9s
2adce6dd00 binance: return the pre-allocated err object when parsing 2021-12-23 23:54:26 +08:00
c9s
168e6306e7 binance: remove verbose log 2021-12-23 22:29:14 +08:00
c9s
562c287a4e all: move publicOnly to StandardStream 2021-12-23 17:49:18 +08:00
c9s
cfd68fdd1d all: change trade id to uint64 2021-12-23 17:49:18 +08:00
TonyQ
d7ac645253 exchange: update maskkey handling 2021-12-23 01:18:36 +08:00
TonyQ
16862e7208 exchange/stream : implement booktickerupdate event for ftx and
binance
2021-12-22 21:01:11 +08:00
c9s
bace225470 binance: fix, call set time service only when key and secret is given 2021-12-22 01:27:25 +08:00
TonyQ
3e45035ab1 database: sqlite3 issue fix
database: upgrade gosqllite3 version for increasing variable amount limit
	types: update kline starttime/endtime field to prevent sqlite3
	time parsing issue.

	fix #215
2021-12-15 14:34:31 +08:00
Yo-An Lin
05323f211f Merge pull request #368 from tony1223/feature/355-update-sync
backtest : auto sync
2021-12-15 01:39:19 +08:00
austin362667
ccd607ba28 binance: remove unsupported comments 2021-12-15 01:01:05 +08:00
austin362667
7f96fa8dde binance: add multierr 2021-12-15 01:01:05 +08:00
austin362667
bb592663ab binance: removed unsupport isolated futures trade 2021-12-15 01:01:05 +08:00
austin362667
a0130affe4 binance: add query orders & trades 2021-12-15 01:01:05 +08:00
TonyQ
20b03fe4a5 exchange: fix ftx for wrong last kline issue 2021-12-15 00:07:54 +08:00
austin362667
839bb6d0e8 binance: remove comments cuz not support isolated futures 2021-12-14 20:41:55 +08:00
austin362667
d3526b2c71 binance: add SubmitFuturesOrder and related conversions 2021-12-13 23:19:14 +08:00
austin362667
04919e0fa4 binance: add futures exchange stream connection 2021-12-12 15:40:03 +08:00
austin362667
8ca60cec10 binance: add user stream event parser & toGlobalType converter 2021-12-12 15:39:06 +08:00
c9s
ca85aa69e6 pull out global premium index type and funding rate type 2021-12-09 00:10:18 +08:00
c9s
71e043e4b2 move convertPremiumIndex to convert.go 2021-12-09 00:08:25 +08:00
c9s
fbae368e6c make getLaunchDate as a simple function 2021-12-09 00:06:46 +08:00
c9s
078c79d73f binance: refactor QueryMarkets 2021-12-09 00:05:36 +08:00
c9s
48612e2b13 reformat import lines and add fixme note 2021-12-09 00:01:33 +08:00
c9s
35da3ba3a0 check env vars for query related tests 2021-12-05 01:11:47 +08:00
c9s
715363298f fix query ticker tests 2021-12-05 00:58:01 +08:00
c9s
4bde40f2db override binance default http client timeout instead of zero timeout 2021-11-23 10:54:43 +08:00
Austin
c5d1a70a61 add Continuous Contract Kline/Candlestick Streams 2021-11-16 14:26:27 +08:00
Austin
a36739f119 add MarkPriceUpdateEvent 2021-11-16 01:24:36 +08:00
c9s
aceca1b49f adjust listen key keep alive to 30 min 2021-11-07 23:40:13 +08:00
c9s
a2c2646a16 binance: adjust rate limiter bucket 2021-11-05 01:25:16 +08:00
c9s
82d859a43d binance: fix binance order rate limiter 2021-11-05 01:21:58 +08:00
c9s
1a861c98a1 binance: add order rate limiter for binance 2021-11-04 12:50:32 +08:00
c9s
6cb593cd90 techsignal: use realtime funding rate 2021-10-20 14:01:19 +08:00
c9s
16fca0150d implement futures PremiumIndex support 2021-10-19 15:54:16 +08:00
c9s
1e6692ec8d rename funding rate query method name 2021-10-19 15:29:55 +08:00
c9s
e3431ef970 binance: fix binance order type for limit maker 2021-10-18 00:41:41 +08:00
c9s
4523135012 techsignal: add funding rate checker 2021-10-14 23:01:10 +08:00
c9s
7016d24fad import types.FuturesSettings into binance exchange 2021-10-07 21:29:52 +08:00
c9s
b6fff482a4 binance: fix withdrawal time parsing 2021-09-03 14:21:59 +08:00
c9s
35ec9ae7b6 binance: fix binance withdrawal api 2021-09-02 00:27:57 +08:00
c9s
f177860450 binance: fix withdrawal service 2021-09-02 00:21:56 +08:00
c9s
0df26e0570 binance: adjust listen key keep alive to 20 minutes 2021-06-09 01:37:19 +08:00
c9s
457ca79517 binance: for network error, we should retry the request 2021-06-09 01:37:14 +08:00
c9s
ec6c10a96a binance: adjust read timeout and increase read buffer size 2021-06-09 01:36:06 +08:00
c9s
f487b53d9e binance: fix client order id checking 2021-06-07 01:07:00 +08:00
c9s
5fd0ab4cd3 skip client order id when no client order is given 2021-06-07 01:03:21 +08:00
c9s
b9584117d6 add QueryLastFundingRate api to binance exchange 2021-06-01 03:15:19 +08:00
c9s
b5c4fc3e4e fix kline record insert fields 2021-06-01 01:39:23 +08:00
c9s
bf73def701 binance: embed fixedpoint.Value into binance Balance struct 2021-06-01 01:39:22 +08:00
c9s
e3473572e9 types: add TakerBuyBaseAssetVolume and TakerBuyQuoteAssetVolume fields to kline 2021-06-01 01:39:22 +08:00
c9s
2925a77815 binance: use fixedpoint.Value for parsing floating number string 2021-06-01 01:39:22 +08:00
c9s
7ff4051c61 binance: fix websocket handshake 2021-05-30 18:20:14 +08:00
c9s
0b935eff4f fix connection lock call 2021-05-30 18:14:22 +08:00
c9s
d112dbb1a4 binance: check connCancel only when new context is allocated 2021-05-30 15:53:01 +08:00
c9s
f9d4068145 binance: pull out listen key from stream and reduce critical section 2021-05-30 15:51:25 +08:00
c9s
1a05f6fbd4 okex: pull read timeout and adjust to 30 seconds 2021-05-30 00:32:06 +08:00
c9s
d962dbe542 adjust read timeout 2021-05-29 20:40:47 +08:00
c9s
e11553139e binance: make convert functions private 2021-05-29 00:26:39 +08:00
c9s
f49490f986 fix websocket ping/pong issue 2021-05-28 23:34:21 +08:00
c9s
002b28f75a okex: implement candlestick api and improve kline console format 2021-05-28 20:51:10 +08:00
c9s
6407eab9c1 okex: convert order details into trades and orders 2021-05-28 02:21:35 +08:00
c9s
2844b7c3a7 okex: add kline command for testing kline data 2021-05-27 18:35:34 +08:00
c9s
18045bb1e7 Move ReconnectC to the StandardStream 2021-05-27 14:42:14 +08:00
c9s
016c60796d pull out BNB currency string 2021-05-27 00:05:43 +08:00
c9s
ea78c0308b add LocalSymbol field for exchange specific symbol 2021-05-27 00:05:43 +08:00
c9s
8842208441 okex: add market ticker api support 2021-05-27 00:05:43 +08:00
c9s
967c7e9f9d xbalance: add withdrawal options 2021-05-26 23:24:05 +08:00
zenix
698ec9911f Fix error formating on depth load fail 2021-05-26 00:57:35 +00:00
c9s
9c331063f4 improve depth error messages 2021-05-26 01:31:58 +08:00
c9s
06e982124b fix depth reset 2021-05-26 01:27:42 +08:00
c9s
07ded04a9b fix depth reset 2021-05-26 01:20:24 +08:00
c9s
44ff833c91 binance: buffer depth events 2021-05-26 01:05:12 +08:00
c9s
edeaa597f1 fix loadDepthSnapshot mutex lock issue 2021-05-26 00:58:40 +08:00
c9s
47bf7a1e03 remove time sleep for depthframe 2021-05-26 00:58:40 +08:00
c9s
686dcef2c5 binance: fix depth snapshot buffering 2021-05-25 21:36:14 +08:00
c9s
d3f06bc9d7 fix binance depth stream buffering 2021-05-25 19:13:10 +08:00
c9s
56b2c8845b fix preorder, postorder and inorder 2021-05-22 11:36:58 +08:00
c9s
57a78777df move Time type to types.Time 2021-05-21 00:10:53 +08:00
c9s
e95429bbc3 binance: save newer events for later usage 2021-05-19 01:02:41 +08:00
c9s
2fddc9166f show bid/ask volume in the message 2021-05-19 00:41:34 +08:00
c9s
e636a5008d replace Exchange field type with ExchangeName 2021-05-16 17:02:23 +08:00
c9s
5c10f8a4e2 binance: call set server time service 2021-05-16 15:03:31 +08:00
Lee
d1cef15f75 Fix: Correct the Order FILLED event on binance 2021-05-13 00:41:23 +08:00
Lee
b0e71e4258 Fix: Correct the binance executionReport parser
Let JSON parse to be explicit for prevent Unmarshal case-insensitive issue
2021-05-12 18:45:16 +08:00
c9s
fd6fe56f32 implement withdrawal request on binance 2021-05-12 02:15:22 +08:00
c9s
d85037f9ea add binance kline query documentation 2021-05-05 16:23:46 +08:00
c9s
8fea2022e5 adjust rate limit for backtest data syncing 2021-05-02 17:46:08 +08:00
c9s
5d2296eddd extract client order id generation 2021-04-28 19:20:55 +08:00
zenix
2bda296194 Fix: upgrade binance api, fix go fmt, add hard start time for binance to reduce sync execution time 2021-04-21 19:50:33 +09:00
Wei-Ning Huang
e7961be86a binance: set TimeInForce to GTC by default for limit orders
Binance does not allow submitting order without TimeInForce set for
certain order types. Set TimeInforce to GTC (Good-Til-Cancel) by
default.
2021-04-14 09:49:03 +08:00
c9s
8122fddd02 add exchange field to binance trades and binance orders 2021-03-24 17:51:19 +08:00
c9s
a52101b163 remove bps from the fee calc 2021-03-20 22:53:14 +08:00
ycdesu
c8447663db refactor: use fixedpoint to store fee 2021-03-19 08:49:24 +08:00
ycdesu
83ae943a4f ftx: calculate commission 2021-03-18 23:58:28 +08:00
c9s
2f7c7d344b move emitStart method call into the stream Connect method 2021-03-16 01:32:27 +08:00
c9s
c95e712420 binance: emit disconnect 2021-03-15 17:48:16 +08:00
c9s
61a19cbfb4 align fields and tags 2021-03-15 17:31:07 +08:00
c9s
ab6b56d91e fix taker volume parsing 2021-03-15 15:37:53 +08:00
c9s
4d3b1ec938 fix QueryWithdrawHistory and QueryDepositHistory 2021-03-14 11:18:22 +08:00
c9s
3f0290479b binance: update withdraw and deposit types 2021-03-14 11:18:22 +08:00
c9s
3e616c5fac convert and parse binance margin account structure 2021-02-28 15:06:20 +08:00
c9s
32c2780b16 convert binance margin account data into the global structure 2021-02-28 15:06:20 +08:00
c9s
65ff2894c5 binance: calculate quote quantity manually if it's not defined 2021-02-18 18:24:00 +08:00
c9s
3a89b0a714 improve trade sync 2021-02-18 18:20:18 +08:00
c9s
0ba595bd55 Fix trade sync for self trades
MAX uses one single trade for presenting self trade.

BINANCE uses two trade records for presenting self trade. the trade
creation time are the same.
2021-02-18 17:37:49 +08:00
c9s
c3dbb1b204 avoid using last trade id for syncing data 2021-02-18 16:40:47 +08:00
c9s
29bbd03836 add binance single ticker query method and fix quantity formating 2021-02-18 16:17:40 +08:00
c9s
f7ef91b55c binance: set the default ping handler 2021-02-11 08:13:50 +08:00
c9s
ffa001fc29 fix quantity format 2021-02-11 00:21:56 +08:00
ycchen
7a67083fbe Address review feedbacks 2021-02-07 22:58:30 +01:00
ycchen
288f7257eb fix testcases 2021-02-06 19:39:43 +01:00
ycchen
5fed7b81de QueryTicker 2021-02-06 18:35:23 +01:00
ycchen
fa20df487e feat: ticker api for types.Exchange 2021-02-06 14:05:26 +01:00