c9s
0b935eff4f
fix connection lock call
2021-05-30 18:14:22 +08:00
c9s
69e76485c5
xbalance: fix ticker usage
2021-05-30 18:06:31 +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
d863766e00
fix quote quantity alignment
2021-05-30 15:51:00 +08:00
c9s
c84d59734c
clear all trades before running backtests
2021-05-30 15:25:00 +08:00
c9s
3aa36b5989
refactor and fix backtest for user data stream and market data stream
2021-05-30 15:08:11 +08:00
c9s
38fd5422ab
xmaker: use uncovered position
2021-05-30 14:46:48 +08:00
c9s
1a05f6fbd4
okex: pull read timeout and adjust to 30 seconds
2021-05-30 00:32:06 +08:00
c9s
9a68cfd288
xmaker: fix trade checking
2021-05-30 00:11:35 +08:00
c9s
d962dbe542
adjust read timeout
2021-05-29 20:40:47 +08:00
c9s
70284a8c0f
xmaker: move notify trade
2021-05-29 01:41:29 +08:00
c9s
3789315214
show accumulated net profit
2021-05-29 01:38:44 +08:00
c9s
df10e175f9
xmaker: fix wording
2021-05-29 01:32:33 +08:00
c9s
e2561bde96
xmaker: add NotifyTrade option
2021-05-29 01:31:13 +08:00
c9s
65a38e56b8
slacknotifier: spawn notify worker as a go routine
2021-05-29 01:30:57 +08:00
c9s
6e0bc7c1e2
xmaker: use trade channel to buffer trades
2021-05-29 01:03:43 +08:00
c9s
33db0b5c6f
xmaker: add trade stores for trade buffering
2021-05-29 00:28:13 +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
8d31435ded
add trade store
2021-05-29 00:25:23 +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
5f18b89dfa
if publicOnly is set, we should not connect user data stream
2021-05-28 19:01:55 +08:00
c9s
f190b1e66a
fix market data stream initialization
2021-05-28 03:17:46 +08:00
c9s
d932a686a0
fix strategy market data stream usage
2021-05-28 03:15:29 +08:00
c9s
4f16f6b1f8
fix market data stream usage
2021-05-28 03:13:50 +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
b7c87c7744
core: move market data subscription to market data stream
2021-05-27 15:09:18 +08:00
c9s
45f1a13870
rename Stream field to UserDataStream and add MarketDataStream
2021-05-27 14:45:06 +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
29ad95a639
add okex to the valid exchange name
2021-05-27 00:29:16 +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
1fb456d8ad
add Stringer interface to fixedpoint
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
36071d6649
move MillisecondsJitter to the util package
2021-05-26 23:41:45 +08:00
c9s
9d7f147fbf
fix address UnmarshalJSON
2021-05-26 23:37:08 +08:00
c9s
967c7e9f9d
xbalance: add withdrawal options
2021-05-26 23:24:05 +08:00
c9s
8781902b68
xmaker: fix stop hedge balance condition
2021-05-26 23:05:41 +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
zenix
3d2a27fc10
Fix: nil pointer exception in indicator creation, add stoch util func
2021-05-26 00:20:31 +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
c9s
bf684c0a5e
fix empty bids and ask issues
2021-05-25 15:54:41 +08:00
c9s
28c646a4db
reformat code
2021-05-25 01:50:36 +08:00
c9s
c8ca19a298
fixedpoint: fix percentage parsing
2021-05-25 01:36:17 +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
956ef71a48
use stamp time with milliseconds
2021-05-23 01:29:41 +08:00
c9s
fbe850b364
improve floating number formatting
2021-05-23 01:19:26 +08:00
c9s
117b26840e
show net profit margin percentage
2021-05-23 01:17:20 +08:00
c9s
de768296f1
fix rbtree memory error, check neel
2021-05-23 01:12:16 +08:00
c9s
9c70e36e1b
save average cost with feeInQuote in the ApproximateAverageCost
2021-05-23 01:05:11 +08:00
c9s
d2e299a68a
improve position comment
2021-05-23 00:42:57 +08:00
c9s
9efb45b133
reduce side book copy
2021-05-23 00:42:44 +08:00
c9s
9fa10ee1fd
fix rbtree price volume order
2021-05-23 00:42:27 +08:00
c9s
7a653affa6
slice orderbook: do not copy book callbacks
2021-05-23 00:21:57 +08:00
c9s
0061e51dc9
fix rbtree copy depth
2021-05-23 00:21:57 +08:00
なるみ
2052d05bb3
Move Float64Slice to types
2021-05-22 20:20:48 +08:00
c9s
1531f2bb1b
fix rbtree insertion and rotation
2021-05-22 18:11:32 +08:00
c9s
9b9643e1f9
improve order cancellation mechanisim
2021-05-22 17:44:20 +08:00
c9s
289227e5f3
add exists method for active book
2021-05-22 17:44:07 +08:00
c9s
0a908e5dda
fix position test for net profit
2021-05-22 17:43:53 +08:00
c9s
cca3284140
separate net profit and profit
2021-05-22 17:17:37 +08:00
Yo-An Lin
20f02886de
Merge pull request #250 from narumiruna/feature/kd
...
feature: add stochastic oscillator (KD) indicator
2021-05-22 16:52:46 +08:00
Yo-An Lin
890323c87b
Merge pull request #251 from narumiruna/fix/kline-window
...
fix: KLineWindow
2021-05-22 16:51:53 +08:00
c9s
6df72d54a8
add callbacks
2021-05-22 16:47:34 +08:00
c9s
8acada76a9
replace sliceorderbook with orderbook interface
2021-05-22 16:32:29 +08:00
c9s
cca37d309a
fix rbtree iteration
2021-05-22 14:57:14 +08:00
c9s
fd710d533f
implement tree copy method
2021-05-22 12:18:08 +08:00
c9s
56b2c8845b
fix preorder, postorder and inorder
2021-05-22 11:36:58 +08:00
なるみ
0377a7321e
Rename KD to STOCH
2021-05-22 05:52:10 +08:00
なるみ
b9ced0955d
Fix test
2021-05-22 05:36:38 +08:00
なるみ
25f76235e9
Fix GetHigh, GetLow and Mid
2021-05-22 05:26:27 +08:00
なるみ
50d96f1276
Fix KLineWindow.Tail
2021-05-22 05:22:38 +08:00
なるみ
ec6cbb05aa
Add kd_test.go
2021-05-22 05:00:27 +08:00
なるみ
b82fbbb2ab
Add pop, max, min, sum, mean and tail methods to Float64Slice
2021-05-22 03:28:25 +08:00
なるみ
c58e252ff2
Add stochastic oscillator indicator
2021-05-22 03:24:09 +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
09d68057c5
move price volume slice to a separated file
2021-05-21 12:32:47 +08:00
c9s
94fb0e320e
implement RBTree orderbook benchmark
2021-05-21 12:31:18 +08:00
c9s
f6229515ac
fix color ref
2021-05-21 02:18:45 +08:00
c9s
31f9920ddc
fix func comment
2021-05-21 02:17:57 +08:00
c9s
d2003bbc3d
remove unused emit function calls
2021-05-21 02:17:40 +08:00
c9s
d930816672
define RBOrderBook
2021-05-21 02:15:31 +08:00
c9s
be646fbac2
move rbtree to types package
2021-05-21 01:44:53 +08:00
c9s
edf8902b28
implement rbtree delete
2021-05-21 01:36:58 +08:00
c9s
d14137b878
add rbtree functions
2021-05-21 00:10:53 +08:00
c9s
57a78777df
move Time type to types.Time
2021-05-21 00:10:53 +08:00
c9s
4fde442722
Add position Reset function
2021-05-21 00:08:04 +08:00
c9s
d737ab678f
support removing filled orders from the order store
2021-05-21 00:07:43 +08:00
Yo-An Lin
343f184252
Merge pull request #248 from jnlin/fix/ftx-orderid
...
fix(ftx): use generated order id if not specified
2021-05-20 01:06:37 +08:00
Jui-Nan Lin
02649bdd63
fix(ftx): use generated order id if not specified
2021-05-19 21:37:29 +08:00
c9s
d1ad802806
improve trade command output layout
2021-05-19 17:54:30 +08:00
c9s
44901572ac
show order id in the slack attachment
2021-05-19 17:21:17 +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
7f86c75360
add CopyDepth for avoid copying the whole book
2021-05-19 00:15:11 +08:00
c9s
34106cf65e
add cpu profile option
2021-05-18 15:38:22 +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
422e85e3a3
twap: fix stop price check
2021-05-18 13:53:51 +08:00
c9s
896518f5c2
check if restQuantity is less than 0
2021-05-18 13:44:57 +08:00
c9s
21f7fa7846
twap: fix tick spread calculation
2021-05-18 13:38:23 +08:00
c9s
b8139e6e86
add xarb strategy
2021-05-18 10:19:35 +08:00
c9s
c4ccd8094f
make max client order id factory public
2021-05-18 09:10:43 +08:00
c9s
e23932f99c
xbalance: add checkOnStart option
2021-05-18 08:32:00 +08:00
c9s
d722b76564
adjust pips by bollband ratio
2021-05-17 23:57:20 +08:00
Yo-An Lin
d1bfeccc72
Merge pull request #246 from jnlin/fix/ftx-symbol
...
fix(ftxExchange): setup a symbol mapping table
2021-05-17 21:37:46 +08:00
c9s
1c19c02206
xmaker: fix order submission
2021-05-17 21:33:55 +08:00
Jui-Nan Lin
c0cf529db7
fix(ftx): allow empty TimeInForce to place market orders
2021-05-17 21:05:44 +08:00
c9s
f6f1226bd0
integrate bollband indicator into xmaker
2021-05-17 20:04:13 +08:00
c9s
b8fe100b5e
move balance printing to debug-balance env var
2021-05-17 20:04:13 +08:00
c9s
f80c98b97c
since we always receive balance update from websocket we do not need to subscribe 1m from the maker exchange
2021-05-17 20:04:13 +08:00
c9s
6370b39cde
adjust quantity by max amount if balance is not enough
2021-05-17 20:04:13 +08:00
c9s
c6ae1b54b8
remove redundant word
2021-05-17 20:04:13 +08:00
c9s
a1c888f04b
adjust profit margin percentage precesion
2021-05-17 20:04:13 +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
Yo-An Lin
345c3c9e2c
Merge pull request #245 from jnlin/fix/ftx-subaccount
2021-05-17 16:34:05 +08:00
Jui-Nan Lin
2d5ae1dde3
fix(ftxExchange): the env variable is "FTX_ACCOUNT"
2021-05-17 12:42:04 +08:00
c9s
6069102099
fix percentage
2021-05-17 09:02:34 +08:00
c9s
82e85dd27a
add profit margin
2021-05-17 08:59:20 +08:00
c9s
61d95a4c34
render trade time
2021-05-17 00:53:19 +08:00
c9s
45e930a086
use slack attachment title instead of pretext
2021-05-16 18:07:06 +08:00
c9s
e7c718ee15
assign fee rate to position
2021-05-16 17:58:51 +08:00
c9s
187a9c795b
use exchange fee rate as a reference for profit
2021-05-16 17:50:08 +08:00
c9s
d0e4a5e65c
move addTrade lock section
2021-05-16 17:05:12 +08:00
c9s
e636a5008d
replace Exchange field type with ExchangeName
2021-05-16 17:02:23 +08:00
c9s
0a016cba75
split maker fee and taker fee
2021-05-16 16:50:26 +08:00
c9s
491c4bbada
fixedpoint: support percentage parsing
2021-05-16 15:16:04 +08:00
c9s
a4381a54a3
add fee rate field
2021-05-16 15:03:36 +08:00
c9s
5c10f8a4e2
binance: call set server time service
2021-05-16 15:03:31 +08:00
c9s
fad1e39bba
update state asset name for legacy caches
2021-05-16 01:22:55 +08:00
c9s
b4f6653ccc
prefer PlainText interface over String interface
2021-05-16 01:21:35 +08:00
c9s
f176afee6f
remove duplicated notify
2021-05-16 01:18:54 +08:00
c9s
c9cdf31df1
add pnl emoji
2021-05-16 01:16:03 +08:00
c9s
6f79a7eea8
improve support strategy messages
2021-05-16 01:07:53 +08:00
c9s
f28cc18ce4
support: check target quantity and min notional
2021-05-16 01:04:46 +08:00
c9s
9aaad2d28c
add emoji icons to the messages
2021-05-16 01:03:28 +08:00
c9s
933765defb
add State PlainText method test
2021-05-16 00:59:57 +08:00
c9s
2652bee83b
remove arrow from the message text
2021-05-16 00:52:53 +08:00
c9s
f09e248c02
improve slack attachment title
2021-05-16 00:51:51 +08:00
c9s
16fbbd0e4b
notify transfer states
2021-05-16 00:51:12 +08:00
c9s
40b5baeda7
add maxDailyAmountOfTransfer check
2021-05-16 00:50:15 +08:00
c9s
942eaac659
improve message formatting
2021-05-16 00:45:08 +08:00
c9s
8eb8a3de72
refactor state functions
2021-05-16 00:32:27 +08:00
c9s
ca10135646
translate WithdrawalRequest to slack attachment
2021-05-16 00:03:19 +08:00
c9s
e0d3b7a418
fix message formating
2021-05-15 23:55:13 +08:00
c9s
1f449eca7f
implement SlackAttachment interface on Position
2021-05-15 23:50:03 +08:00
c9s
a582fdbfa7
xbalance: add jitter and notification messages
2021-05-15 10:42:16 +08:00
c9s
c85456b8e8
lock position for fetching base quantity
2021-05-15 10:06:48 +08:00
c9s
531799bdfb
use mutex composition since we may lock from out side
2021-05-15 10:05:39 +08:00
c9s
8071559f99
position: use pointer receiver
2021-05-15 10:02:04 +08:00
c9s
a636cdaec9
add mutex to Position since position could be changed from 2 goroutine
2021-05-15 10:01:41 +08:00
c9s
aa340f0db3
always check restQuantity
2021-05-15 10:00:32 +08:00
c9s
638cc40516
fix notification arguments
2021-05-15 09:59:17 +08:00
c9s
236df245a2
adjust quantity bases on the balances
2021-05-15 09:46:07 +08:00
c9s
f9cb414832
twap: add update-interval option
2021-05-15 09:29:44 +08:00
c9s
ae256ce9d3
add more quantity adjustment fix
2021-05-15 09:23:41 +08:00
c9s
356a8b77ac
adjust updateLimiter to 3 seconds one time
2021-05-15 09:20:46 +08:00
c9s
445feb016a
support price ticks option
2021-05-14 15:35:11 +08:00
c9s
a2bcfc8630
fix bollgrid function call
2021-05-14 15:34:58 +08:00
c9s
e3cb2ad86c
fix telegram arguments index update
2021-05-14 14:57:22 +08:00
c9s
abd6f4c7ef
rename bbgo.AdjustQuantityByMaxAmount to bbgo.AdjustFloatQuantityByMaxAmount
2021-05-14 14:53:26 +08:00
c9s
f1fe492117
improve string format
2021-05-14 14:53:26 +08:00
c9s
66bc06bc5f
add more order execution parameter checks
2021-05-14 14:53:26 +08:00
c9s
bb34b1002a
improve order execution graceful shutdown
2021-05-14 14:53:26 +08:00
c9s
dc040bb82b
improving logs
2021-05-14 14:53:26 +08:00
c9s
f69cbe9c31
add basic TwapExecution
2021-05-14 14:53:26 +08:00
c9s
c8b97629e0
add NumOfOrders method on active book
2021-05-14 14:53:26 +08:00
c9s
c520cfa540
xmaker: fix price calculation
2021-05-14 14:53:26 +08:00
c9s
3437515d6a
rename placeOrder to submitOrder for making the api consistent
2021-05-14 14:53:26 +08:00
Yo-An Lin
2aea0dee4f
Merge pull request #230 from LarryLuTW/bollgrid-enhance
...
bollgrid: generate the last order if balance is not enough
2021-05-14 11:51:25 +08:00
Lee
d1cef15f75
Fix: Correct the Order FILLED event on binance
2021-05-13 00:41:23 +08:00
Larry850806
4b53b3c96a
bollgrid: generate the last order if balance is not enough
2021-05-12 20:45:54 +08:00
c9s
3becb32843
bump version to v1.16.0
2021-05-12 19:41:03 +08:00
c9s
a49cf531b5
fix cross exchange order executor for the basic risk control
2021-05-12 19:02:09 +08:00
Yo-An Lin
dcd66d3449
Merge pull request #235 from jessy1092/binance_parser
...
Fix: Correct the binance executionReport parser
2021-05-12 19:01:14 +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
Yo-An Lin
4028c39dbf
Merge pull request #234 from narumiruna/fix/macd-vwap-test-case
2021-05-12 16:52:49 +08:00
なるみ
f1d88188e8
Fix test case
2021-05-12 14:39:10 +08:00
c9s
aa6520ec18
improve error messages
2021-05-12 12:54:46 +08:00
c9s
98e0390c1d
improve slack notification
2021-05-12 12:43:03 +08:00
c9s
807c049d63
refactor notifiers and add liquidity field to the trade
2021-05-12 12:37:48 +08:00
c9s
85e1b6b1c7
move field assignment
2021-05-12 12:05:54 +08:00
c9s
df11112d64
refactor exchange session initialization
2021-05-12 12:05:54 +08:00
c9s
8d63647104
assign session.Withdrawal
2021-05-12 12:05:54 +08:00
c9s
29b7326f19
add withdrawal property to the exchange session
2021-05-12 12:05:54 +08:00
Yo-An Lin
ca0061856d
Merge pull request #231 from zenixls2/binance_cancel
2021-05-12 09:25:34 +08:00
Yo-An Lin
3b61a16a81
Merge pull request #227 from narumiruna/feature/add-ad-indicator
2021-05-12 09:22:09 +08:00
Yo-An Lin
037f564b03
Merge pull request #226 from narumiruna/feature/add-obc-indicator
2021-05-12 09:21:27 +08:00
c9s
fd6fe56f32
implement withdrawal request on binance
2021-05-12 02:15:22 +08:00
c9s
9ff7b62123
add xbalance strategy
2021-05-12 01:21:40 +08:00
c9s
1e3e570edb
add ExchangeWithdrawalService interface
2021-05-12 01:21:21 +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
f197a0fc4f
improve log messages
2021-05-11 15:57:44 +08:00
c9s
9d53adc6ef
xmaker: ignore self trade
2021-05-11 15:56:46 +08:00
zenix
ba091dccf6
Fix: binance's cancel update is sent through New status with 0 quantity
2021-05-11 06:57:09 +00:00
c9s
610c33b819
improve support quantity for spot session
2021-05-11 13:25:29 +08:00
c9s
15086996e4
add balance warning
2021-05-11 12:53:32 +08:00
c9s
5f8e3259eb
add stopHedgeQuoteBalance and stopHedgeBaseBalance
2021-05-11 12:47:45 +08:00
c9s
d2a770bc05
adjust second layer price according to the pips
2021-05-11 01:06:39 +08:00
c9s
b86ed36aa2
calculate price by depth
2021-05-11 00:58:11 +08:00
c9s
4429a29c29
disable hedge quote adjustment
2021-05-11 00:10:49 +08:00
c9s
fa3ca54a55
improve warning messages
2021-05-10 23:52:17 +08:00
c9s
fe4e4bf5ea
use bbgo.AdjustQuantityByMaxAmount
2021-05-10 23:50:19 +08:00
c9s
b16d2553b5
remove floating point
2021-05-10 23:49:25 +08:00
c9s
1f9558cd64
use local timezone
2021-05-10 23:27:08 +08:00
なるみ
7cc5485bff
Add ad indicator
2021-05-10 20:39:27 +08:00
c9s
af8f718228
add more pnl details to the state
2021-05-10 20:22:33 +08:00
c9s
95d58e9385
adjust hedge quantity according to the hedge account balances
2021-05-10 20:13:23 +08:00
なるみ
f82a344964
Rename test function
2021-05-10 18:16:12 +08:00
なるみ
67f66153ab
Add obv test
2021-05-10 17:46:46 +08:00
なるみ
a2d7a40147
Add obv indicator
2021-05-10 17:17:50 +08:00
c9s
c1ea9ff9ed
xmaker: move cancel order calls to the go routine
2021-05-10 13:18:57 +08:00
c9s
c90871fb39
implement pending removal order ids
2021-05-10 13:06:23 +08:00
c9s
ddab6083d4
xmaker: support quantity scale
2021-05-10 02:52:41 +08:00
c9s
dde998aced
fix graceful shutdown
2021-05-10 02:17:19 +08:00
c9s
405f9c863f
xmaker: call cancel orders everytime
2021-05-10 01:47:17 +08:00
c9s
ce63641d70
print otp auth guide when session is loaded
2021-05-10 01:38:19 +08:00
Yo-An Lin
8a9fe7ea23
Merge pull request #221 from frankurcrazy/fix/skip-cancel-profit-order-on-graceful-exit
...
fix(bollgrid): skip canceling profit orders on graceful exit
2021-05-10 01:11:20 +08:00
c9s
8995300cbe
use go routine to send message so that we wont be blocked
2021-05-10 00:02:08 +08:00
c9s
0307a740e3
calculate accumulatedProfit
2021-05-09 23:56:54 +08:00
c9s
a98fbeea77
reduce notify calls
2021-05-09 21:14:51 +08:00
c9s
3f8f5616d7
add more order info the local order book printing
2021-05-09 20:03:16 +08:00
c9s
2f326d0fed
xmaker: add interval jitter
2021-05-09 20:03:06 +08:00
c9s
c278cdbf30
improve order sync map lock handling
2021-05-09 19:50:26 +08:00
c9s
74e01ce444
fix order waiting for graceful shutdown
2021-05-09 19:44:51 +08:00
c9s
e06310da26
print unhandled order status
2021-05-09 19:44:43 +08:00
c9s
ff90a704d9
fix fixedpoint format
2021-05-09 19:40:56 +08:00
c9s
e35eef2b72
fix message formatting
2021-05-09 19:15:37 +08:00
c9s
9525a334d2
add more fix
2021-05-09 19:04:44 +08:00
c9s
1b454be0f3
fix quote quantity label
2021-05-09 18:58:05 +08:00
c9s
b343ecad61
xmaker: add more helpful messages
2021-05-09 18:55:56 +08:00
c9s
dc282182a5
fix xmaker order cancellation in the graceful shutdown
2021-05-09 18:48:25 +08:00
c9s
569bbfea54
use new bbgo position for calculating profits
2021-05-09 18:46:09 +08:00
c9s
f44d85d704
fix QuantityMultiplier
2021-05-09 18:33:11 +08:00
c9s
c0f12cf452
xmaker: add active maker order cancellation check
2021-05-09 18:32:29 +08:00
なるみ
52248fcf2e
feature: add MACD indicator ( #219 )
2021-05-09 00:56:44 +08:00
Frank Chang
da0ea3d390
fix(bollgrid): skip canceling profit order on graceful exit
...
profit orders shouldn't be canceled on graceful exit unless
properly persisted.
a new strategy parameter `shutdownCancelProfitOrders` is added.
Issue: #220
2021-05-08 15:19:04 +08:00
なるみ
3f39131d76
feature: add volume weighted average price (vwap) indicator ( #211 )
2021-05-08 02:09:45 +08:00
c9s
fd7081e96f
bump version to v1.15.5
2021-05-08 01:11:31 +08:00
c9s
d01abffde3
add todo for the backtest trades
2021-05-08 01:09:06 +08:00
c9s
13d9f2ba49
grid: fix order generator checking
2021-05-08 01:00:57 +08:00
c9s
a94c42d9c2
grid: improve error messages
2021-05-08 00:59:30 +08:00
c9s
ee68deb114
apply limit param to the queries
2021-05-08 00:57:25 +08:00
c9s
d8d2e17b9e
fix backtest exchange query klines methods
2021-05-08 00:57:12 +08:00
c9s
6bbd66a4f9
split environment start and init
2021-05-08 00:45:24 +08:00
c9s
14eedecd0e
fix backtest sync from time
2021-05-08 00:44:43 +08:00
c9s
61ad2b6567
emit start callback for backtest
2021-05-08 00:43:53 +08:00
c9s
3501e8f5fd
refactor backtest, add BootstrapBacktestEnvironment
2021-05-08 00:14:25 +08:00
c9s
f67075c818
bump version to v1.15.4
2021-05-07 14:08:11 +08:00
c9s
858d6bdf05
grid: adjust callback registration ordering
2021-05-07 02:14:35 +08:00
c9s
494a270c54
insert trades to db only when backtest service is nil
2021-05-07 01:50:38 +08:00
c9s
584a4c2ef8
move fiat currency definition out
2021-05-07 01:30:09 +08:00
c9s
1264c50e83
improve balances, account command usability
2021-05-06 23:50:26 +08:00
c9s
1a81813e17
add --session option check
2021-05-06 23:44:05 +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
1ad8b0b641
remove unused SourceDir func
2021-05-04 01:06:20 +08:00
c9s
0fbc388333
add --webserver-bind option and add option to --enable-webserver
2021-05-03 17:24:39 +08:00
Larry850806
f1309c46fc
bollgrid: check balance before submit reverse order
2021-05-03 16:18:58 +08:00
c9s
50db944053
fix initSymbol stages
2021-05-02 23:58:34 +08:00
c9s
2230c56e56
fix comment warning
2021-05-02 23:48:53 +08:00
c9s
2ef13293e9
fix IDE warnings
2021-05-02 23:47:57 +08:00
c9s
5ec0566888
add more injection checks
2021-05-02 23:46:16 +08:00
c9s
822a010932
add moving average configuration to the schedule strategy
2021-05-02 20:58:32 +08:00
c9s
e29d9af9c8
fix persistence config unmarshalling
2021-05-02 18:16:34 +08:00
c9s
20d673f769
add schedule strategy
2021-05-02 18:03:41 +08:00
c9s
8fea2022e5
adjust rate limit for backtest data syncing
2021-05-02 17:46:08 +08:00
c9s
471e0a4c45
pass string format quantity and price
2021-04-28 19:48:17 +08:00
c9s
9f77236999
fix and improve position accessor
2021-04-28 19:32:49 +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
c9s
36beabaa0b
bump version to v1.15.3
2021-04-28 18:00:23 +08:00
c9s
70a53ed286
make config compatible with key 'strategies'
2021-04-28 17:58:50 +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
zenix
2d6eb02e6c
compile and update migration package
2021-04-21 11:21:15 +09:00
Larry850806
453a906a5a
bollgrid: use onStart instead of onConnect
2021-04-15 15:51:23 +08:00
Larry850806
980f1ae3e7
bollgrid: submit buy/sell orders separately
2021-04-15 12:31:18 +08:00
Larry850806
aa950b3dc4
bollgrid: track createdOrders when error occurs
2021-04-15 12:31:18 +08:00
Larry850806
a80afff0c2
grid: track createdOrders when error occurs
2021-04-15 12:31:18 +08: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
c9s
2ec4617694
add SyncService check
2021-04-09 12:44:30 +08:00
c9s
34fe915a9f
fix sync issue for pnl command
2021-04-09 12:43:13 +08:00
c9s
d315c12f2d
call environ.Init to setup sessions
2021-04-09 00:46:36 +08:00
Yo-An Lin
435f7fb12e
Merge pull request #190 from jnlin/feat/telegram-group
...
feat: allow telegram bot send to group
2021-04-04 11:21:20 +08:00
c9s
13a8597d59
add MaxExposurePosition settings
2021-04-04 11:14:09 +08:00
Jui-Nan Lin
1b953d88d4
feat: allow bot send to group
2021-04-03 12:50:13 +08:00
Larry850806
6718aace8c
Add validation for support strategy
2021-04-02 10:32:38 +08:00
Larry850806
53133851cc
Add validation for grid strategy
2021-04-02 10:32:38 +08:00
Larry850806
2c41ec28ae
Add validation for bollgrid strategy
2021-04-02 10:32:34 +08:00
Larry850806
dbf5d27f30
Add a validator interface to validate strategy before run
2021-04-02 10:12:55 +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
24254a869d
ftx: invoke SetPublicOnly in orderbook command
2021-03-27 17:37:16 +08:00
ycdesu
34548f185c
ftx: add missing ftx case
2021-03-27 17:00:55 +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
c82df27cf3
grid: fix message format
2021-03-25 15:22:52 +08:00
c9s
13af4505f7
bump version to v1.15.2
2021-03-25 13:41:44 +08:00
c9s
129b25d86e
fix persistence key
2021-03-25 13:18:38 +08:00
c9s
89c01adf60
xmaker: fix state passing for persistence
2021-03-25 13:16:48 +08:00
c9s
121a679d4a
fix margin struct tag
2021-03-25 13:16:27 +08:00
c9s
8122fddd02
add exchange field to binance trades and binance orders
2021-03-24 17:51:19 +08:00
YC
80e5144950
Merge pull request #184 from c9s/ftx/add-missing-query-string
2021-03-24 16:26:33 +08:00