Commit Graph

440 Commits

Author SHA1 Message Date
c9s
e5db780be8 notify trades and update position 2021-06-01 01:39:22 +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
8d31435ded add trade store 2021-05-29 00:25:23 +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
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
2381df5009 add okex to the exchange factory 2021-05-27 00:35:51 +08:00
zenix
3d2a27fc10 Fix: nil pointer exception in indicator creation, add stoch util func 2021-05-26 00:20:31 +00: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
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
c9s
8acada76a9 replace sliceorderbook with orderbook interface 2021-05-22 16:32:29 +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
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
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
f6f1226bd0 integrate bollband indicator into xmaker 2021-05-17 20:04:13 +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
a4381a54a3 add fee rate field 2021-05-16 15:03:36 +08:00
c9s
c9cdf31df1 add pnl emoji 2021-05-16 01:16:03 +08:00
c9s
942eaac659 improve message formatting 2021-05-16 00:45:08 +08:00
c9s
1f449eca7f implement SlackAttachment interface on Position 2021-05-15 23:50:03 +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
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
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
a49cf531b5 fix cross exchange order executor for the basic risk control 2021-05-12 19:02:09 +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
zenix
ba091dccf6 Fix: binance's cancel update is sent through New status with 0 quantity 2021-05-11 06:57:09 +00:00
c9s
95d58e9385 adjust hedge quantity according to the hedge account balances 2021-05-10 20:13:23 +08:00
c9s
ddab6083d4 xmaker: support quantity scale 2021-05-10 02:52:41 +08:00
c9s
ce63641d70 print otp auth guide when session is loaded 2021-05-10 01:38:19 +08:00
c9s
3f8f5616d7 add more order info the local order book printing 2021-05-09 20:03:16 +08:00
c9s
e06310da26 print unhandled order status 2021-05-09 19:44:43 +08:00
c9s
d01abffde3 add todo for the backtest trades 2021-05-08 01:09:06 +08:00
c9s
6bbd66a4f9 split environment start and init 2021-05-08 00:45:24 +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
1ad8b0b641 remove unused SourceDir func 2021-05-04 01:06:20 +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
9f77236999 fix and improve position accessor 2021-04-28 19:32:49 +08:00
c9s
70a53ed286 make config compatible with key 'strategies' 2021-04-28 17:58:50 +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
Larry850806
dbf5d27f30 Add a validator interface to validate strategy before run 2021-04-02 10:12:55 +08:00
c9s
6c8babfb27 allow public session 2021-03-22 17:40:17 +08:00
c9s
088b22f338 support bbgo-no-cache option 2021-03-22 17:32:21 +08:00
c9s
814a77ea39 xmaker: improve balance checking 2021-03-21 12:55:33 +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
a95c3b94a0 core: set default store ID 2021-03-18 17:20:07 +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
85b6cb81a2 make local active orderbook json marshallable 2021-03-18 01:15:06 +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
40fded70b2 reformat scale.go 2021-03-16 02:14:10 +08:00
c9s
2f7c7d344b move emitStart method call into the stream Connect method 2021-03-16 01:32:27 +08:00
c9s
7951c38edc skip connection if there is no subscription 2021-03-16 01:31:56 +08:00
ycdesu
c08899f7fb ftx: add ftx to supported exchange 2021-03-15 20:40:04 +08:00
c9s
c3996aee2b add Backup method to the local active order book 2021-03-15 18:25:36 +08:00
c9s
e311a182fa add onStart callbacks 2021-03-15 18:04:03 +08:00
c9s
9f7af3ce82 assign SubAccount name to the new exchange session 2021-03-15 17:51:17 +08:00
c9s
e8ccc5eabf pass SubAccount field to the factory 2021-03-15 10:23:00 +08:00
c9s
2eda012f43 add SubAccount field to the exchange session config 2021-03-15 10:13:41 +08:00