Commit Graph

509 Commits

Author SHA1 Message Date
c9s
8f4ae1e15b xgap: check balance and adjust order quantity according to the available balance 2021-12-28 02:11:11 +08:00
c9s
958dd97f52 xgap: add SimulateVolume 2021-12-28 01:48:24 +08:00
c9s
1fa03cdfd6 xmaker: add back profit function 2021-12-27 02:59:55 +08:00
c9s
f7c39290a0 call tradeCollector process to check trades 2021-12-27 00:51:57 +08:00
c9s
dcdf33e2c9 xmaker: pull out notifyTrade to a single callback 2021-12-27 00:12:35 +08:00
c9s
65da02af2c xmaker: call TruncateQuantity when the quantity is adjusted 2021-12-26 15:45:39 +08:00
c9s
902e27ede4 xmaker: truncate quantity when hedging 2021-12-26 15:44:41 +08:00
c9s
05a0745d08 fix InitExchange for publicOnly session 2021-12-26 15:29:42 +08:00
c9s
30a7ca1ce1 rename gap to xgap 2021-12-26 15:13:51 +08:00
c9s
1c54e59d55 xmaker: fix trade handling 2021-12-26 12:10:10 +08:00
なるみ
4a8be9cc1a Fix log 2021-12-22 02:04:44 +08:00
なるみ
2999e41ef0 Validate config 2021-12-22 01:59:38 +08:00
なるみ
41d4001872 Add log 2021-12-22 01:59:25 +08:00
Yo-An Lin
1ab20e6397
Merge pull request #381 from narumiruna/maxamount
strategy: rebalance: adjust quantity by max amount
2021-12-21 20:20:44 +08:00
なるみ
531805a449 Adjust quantity by max amount 2021-12-20 23:46:22 +08:00
Andy Cheng
e4bdb1de06
strategy: allow setting the interval and the window for trigger MA 2021-12-19 18:28:47 +08:00
Andy Cheng
d281182432
strategy: fix support strategy criteria 2021-12-19 17:53:34 +08:00
Yo-An Lin
d531e041dd Merge pull request #357 from narumiruna/rebalance
feature: add portfolio rebalancing strategy
2021-12-14 12:01:07 +08:00
なるみ
f320d78f2f Refactor 2021-12-14 02:18:08 +08:00
なるみ
f494a0f514 Initial commit of rebalance strategy 2021-12-13 05:19:44 +08:00
austin362667
1703fff8b2 types: refactor Position and related files 2021-12-11 19:16:16 +08:00
c9s
ca85aa69e6 pull out global premium index type and funding rate type 2021-12-09 00:10:18 +08:00
c9s
1de4e5ee4c grid: fix parameter checking for fixed amount 2021-12-07 15:37:37 +08:00
c9s
85bb9f214e grid: disable trade marking 2021-12-06 01:34:08 +08:00
TonyQ
056afb577c fix generateGridSellOrders with ProfitSpread for begining 2021-11-30 11:55:00 +08:00
c9s
513a799ced fix ewma calculation 2021-11-22 02:14:44 +08:00
c9s
7a3963b34e techsignal: if it's already high funding rate, do not show change 2021-11-06 15:23:52 +08:00
c9s
0c8addc58b grid: refactor trade callback for s.TradeService.Mark 2021-11-05 01:05:43 +08:00
c9s
6851d8d254 grid: add field guards 2021-11-05 01:04:13 +08:00
c9s
7db7596abe grid: refactor trade handler with trade collector 2021-11-05 00:30:04 +08:00
c9s
7787edffa0 refactor grid strategy state loading/saving 2021-11-05 00:22:44 +08:00
c9s
bfaec8fdd8 increase min amount if it's not greater than min notional 2021-11-04 23:22:01 +08:00
c9s
6002a958d2 grid: fix format error 2021-11-04 13:08:38 +08:00
c9s
7eb91cc7cc adjust grid quantity if it does not match min notional and min quantity 2021-11-04 12:50:32 +08:00
c9s
ed1d0ea27e add xnav strategy 2021-10-29 10:40:14 +08:00
c9s
6cb593cd90 techsignal: use realtime funding rate 2021-10-20 14:01:19 +08:00
c9s
1e6692ec8d rename funding rate query method name 2021-10-19 15:29:55 +08:00
c9s
af602df302 techsignal: add math.Round for quote volumes 2021-10-18 20:06:23 +08:00
c9s
3a68d9dae4 techsignal: fix arg cast 2021-10-18 19:40:51 +08:00
c9s
721d63bee0 techsignal: add skip log 2021-10-18 11:10:54 +08:00
c9s
ebc61de946 techsignal: fix ma subscription 2021-10-18 09:00:56 +08:00
c9s
d446dbbed7 bollpp: send profit stat notification 2021-10-18 01:16:46 +08:00
c9s
d6b707c832 bollpp: fix order quantity 2021-10-18 00:56:22 +08:00
c9s
0bd32094ee bollpp: improve bolling ping pong maker 2021-10-18 00:42:01 +08:00
c9s
759b6a812b techsignal: fix funding rate diff 2021-10-17 22:26:04 +08:00
c9s
a3f68d7b72 xmaker: use bbgo.NewPositionFromMarket 2021-10-17 22:24:57 +08:00
c9s
450b7bb61e bollpp: improve boll ping pong strategy with profit stats 2021-10-17 22:23:34 +08:00
c9s
77e7f814d9 support: refactor PercentageTargetStop logics 2021-10-15 16:10:57 +08:00
c9s
a2c29f4519 support: remove legacy resistance code 2021-10-15 12:38:16 +08:00
c9s
d704e19f04 move signedPercentage method to fixedpoint 2021-10-15 12:22:53 +08:00
c9s
952bdf8218 move currency formatter to market struct 2021-10-15 11:50:37 +08:00
c9s
790b3357d7 techsignal: adjust funding rate notification 2021-10-15 11:13:00 +08:00
c9s
4523135012 techsignal: add funding rate checker 2021-10-14 23:01:10 +08:00
c9s
e7fe443cbe show kline in the notification 2021-10-14 14:32:49 +08:00
c9s
fbbefe2878 techsignal: show interval in the message 2021-10-14 14:30:45 +08:00
c9s
a6848a6af4 add strategy/techsignal 2021-10-14 14:24:08 +08:00
c9s
4c2897a86d use Float64 indicator from the types package 2021-10-14 13:15:08 +08:00
c9s
4c061439d3 rename buyandhold to pricedrop 2021-10-14 13:10:00 +08:00
c9s
768a88247b rename bpp to bollpp (bollinger pingpong) 2021-10-14 12:52:54 +08:00
c9s
6e7f12ca9f rename trailingstop to emastop 2021-10-14 12:04:56 +08:00
c9s
e2f58d0466 xmaker: use report ticker to report profit stats 2021-10-14 08:53:44 +08:00
c9s
d3fa0a964b bbgo: add slack attachment support for profit 2021-10-14 01:27:50 +08:00
c9s
e4281b1a02 xmaker: update notification message with strategy ID 2021-10-14 01:27:37 +08:00
c9s
bbc1775ec5 xmaker: update symbol, base, quote currency to profit stats 2021-10-14 01:26:40 +08:00
c9s
8374c98609 xmaker: fix time type casting 2021-10-14 01:26:31 +08:00
c9s
5039a43413 bbgo: move pnl formating to the bbgo package 2021-10-14 01:26:11 +08:00
c9s
45645d0a3d use the profit struct to pass profit info 2021-10-08 19:16:40 +08:00
c9s
d058125f78 bbgo: refactor profit stats 2021-10-08 14:57:44 +08:00
c9s
9e93cd66de strategy: update trade collector api 2021-10-08 13:24:14 +08:00
c9s
8f74c106d6 support: merge stash 2021-10-08 13:14:21 +08:00
c9s
184f93ce79 support: fix interval check 2021-10-08 13:13:49 +08:00
c9s
01de2c5f66 support: fix long term ema kline subscription 2021-10-08 13:13:49 +08:00
c9s
f97eb8914a support: add resistance check 2021-10-08 13:13:49 +08:00
c9s
1091010f64 support: move property configuration to the top 2021-10-08 13:13:49 +08:00
c9s
3539047a39 support: show ema price 2021-10-08 13:13:49 +08:00
c9s
6917b98a74 schedule: show closed price 2021-10-08 11:59:23 +08:00
c9s
f0503b99a1 schedule: add interval check 2021-10-08 11:58:50 +08:00
c9s
193961c4e0 add bpp strategy 2021-10-07 16:39:20 +08:00
c9s
1bc36b17ff xbalance: add verbose flag 2021-09-03 14:25:26 +08:00
c9s
99f97df43b etf: use break instead of return 2021-08-26 11:58:25 +08:00
c9s
8d01c97240 fix cyclic import issue 2021-08-26 11:46:02 +08:00
c9s
1f94ae1c19 bbgo: move moving average settings struct into bbgo 2021-08-26 11:32:39 +08:00
c9s
2c378d6047 add etf strategy 2021-08-26 11:31:36 +08:00
c9s
0dd7438fd7 schedule: show scheduled order price 2021-08-26 10:29:27 +08:00
c9s
684bfcea19 xbalance: capitalize message 2021-08-19 16:35:16 +08:00
c9s
66b7e1fc3f schedule: fix schedule subscription 2021-08-19 16:35:05 +08:00
c9s
cf29cfadd0 xbalance: show balance error message 2021-08-17 12:18:29 +08:00
c9s
47258b31c6 xbalance: fix message 2021-08-17 11:36:51 +08:00
c9s
5a0ae6773c xbalance: configure middle value automatically from total value 2021-08-16 12:52:12 +08:00
c9s
490eb15748 schedule: fix order notification 2021-08-16 12:11:15 +08:00
c9s
5e2b8af4dc xmaker: fix reset today 2021-07-06 12:19:59 +08:00
c9s
1d316ed89c xmaker: call reset today if the date exceeded 2021-07-06 12:19:59 +08:00
c9s
3165d10986 support: use trade collector 2021-06-26 20:26:47 +08:00
c9s
aab0c377d7 xmaker: reformat code 2021-06-26 20:26:47 +08:00
c9s
b58b48d668 xmaker: refactor profit stats 2021-06-26 20:26:47 +08:00
c9s
cef28fa651 xbalance: use time util function from the util package 2021-06-26 20:26:47 +08:00
c9s
5621effd6b add resistance 2021-06-21 19:03:50 +08:00
c9s
4bc0612265 support: add minBaseAssetBalance 2021-06-17 19:28:11 +08:00
c9s
f9fa6e96c3 support: refactor kline handler 2021-06-16 20:33:52 +08:00
c9s
811319fa25 support: fix sensitivity calculation 2021-06-16 14:16:39 +08:00
c9s
5fecccedd6 add resistance check 2021-06-16 13:23:33 +08:00
c9s
3d12a7df59 support: add sensitivity settings 2021-06-16 13:14:10 +08:00
c9s
990da5ad3b xbalance: add foreign fee for withdrawal 2021-06-09 01:37:33 +08:00
c9s
3fd170a4ff xmaker: check book before copying 2021-06-09 01:35:56 +08:00
c9s
f5a241a1a8 xmaker: improve warn message 2021-06-09 01:35:50 +08:00
c9s
a0d8a3718a xmaker: fix bid/ask price check 2021-06-07 02:50:11 +08:00
c9s
d5617d44aa xmaker: pass source market and maker market for formatting 2021-06-07 02:49:54 +08:00
c9s
0a74cc7171 xmaker: add useDepthPrice option 2021-06-07 02:49:44 +08:00
c9s
b60fd9e356 support: fix quantity formatting 2021-06-07 00:57:47 +08:00
c9s
f66095eff9 support: add target orders to the orders 2021-06-01 01:39:22 +08:00
c9s
e5db780be8 notify trades and update position 2021-06-01 01:39:22 +08:00
c9s
40c3a5870f support strategy improvements:
- add taker buy base volume ratio option
- add max base asset balance config
- add min quote asset balance config
- record orders and trades
2021-06-01 01:39:22 +08:00
c9s
69e76485c5 xbalance: fix ticker usage 2021-05-30 18:06:31 +08:00
c9s
38fd5422ab xmaker: use uncovered position 2021-05-30 14:46:48 +08:00
c9s
9a68cfd288 xmaker: fix trade checking 2021-05-30 00:11:35 +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
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
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
45f1a13870 rename Stream field to UserDataStream and add MarketDataStream 2021-05-27 14:45:06 +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
c9s
117b26840e show net profit margin percentage 2021-05-23 01:17:20 +08:00
c9s
9b9643e1f9 improve order cancellation mechanisim 2021-05-22 17:44:20 +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
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
c9s
1c19c02206 xmaker: fix order submission 2021-05-17 21:33:55 +08:00
c9s
f6f1226bd0 integrate bollband indicator into xmaker 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
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
e7c718ee15 assign fee rate to position 2021-05-16 17:58:51 +08:00
c9s
fad1e39bba update state asset name for legacy caches 2021-05-16 01:22:55 +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
a582fdbfa7 xbalance: add jitter and notification messages 2021-05-15 10:42:16 +08:00
c9s
638cc40516 fix notification arguments 2021-05-15 09:59:17 +08:00
c9s
a2bcfc8630 fix bollgrid function call 2021-05-14 15:34:58 +08:00
c9s
abd6f4c7ef rename bbgo.AdjustQuantityByMaxAmount to bbgo.AdjustFloatQuantityByMaxAmount 2021-05-14 14:53:26 +08:00
c9s
f69cbe9c31 add basic TwapExecution 2021-05-14 14:53:26 +08:00
c9s
c520cfa540 xmaker: fix price calculation 2021-05-14 14:53:26 +08:00
Larry850806
4b53b3c96a bollgrid: generate the last order if balance is not enough 2021-05-12 20:45:54 +08:00
c9s
a49cf531b5 fix cross exchange order executor for the basic risk control 2021-05-12 19:02:09 +08:00
c9s
29b7326f19 add withdrawal property to the exchange session 2021-05-12 12:05:54 +08:00
c9s
9ff7b62123 add xbalance strategy 2021-05-12 01:21:40 +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
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
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
c9s
c1ea9ff9ed xmaker: move cancel order calls to the go routine 2021-05-10 13:18:57 +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
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
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
2f326d0fed xmaker: add interval jitter 2021-05-09 20:03:06 +08:00
c9s
74e01ce444 fix order waiting for graceful shutdown 2021-05-09 19:44:51 +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
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