Commit Graph

855 Commits

Author SHA1 Message Date
c9s
6c201d1868 kucoin: adjust rate limit to req/3sec 2022-03-18 17:43:14 +08:00
c9s
9757ca290b kucoin: add trades, orders rate limiter 2022-03-18 17:33:10 +08:00
zenix
efec21ca4b feature: add market trade subscription in binance 2022-03-18 18:30:39 +09:00
zenix
84dbae1592 add readme content about testnet, fix code syntax 2022-03-18 14:17:06 +09:00
zenix
36a746d415 add binance paper trade endpoint 2022-03-18 14:04:56 +09:00
c9s
d1f4c0a225 max: fix kline parse 2022-03-15 16:07:19 +08:00
Yo-An Lin
bfdf4c245f
Merge pull request #460 from zenixls2/feature/backtest_multiple_exchange
feature: add multiple exchange support in backtest
2022-03-07 14:28:20 +08:00
c9s
fcbdf8162a max: add env var MAX_QUERY_CLOSED_ORDERS_LIMIT 2022-03-07 13:56:20 +08:00
zenix
39572c5fe0 fix: remove maker/buyer/taker/sellerCommission 2022-03-07 14:32:00 +09:00
c9s
e23232c3e7 max: fix timeInForce conversion 2022-03-06 18:37:34 +08:00
c9s
586013d9f2 max: fix order update message 2022-03-06 18:33:21 +08:00
c9s
af2070b908 binance: add updated time field 2022-03-06 18:32:33 +08:00
c9s
b8f54ed4b9 ftx: print result directly 2022-03-03 15:04:53 +08:00
c9s
86af4d2b40 ftx: rewrite order cancel handling 2022-03-03 14:52:24 +08:00
c9s
dd76cfafa4 ftx: remove legacy orderRequest from the legacy rest 2022-03-03 12:33:44 +08:00
c9s
c9f2027a38 ftx: remove the legacy orderRequest 2022-03-03 11:55:00 +08:00
c9s
5ea01c8d80 regenerate symbol map 2022-03-03 11:44:01 +08:00
c9s
eaa81f1313 ftx: remove legacy balances method 2022-03-03 11:43:15 +08:00
c9s
270ae51c9b ftx: remove legacy PlaceOrderPayload 2022-03-03 11:42:57 +08:00
c9s
2510f14d53 ftx: remove legacy place order request method 2022-03-03 11:42:40 +08:00
c9s
5bbb796e94 ftx: clean up imports 2022-03-03 11:42:25 +08:00
c9s
37db477ece ftx: remove legacy method CancelOrderByClientID 2022-03-03 11:42:13 +08:00
c9s
60ad6bc901 ftx: remove legacy CancelOrderByOrderID method 2022-03-03 11:41:51 +08:00
c9s
064da7f938 ftx: remove legacy open orders method 2022-03-03 11:40:23 +08:00
c9s
a47924d1c9 ftx: remove legacy order history method 2022-03-03 11:40:03 +08:00
c9s
6ae588575a ftx: remove legacy market api method 2022-03-03 11:39:11 +08:00
c9s
2845e03100 ftx: fix ftx test cases 2022-03-03 01:47:19 +08:00
c9s
3f8f17b1de ftx: reimplement submit order api 2022-03-03 00:30:52 +08:00
c9s
3b601d73ce ftx: remove legacy fills requests 2022-03-03 00:30:52 +08:00
c9s
4321cab557 ftx: drop the legacy unused account request 2022-03-03 00:30:52 +08:00
c9s
688445d7e7 cmd: add get-order cmd 2022-03-03 00:30:52 +08:00
c9s
95daa004aa ftx: implement get order status api 2022-03-03 00:30:52 +08:00
c9s
14bcc780a4 ftxapi: add cancel order by client order id 2022-03-03 00:30:52 +08:00
c9s
07dd2e8d9c ftx: improve order cancel by client order id 2022-03-03 00:30:52 +08:00
c9s
5cfc266d7a ftx: simplify and replace the order history query 2022-03-03 00:30:52 +08:00
c9s
5c8997e293 ftx: fix ftx order status isWorking 2022-03-03 00:30:52 +08:00
c9s
66700016e4 ftx: add toGlobalOrderNew to convert new order structure 2022-03-03 00:30:52 +08:00
c9s
e9e1127d3e ftx: replace query markets api 2022-03-03 00:30:52 +08:00
c9s
883f0ed83a ftxapi: replace fill implementation 2022-03-03 00:30:52 +08:00
c9s
833354e553 ftx: replace QueryTrades implementation 2022-03-03 00:30:52 +08:00
c9s
9c371425f6 ftx: replace QueryAccount implementation 2022-03-03 00:30:52 +08:00
c9s
84bc170a2e ftxapi: use order types 2022-03-03 00:30:52 +08:00
c9s
03f0305b3d ftxapi: add fills request 2022-03-03 00:30:52 +08:00
c9s
14a49989fe ftxapi: define types 2022-03-03 00:30:52 +08:00
c9s
cd0ac71b99 ftxapi: separate request files 2022-03-03 00:30:52 +08:00
c9s
abc425d820 ftx: fix ftx api client 2022-03-03 00:30:52 +08:00
c9s
93992801f9 ftxapi: add order history request 2022-03-03 00:30:52 +08:00
c9s
9e350afed5 ftxapi: add get coins api 2022-03-03 00:30:52 +08:00
c9s
3601edab84 ftxapi: add get single market api 2022-03-03 00:30:52 +08:00
c9s
2a6310c5f5 ftxapi: add get markets api 2022-03-03 00:30:52 +08:00
c9s
94ee46787e ftxapi: add generated files 2022-03-03 00:30:52 +08:00
c9s
7ed2e352d9 ftx: rewrite ftxapi 2022-03-03 00:30:52 +08:00
c9s
208a9bcb7d fix: fix context error handling 2022-02-18 18:21:51 +08:00
c9s
849f2a248e ftx: check context error 2022-02-18 15:35:58 +08:00
c9s
3a488a4c0f ftx: add ioc order test 2022-02-18 14:50:54 +08:00
c9s
17034b2467 ftx: fix ioc convert 2022-02-18 14:10:21 +08:00
c9s
f6ebeeafc5 ftx: cast time in force from the order result 2022-02-18 14:07:29 +08:00
c9s
d0f1e2db04 ftx: fix ftx ioc conversion 2022-02-18 14:01:47 +08:00
c9s
fb9f8b484c max: remove ioc limit type 2022-02-18 13:57:47 +08:00
c9s
0c09e6b32a use global timeInForce type 2022-02-18 13:52:13 +08:00
zenix
cdba7924b4 fix backtest panic when cancel fail on the last order 2022-02-15 12:01:39 +09:00
zenix
05521a98b6 add skeleton strategy. fix most of the tests. fix final asset value 2022-02-15 12:01:39 +09:00
zenix
2ccc449657 fix xpuremaker,xnav,techsignal,support,etf and add methods in fixedpoint 2022-02-15 12:01:39 +09:00
zenix
b8bf2af14d fixedpoint for exchange and indicators, some fixes in types 2022-02-15 12:01:38 +09:00
zenix
e221f54397 add dnum as the fixedpoint implementation. change types float64 to fixedpoint.Value
change pnl report to use fixedpoint

fix: migrate kline to use fixedpoint
2022-02-15 12:00:39 +09:00
ankion
98b4495d1f Fix: precision of futures trade data is incorrect. 2022-02-14 10:32:13 +08:00
c9s
a2a7ef4f7a exchange: implement ExchangeOrderQueryService on max and binance 2022-02-10 17:48:53 +08:00
c9s
59cc4d7243 max: improve max closed order query 2022-01-27 00:02:35 +08:00
Yo-An Lin
d79cce30e3
Merge pull request #443 from austin362667/refactor/futures-account
binance: add futures broker
2022-01-26 14:11:48 +08:00
c9s
6286c50f7a max: always sort trades 2022-01-24 23:59:10 +08:00
c9s
0bf6e533e0 kucoin: fix closed orders query 2022-01-24 23:56:48 +08:00
c9s
f284c35b81 max: ensure orders are sorted ascendingly 2022-01-24 23:54:58 +08:00
c9s
04a15340bc max: add warning for the uneffected conditions 2022-01-24 23:51:53 +08:00
c9s
50871c1b61 max: fix order query limiter call and order state for query 2022-01-24 23:45:56 +08:00
c9s
0c0a12781a max: fix max exchange closed order sync 2022-01-24 23:18:52 +08:00
c9s
e8fd1486b1 binance: fix binance closed order sync 2022-01-23 16:19:13 +08:00
austin362667
5a4adf4d72 binance: add futures broker 2022-01-23 15:26:15 +08:00
c9s
4d921b0b36 kucoin: fix klines ordering 2022-01-19 18:33:54 +08:00
Yo-An Lin
0e0525be99
Merge pull request #418 from austin362667/refactor/futures-account
binance: add futures exchange api queries
2022-01-17 20:54:49 +08:00
austin362667
0ab94e0884 binance: fix err handler 2022-01-15 08:28:02 +08:00
austin362667
734221028b binance: fix parse type 2022-01-15 08:28:02 +08:00
austin362667
9a1d2cba31 binance: add account info in query account 2022-01-15 08:28:02 +08:00
austin362667
32c2f128f5 binance: add TradeFutures 2022-01-15 08:28:02 +08:00
austin362667
8130ef78c1 binance: refactor margin related conversions 2022-01-15 08:28:02 +08:00
austin362667
5404bfe7f8 binance: fix futures symbol not found from syncSession
binance: fix query trades, closed orders futures symbol not found

binance: fix futures symbol not found
2022-01-15 08:28:02 +08:00
austin362667
0f0539fe70 binance: add futures exchange queries 2022-01-15 08:28:02 +08:00
austin362667
6071c07073 binance: add futures conversion 2022-01-15 08:28:02 +08:00
Lee
f6c70bdfcb ftx: Separate the lastClosed record for different interval 2022-01-15 05:12:45 +08:00
c9s
140e5638b8 binance: apply order cancel rate limiter 2022-01-15 00:52:54 +08:00
c9s
ec72a922c8 all: add subscribe depth options 2022-01-12 22:27:42 +08:00
c9s
f9e72dc79f binance: subscribe binance depth10@100ms 2022-01-12 22:17:07 +08:00
c9s
1a61935850 add depth buffer logs 2022-01-12 21:55:26 +08:00
c9s
8c2228f428 cmd: use time.Local for the local timezone 2022-01-12 15:33:04 +08:00
Yo-An Lin
30c1dd3e3d
Merge pull request #424 from tony1223/bug/binance-add-ratelimiter
fix: [binance] add order rate limiter
2022-01-12 12:53:51 +08:00
Yo-An Lin
c2b121f9ee
Merge pull request #432 from jessy1092/ftx/support-limit-maker
ftx: Support LIMIT_MAKER and IOC_LIMIT order type
2022-01-12 12:50:57 +08:00
Lee
523d9b3071 ftx: Support LIMIT_MAKER and IOC_LIMIT order type 2022-01-12 03:47:12 +08:00
c9s
b302adcc7e types: add and use OrderError 2022-01-11 18:00:07 +08:00
c9s
857db529af binance: show order info in the error 2022-01-11 17:05:36 +08:00
c9s
b56c800e12 binance: add order status to the error message 2022-01-11 16:47:55 +08:00
c9s
97422f26e7 binance: should return error when order does not contain orderID or clientOrderID 2022-01-11 16:38:02 +08:00
c9s
96ffab9cd8 binance: add details to order cancel error 2022-01-11 16:35:49 +08:00
c9s
4a8751e486 binance: fix listen key keep alive worker call 2022-01-11 14:16:35 +08:00
c9s
eefee46e9b binance: invert if 2022-01-11 13:38:03 +08:00
c9s
cf07ca7aa0 binance: adjust listen key update interval to longer period 2022-01-11 13:37:02 +08:00
c9s
71a0604e72 use fixedpoint to parse payload directly 2022-01-11 01:41:33 +08:00
c9s
e5b4af53e6 all: clean up SubmitOrder fields 2022-01-11 01:36:19 +08:00
c9s
4b0e721580 binance: change binance debug client env var name to debug-binance-client 2022-01-10 16:37:41 +08:00
TonyQ
25801f9f63 add ratelmiter 2022-01-10 16:33:19 +08:00
c9s
6c3ee314d9 binance: fix order cancel client order id usage 2022-01-10 13:29:27 +08:00
c9s
8b6cae9107 max: fix max authenticated event parsing 2022-01-02 12:20:38 +08:00
c9s
e04139a330 max: clean up and refactor max stream 2022-01-02 12:02:36 +08:00
c9s
cc0e5f71b0 clean up binance stream 2022-01-02 12:02:36 +08:00
Yo-An Lin
b22bb4b28d
Merge pull request #416 from tony1223/bug/415-ftx-kline
exchange/ftx: #415 fix kline issue
2022-01-02 02:46:22 +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
96fedfd311 okex: refactor okex stream 2022-01-02 02:37:33 +08:00
TonyQ
8315607de3 exchange/ftx: #415 fix kline issue 2022-01-02 02:34:29 +08:00
c9s
9d382a6b8c binance: use sync.Once to protect the set server time calls 2022-01-02 02:14:04 +08:00
c9s
ffe216ca2d kucoin: remove unused fields 2022-01-02 02:11:55 +08:00
c9s
76d11af284 kucoin: fix connection field 2022-01-02 02:11:36 +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
c9s
ab0519c4be start time is required for syncing trades 2022-01-01 02:50:07 +08:00
c9s
7d64a30a6b kucoin: fix launch date with local time zone 2022-01-01 02:45:47 +08:00
c9s
129f44bbcb fix empty start time sync issue 2022-01-01 02:43:08 +08:00
c9s
25f01b8837 kucoin: refactor ticker request 2022-01-01 02:07:48 +08:00
c9s
be408055a6 kucoin: refactor account service api 2022-01-01 02:04:20 +08:00
c9s
6d5ab33d17 kucoin: fix kucoin order query 2022-01-01 01:28:29 +08:00
c9s
556a581ae1 kucoin: add kucoin list history orders request 2022-01-01 00:46:33 +08:00
c9s
eba33329d1 always sort orders and trades in the batch query 2021-12-31 14:12:41 +08:00
c9s
2a8caa3780 batch: show trade sync time range in the message 2021-12-31 13:56:53 +08:00
c9s
20c6c7eb9a all: fix trade, order sync for kucoin 2021-12-31 13:52:16 +08:00
c9s
5f84f13e21 kucoin: fix trade time field issue 2021-12-31 13:20:34 +08:00
c9s
e09b4fa5fb kucoin: rewrite cancel all orders request 2021-12-31 01:50:56 +08:00
c9s
6addd503aa kucoin: generate PlaceOrderRequest with requestgen 2021-12-31 01:43:31 +08:00
c9s
af19875e2e kucoin: fix predefined generate command alias 2021-12-31 01:39:45 +08:00
c9s
b91bf10a7c kucoin: remove New prefix from the requests 2021-12-31 01:36:41 +08:00
Yo-An Lin
8aef3c002a
Merge pull request #412 from austin362667/refactor/futures-account
binance: add futures stream
2021-12-31 01:27:34 +08:00
c9s
b8b5ccdd2d kucoin: refactor account service with requestgen 2021-12-31 01:25:04 +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
ba73d5a09a fix kucoin orderTime parsing and order id conversion 2021-12-30 22:02:50 +08:00
c9s
76d31e7614 kucoin: add client order ID to converter 2021-12-30 21:39:50 +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
844b3c2e8e fix kucoin context issue 2021-12-30 15:58:58 +08:00
c9s
3b9a191c95 binance: refactor binance stream handlers 2021-12-30 14:02:36 +08:00
c9s
f540742b42 add tradeType field 2021-12-30 02:37:17 +08:00
c9s
3cf499b605 kucoin: rewrite GetAllTickersRequest api 2021-12-30 02:33:07 +08:00
c9s
0fc91500e4 kucoin: rewrite GetTickerRequest with requestgen 2021-12-30 02:22:33 +08:00
c9s
5136001c9b kucoin: rewrite ListSymbolsRequest 2021-12-30 02:17:03 +08:00
c9s
41435458d1 refactor orderbook requests with requestgen 2021-12-30 01:15:19 +08:00
c9s
2c0af99a51 rewrite kucoin bullet api with requestgen 2021-12-29 22:06:21 +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
1fa03cdfd6 xmaker: add back profit function 2021-12-27 02:59:55 +08:00
c9s
c49b9ef276 fix order status convert 2021-12-27 00:21:52 +08:00
c9s
e08b2e9a85 fix max exchange order status conversion and document the order status 2021-12-26 15:58:12 +08:00
c9s
e44390b655 kucoin: add more comment 2021-12-26 03:19:03 +08:00
c9s
9b8995acea fix supportedIntervals map 2021-12-26 03:17:26 +08:00
c9s
8bf5c5f778 fix kline sync query 2021-12-26 03:14:19 +08:00
c9s
a5c7ffa134 kucoin: add the missing 5min kline convert 2021-12-26 03:07:49 +08:00
c9s
4c263dd205 fix batch kline sync 2021-12-26 03:04:21 +08:00
c9s
cf6da76ef0 service: add kucoin_klines to backtest insert table mapping 2021-12-26 02:40:13 +08:00
c9s
b79ab5d68d kucoin: fix kline query param 2021-12-26 02:39:44 +08:00
c9s
1da0c8e755 kucoin: implement QueryKLines and fix interval conversion 2021-12-26 02:23:06 +08:00
c9s
e3181202db kucoin: implement QueryTrades 2021-12-26 01:44:05 +08:00
c9s
8c03147ff4 kucoin: implement QueryClosedOrders 2021-12-26 01:34:03 +08:00
c9s
0cef2c52ef all: improve cancel command and add uuid field to order struct 2021-12-26 01:27:22 +08:00
c9s
471d86c801 kucoin: implement order submit 2021-12-26 00:27:52 +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
5f9753b281 kucoin: convert symbol to global symbol 2021-12-25 19:35:08 +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
d01b9968a6 okex: format comment 2021-12-23 23:40:49 +08:00
c9s
40c4dcf2a0 okex: remove event logging 2021-12-23 23:40:10 +08:00
c9s
168e6306e7 binance: remove verbose log 2021-12-23 22:29:14 +08:00
c9s
ed6f400161 implement UnixMilli in the util package 2021-12-23 22:20:47 +08:00