Commit Graph

510 Commits

Author SHA1 Message Date
zenix
cdba7924b4 fix backtest panic when cancel fail on the last order 2022-02-15 12:01:39 +09:00
zenix
fad85d0992 fix binance test, outptu for support and xgap strategies 2022-02-15 12:01:39 +09:00
zenix
05521a98b6 add skeleton strategy. fix most of the tests. fix final asset value 2022-02-15 12:01:39 +09:00
zenix
abc1d535d8 fix bollmaker, fix pnl issues 2022-02-15 12:01:39 +09:00
zenix
105b085786 fix bollgrid, emstop, flashcrash, funding, grid, pricealert, pricedrop, rebalance, schedule, swing, xbalance, xgap, xmaker and speedup fixedpoint 2022-02-15 12:01:39 +09:00
zenix
2ccc449657 fix xpuremaker,xnav,techsignal,support,etf and add methods in fixedpoint 2022-02-15 12:01:39 +09:00
zenix
e221f54397 add dnum as the fixedpoint implementation. change types float64 to fixedpoint.Value
change pnl report to use fixedpoint

fix: migrate kline to use fixedpoint
2022-02-15 12:00:39 +09:00
Andy Cheng
f7fc7f64b4
strategy: fix fixedpoint value compared to 0 problem 2022-02-06 17:47:14 +08:00
Andy Cheng
41c3b860b0
strategy: rename callBackRatio to callbackRatio 2022-02-06 17:47:14 +08:00
Andy Cheng
a9b48ff138
strategy: fix fixedpoint.Value compare to 0 problem 2022-02-06 17:47:14 +08:00
Andy Cheng
8b009a984a
strategy: fix a bug when 'trailingStopControl' is not used 2022-02-06 17:47:14 +08:00
Andy Cheng
571c3834c5
strategy: fix the JSON tag of 'CurrentHighestPrice' 2022-02-06 17:47:14 +08:00
Andy Cheng
769da1e77c
strategy: rename 'trailingStopCallBackRatio' JSON tag to 'callBackRatio' 2022-02-06 17:47:14 +08:00
Andy Cheng
b48c7f40d7
strategy: make TrailingStopCallBackRatio and MinimumProfitPercentage fixedpoint.Value 2022-02-06 17:47:13 +08:00
Andy Cheng
883f43a9ad
strategy: construct trailingStopControl in the caller 2022-02-06 17:47:13 +08:00
Andy Cheng
60a4ab2f27
strategy: save state on high price update and cancel trailing stop order on shutdown 2022-02-06 17:47:13 +08:00
Andy Cheng
1bd787f44c
strategy: return the createdOrders objects instead in submitOrders() 2022-02-06 17:47:13 +08:00
Andy Cheng
f673fc30ad
strategy: rename GenerateTrailingStopOrder() to GenerateStopOrder() in support strategy 2022-02-06 17:47:13 +08:00
Andy Cheng
2a8938fce0
re-indent with tabs 2022-02-06 17:47:13 +08:00
Andy Cheng
66b042fea7
strategy: trailing stop TP for support strategy 2022-02-06 17:47:11 +08:00
c9s
bf8558e9ad bollmaker: add BuyBelowNeutralSMA option 2022-02-01 01:40:51 +08:00
c9s
bed03dbd17 schedule: refactor and improve schedule strategy with QuantityOrAmount struct 2022-01-31 01:42:21 +08:00
c9s
11bbdb16a0 bollmaker: clean up empty files 2022-01-31 01:31:31 +08:00
c9s
0e7f88e3bf move SmartStops into the bbgo package 2022-01-31 01:27:47 +08:00
c9s
eb5064ccfe bollmaker: separate bidSpread and askSpread 2022-01-31 01:11:30 +08:00
c9s
2e7621ca55 add BidSpread and AskSpread 2022-01-31 01:08:33 +08:00
c9s
701e80d0d8 bollmaker: pull out trailing stop order logics into SmartStops struct 2022-01-31 01:07:00 +08:00
c9s
67bc5d523a bollmaker: refactor trailing stop snippet 2022-01-31 00:44:04 +08:00
c9s
0667c138ab backtest: fix duplicate trade emit issue 2022-01-30 03:05:19 +08:00
c9s
e1fc0e7b8d bollmaker: remove redundant log and fix return 2022-01-30 02:00:42 +08:00
c9s
20938895a8 bollmaker: merge skip condition 2022-01-30 01:40:33 +08:00
c9s
a185f3fdbe bollmaker: improve trailing stop order log 2022-01-30 01:37:36 +08:00
c9s
9adc3a9243 bollmaker: always collect trades and check balance 2022-01-30 01:21:36 +08:00
c9s
2255f3ed0a bollmaker: check dust order for stop 2022-01-29 17:44:42 +08:00
c9s
99af5d3971 bollmaker: implement TrailingStopController 2022-01-29 02:22:20 +08:00
c9s
584dd3e279 bollmaker: add TradeInBand option 2022-01-28 01:29:12 +08:00
c9s
f49b7165d8 bollmaker: fix MinNotional adjustment 2022-01-27 19:56:10 +08:00
c9s
a6cbb2fb2d bollmaker: rewrite trend detection 2022-01-27 18:51:51 +08:00
c9s
4f6e04323f bollmaker: add more logs 2022-01-27 02:25:23 +08:00
c9s
aea8f97ab9 bollmaker: add Test_calculateBandPercentage test 2022-01-27 02:22:26 +08:00
c9s
f9d650cd23 bollmaker: add DynamicExposurePositionScale 2022-01-27 02:04:57 +08:00
c9s
49f671ef54 add PercentageScale and its tests 2022-01-27 01:40:54 +08:00
c9s
e82379a668 bollmaker: add QuantityOrAmount struct 2022-01-27 01:10:39 +08:00
c9s
9bdc05b69c strategy/grid: use background context for canceling orders 2022-01-19 18:26:57 +08:00
c9s
9953a30717 xgap: fix subscribe interval 2022-01-19 13:08:50 +08:00
Yo-An Lin
0e0525be99
Merge pull request #418 from austin362667/refactor/futures-account
binance: add futures exchange api queries
2022-01-17 20:54:49 +08:00
c9s
5c0e3a1254 bollmaker: add shadow protection config 2022-01-16 04:40:50 +08:00
c9s
a68ad20ddc bollmaker: add shadow protection 2022-01-16 04:06:19 +08:00
c9s
1e370ff244 bollmaker: collect trades before we shutdown 2022-01-16 01:27:28 +08:00
c9s
898204f5fa bollmaker: adjust quantity to met the min notional condition before we submit 2022-01-16 01:15:34 +08:00
c9s
fd4a3bb000 bollmaker: remove unused cancelOrders function 2022-01-16 01:08:50 +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
93722e6db3 implement position closer interaction 2022-01-15 02:52:46 +08:00
c9s
317d8e9d49 xgap: add minSpread option 2022-01-14 12:49:46 +08:00
Yo-An Lin
e797e597b1
Merge pull request #435 from jessy1092/fix/correct-bollmaker-params
fix: Correct uptrendSkew and downtrendSkew parameters setting on bollmaker strategy
2022-01-14 12:18:18 +08:00
c9s
eef14fa950 xgap: add jitter 2022-01-14 12:03:29 +08:00
c9s
1f6076ae18 plus a quantity jitter 2022-01-14 11:59:40 +08:00
Lee
965fc6989d fix: Correct uptrendSkew and downtrendSkew parameters setting on bollmaker strategy 2022-01-13 23:06:23 +08:00
c9s
dc6d60216b types: fix order book copy 2022-01-13 11:09:50 +08:00
c9s
98247385f9 xmaker: use GracefulCancel to cancel active orders 2022-01-13 11:01:46 +08:00
c9s
5cc3a88911 xmaker: show order book last update time 2022-01-12 22:11:28 +08:00
c9s
c3356fa694 types: add test for PriceHeartBeat 2022-01-12 14:42:11 +08:00
c9s
5755c44845 move PriceHeartBeat to types 2022-01-12 14:33:55 +08:00
c9s
420e221f5b xmaker: pull out PriceHeartBeat 2022-01-12 12:14:51 +08:00
c9s
7195c6ed27 xmaker: add price quoting protection 2022-01-12 11:55:45 +08:00
c9s
940c675cae xmaker: add rate limit hit alert 2022-01-11 22:48:28 +08:00
c9s
081a143ec0 xmaker: add DepthQuantity 2022-01-11 22:47:40 +08:00
c9s
70dec09f26 xmaker: fix minQuantity buffer 2022-01-10 23:17:19 +08:00
c9s
b26141ac1f support: set default s.triggerEMA 2022-01-10 13:51:14 +08:00
c9s
b56e988fc9 support: fix triggerEMA check 2022-01-10 13:49:36 +08:00
c9s
3907f99e70 xmaker: keep rate reservation token 2022-01-10 12:25:13 +08:00
c9s
1b27c4e9c4 remove hedge error limiter 2022-01-09 23:45:46 +08:00
c9s
9ca4e23aaf add strategy documentation 2022-01-09 22:43:49 +08:00
c9s
bba4e86fdf bollmaker: adjust default skew parameter 2022-01-09 22:37:27 +08:00
c9s
b98777afe4 bollmaker: pull out skew options 2022-01-09 22:32:23 +08:00
c9s
d94cc2df31 bbgo: add recover callbacks to trace collector 2022-01-09 15:39:59 +08:00
c9s
6ce8edba7d xmaker: add error rate limiter 2022-01-09 11:33:34 +08:00
c9s
471a1b2baa xmaker: adjust minimal quantity and minimal notional threshold 2022-01-09 10:18:31 +08:00
c9s
cd340bd596 bollmaker: check s.MaxExposurePosition 2022-01-09 03:03:54 +08:00
c9s
0cec652f38 bollmaker: skip submitOrder calls if submitOrders is empty 2022-01-09 02:35:12 +08:00
c9s
656ef942e4 bollmaker: add disable short option 2022-01-09 02:24:10 +08:00
c9s
4df5847647 bollmaker: add quantity scaling for closing position 2022-01-09 01:57:51 +08:00
c9s
4cdb5b607b rename bollpp to bollmaker 2022-01-09 01:20:47 +08:00
c9s
7e2acdc416 all: add lock protected GetBase method for Position 2022-01-09 00:35:45 +08:00
c9s
9b92c8948d xmaker: fix quantity truncation and add check for min quantity n min notional 2022-01-09 00:30:18 +08:00
c9s
cb189d885c fix backtest for limit maker order and bollpp strategy 2022-01-08 02:18:44 +08:00
c9s
f4ebae17bb xmaker: when recover the trade, notify 2022-01-07 13:13:57 +08:00
c9s
a49d001c29 xmaker: add trade scanner 2022-01-07 01:03:12 +08:00
c9s
41574a2390 xmaker: use millisecond jitter from the util package 2022-01-07 00:14:24 +08:00
c9s
259771b0b0 all: pull out the graceful cancel process to the local active book 2022-01-07 00:10:40 +08:00
c9s
1d5406ef21 xmaker: always update maker market 2022-01-06 23:27:06 +08:00
c9s
c8bf85f4e2 xmaker: improve pips 2022-01-05 11:34:07 +08:00
c9s
e997220321 xmaker: fix ask pips 2022-01-05 11:32:56 +08:00
c9s
6ff24e713e xmaker: fix notification format 2022-01-01 01:34:48 +08:00
c9s
6055f90680 xmaker: add cover and uncover logs 2021-12-31 15:26:51 +08:00
c9s
1116fc1de1 session: print klines only when debug-kline is enabled 2021-12-31 15:13:26 +08:00
c9s
899e8d2d58 Revert "xmaker: fix s.state.CoveredPosition.AtomicAdd add"
This reverts commit 5999dc1151.
2021-12-31 14:23:02 +08:00
c9s
5999dc1151 xmaker: fix s.state.CoveredPosition.AtomicAdd add 2021-12-31 02:00:39 +08:00
c9s
aaa52ecea4 xmaker: remove unsued localTimeZone var 2021-12-31 01:53:30 +08:00