Commit Graph

468 Commits

Author SHA1 Message Date
zenix
da28750313 feature: dump parameter to tg, esp series, fix: order tag, position calculation and bp/sp of drift 2022-08-15 21:05:29 +09:00
zenix
008814992f fix: date parsing in tradingview, feature: enforce trailingstop in drift, add rebalance prototype 2022-08-15 21:02:59 +09:00
zenix
d11738b6b5 feature: add smart cancel to drift 2022-08-15 21:02:43 +09:00
Andy Cheng
f288e47270 strategy/supertrend: update example config 2022-08-15 18:10:56 +08:00
Yo-An Lin
62aff676da
Revert "feature: add smart cancel to drift" 2022-08-09 16:25:36 +08:00
Yo-An Lin
55b4edc595
Merge pull request #853 from zenixls2/feature/smartcancel_drift
feature: add smart cancel to drift
2022-08-09 16:23:33 +08:00
Raphanus Lo
ed975b7ed9
Merge pull request #860 from COLDTURNIP/feature/exchange_order_amount_protection
exchange: order fee-amount protection
2022-08-09 15:01:53 +08:00
zenix
214e7259ed fix: date parsing in tradingview, feature: enforce trailingstop in drift, add rebalance prototype 2022-08-09 13:26:56 +09:00
zenix
53d4f21c30 feature: add smart cancel to drift 2022-08-09 13:26:56 +09:00
austin362667
c06998e0d4 config: add factorzoo 2022-08-09 00:01:36 +08:00
austin362667
c98eb22b95 strategy: factorzoo: add config 2022-08-08 20:09:15 +08:00
Andy Cheng
550f2f3fd7 strategy/supertrend: adapt risk.AccountValueCalculator 2022-08-05 11:47:36 +08:00
Andy Cheng
1277586e16 strategy/supertrend: remove redundant part of config 2022-08-03 10:09:12 +08:00
Andy Cheng
b00efaaaf3 strategy/supertrend: re-organize exits part of config 2022-08-03 10:05:27 +08:00
Raphanus Lo
76489873ee config: add example for order fee-amount protection 2022-08-02 13:49:09 +08:00
Raphanus Lo
68af2d0ff8 optimizer: rename optimizeex to hoptimize 2022-08-02 12:44:42 +08:00
Raphanus Lo
4ea70de439 config: add more example for optimizeex 2022-07-30 20:50:02 +08:00
Raphanus Lo
67f8b1c32c optimizeex: hyperparameter optimization tool
Currently support the following search algorithms:
- Tree-structured Parzen Estimators (tpe, default)
- Covariance Matrix Adaptation Evolution Strategy (cmaes)
- Quasi-monte carlo sampling based on Sobol sequence (sobol)
- random search (random)

And the following objective function:
- profit
- volume
- equity
2022-07-29 17:09:54 +08:00
zenix
d46267aff9 feature: use ma for tp coefficient, rewrite trailing stop for drift, export all window param to yaml 2022-07-28 19:34:12 +09:00
Yo-An Lin
3aeb6912c9
Merge pull request #846 from c9s/strategy/pivotshort
strategy/pivotshort: refactor breaklow + add fake break stop
2022-07-27 12:18:50 +08:00
c9s
3adeb46c65
config: update pivotshort default config 2022-07-27 01:58:19 +08:00
zenix
2ceb24ad09 fix: panic on image drawing, reduce fee by smoothing the drift curve 2022-07-26 18:00:05 +09:00
zenix
a8fe20ae3a fix: drift exit condition, trade_stats serialization in redis 2022-07-26 18:00:05 +09:00
zenix
a5039de6aa feature: add omega ratio, print sharpe/omega/interval profit from trade_stats, use stdev for high/low diff for drift to estimate the variance and improve profit, add yaml marshal for dnum fixedpoint 2022-07-26 18:00:05 +09:00
zenix
ac5c7f5773 feature: add pnl / cummulative pnl graph, add continuous graph 2022-07-26 18:00:05 +09:00
zenix
0d65fe1b8a feature: trailing stop, print mean and modify normalization function of output graph 2022-07-26 18:00:05 +09:00
zenix
c6563aa9bd feature: add stoploss from stopPrice 2022-07-26 18:00:05 +09:00
zenix
9c73aa4adb fix: fine tune drift config. fix atr updating issue 2022-07-26 18:00:05 +09:00
zenix
f2d37650a5 fix: drift bias on long entry position condition, make cancel faster 2022-07-26 18:00:05 +09:00
zenix
e097421b7b feature: export canvas path for drift strategy. fix exit/entry order and fix missing columns from json parsing 2022-07-26 18:00:05 +09:00
zenix
c51a99400d feature: add plot for series. add autocorrelation. add clone for indicators/series 2022-07-26 18:00:05 +09:00
zenix
69b45e90e9 add drift exit condition 2022-07-26 18:00:05 +09:00
zenix
0ae6b6736c feature: use drift indicator to create basic strategy for study 2022-07-26 18:00:05 +09:00
c9s
c3b6cb80c3
bollmaker: upgrade bollmaker exits methods 2022-07-26 12:08:47 +08:00
Andy Cheng
07959c8862 strategy/supertrend: fix exit methods problem 2022-07-25 14:11:55 +08:00
c9s
7ce7a1b11c
config: update pivotshort config 2022-07-21 12:18:31 +08:00
c9s
88940a6a94
config: update schedule config for usdttwd market 2022-07-19 17:43:55 +08:00
c9s
6dc73f9096
config: update schedule config with back-test settings 2022-07-19 17:43:11 +08:00
c9s
1ca7e0d032
add trendEMA config to pivotshort config 2022-07-19 10:51:18 +08:00
c9s
7b3673d1d4
config: set default quantity 2022-07-19 10:49:27 +08:00
c9s
ee163eb441
pivotshort: add trendEMA protection 2022-07-13 11:09:57 +08:00
Yo-An Lin
8119afbb44
Merge branch 'main' into strategy/pivotshort 2022-07-12 23:38:23 +08:00
Andy Cheng
761ed10110 strategy/supertrend: update config 2022-07-08 17:15:38 +08:00
Andy Cheng
574e142cf9 strategy/supertrend: use types.IntervalWindow instead of types.Interval 2022-07-08 16:42:31 +08:00
Andy Cheng
f8777752a0
Merge branch 'main' into improve/supertrend-strategy 2022-07-07 10:33:30 +08:00
Andy Cheng
61174a7dfc strategy/supertrend: update config 2022-07-07 10:14:15 +08:00
c9s
74593720a7
add ExitMethodSet.Bind method 2022-07-07 02:26:39 +08:00
Andy Cheng
10355bf359 strategy/supertrend: update config 2022-07-06 19:05:02 +08:00
Andy Cheng
c43d4e0b24 strategy/supertrend: func to get order side 2022-07-06 18:11:09 +08:00
c9s
d86338d6e6
update supertrend default back-test date range 2022-07-06 17:51:35 +08:00
c9s
0440b1ab92
config/pivotshort.yaml: change default date to 2022-01-01 2022-07-06 17:40:50 +08:00
Andy Cheng
94cb1e6724 strategy/supertrend: update config 2022-07-06 15:12:16 +08:00
Andy Cheng
20955ad7da strategy/supertrend: update doc 2022-07-06 14:27:50 +08:00
Andy Cheng
1489759cf0 strategy/supertrend: update doc 2022-07-06 10:49:50 +08:00
Andy Cheng
91077ce61d strategy/supertrend: add ExitMethod 2022-07-05 16:55:48 +08:00
Andy Cheng
0a0e5ac4d8 strategy/supertrend: config switch for stop by different signals 2022-07-05 15:59:35 +08:00
c9s
9126045fa9
pivotshort: adjust resistance ratio 2022-07-04 02:20:30 +08:00
c9s
278fbb7b51
pivotshort: fix support take profit method 2022-07-03 17:13:01 +08:00
c9s
1e8ac0d08a
pivotshort: improve price grouping 2022-07-02 18:51:17 +08:00
c9s
3e6b975c2c
pivotshort: refactor ResistanceShort entry method 2022-06-30 18:29:02 +08:00
c9s
bfcbf8566e
config: adjust default stop ema range 2022-06-30 17:46:42 +08:00
c9s
6aa6e57d96
add ema condition to the lower shadow take profit 2022-06-30 17:42:23 +08:00
c9s
7d5474e3dd
pivotshort: call MergeStructValues to update the field value 2022-06-30 15:49:18 +08:00
c9s
cfc4fd1f81
add doc for CumulatedVolumeTakeProfit 2022-06-29 01:39:33 +08:00
c9s
3d4f765678
rename protectionStopLoss to protectiveStopLoss 2022-06-29 01:31:56 +08:00
c9s
44d0bbc3fa
config: optimize and update pivotshort config
Signed-off-by: c9s <yoanlin93@gmail.com>
2022-06-29 01:23:01 +08:00
c9s
279bb66a4d
update config structure 2022-06-26 19:20:46 +08:00
c9s
0715437cc5
fix lastRecordTime
Signed-off-by: c9s <yoanlin93@gmail.com>
2022-06-26 13:23:04 +08:00
c9s
751085f8ff
clean up todo comment 2022-06-24 19:24:49 +08:00
Andy Cheng
689a12d80d optimizer: refactor max num of process config 2022-06-21 14:18:28 +08:00
c9s
9b82de596b
refine optimizer executor config structure 2022-06-21 12:31:42 +08:00
Andy Cheng
edfdb5b888 optimizer: add max num of thread in config 2022-06-21 11:51:20 +08:00
Yo-An Lin
74e8540550
Merge pull request #749 from c9s/improve/optimizer-local-proc
improve: add parallel local process executor for optimizer
2022-06-20 21:47:06 +08:00
austin362667
c227272542 rsmaker: add bulit-in strategy
rsmaker: clean up
2022-06-20 17:23:13 +08:00
c9s
6afe2de9f7
optimizer: add parallel local process worker support for optimizer 2022-06-20 17:18:05 +08:00
c9s
9be38e2421
optimizer: support multi metric value functions
Signed-off-by: c9s <yoanlin93@gmail.com>
2022-06-20 14:52:40 +08:00
c9s
2a1beddba4
support: fix support strategy stop order update 2022-06-19 17:49:38 +08:00
c9s
6e562e2ede
increase batch insert size to 1000 for klines
Signed-off-by: c9s <yoanlin93@gmail.com>
2022-06-19 17:41:52 +08:00
c9s
6b26d5a956
config: clean up the support config 2022-06-19 17:24:47 +08:00
zenix
aa8d188d15 fix: rename useHeikinAshi to heikinAshi in config 2022-06-17 11:38:36 +09:00
zenix
f5007752b2 feature: add heikinashi support 2022-06-17 10:58:32 +09:00
なるみ
5799497a09 marketp: add marketcap strategy 2022-06-16 16:44:02 +08:00
Yo-An Lin
f9a18e04c2
Merge pull request #729 from c9s/improve/maxapi
refactor: re-arrange maxapi files
2022-06-16 15:41:59 +08:00
c9s
4b14e7f7e5
refactor maxapi files 2022-06-16 15:22:36 +08:00
なるみ
8d9faff859 rebalance: validate symbols 2022-06-16 10:44:13 +08:00
なるみ
a4814951d4 rebalance: remove ignoreLock and simplify code 2022-06-16 01:33:28 +08:00
Yo-An Lin
e261d2c270
Merge pull request #714 from c9s/improve/sync-symbol-opt
improve: support specifying session in the sync symbol
2022-06-14 14:34:23 +08:00
zenix
bf6726a529 fix: output color output to stderr 2022-06-14 14:41:41 +09:00
zenix
28d01486ee clean: clean code, add comments, add more report on exit 2022-06-14 14:41:41 +09:00
c9s
f4c3573343
update sync config example 2022-06-14 13:03:37 +08:00
c9s
5949c7587e
make bounce short optional 2022-06-11 16:41:56 +08:00
c9s
3d0c0717ba
pivotshort: fix bounce short 2022-06-11 16:33:21 +08:00
c9s
ec68dc2f40
reimplement placeBounceSellOrders 2022-06-11 00:26:44 +08:00
c9s
46450c0122
pivotshort: rename pivotLength to window and update indicator manually 2022-06-10 15:34:57 +08:00
c9s
a9d2a9e57a
pivotshort: add breakLow.bounceRatio option 2022-06-10 11:36:04 +08:00
c9s
669b627521
add config/pivotshort_optimizer.yaml option 2022-06-10 02:42:16 +08:00
c9s
56f60bf1ab
fix roiTakeProfitPercentage comment 2022-06-10 02:40:15 +08:00
c9s
35a58268cf
pivotshort: add roiMinTakeProfitPercentage option and cumulatedVolume option 2022-06-10 02:39:14 +08:00
c9s
53913ede23
update pivotshort config 2022-06-10 01:24:15 +08:00
c9s
e575236db8
pivotshort: adjust shadow ratio calculation 2022-06-10 01:21:59 +08:00
c9s
9396ab9428
update pivotshort optimizer config 2022-06-10 00:02:47 +08:00
c9s
a8134561f5
pivotshort: add stopEMA 2022-06-09 18:16:32 +08:00
c9s
aa2ba265f1
pivotshort: refactor and add more fix 2022-06-09 17:36:22 +08:00
c9s
d032aa6699
add optimizer for pivotshort 2022-06-09 13:20:51 +08:00
c9s
a5e2c84434
add ETHUSDT for testing pivotshort 2022-06-09 12:34:23 +08:00
austin362667
3c40f9e90e
pivotshort: improve market sell when breaks previous pivot low only
pivotshort: improve market sell when breaks previous pivot low only
2022-06-09 12:34:22 +08:00
c9s
c1c2b03c90
add release test script 2022-06-08 15:10:43 +08:00
c9s
d7e41648e2
add dca config 2022-06-08 12:41:22 +08:00
Andy Cheng
34465fac89
Merge pull request #653 from andycheng123/strategy/supertrend
strategy: add supertrend strategy
2022-06-07 16:25:49 +08:00
Yo-An Lin
16e9535b8c
Merge pull request #638 from austin362667/strategy/f1
strategy: add fmaker
2022-06-07 12:24:26 +08:00
austin362667
fcdc26e188 pivotshort: add init place order 2022-06-04 02:31:04 +08:00
c9s
6ceb54679a
add websocket log prefix 2022-06-04 00:39:24 +08:00
c9s
0b896e667f
add GMTUSDT pivoshot config with binance margin 2022-06-04 00:19:12 +08:00
austin362667
5ca651a9b4 pivotshort: clean up field name 2022-06-03 23:28:48 +08:00
austin362667
af2d88d9a3 pivotshort: add immediate market sell 2022-06-03 23:23:26 +08:00
austin362667
9dab39849b pivotshort: clean up 2022-06-03 16:38:06 +08:00
austin362667
2aac5bb273 pivotshort: improve post order & add margin 2022-06-03 15:48:49 +08:00
c9s
5d98674ab5
fix withdraw sync and improve withdraw string format 2022-06-02 13:56:24 +08:00
c9s
165b4fdb20
binance: remove loop from the withdraw history api 2022-06-02 02:31:46 +08:00
c9s
35ac5e1671
service/order: remove unused queryLast method 2022-06-02 02:13:42 +08:00
c9s
b070952b32
service/sync: rewrite trade sync with syncTask 2022-06-01 19:40:30 +08:00
Andy Cheng
adbea7d4d0 strategy: add comments to supertrend config 2022-05-31 17:48:25 +08:00
Andy Cheng
6285e145a7 strategy: margin side effect 2022-05-31 15:46:55 +08:00
Andy Cheng
a5124c743f strategy: supertrend strategy TP/SL 2022-05-31 12:53:14 +08:00
c9s
e66eb08db4
batch: refactor batch query 2022-05-31 00:59:33 +08:00
Andy Cheng
7c98fca0c2 strategy: supertrend strategy doc 2022-05-30 17:02:20 +08:00
Andy Cheng
d72a4e8e94 strategy: supertrend strategy config example 2022-05-30 16:48:07 +08:00
Zenix
8652b4e043
Merge pull request #633 from zenixls2/fix/ewo_entry
Fix/ewo entry, backtest
2022-05-30 15:47:46 +09:00
zenix
e3a8ef4e69 fix: statistics on entry/exit on signal changes, fix position check 2022-05-30 12:45:52 +09:00
austin362667
c904f9f0f7 strategy: add fmaker
fmaker: cleanup
2022-05-29 21:39:11 +08:00
c9s
70f0dccb9f
binance: convert loans and repays to global types 2022-05-29 11:52:25 +08:00
Yo-An Lin
5c5a88fe0e
Merge pull request #636 from c9s/feature/max-margin-wallet
fix: max: fix trades/orders parsing
2022-05-27 19:55:22 +08:00
c9s
c891cc56e3
max: fix trades/orders parsing 2022-05-27 19:48:03 +08:00
Yo-An Lin
fd10408fdb
Merge pull request #635 from c9s/feature/max-margin-wallet
feature: max margin wallet
2022-05-27 16:55:30 +08:00
Yo-An Lin
424c235b43
Merge pull request #617 from andycheng123/improve/bollmaker-dynamic-spread
feature: bollmaker dynamic spread
2022-05-27 16:55:20 +08:00
Andy Cheng
6a5268de9b strategy: update bollmaker config 2022-05-27 16:51:11 +08:00
c9s
4d8ea7d979
max: log adratio 2022-05-25 20:34:25 +08:00
zenix
e81216e678 fix: TP compare direction in ewo, feature: add trade report fro ewo, fix: db lock on insertion in sqlite3 2022-05-25 16:11:19 +09:00
zenix
99122f44bc fix: backtest kline prev close -> new open, pass exchange as pointer (for Mutex passing), ewo add filter ma34 2022-05-24 23:05:01 +09:00
zenix
dbe0fbcd4c fix: split implementation, fix code comments, add explanation on ewo params 2022-05-24 16:19:00 +09:00
Andy Cheng
f452f8eb94 strategy: update bollmaker config 2022-05-24 11:19:50 +08:00
c9s
01d1ef2255
update grid config for testing 2022-05-22 02:40:52 +08:00
c9s
f06ec76618
backtest: check quoteQuantity only when price is given 2022-05-22 01:19:43 +08:00
c9s
62de3a43ed
ci: add backtest sync test to ci flow 2022-05-20 18:07:58 +08:00
c9s
95c9fe4502
return metrics as a optimizer result 2022-05-20 01:42:32 +08:00
c9s
f984be8ced
add bollmaker_optimizer config 2022-05-19 20:39:09 +08:00
c9s
b4b4546220
sort metrics 2022-05-19 20:36:56 +08:00
c9s
b3da6caddb
optimizer: fix op builder 2022-05-19 20:31:25 +08:00
c9s
11ad34e9f7
add optimizer config 2022-05-19 18:27:05 +08:00
Andy Cheng
4aca905170 strategy: update bollmaker config 2022-05-18 14:56:39 +08:00
Andy Cheng
b41cef4bd7 strategy: use scale for dynamic spread 2022-05-18 14:31:59 +08:00
austin362667
8e93118ba6 config: add pivotshort yaml 2022-05-17 19:18:21 +08:00
austin362667
62d11181a4 pivotshort: clean up 2022-05-17 19:18:21 +08:00
austin362667
2c4a52ba30 pivot: fix futures & spot clean up
pivot: clean up
2022-05-17 19:18:21 +08:00
austin362667
8ab696deaa pivotshort: rename strategy & fix pivot indicator 2022-05-17 19:18:21 +08:00
austin362667
1a441425b5 strategy: pivot: add shadow TP
strategy: pivot: add shadow TP
2022-05-17 19:18:21 +08:00
austin362667
60a8c1f42b WIP: strategy: pivot: pivot low shorting strategy 2022-05-17 19:18:21 +08:00
Andy Cheng
0e76a90ee4 strategy: clearer comment format for dynamic spread in config 2022-05-17 10:58:12 +08:00
Zenix
356ec71570
Merge pull request #610 from zenixls2/feature/liveSLTP
feature: SLTP from bookticker. fix: bookTicker typename, depth buffer…
2022-05-16 20:41:15 +09:00
Andy Cheng
686a358c6e strategy: update bollmaker config 2022-05-16 13:10:48 +08:00
zenix
2e53bae0d0 update: config for ewo 2022-05-13 23:02:30 +09:00
zenix
ee27a02459 revert bollmaker default trading pair changes 2022-05-13 22:56:46 +09:00
c9s
e950ee9559
add wall strategy 2022-05-12 22:51:39 +08:00
zenix
2e79cb9fc8 fix: update old configs 2022-05-12 21:14:51 +09:00
zenix
aa2dba5dfe fix: ewo strategy sample config 2022-05-09 15:06:43 +09:00
c9s
17928986b8
remove persistence redis setting from bollmaker 2022-05-05 17:53:24 +08:00
c9s
ee621e6d4a
add xnav config 2022-05-04 16:21:53 +08:00
zenix
4eab82ee7b feature: add atr stoploss on ewoDgtrd strategy. remove callback. modify filter condition and add doc 2022-04-28 20:09:15 +09:00
c9s
7b2398ce39
autoborrow: use margin level instead of margin ratio 2022-04-25 19:05:16 +08:00
c9s
a57a238e09
bbgo: add more sync options 2022-04-25 17:18:42 +08:00
c9s
c70317af2b add autoborrow strategy 2022-04-23 15:00:04 +08:00
austin362667
7f63938a50 config: add factorzoo yaml 2022-04-20 18:10:27 +08:00
Yo-An Lin
d6755d7ca0
Merge pull request #512 from zenixls2/feature/elliott_wave
strategy: elliott wave oscillator
2022-04-15 15:53:24 +08:00
c9s
84c34f1d50 config: add sessions to the backtest config 2022-04-15 11:45:01 +08:00
zenix
4ee73149c1 feature: add heikinashi 2022-04-14 19:58:05 +09:00
zenix
2f51441256 fix: remove smartstop. use dynamic stoploss. improve profit and lower the lost 2022-04-13 21:10:07 +09:00
zenix
574c5b77b1 fix: improve order tracking in ewo, and more filters for the noise 2022-04-13 21:10:07 +09:00
zenix
fcf29f7e11 fix: doing some performance tuning 2022-04-13 21:10:07 +09:00
zenix
66a401f93f feature: add sample config for ewo 2022-04-13 21:10:07 +09:00
zenix
42a3737f2e fix: use series in ewo to predict values 2022-04-13 21:10:07 +09:00
なるみ
83e37f52a8 Rebalance on kline closed 2022-03-24 12:50:40 +08:00
zenix
39572c5fe0 fix: remove maker/buyer/taker/sellerCommission 2022-03-07 14:32:00 +09:00
zenix
25b5eddc03 feature: add multiple exchange support in backtest
fix: change doc, since --exchange removed from backtest

fix: test for config changes
2022-03-07 13:18:56 +09:00
zenix
05521a98b6 add skeleton strategy. fix most of the tests. fix final asset value 2022-02-15 12:01:39 +09:00
Andy Cheng
41c3b860b0
strategy: rename callBackRatio to callbackRatio 2022-02-06 17:47:14 +08:00
Andy Cheng
16f811f48f
strategy: support strategy doc 2022-02-06 17:47:14 +08:00
c9s
c0b8c36222 config: update bollmaker config 2022-02-01 01:43:12 +08:00
c9s
f96c2e6271 bbgo: add activated flag on trailing stop order 2022-02-01 00:41:28 +08:00
c9s
c7ce59cd6f config: add more doc to the config 2022-01-31 01:52:47 +08:00
c9s
36b0db6cc8 config: update schedule strategy config 2022-01-31 01:46:02 +08:00
c9s
bed03dbd17 schedule: refactor and improve schedule strategy with QuantityOrAmount struct 2022-01-31 01:42:21 +08:00
c9s
bcb33f6887 config: update trailing stop usage doc 2022-01-31 00:18:52 +08:00
c9s
f49b7165d8 bollmaker: fix MinNotional adjustment 2022-01-27 19:56:10 +08:00
c9s
eec26663c5 update bollmaker config 2022-01-27 19:17:00 +08:00
c9s
30a9a5849f add user data stream sync config 2022-01-27 09:34:04 +08:00
c9s
78c8cb1362 add dynamicExposurePositionScale to the sample config 2022-01-27 08:52:27 +08:00
c9s
aaec79eec9 add sync config example 2022-01-27 08:43:44 +08:00
austin362667
904e7c03ad strategy: cleanup funding strategy
strategy: cleanup funding strategy
2022-01-15 08:28:02 +08:00
austin362667
d0e26c66e4 strategy: add funding strategy 2022-01-15 08:28:02 +08:00
c9s
c6a20b0d53 config/bollmaker.yaml: add persistence config 2022-01-09 23:45:33 +08:00