Commit Graph

1983 Commits

Author SHA1 Message Date
c9s
b1c1caa6af
tri: load test data from static file 2023-07-11 14:07:07 +08:00
Andy Cheng
1a90cd0322
improve/profitStatsTracker: rename InitOld() to InitLegacy() 2023-07-11 10:48:29 +08:00
Andy Cheng
4c1639cf00
fix/profitStatsTracker: market is initiated after strategy Subscribe() 2023-07-11 10:48:28 +08:00
Andy Cheng
ae7ae27d82
improve/profitStatsTracker: rename ProfitTracker to ProfitStatsTracker 2023-07-11 10:48:28 +08:00
Andy Cheng
bcbb27de79
improve/profitTracker: subscribe kline in strategy Subscribe() 2023-07-11 10:48:28 +08:00
Andy Cheng
80170e0397
improve/profitTracker: do not bind in order executor 2023-07-11 10:48:28 +08:00
Andy Cheng
5513330816
feature/profitTracker: fix bugs 2023-07-11 10:48:28 +08:00
Andy Cheng
027acfe3b5
feature/profitTracker: integrate profit report with profit tracker 2023-07-11 10:48:28 +08:00
Andy Cheng
a197352c6e
feature/profitTracker: use profitTracker in Supertrend strategy 2023-07-11 10:48:28 +08:00
c9s
1da94f55e9
Merge pull request #1226 from c9s/c9s/base-strategy
REFACTOR: pull out base strategy struct
2023-07-10 17:50:12 +08:00
c9s
630b0d476d
scmaker: use dot import to use v2 indicator DSL 2023-07-10 17:17:46 +08:00
c9s
5853434aec
all: move v2 indicator to indicator/v2 2023-07-10 17:17:46 +08:00
c9s
3293866a6c
common: pull out RiskController 2023-07-10 15:27:36 +08:00
c9s
3b6cff8dc7
strategy: move risk control to common.Strategy 2023-07-10 15:24:07 +08:00
c9s
12bb22ae87
rsicross: remove unused funcs 2023-07-09 21:24:56 +08:00
c9s
5c88abe72f
add rsicross strategy 2023-07-09 21:23:42 +08:00
c9s
7c2de46273
pkg: rename base -> common 2023-07-09 19:55:36 +08:00
c9s
c9c058e717
base: simplify naming 2023-07-09 16:04:27 +08:00
c9s
62d394d183
all: moving common strategy functionality to strategy/base 2023-07-09 15:48:07 +08:00
c9s
b47da70909
Merge pull request #1223 from c9s/c9s/google-spreadsheet 2023-07-07 18:35:23 +08:00
c9s
f9eba64816
xfunding: always sync funding fee 2023-07-06 16:02:37 +08:00
c9s
dc16e0c299
xfunding: reset LastFundingFeeTime 2023-07-06 15:58:42 +08:00
c9s
e8922a4c3a
xfunding: support transferIn with zero quantity 2023-07-05 17:18:28 +08:00
c9s
f505dda80f
xfunding: handle reset transfer when starting up 2023-07-05 16:59:10 +08:00
c9s
f6a3be6ff5
xfunding: improve checkAndRestorePositionRisks 2023-07-05 16:48:19 +08:00
c9s
bd347d5aa5
xfunding: log positionRisks 2023-07-05 16:48:19 +08:00
c9s
e4ababd39e
xfunding: fix spot order parameters 2023-07-05 16:48:19 +08:00
c9s
12aad7b292
xfunding: log spot balance 2023-07-05 16:48:19 +08:00
c9s
a766d88d60
xfunding: fix balance check 2023-07-05 16:48:19 +08:00
c9s
017278826b
xfunding: log failed order 2023-07-05 16:48:19 +08:00
c9s
34d42afbec
xfunding: fix syncSpotPosition cancel order issue 2023-07-05 16:48:18 +08:00
c9s
2813ede7ed
xfunding: fix transferOut, and de-leverage the trade amount from the caller 2023-07-05 16:48:18 +08:00
c9s
e82341b2bd
xfunding: add more transfer logs 2023-07-05 16:48:18 +08:00
c9s
5d0bdd19e3
xfunding: always transfer balance out when reducing the futures position 2023-07-05 16:48:18 +08:00
c9s
c818f79932
fix 2023-07-05 16:48:18 +08:00
c9s
84e9b03be7
xfunding: show balance 2023-07-05 16:48:18 +08:00
c9s
7904c73c53
xfunding: use closePosition option when only dust left in the futures position 2023-07-05 16:48:18 +08:00
c9s
d730340b7a
remove diff quantity check 2023-07-05 16:48:18 +08:00
c9s
631203c89e
tri: update symbol file 2023-07-05 16:46:43 +08:00
c9s
f06e37c44f
tri: ignore test in dnum mode 2023-07-05 16:02:11 +08:00
c9s
e19aa8fa10
add tri strategy 2023-07-05 15:51:16 +08:00
c9s
1ad10a9360
all: move trade collector to pkg/core 2023-07-05 15:26:36 +08:00
c9s
f1828beac8
all: move trade store and order store into pkg/core 2023-07-04 21:42:24 +08:00
c9s
adbb6d7f93
riskcontrol: move parameter order 2023-07-04 21:32:34 +08:00
c9s
c8ae36ddfc
riskcontrol: move release position order submission into the pos risk control 2023-07-04 21:31:47 +08:00
c9s
0426c18757
scmaker: initialize order executor before we setup risk control 2023-07-03 17:39:42 +08:00
c9s
ae3f371551
all: refactor risk control and integrate risk control into scmaker 2023-07-03 17:09:13 +08:00
c9s
3052dd5add
scmaker: add liquiditySkew support 2023-07-03 16:22:01 +08:00
c9s
3929eb2090
Merge pull request #1214 from c9s/refactor/bollmaker
REFACTOR: [bollmaker] upgrade to indicator v2
2023-06-30 12:01:47 +08:00
c9s
085114b244
grid2: add warning message when failed to acquire the lock 2023-06-30 11:07:02 +08:00
c9s
fc7edc5c80
grid2: call TryLock in updateGridNumOfOrdersMetricsWithLock 2023-06-30 01:05:18 +08:00
c9s
e3be2a8af6
bollmaker: replace bollinger indicator with v2 indicator 2023-06-29 18:04:39 +08:00
c9s
b6dba18f77
all: move retry functions to the retry package 2023-06-29 10:59:01 +08:00
gx578007
8e64b5293e MINOR: [grid2] delete order prices metric 2023-06-23 21:30:32 +08:00
c9s
c802fae211
xalign: add logger 2023-06-21 17:36:09 +08:00
c9s
f6128b9bdc
xalign: support percentage string 2023-06-21 15:59:15 +08:00
c9s
76884a4ddf
xalign: add balance fault tolerance 2023-06-21 15:56:59 +08:00
c9s
d4cf39430e
xgap: fix group id range 2023-06-20 17:18:15 +08:00
c9s
de00e5fa88
scmaker: preload indicators 2023-06-19 17:03:38 +08:00
c9s
55b8413472
scmaker: when user data stream is ready, place liquidity orders 2023-06-19 15:38:55 +08:00
c9s
f579fc7d93
scmaker: call cancel api before starting up 2023-06-19 15:25:10 +08:00
c9s
58a13507bc
scmaker: graceful cancel orders 2023-06-19 15:22:43 +08:00
c9s
2448fa6f83
scmaker: add MaxExposure option 2023-06-19 13:46:45 +08:00
c9s
dc3901cc7f
xfunding: add more notificiation 2023-06-16 13:03:37 +08:00
c9s
8bd5fc246c
Merge pull request #1168 from andycheng123/profit-report-parameter
FEATURE: Accumulated Profit report
2023-06-15 18:14:44 +08:00
Andy Cheng
6b46b1e01e
Merge branch 'main' into profit-report-parameter 2023-06-15 17:28:02 +08:00
c9s
a7b2051858
scmaker: fix the layer price 2023-06-15 17:26:04 +08:00
c9s
73726b91c7
scmaker: check ticker price and adjust liq order prices 2023-06-15 13:47:21 +08:00
c9s
148869d46b
scmaker: clean up 2023-06-14 17:31:01 +08:00
c9s
8344193e81
scmaker: rename liquidityLayerTick to liquidityLayerTickSize 2023-06-14 17:25:23 +08:00
c9s
372028ebe6
scmaker: truncate price with price precision 2023-06-14 17:25:23 +08:00
c9s
68c3c96b10
scmaker: fix balance lock and active order book update issue 2023-06-14 17:25:23 +08:00
c9s
f426d151a8
scmaker: final version 2023-06-14 17:25:23 +08:00
c9s
b8597a1803
scmaker: calculate balance quantity 2023-06-14 17:25:23 +08:00
c9s
40f8283616
scmaker: basic prototype 2023-06-14 17:25:23 +08:00
c9s
a28081a5d2
xalign: add more checks 2023-06-14 17:25:22 +08:00
c9s
c00d7b669b
Merge pull request #1174 from c9s/feature/grid2/recover
FEATURE: [grid2] recover with twin orders
2023-06-14 13:02:12 +08:00
c9s
1fd52f78a9
xalign: allocate and bind order store 2023-06-13 23:23:41 +08:00
c9s
45aaad1629
xalign: improve update message 2023-06-13 23:21:07 +08:00
c9s
007f3c9531
autoborrow: add margin level check back 2023-06-13 23:17:24 +08:00
c9s
1855e52838
xalign: graceful cancel orders when shutting down 2023-06-13 17:29:19 +08:00
c9s
0a7c0632c4
xalign: use %+v format for submit order 2023-06-13 17:08:37 +08:00
c9s
6308ef5107
autoborrow: repay debt first 2023-06-13 14:21:16 +08:00
c9s
476378e742
xalign:add one more dust check 2023-06-13 13:53:51 +08:00
c9s
599b18fc3c
xalign: skip dust quantity 2023-06-13 13:49:22 +08:00
c9s
358e873582
xalign: add notification 2023-06-13 13:47:01 +08:00
c9s
64dcef3429
xalign: fix tick size calculation 2023-06-13 13:44:31 +08:00
c9s
dadf22e48f
xalign: add more log 2023-06-13 13:40:39 +08:00
c9s
5a30bedc77
autoborrow: always repay first when it deposits 2023-06-13 13:23:10 +08:00
c9s
fe5a6f4c36
xalign: fix quote amount check 2023-06-13 12:42:07 +08:00
c9s
740cfe6d5c
xalign: fix session refs 2023-06-13 12:27:38 +08:00
c9s
909c8f5cc7
xalign: add more checks 2023-06-13 12:25:10 +08:00
c9s
518c6938be
xalign: add more checks 2023-06-13 12:25:04 +08:00
chiahung
49971a2e50 use existing interface 2023-06-12 17:15:56 +08:00
chiahung
18a7520fa7 MINOR: add test for recovery 2023-06-12 17:15:56 +08:00
chiahung
2f050332eb FEATURE: query trades until hard limit or finish filled 2023-06-12 17:15:56 +08:00
chiahung
f38cfb6ea3 REFACTOR: refactor for future test 2023-06-12 17:15:56 +08:00
chiahung
61892eb2df renaming 2023-06-12 17:15:56 +08:00
chiahung
93d35cc423 FEATURE: use TwinOrder to recover 2023-06-12 17:15:56 +08:00
c9s
f6f3293191
xalign: round up requiredQuoteAmount 2023-06-09 11:04:31 +08:00
c9s
8baafdf329
xalign: add DryRun and fix quote amount calculation 2023-06-08 23:15:26 +08:00
c9s
7a6000a316
xalign: fix instanceID 2023-06-08 18:05:58 +08:00
c9s
db43c87227
xalign: load interval from config 2023-06-08 17:02:06 +08:00
c9s
c9ee4e52cc
xalign: add xalign strategy 2023-06-08 17:02:05 +08:00
c9s
0f141c7f79
schedule: add MinBaseBalance config 2023-06-07 16:36:38 +08:00
c9s
e0e27e75bb
schedule: graceful cancel orders before the next submission 2023-06-07 16:30:54 +08:00
c9s
f6a300a7c4
schedule: add useLimitOrder option 2023-06-07 16:27:36 +08:00
Yo-An Lin
c0bb953019
Merge pull request #1185 from c9s/c9s/fix-autoborrow
FIX: [autoborrow] add max borrowable check and add more notifications
2023-06-01 21:24:34 +08:00
c9s
b55fbd5c96
autoborrow: check maxBorrowable 2023-06-01 12:27:39 +08:00
c9s
95e1f10934
autoborrow: send notify when auto repay is skip 2023-06-01 12:18:53 +08:00
c9s
1dfb0cd1a1
autoborrow: notify balance delta event 2023-06-01 12:13:51 +08:00
c9s
f349f3620c
autoborrow: add SlackAttachment support to the binance balance update event 2023-06-01 12:13:22 +08:00
c9s
c9c13b2013
all: replace all Index(i) callers 2023-06-01 07:46:50 +08:00
c9s
5515f588e3
all: add parameter index to the Last method 2023-05-31 19:35:44 +08:00
c9s
ba0102e992
pivotshort: fix find pivot func call 2023-05-31 13:08:21 +08:00
Yo-An Lin
67fe27774c
Merge pull request #1179 from c9s/c9s/refactor-indicator
FEATURE: new indicator API design
2023-05-29 17:06:16 +08:00
c9s
5ef7da8422
grid2: fix precheck 2023-05-26 16:09:07 +08:00
c9s
9fac61351d
all: rename Minus() to Sub() 2023-05-26 15:06:52 +08:00
c9s
648e99f52a
all: refactor and rename indicator.MACD to indicator.MACDLegacy 2023-05-26 15:06:52 +08:00
c9s
273659a870
grid2: update comment 2023-05-26 14:51:06 +08:00
c9s
8c09c9668a
grid2: improve base quote investment check 2023-05-26 14:49:56 +08:00
c9s
f7a5c84768
all: reformat code 2023-05-25 14:01:22 +08:00
c9s
8e426ca4bf
grid2: add last price == sell price case 2023-05-25 13:31:47 +08:00
Yo-An Lin
862848721f
Fix placeSell condition 2023-05-24 17:52:14 +08:00
c9s
26cbd60a66
grid2: add one more test case for base + quote 2023-05-23 17:36:01 +08:00
c9s
1cf788c925
grid2: fix base + quote order placement and add test case 2023-05-23 17:34:03 +08:00
c9s
d5cf53ee94
grid2: fix comparison 2023-05-22 18:20:34 +08:00
c9s
ce2bd7ca7d
grid2: override placeSell if BaseGridNumber is defined 2023-05-22 18:13:51 +08:00
c9s
2046ccc791
grid2: pull out sell boolean var 2023-05-22 18:10:51 +08:00
c9s
0c6ef38ea3
grid2: apply baseGridNumber 2023-05-22 18:08:39 +08:00
c9s
f11d869d02
grid2: sub 1 only when num > 0 2023-05-22 17:26:22 +08:00
c9s
6ae5d2f33a
grid2: round down before the quantity calculation 2023-05-22 17:25:00 +08:00
c9s
a083ec8395
grid2: check numberOfSellOrders == 0 2023-05-22 17:20:16 +08:00
c9s
c93a3d14b3
grid2: round up minBaseQuantity 2023-05-19 16:46:17 +08:00
c9s
4c13171cb0
grid2: add more test for spec 2023-05-19 16:42:26 +08:00
c9s
3a2dbc934b
grid2: add TestStrategy_calculateBaseQuoteInvestmentQuantity test case 2023-05-19 16:37:44 +08:00
c9s
0c4cd7049f
grid2: rewrite the base+quote algo 2023-05-19 15:04:17 +08:00
c9s
86a99b5902
grid2: truncate max base quantity 2023-05-19 13:56:01 +08:00
c9s
17b05b61ba
strategy: fix fastCancel api calls 2023-05-16 16:44:40 +08:00
c9s
027fe9f5e1
drift: adopt the fastOrderExecutor 2023-05-16 16:39:04 +08:00
Andy Cheng
f864cc895c
feature/profitReport: accumulated profit report as a package 2023-05-11 14:54:45 +08:00
Andy Cheng
b148a02491
strategy/supertrend: add net profit 2023-05-08 13:43:25 +08:00
c9s
829edeb401
grid2: improve warning message 2023-04-28 16:16:23 +08:00
c9s
f958120fb5
grid2: remove the len check since we just iterate 2023-04-28 16:12:57 +08:00
c9s
717de67d5a
grid2: improve log and try best to return the order fee 2023-04-28 16:07:03 +08:00
c9s
5a901e929c
grid2: apply defensive programming on the order quantity 2023-04-28 16:02:28 +08:00
c9s
32b2c43198
grid2: emit grid profit after profit stats fix 2023-04-27 00:33:42 +08:00
c9s
46a6d896a2
grid2: improve the if err syntax 2023-04-26 23:48:02 +08:00
c9s
0c72ac2386
grid2: fix typo 2023-04-26 23:37:20 +08:00
c9s
b358cec235
grid2: check if profitStats.Since.IsZero 2023-04-26 23:36:53 +08:00
c9s
f1919a2b43
grid2: check profitStats.Since for the since time range 2023-04-26 23:34:56 +08:00
c9s
2efdee9347
grid2: add timeout context to the fixer 2023-04-26 23:30:09 +08:00
c9s
bd5e98e543
grid2: add more log 2023-04-26 23:07:01 +08:00
c9s
68974bc0b4
grid2: fix profitstats.Since when possible 2023-04-26 22:10:45 +08:00
c9s
55c84e005b
grid2: add one more check for profitStats.InitialOrderID 2023-04-26 22:06:53 +08:00
c9s
77f6c6bb46
bbgo: lock strategy before we sync data 2023-04-26 18:07:29 +08:00
c9s
036bae692e
grid2: move emitGridReady to earlier 2023-04-26 18:07:29 +08:00
c9s
e8a761e331
grid2: add profitFixer and tests 2023-04-26 17:25:31 +08:00
Andy Cheng
4b2c5198fa
strategy/supertrend: add strategy parameter fields in profit report 2023-04-26 10:32:43 +08:00
Yo-An Lin
cd69232156
Merge pull request #1155 from andycheng123/improve/supertrend 2023-04-20 18:48:39 +08:00
Andy Cheng
9f8576bb38
improve/supertrend: different way to calculate order amount for backtesting 2023-04-20 18:37:48 +08:00
Andy Cheng
1fb6e79090
improve/supertrend: fix typo 2023-04-20 18:11:47 +08:00
Andy Cheng
4b8adf6ed5
improve/supertrend: adding opposite position amount to the order amount instead of closing opposite position 2023-04-20 17:53:20 +08:00
chiahung
ed4e0b03e7 add open orders back to active order book if no need to recover 2023-04-18 15:47:00 +08:00
chiahung
d00a91441c FEATURE: move metrics to defer funciton 2023-04-18 15:13:20 +08:00
chiahung
a0aae23bf3 FIX: fix emit ready twice and add error log 2023-04-14 18:30:38 +08:00
c9s
4ab54f586b
grid2: emit grid error when open grid failed 2023-04-14 15:15:28 +08:00
chiahung
6029bd268d update log message 2023-04-07 00:40:32 +08:00
chiahung
cc5ebd5b2c move emit ready and update metrics 2023-04-06 23:57:54 +08:00
c9s
fba73f11ea
grid2: update metrics and trigger ready callback 2023-04-06 23:24:08 +08:00
chiahung
542467245e remove OrderGroupID checking 2023-04-06 18:00:21 +08:00
chiahung
c54507e07f modif log message 2023-04-06 17:53:01 +08:00
chiahung
9fa647ed65 rename method 2023-04-06 16:12:19 +08:00
chiahung
d953a6d7b8 check by trades + open orders 2023-04-06 14:59:03 +08:00
chiahung
00352b2a0d FIX: recover even though inital order id is 0 2023-04-06 11:36:32 +08:00
c9s
4b9e3f2302
xfunding: send positions to slack when start up 2023-03-30 00:46:41 +08:00
c9s
69af9e03ea
xfunding: fix funding fee notification 2023-03-30 00:13:02 +08:00
c9s
6c550c55fa
xfunding: fix spot transfer 2023-03-29 23:09:37 +08:00
c9s
7c975da575
xfunding: fix position sync bug 2023-03-29 23:05:31 +08:00
c9s
0efb56c43e
xfunding: also reset the quote balance transfer 2023-03-29 22:55:40 +08:00
c9s
7e2688b8c7
xfunding: cancel open orders before closing the futures position 2023-03-29 22:54:54 +08:00
c9s
0c9e0649c6
xfunding: use b.MaxWithdrawAmount instead of b.Available 2023-03-29 22:49:34 +08:00
c9s
866443d89f
xfunding: only do transfer when the available balance is not zero 2023-03-29 21:48:10 +08:00
c9s
d0566e23ec
xfunding: log submit failed orders 2023-03-29 21:46:15 +08:00
c9s
1383eb0401
xfunding: resetTransfer should also reset the transfer stats 2023-03-29 21:44:48 +08:00
c9s
117b5198ec
xfunding: introduce resetTransfer method to reset the futures transfer 2023-03-29 21:43:36 +08:00
c9s
a2fdc99741
xfunding: notify position ready 2023-03-29 21:40:18 +08:00
c9s
bc6ee59add
xfunding: refactor transferOut with trade quantity 2023-03-29 21:40:18 +08:00
c9s
088a36a169
xfunding: refactor transferIn 2023-03-29 21:40:18 +08:00
c9s
ce0b73b6e4
xfunding: calculate max minQuantity from spot market and future market 2023-03-29 21:40:18 +08:00
c9s
16cb68ac3e
xfunding: change dust quantity info log to warn log 2023-03-29 21:40:18 +08:00
c9s
0f88309d9e
xfunding: add notifications 2023-03-29 21:40:18 +08:00
c9s
eeda500a90
xfunding: pull out handleAccountUpdate handler 2023-03-29 21:40:17 +08:00
c9s
1e7afbc0c8
xfunding: fix position ready set call 2023-03-29 21:40:16 +08:00
c9s
6f961556d7
xfunding: add SlackAttachment method support on profit stats 2023-03-29 21:39:36 +08:00
c9s
4d59edc3d1
xfunding: add funding fee slack attachment support 2023-03-29 21:39:36 +08:00
c9s
c437837210
xfunding: improve checkAndRestorePositionRisks 2023-03-29 21:36:29 +08:00
c9s
8257c4ffbe
xfunding: fix ClosePosition call for futures 2023-03-29 18:28:25 +08:00
c9s
38778ff756
bbgo: fix order executor ClosePosition for order executor 2023-03-29 17:46:54 +08:00
c9s
38ba567558
xfunding: fix and call FuturesChangeInitialLeverageRequest 2023-03-29 17:14:29 +08:00