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
c9s
d433c7f5b1
kucoin: replace UnixMilli
2021-12-23 21:09:40 +08:00
c9s
e76dd1cbc4
kucoin: fix kline parsing and subscription
2021-12-23 17:49:18 +08:00
c9s
562c287a4e
all: move publicOnly to StandardStream
2021-12-23 17:49:18 +08:00
c9s
8e834ce8fe
kucoin: convert websocket trade and order
2021-12-23 17:49:18 +08:00
c9s
cfd68fdd1d
all: change trade id to uint64
2021-12-23 17:49:18 +08:00
c9s
74b09551b5
kucoin: record kucoin json as files
2021-12-23 17:49:18 +08:00
c9s
838bc69f65
kucoin: reformat testdata json
2021-12-23 17:49:18 +08:00
c9s
6330a1845d
kucoin: connecting stream callbacks
2021-12-23 17:49:18 +08:00
c9s
449434da4c
kucoin: generate callback methods
2021-12-23 17:49:18 +08:00
TonyQ
75633dbf09
exchange/okex : implement bookticker for okex , #388
2021-12-23 12:42:13 +08:00
Yo-An Lin
98de0862a4
Merge pull request #395 from tony1223/bug/okex-maskkey
...
exchange/okex: update QueryTickers behaviour
2021-12-23 02:51:54 +08:00
c9s
911574d8d6
kucoin: parse websocket messages
2021-12-23 02:50:56 +08:00
c9s
cec4b3dd1e
add websocket message parser
2021-12-23 02:50:56 +08:00
c9s
3fb2e12c24
kucoin: add websocket types
2021-12-23 02:50:56 +08:00
c9s
1a3f9ed4b2
kucoin: use returned ping interval instead of default
2021-12-23 02:50:56 +08:00
c9s
730ce31e67
kucoin: implement NewStream
2021-12-23 02:50:56 +08:00
c9s
0a9575aaca
kucoin: pull out ping worker
2021-12-23 02:50:56 +08:00
c9s
92076878cd
kucoin: refactor ping worker
2021-12-23 02:50:56 +08:00
c9s
b0d4688528
kucoin: implement getEndpoint method
2021-12-23 02:50:56 +08:00
c9s
a4c9aea6c6
kucoin: refactor bullet url code
2021-12-23 02:50:56 +08:00
c9s
6cbccc9a3f
kucoin: add websocket command
2021-12-23 02:50:56 +08:00
c9s
4303342841
kucoin: export ApiClient interface methods
2021-12-23 02:50:56 +08:00
c9s
c390bbc31d
add generated files
2021-12-23 02:50:56 +08:00
c9s
2230b484a8
kucoin: add bullet service
2021-12-23 02:50:56 +08:00
c9s
7f92588883
kucoinapi: refactor api client
2021-12-23 02:50:56 +08:00
c9s
c8dd02335b
kucoin: refactor and clean up
2021-12-23 02:50:56 +08:00
TonyQ
5645161403
exchange/okex: update QueryTickers behaviour
2021-12-23 01:29:43 +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
388cfe0854
kucoin: fix go 1.17 compatibility issue
2021-12-22 01:45:07 +08:00
c9s
3b5015e1ca
kucoin: integrate list tickers
2021-12-22 01:34:24 +08:00
c9s
0b6e66348e
kucoin: implement query tickers
2021-12-22 01:28:16 +08:00
c9s
c32f3ab2f3
add generate_symbol_map.go generator
2021-12-22 01:28:16 +08:00
c9s
fce71cb37e
implement QueryAccounts and QueryMarkets
2021-12-22 01:28:16 +08:00
c9s
62fa6dd274
implement get fills request
2021-12-22 01:28:16 +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
740989ca64
exchange/ftx: add more guard condition
2021-12-21 20:46:40 +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
TonyQ
c0b9cc0f0b
exchange: make ftx kline event more reliable
2021-12-15 11:23:07 +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
TonyQ
16933555b8
backtest : auto sync missing range
2021-12-15 01:26:05 +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
Yo-An Lin
6c6eb252cc
Merge pull request #363 from tony1223/feature/355-ftx-backtest
2021-12-14 16:09:16 +08:00
TonyQ
8eb3eede82
fix backtest (with review)
2021-12-14 16:02:54 +08:00
TonyQ
51e23b6a0c
Merge branch 'main' of github.com:c9s/bbgo into feature/302-record-assets-review
2021-12-14 10:39:51 +08:00
TonyQ
4eb5a099ae
account: add nav_history_details and account_service for #302
2021-12-14 08:09:18 +08:00
austin362667
d3526b2c71
binance: add SubmitFuturesOrder and related conversions
2021-12-13 23:19:14 +08:00
c9s
74811abb36
okex: rewrite okex api request with requestgen
2021-12-13 14:55:44 +08:00
c9s
e2937acb28
apply requestgen for CancelOrderRequest and CancelAllOrderRequest
2021-12-13 14:55:44 +08:00
Yo-An Lin
d847d223e3
Merge pull request #356 from c9s/feature/kucoin
...
refactor: apply requestgen
2021-12-13 02:14:05 +08:00
Yo-An Lin
a3215d6f31
Merge pull request #354 from austin362667/order-trade
...
binance: parse OrderTrade event stream & add futures client connection
2021-12-13 02:12:19 +08:00
c9s
34c2b342ba
apply requestgen for CancelOrderRequest and CancelAllOrderRequest
2021-12-13 02:08:18 +08:00
c9s
c28833fba0
kucoinapi: use requestgen for list orders request
2021-12-13 01:53:00 +08:00
c9s
97b63f45d5
kucoin: rename receiver to r
2021-12-13 01:14:52 +08:00
c9s
22972953d0
use requestgen to generate the accessor methods
2021-12-13 01:11:15 +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
TonyQ
6915a0e573
ftx: update kline event handling for #318
2021-12-12 14:29:48 +08:00
c9s
de80a14715
kucoin: add cancel order command
2021-12-11 20:07:32 +08:00
c9s
95ecaa7a66
rename orderResponse to apiResponse
2021-12-11 20:02:35 +08:00
c9s
8a00509987
kucoin: check data pointer and return error
2021-12-11 19:44:07 +08:00
c9s
0c854a8a85
kucoin: add place order and list orders command
2021-12-11 19:40:53 +08:00
c9s
a9bc02ef3d
kucoin: implement order placement and cancel api
2021-12-11 18:33:30 +08:00
c9s
4d57967664
kucoin: add orderbook api
2021-12-11 18:33:30 +08:00
c9s
18653aca7e
kucoin: implement all ticker and get ticker api
2021-12-11 18:33:30 +08:00
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
Jui-Nan Lin
02912f362c
fix(ftx): subscribe channel first to avoid losing order update
2021-05-24 09:21:49 +08:00
c9s
56b2c8845b
fix preorder, postorder and inorder
2021-05-22 11:36:58 +08:00
Jui-Nan Lin
14abd1436b
fix(ftx): call EmitConnect() after connected
2021-05-21 23:33:05 +08:00
Jui-Nan Lin
dd0bfab292
fix(ftx): call EmitStart() after connected
2021-05-21 23:25:26 +08:00
Jui-Nan Lin
c7f9352e20
fix(ftx): keep in the loop
2021-05-21 23:10:05 +08:00
Jui-Nan Lin
fb47a4882f
fix(ftx): support subaccount in websocket
2021-05-21 23:07:53 +08:00
Jui-Nan Lin
05bde543b7
feat(ftx): emulating kline channel with polling
2021-05-21 23:07:39 +08:00
c9s
57a78777df
move Time type to types.Time
2021-05-21 00:10:53 +08:00
Jui-Nan Lin
02649bdd63
fix(ftx): use generated order id if not specified
2021-05-19 21:37:29 +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
9406682944
improve maxapi websocket reconnect issue
2021-05-18 14:14:58 +08:00
c9s
c3c3c47808
move lock section
2021-05-18 13:59:58 +08:00
c9s
c4ccd8094f
make max client order id factory public
2021-05-18 09:10:43 +08:00
Jui-Nan Lin
c0cf529db7
fix(ftx): allow empty TimeInForce to place market orders
2021-05-17 21:05:44 +08:00
Jui-Nan Lin
31993d7ccf
fix(ftx): update test toGlobalOrderBook
2021-05-17 18:53:43 +08:00
Jui-Nan Lin
316799d5a0
fix(ftxExchange): setup a symbol mapping table
...
ftx uses BTC/USDT symbol styles, however bbgo uses the BTCUSDT style
We setup a mapping table in Markets() to make conversion
2021-05-17 18:32:29 +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
c9s
f69cbe9c31
add basic TwapExecution
2021-05-14 14:53:26 +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
ff7ead9bdf
fix max withdrawal address bug
2021-05-12 01:21:04 +08:00
c9s
61319fb4ff
implement Withdrawal method on max exchange
2021-05-12 00:23:13 +08:00
c9s
0b7c9a1437
implement withdrawal request api
2021-05-11 22:35:31 +08:00
c9s
03cee5eb0b
apply types.ExchangeMAX
2021-05-05 16:57:01 +08:00
c9s
859bf35255
set sync-from from config by default
2021-05-05 16:45:17 +08:00
c9s
a70d5cbcdc
fix kline sync conditions
2021-05-05 16:33:15 +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
e87c2e271f
add broker id on max
2021-04-28 19:24:07 +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
David Chang
f884fcd45c
fix: add ioc trade type to order type
2021-04-12 14:35:46 +08:00
David Chang
0db2cc2c96
fix: add ioc trade type to order type
2021-04-12 09:35:59 +08:00
David Chang
c9198d498e
feature: add ioc order type support to max exchange
2021-04-11 12:29:23 +08:00
ycdesu
1e3ce81c06
ftx: pull out map
2021-04-01 11:55:27 +08:00
ycdesu
a659bacb0d
ftx: remove back slash from symbol
2021-04-01 11:54:16 +08:00
ycdesu
28c9ac95ac
ftx: query kline using rest api
2021-03-31 18:09:13 +08:00
ycdesu
f912fde6e3
ftx: panic if subscribe unsupported channel
2021-03-29 22:11:39 +08:00
ycdesu
66f165584f
fix: make since/until optional
2021-03-29 22:11:39 +08:00
ycdesu
f526a937d1
ftx: websocket keepalive
2021-03-29 22:11:39 +08:00
ycdesu
53c9b0a606
ftx: remove redundant abstraction
2021-03-29 22:11:39 +08:00
ycdesu
e152aa1036
ftx: trade update
2021-03-29 22:11:39 +08:00
ycdesu
f345730778
ftx: handle err response
2021-03-29 22:11:38 +08:00
ycdesu
9c4ccbd6e2
ftx: subscribe order update
2021-03-29 22:11:38 +08:00
ycdesu
34ea325499
ftx: refactor websocket_messages structs
2021-03-29 22:11:38 +08:00
ycdesu
d3cdd3c2a6
ftx: define order update response
2021-03-29 22:11:38 +08:00
ycdesu
2e2ae46bae
ftx: subscribe order update
2021-03-29 22:11:38 +08:00
ycdesu
f60f1ef52e
ftx: authenticate websocket
2021-03-27 18:16:52 +08:00
ycdesu
691251169d
ftx: define ws login request
2021-03-27 16:58:51 +08:00
ycdesu
3bcd5a8e83
ftx: null guard in close
2021-03-27 09:54:12 +08:00
ycdesu
9e77b3afd8
ftx: support queryTrades method
2021-03-26 00:43:15 +08:00
c9s
8122fddd02
add exchange field to binance trades and binance orders
2021-03-24 17:51:19 +08:00
ycdesu
241f1ee9de
ftx: support lastOrderID
2021-03-23 22:27:11 +08:00
ycdesu
17b6122cf8
ftx: assign query string to order/wallet requests
2021-03-23 22:26:18 +08:00
ycdesu
bce749c13b
ftx: add missing query string
2021-03-23 22:25:57 +08:00
c9s
67bfc508c8
max: remove unnecessary log
2021-03-22 17:40:00 +08:00
c9s
111b3ba036
max: improve multi-order request
2021-03-22 17:32:22 +08:00
c9s
3c5071b87e
use uint32 for groupID
2021-03-22 17:32:22 +08:00
c9s
cd5ac1ddf5
fix convert for limit maker
2021-03-22 17:32:22 +08:00
c9s
24c4d05e91
max: load websocket base url from the env var
2021-03-22 17:32:21 +08:00
ycdesu
ab743f85c2
ftx:support deposit histories
2021-03-21 20:17:41 +08:00
ycdesu
d2a5a755be
ftx: implement queryMarket
2021-03-21 13:06:46 +08:00
ycdesu
14652c6918
ftx: define market request
2021-03-21 13:06:46 +08:00
c9s
814a77ea39
xmaker: improve balance checking
2021-03-21 12:55:33 +08:00
c9s
1f744b0fa5
convert limit maker type to post only
2021-03-21 12:55:33 +08:00
c9s
837934e690
add post_only order type
2021-03-21 12:55:33 +08:00
c9s
b4083bdf10
fix fee calc tests
2021-03-20 22:59:53 +08:00
c9s
a52101b163
remove bps from the fee calc
2021-03-20 22:53:14 +08:00
c9s
d97275e408
query max account fee from the vip level api
2021-03-19 17:06:48 +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
ycdesu
a62481590e
ftx: support PlatformCurrency
2021-03-18 23:58:28 +08:00
ycdesu
8a75b21a38
ftx: support account info
2021-03-18 23:53:55 +08:00
c9s
dffd9fc980
add VipLevel api query support
2021-03-18 17:58:18 +08:00
c9s
890324a4ad
maxapi: add VipLevel
2021-03-18 17:58:18 +08:00
Yo-An Lin
40b376802e
Merge pull request #168 from c9s/feature/mark-trade-strategy
2021-03-18 10:31:59 +08:00
c9s
cad8349a1a
remove state OrderStateFinalizing from the order state
...
since we are only interested in the closed orders
2021-03-18 01:15:49 +08:00
c9s
dd87bde785
fix reward sync time range issue
2021-03-18 01:15:38 +08:00
c9s
4a415a43b3
fix reward query
2021-03-18 00:46:10 +08:00
ycdesu
4a5a53ea28
ftx: support queryClosedOrders
2021-03-17 21:26:25 +08:00
ycdesu
54ca62ac5c
ftx: define ordersHistory in rest client
2021-03-17 08:18:37 +08:00
ycdesu
342b0dd1dd
ftx: cancel orders
2021-03-16 22:36:44 +08:00
Yo-An Lin
7ecb17dbe2
Merge pull request #163 from c9s/feature/mark-trade-strategy
2021-03-16 22:34:09 +08:00
c9s
714d61a829
add grid restore behavior
2021-03-16 20:04:06 +08:00
Yo-An Lin
f5b65e795e
Merge pull request #160 from c9s/feature/grid-options
2021-03-16 12:59:14 +08:00
c9s
2f7c7d344b
move emitStart method call into the stream Connect method
2021-03-16 01:32:27 +08:00
ycdesu
c88297117b
ftx: new rest everytime
2021-03-15 19:02:14 +08:00
c9s
c95e712420
binance: emit disconnect
2021-03-15 17:48:16 +08:00
c9s
6d249cf83c
bypass disconnect event
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
3ffa319ba8
improve max websocket reconnecting issue
2021-03-15 10:23:20 +08:00
Yo-An Lin
e0d7fefbf2
Merge pull request #150 from c9s/fix/pnl
...
feature: add deposit service and withdraw service for sync
2021-03-15 09:01:24 +08:00
c9s
0246e298d2
apply launch date if since time is empty
2021-03-14 11:18:22 +08:00
c9s
75c6a2791c
reduce log
2021-03-14 11:18:22 +08:00
c9s
8e85274876
fix used time field for withdraw
2021-03-14 11:18:22 +08:00
c9s
b25671c864
fix max deposits history ordering
2021-03-14 11:18:22 +08:00
c9s
75778675e3
fix withdraw query order
2021-03-14 11:18:22 +08:00
c9s
dbcf35e4a4
add FeeCurrency field
2021-03-14 11:18:22 +08:00
c9s
2d6b6e7427
fix withdrawal data ordering
2021-03-14 11:18:22 +08:00
c9s
4d3b1ec938
fix QueryWithdrawHistory and QueryDepositHistory
2021-03-14 11:18:22 +08:00
c9s
877ea73435
maxapi: align fields
2021-03-14 11:18:22 +08:00
c9s
be672c89e6
max: update deposit and withdraw types
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
33213746f4
cmd: add --all option to the cancel command
2021-03-14 10:29:45 +08:00
ycdesu
a83b95d262
ftx: implemenet place order func
2021-03-13 10:41:04 +08:00
ycdesu
506fdcd84f
ftx: add conversion helper
2021-03-13 09:51:16 +08:00
ycdesu
778ceb2985
ftx: define orderResponse struct
2021-03-13 09:51:03 +08:00
ycdesu
0e611dbee4
ftx: rename orders to ordersResponse
2021-03-12 23:03:08 +08:00
c9s
48fe6054b0
exchange/max: fix query reward issue
2021-03-10 14:18:01 +08:00
YC
b33402df24
Merge pull request #147 from c9s/ftx/query-open-orders
2021-03-08 18:50:56 +08:00
ycdesu
ee8ebde12d
ftx: add todo
2021-03-07 12:53:41 +08:00
ycdesu
6599f276db
ftx: implement query open orders
2021-03-07 12:51:13 +08:00
ycdesu
3676450e4b
ftx: convert open order
2021-03-07 12:51:13 +08:00
ycdesu
16366b09a4
ftx: rename responses.go to rest_responses.go
2021-03-07 12:51:13 +08:00
ycdesu
26963ce7ab
ftx: rename balance.go to rest_balance_request.go
2021-03-07 12:51:13 +08:00
ycdesu
f6f3fcab02
ftx: orderbook snapshot checksum
2021-03-06 19:23:44 +08:00
ycdesu
be7c393fcb
ftx: print orderbook update
2021-03-04 10:02:40 +08:00
ycdesu
43275d08bc
ftx: use pure function to convert orderbook snapshot
2021-03-03 22:36:14 +08:00
ycdesu
55b9569777
ftx: use the same struct to handle orderbook snapshot/update
2021-03-03 22:33:06 +08:00
ycdesu
e34f68ab90
ftx: unmarshal all fields at the same time
2021-03-03 10:31:46 +08:00
ycdesu
160f6323e8
ftx: emit orderbook snapshot
2021-03-02 22:18:41 +08:00
ycdesu
253810556e
ftx: unmarshal orderbook snapshot
2021-03-02 18:33:19 +08:00
ycdesu
45528fa219
ftx: modify log
2021-03-02 18:33:19 +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
ycdesu
883b7ef028
ftx: handle message in a new struct
2021-02-27 19:27:44 +08:00
ycdesu
d9ad022a81
ftx: define subscribed msg
2021-02-27 19:27:37 +08:00
ycdesu
73d05fe7bb
ftx: send subscriptions when connected
2021-02-27 18:42:46 +08:00
ycdesu
c52f918dd4
ftx: add missing types.exchange methods
2021-02-27 17:24:08 +08:00
ycdesu
8b838b9a59
ftx: make logger private
2021-02-27 17:01:20 +08:00
ycdesu
b28d9631ab
ftx: return ftx stream but hasn't implement it yet
2021-02-27 16:48:50 +08:00
c9s
1d29009133
fix max trade query ordering and sql query ordering for query last
2021-02-25 13:55:04 +08:00
c9s
14830c442c
refactor and implement reward sync and query
2021-02-23 22:53:00 +08:00
c9s
5a7cf05701
integrate reward service into the sync service
2021-02-23 16:39:48 +08:00
c9s
fb62af05a4
add global Reward type
2021-02-23 10:08:01 +08:00
c9s
96362a4936
max: add rewards api and example
2021-02-22 18:45:44 +08:00
c9s
507586b560
fix max websocket subscription
2021-02-22 17:36:30 +08:00
c9s
21a4669905
adjust max query limiter and sync before running trader
2021-02-22 16:54:08 +08:00
c9s
f7c952f8ca
add version files
2021-02-22 15:16:12 +08:00
c9s
59d68e7f0d
max: adjust trades limit to 1000
2021-02-22 15:03:15 +08:00
c9s
eaad414706
adjust max api call rate limiting
2021-02-22 15:01:05 +08:00
c9s
cdb7ce84c8
apply rate limit
2021-02-22 13:36:39 +08:00
c9s
dd13b9a8bf
remove start time query condition for trade sync since starting from trade id = 1 works
2021-02-19 14:18:50 +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
654ad62f36
remove type assert
2021-02-18 17:42:14 +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
49f4039a23
add timestamp parameter
2021-02-16 17:11:15 +08:00
c9s
9a7437de53
set default limit to 1000
2021-02-16 17:10:58 +08:00