Commit Graph

535 Commits

Author SHA1 Message Date
c9s
50b79cb742 implement ListSymbols api 2021-12-11 18:33:30 +08:00
c9s
be7e9f551a add GetAccount api 2021-12-11 18:33:30 +08:00
c9s
c8ba3f7c1b kucoin: add query accounts api 2021-12-11 18:33:30 +08:00
c9s
cd69994647 kucoin: implement api client 2021-12-11 18:33:30 +08:00
Yo-An Lin
0cf72de21d Merge pull request #335 from tony1223/bug/334-ftx-ratelimit
ftx : fix #334 rate limit
2021-12-10 23:24:42 +08:00
TonyQ
5259bba5fe ftx : fix #334 rate limit 2021-12-10 23:08:26 +08:00
c9s
fe9b604d79 update ftx market mapping 2021-12-09 15:57:44 +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
2223ef088c add ftx, okex to the public exchange factory for backtest 2021-12-08 23:27:01 +08:00
TonyQ
3dff1acd79 finetune ftx for #318 2021-12-08 19:36:37 +08:00
c9s
35da3ba3a0 check env vars for query related tests 2021-12-05 01:11:47 +08:00
c9s
062f9243c6 max: fix query ticker tests 2021-12-05 01:08:50 +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
Jui-Nan Lin
feca628319 fix(ftx): array length should > 0 2021-09-03 15:38:02 +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
zebra
2e1400d594 add transfer function 2021-08-07 15:30:51 +08:00
sincoew
4f2b1d975a fix type change on max api 2021-07-15 17:51:14 +08:00
c9s
a8048703b3 max: fix order delete refurl 2021-06-27 11:33:00 +08:00
c9s
3fdcf466bf max: set reqcount for nonce by default 1 2021-06-27 11:32:54 +08:00
c9s
fd2928fc82 types: add maker/taker fee rate fields to the account struct 2021-06-16 13:04:23 +08:00
c9s
657e1dc9bf maxapi: pre-parse relative url and cache them 2021-06-16 13:04:05 +08:00
c9s
cbd0180939 maxapi: remove extra user agent header 2021-06-16 13:04:05 +08:00
c9s
16e5e08d58 maxapi: fix dump request error check 2021-06-16 13:04:05 +08:00
c9s
48c84824cf maxapi: volume, side, market is always required for creating orders 2021-06-16 13:04:05 +08:00
c9s
2da633c221 maxapi: add HTTP_TRANSPORT_IDLE_CONN_TIMEOUT env var for override 2021-06-16 13:04:05 +08:00
c9s
7c5b676366 maxapi: create an isolated http transport rather than the default one 2021-06-16 13:04:05 +08:00
c9s
684232041c maxapi: load http transport settings from env vars 2021-06-16 13:04:05 +08:00
c9s
b31b830b2b max: add request dump for debugging request 2021-06-16 13:03:45 +08:00
c9s
8c3992d514 max: no need to check order volume separately 2021-06-16 13:02:21 +08:00
c9s
fdf1ee9258 max: use precision -1 to trim zeros 2021-06-16 13:02:21 +08:00
c9s
a8eda62a8d max: set debug vars from env vars 2021-06-16 13:02:21 +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
291fdbaf25 optimize max submit order api priority 2021-06-07 01:03:09 +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
Jui-Nan Lin
7abd7225e1 fix(ftx): klines should not be empty 2021-05-31 22:56:26 +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
Yo-An Lin
406f592963 Merge pull request #258 from c9s/feature/okex
feature: add okex exchange user data stream and public stream
2021-05-30 16:21:12 +08:00
c9s
8d12c9262f okex: move connection context cancel calls 2021-05-30 15:54:31 +08:00
c9s
d6bd33a682 okex: remove unused code 2021-05-30 15:53:43 +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
426a6157af okex: fix ping connection lock 2021-05-29 00:27:28 +08:00
c9s
64b9c78a5b okex: fix order detail segmentation 2021-05-29 00:27:05 +08:00
c9s
2a5ef30135 add ping worker to max 2021-05-29 00:26:53 +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
b430128ba1 okex: fix okex order cancellation 2021-05-28 03:05:59 +08:00
c9s
29304d14ba okex: implement submit orders and cancel order api 2021-05-28 02:45:09 +08:00
c9s
6407eab9c1 okex: convert order details into trades and orders 2021-05-28 02:21:35 +08:00
c9s
19b700dfba okex: parse and convert account information 2021-05-28 01:14:11 +08:00
c9s
777701c0cb add userdatastream cmd for testing private stream 2021-05-28 00:47:34 +08:00
c9s
545d0f18e3 okex: handle kline close event 2021-05-27 18:43:42 +08:00
c9s
2844b7c3a7 okex: add kline command for testing kline data 2021-05-27 18:35:34 +08:00
c9s
76048633cc okex: support websocket candle data 2021-05-27 17:55:23 +08:00
c9s
4fdd9d5097 okex: convert interval to candle types 2021-05-27 17:40:24 +08:00
c9s
1d400e281c okex: convert book data to book snapshot and book update 2021-05-27 16:01:15 +08:00
c9s
884e764fe7 okex: order book parsing 2021-05-27 15:48:51 +08:00
c9s
03431da00c okex: remove private dial method 2021-05-27 15:16:01 +08:00
c9s
f4f4304df6 move Dial method to StandardStream 2021-05-27 15:14:58 +08:00
c9s
7d62a7634b set market data stream to public 2021-05-27 15:11:44 +08:00
c9s
18045bb1e7 Move ReconnectC to the StandardStream 2021-05-27 14:42:14 +08:00
Yo-An Lin
7804415873 Merge pull request #254 from c9s/feature/okex
feature: add okex exchange
2021-05-27 01:28:41 +08:00
Yo-An Lin
930467d9c6 Merge pull request #257 from jnlin/ftx/symbol-map
feat(ftx): use go generate to build symbol map
2021-05-27 01:28:10 +08:00
c9s
8c50ce725c add stream callbacks 2021-05-27 01:07:38 +08:00
c9s
2538824661 okex: implement basic stream 2021-05-27 01:07:25 +08:00
c9s
2381df5009 add okex to the exchange factory 2021-05-27 00:35:51 +08:00
c9s
18daf54500 ftx: add LocalSymbol to test 2021-05-27 00:27:46 +08:00
c9s
5becfb99e6 okex: implement query account balance 2021-05-27 00:24:16 +08:00
c9s
859eaf3c2a okex: add trade service function skeletons 2021-05-27 00:05:43 +08:00
c9s
c6c353b29a okex: implement QueryTickers 2021-05-27 00:05:43 +08:00
c9s
c9aa0df054 gensymbols to generate spot symbol map 2021-05-27 00:05:43 +08:00
c9s
d8c6545d2d okex: implement query ticker 2021-05-27 00:05:43 +08:00
c9s
3511bcf13f okex: move go generate to the convert file 2021-05-27 00:05:43 +08:00
c9s
364e6fc990 okex: add local symbol convert function 2021-05-27 00:05:43 +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
97b377da0a okex: implement query markets 2021-05-27 00:05:43 +08:00
c9s
4ded82c94e pull out types.Exchange interfaces to make it minimal 2021-05-27 00:05:43 +08:00
c9s
c8cb75cabc add funding rate api support 2021-05-27 00:05:43 +08:00
c9s
2bd79bcaf0 okex: add PublicDataService NewGetInstrumentsRequest 2021-05-27 00:05:43 +08:00
c9s
365b4c3837 okex: refactor trade service and fix order details api 2021-05-27 00:05:43 +08:00
c9s
5f8108f93e okex: add GetPendingOrderRequest 2021-05-27 00:05:43 +08:00
c9s
172239ddf6 okex: add order detail request 2021-05-27 00:05:43 +08:00
c9s
7e97163207 okex: implement batch place and batch cancel orders 2021-05-27 00:05:43 +08:00
c9s
1acbaefcd9 okex: implement place order and cancel order requests 2021-05-27 00:05:43 +08:00
c9s
b1aadb4bf0 okex: parse numbers as fixedpoints 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
e678289577 implement okex balances endpoint 2021-05-27 00:05:43 +08:00
c9s
fe269fd93d okex: implement base rest client 2021-05-27 00:05:43 +08:00
c9s
967c7e9f9d xbalance: add withdrawal options 2021-05-26 23:24:05 +08:00
Jui-Nan Lin
72e7915d8d feat(ftx): use go generate to build symbol map 2021-05-26 20:53:51 +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
Yo-An Lin
31871143a0 Merge pull request #249 from jnlin/ftx/websocket-kline
Implement kline stream and subaccount feature for FTX exchange
2021-05-26 00:31:35 +08:00
Jui-Nan Lin
1dd397f900 fix(ftx): return original symbol if not found (e.g. BTC-PREP) 2021-05-25 23:29:50 +08:00
Jui-Nan Lin
2e749bb7a8 fix(ftx): always update since to avoid infinite loop 2021-05-25 23:21:38 +08:00
Jui-Nan Lin
bca57e017b fix(ftx): set lastTradeID from options{} to filter trades 2021-05-25 23:14:49 +08:00
Jui-Nan Lin
2fd82ef775 fix(ftx): should use local symbol in fillResponse 2021-05-25 22:43:26 +08:00
Jui-Nan Lin
ab8c1ec18c fix(ftx): allow subaccount to be empty 2021-05-25 22:12:10 +08:00
c9s
686dcef2c5 binance: fix depth snapshot buffering 2021-05-25 21:36:14 +08:00
Jui-Nan Lin
bee3b913f2 fix(ftx): typo 2021-05-25 21:30:15 +08:00
c9s
d3f06bc9d7 fix binance depth stream buffering 2021-05-25 19:13:10 +08:00
Jui-Nan Lin
1318f221b2 fix(ftx): iterate subscription arraywhile polling klines 2021-05-25 18:37:48 +08:00
Jui-Nan Lin
a7a141c3ea fix(ftx): rename to pollKLines() 2021-05-24 14:21:40 +08:00
Jui-Nan Lin
239d55ce33 fix(ftx): use ID() 2021-05-24 14:18:40 +08:00
Jui-Nan Lin
9226d086b3 fix(ftx/rest): use Id() to make rest requests 2021-05-24 11:20:39 +08:00
Jui-Nan Lin
7fd3375741 fix(ftx/rest): add Id() for setting restful id 2021-05-24 11:19:30 +08:00
Jui-Nan Lin
2467d3fcf6 fix(ftx): get current kline candle in the beginning 2021-05-24 10:22:48 +08:00
Jui-Nan Lin
ddcd0d3969 fix(ftx): send ctx to handleChannelKlineMessage() 2021-05-24 10:16:17 +08:00
Jui-Nan Lin
64387ed2cb Merge branch 'main' into ftx/websocket-kline 2021-05-24 10:01:58 +08:00
Jui-Nan Lin
bd9a61ea97 fix(ftx): use select to handle kline message 2021-05-24 10:00:43 +08:00
Jui-Nan Lin
bbeafab59b fix(ftx): remove unused variables 2021-05-24 09:51:00 +08:00
Jui-Nan Lin
301ed621e6 fix(ftx): use timer.ticker() 2021-05-24 09:45:33 +08:00
Jui-Nan Lin
2394aab32e fix(ftx): start go routine while connecting to ftx websocket 2021-05-24 09:22:47 +08:00