Commit Graph

224 Commits

Author SHA1 Message Date
c9s
a2a7ef4f7a exchange: implement ExchangeOrderQueryService on max and binance 2022-02-10 17:48:53 +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
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
austin362667
0ab94e0884 binance: fix err handler 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
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
c9s
140e5638b8 binance: apply order cancel rate limiter 2022-01-15 00:52:54 +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
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
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
9d382a6b8c binance: use sync.Once to protect the set server time calls 2022-01-02 02:14:04 +08:00
c9s
6f6dac611e refactor websocket stream into standard websocket stream 2022-01-02 01:54:47 +08:00
c9s
3c2704c4ae add binance.us support 2021-12-30 23:46:43 +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
217499528d binance: refactor binance depthBuffer with depth query 2021-12-25 02:14:49 +08:00
c9s
168e6306e7 binance: remove verbose log 2021-12-23 22:29:14 +08:00
c9s
cfd68fdd1d all: change trade id to uint64 2021-12-23 17:49:18 +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
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
a0130affe4 binance: add query orders & trades 2021-12-15 01:01:05 +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
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
4bde40f2db override binance default http client timeout instead of zero timeout 2021-11-23 10:54:43 +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
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
e11553139e binance: make convert functions private 2021-05-29 00:26:39 +08:00
c9s
002b28f75a okex: implement candlestick api and improve kline console format 2021-05-28 20:51:10 +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
967c7e9f9d xbalance: add withdrawal options 2021-05-26 23:24:05 +08:00
c9s
57a78777df move Time type to types.Time 2021-05-21 00:10:53 +08:00
c9s
5c10f8a4e2 binance: call set server time service 2021-05-16 15:03:31 +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
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
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
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
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
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
c9s
0e99d9bdcb move time.Sleep to batch processor to avoid rate limit 2021-01-20 02:32:55 +08:00
c9s
c79c7d1b11 fix margin order/trade sync 2021-01-20 02:09:12 +08:00
c9s
7520430b52 support margin api for query trades 2021-01-20 01:27:27 +08:00
c9s
1d8b7dc657 handle trade and order margin field 2021-01-20 01:24:29 +08:00
c9s
2c1c9a046b tmp 2021-01-19 23:31:04 +08:00
c9s
677f4b93e6 add margin mode support to QueryOpenOrders 2021-01-19 23:31:04 +08:00
c9s
ad4226f35b support margin order creation 2021-01-19 23:31:04 +08:00
c9s
3eda64641e use exchange's margin option 2021-01-19 23:31:04 +08:00
c9s
7235100140 integrate submitMarginOrder api 2021-01-19 23:31:04 +08:00
c9s
5cab37488b move MarginSettings struct to a file 2021-01-19 23:31:04 +08:00
c9s
48083151aa turning margin mode 2021-01-19 23:31:04 +08:00
c9s
c3db6db590 add margin option 2021-01-19 23:31:04 +08:00
c9s
50cd6f7d68 change go-binance to github.com/adshao/go-binance/v2 2021-01-11 13:36:49 +08:00
c9s
70479bfd16 binance: assign Isolated field 2020-12-29 17:26:22 +08:00
c9s
4f399ebb9f fix stop price formating 2020-12-03 09:25:47 +08:00
c9s
edb22383c7 fix ToGlobalOrder call 2020-12-02 22:44:57 +08:00
c9s
23c19c5968 use fixedpoint for balances 2020-11-10 14:19:33 +08:00
c9s
b13a2deec5 emit klines and setup account balances 2020-11-07 03:18:05 +08:00
c9s
8823a39fc2 support backtesting kline verification 2020-11-07 00:49:17 +08:00
c9s
555fe57341 implement kline sync function from command 2020-11-06 21:40:48 +08:00
c9s
7fab2e24de improve order persistence and support order data sync 2020-11-05 11:14:14 +08:00
c9s
a4555a2b7b implement QueryClosedOrders 2020-11-05 11:14:14 +08:00
c9s
14abe3fb7e pull out active order book to the types package 2020-10-31 20:38:20 +08:00
c9s
e2df24f31c support standard indicatorset 2020-10-28 09:43:19 +08:00
c9s
145264aae4 cancel orders and re-submit maker orders 2020-10-26 00:26:17 +08:00
c9s
de11ef10f5 return created order objects from SubmitOrders method 2020-10-25 19:22:22 +08:00
c9s
fa30f6b52a Support binance order update execution type convertion 2020-10-25 19:22:22 +08:00
c9s
308427416a Add more exchange order features
- use uuid for client order id
- add stop limit and stop market order types
- add order convert functions
- improve submit orders
2020-10-25 19:22:22 +08:00
c9s
73e17730d7 move account type into types package 2020-10-18 11:30:37 +08:00
c9s
ee86a71ebb split files 2020-10-16 10:14:36 +08:00
c9s
c58375f57e max: extend max exchange market information 2020-10-14 10:53:18 +08:00
c9s
88461396f1 rearrange market config fields 2020-10-14 10:39:14 +08:00
c9s
2b41f76082 add maxPrice, minPrice and tickSize config 2020-10-14 10:34:33 +08:00
c9s
64c2170cd5 implement QueryMarkets on binance 2020-10-14 10:16:59 +08:00
c9s
a91f851ac7 pass types.SubmitOrder by value 2020-10-13 18:08:02 +08:00
c9s
4ce716d6ad binance: make asset parameter optional 2020-10-12 17:15:33 +08:00
c9s
ea7b501c26 add transfer history command for calculating baseline and show transfer records 2020-10-11 20:08:54 +08:00
c9s
2d246c3f71 move deposit type to global type and add max deposit history support 2020-10-11 17:35:59 +08:00
c9s
3d5507a053 move files into pkg 2020-10-11 16:46:15 +08:00