--- persistence: redis: host: 127.0.0.1 port: 6379 db: 0 sessions: binance: exchange: binance futures: false envVarPrefix: binance heikinAshi: false # Drift strategy intends to place buy/sell orders as much value mas it could be. To exchanges that requires to # calculate fees before placing limit orders (e.g. FTX Pro), make sure the fee rate is configured correctly and # enable modifyOrderAmountForFee to prevent order rejection. makerFeeRate: 0.0002 takerFeeRate: 0.0007 modifyOrderAmountForFee: false exchangeStrategies: - on: binance drift: canvasPath: "./output.png" symbol: BTCUSDT # kline interval for indicators interval: 15m window: 1 stoploss: 1.2% source: close predictOffset: 2 noTrailingStopLoss: false trailingStopLossType: kline # stddev on high/low-source hlVarianceMultiplier: 0.1 hlRangeWindow: 5 smootherWindow: 1 fisherTransformWindow: 34 window1m: 58 smootherWindow1m: 118 fisherTransformWindow1m: 319 atrWindow: 14 # orders not been traded will be canceled after `pendingMinutes` minutes pendingMinutes: 10 noRebalance: true trendWindow: 576 rebalanceFilter: 0 driftFilterPos: 1.8 driftFilterNeg: -1.8 ddriftFilterPos: 0.5 ddriftFilterNeg: -0.5 #-1.6 # ActivationRatio should be increasing order # when farest price from entry goes over that ratio, start using the callback ratio accordingly to do trailingstop #trailingActivationRatio: [0.01, 0.016, 0.05] #trailingActivationRatio: [0.001, 0.0081, 0.022] trailingActivationRatio: [0.0029, 0.028] #trailingActivationRatio: [] #trailingCallbackRate: [] #trailingCallbackRate: [0.002, 0.01, 0.1] #trailingCallbackRate: [0.0004, 0.0009, 0.018] trailingCallbackRate: [0.0005, 0.0149] generateGraph: true graphPNLDeductFee: false graphPNLPath: "./pnl.png" graphCumPNLPath: "./cumpnl.png" #exits: # - roiStopLoss: # percentage: 0.35% #- roiTakeProfit: # percentage: 0.7% #- protectiveStopLoss: # activationRatio: 0.5% # stopLossRatio: 0.2% # placeStopOrder: false #- trailingStop: # callbackRate: 0.3% # activationRatio is relative to the average cost, # when side is buy, 1% means lower 1% than the average cost. # when side is sell, 1% means higher 1% than the average cost. # activationRatio: 0.7% # minProfit uses the position ROI to calculate the profit ratio # minProfit: 1.5% # interval: 1m # side: sell # closePosition: 100% #- trailingStop: # callbackRate: 0.3% # activationRatio is relative to the average cost, # when side is buy, 1% means lower 1% than the average cost. # when side is sell, 1% means higher 1% than the average cost. # activationRatio: 0.7% # minProfit uses the position ROI to calculate the profit ratio # minProfit: 1.5% # interval: 1m # side: buy # closePosition: 100% #- protectiveStopLoss: # activationRatio: 5% # stopLossRatio: 1% # placeStopOrder: false #- cumulatedVolumeTakeProfit: # interval: 5m # window: 2 # minQuoteVolume: 200_000_000 #- protectiveStopLoss: # activationRatio: 2% # stopLossRatio: 1% # placeStopOrder: false sync: userDataStream: trades: true filledOrders: true sessions: - binance symbols: - BTCUSDT backtest: startTime: "2022-08-01" endTime: "2022-08-31" symbols: - BTCUSDT sessions: [binance] accounts: binance: makerFeeRate: 0.000 #takerFeeRate: 0.000 balances: BTC: 0 USDT: 21