From 4535018e58a43e687b528e8460e1df80391910ac Mon Sep 17 00:00:00 2001 From: carla Date: Fri, 5 Mar 2021 09:02:35 +0200 Subject: [PATCH] liquidity: update default budget to use flat fee percentage --- liquidity/liquidity.go | 9 +++------ liquidity/liquidity_test.go | 14 ++++++++++++++ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/liquidity/liquidity.go b/liquidity/liquidity.go index 407aa5d..3a3c579 100644 --- a/liquidity/liquidity.go +++ b/liquidity/liquidity.go @@ -83,12 +83,9 @@ var ( // only be used for automatically dispatched swaps if autoloop is // explicitly enabled, so we are happy to set a non-zero value here. The // amount chosen simply uses the current defaults to provide budget for - // a single swap. We don't have a swap amount to calculate our maximum - // routing fee, so we use 0.16 BTC for now. - defaultBudget = defaultMaximumMinerFee + - ppmToSat(funding.MaxBtcFundingAmount, defaultSwapFeePPM) + - ppmToSat(defaultMaximumPrepay, defaultPrepayRoutingFeePPM) + - ppmToSat(funding.MaxBtcFundingAmount, defaultRoutingFeePPM) + // a single swap. We don't have a swap amount so we just use our max + // funding amount. + defaultBudget = ppmToSat(funding.MaxBtcFundingAmount, defaultFeePPM) // defaultParameters contains the default parameters that we start our // liquidity manger with. diff --git a/liquidity/liquidity_test.go b/liquidity/liquidity_test.go index fad4390..909525d 100644 --- a/liquidity/liquidity_test.go +++ b/liquidity/liquidity_test.go @@ -622,6 +622,13 @@ func TestSweepFeeLimit(t *testing.T) { params := defaultParameters params.FeeLimit = defaultFeeCategoryLimit() + // Set our budget to cover a single swap with these + // parameters. + params.AutoFeeBudget = defaultMaximumMinerFee + + ppmToSat(7500, defaultSwapFeePPM) + + ppmToSat(7500, defaultPrepayRoutingFeePPM) + + ppmToSat(7500, defaultRoutingFeePPM) + params.ChannelRules = map[lnwire.ShortChannelID]*ThresholdRule{ chanID1: chanRule, } @@ -855,6 +862,13 @@ func TestFeeLimits(t *testing.T) { params := defaultParameters params.FeeLimit = defaultFeeCategoryLimit() + // Set our budget to cover a single swap with these + // parameters. + params.AutoFeeBudget = defaultMaximumMinerFee + + ppmToSat(7500, defaultSwapFeePPM) + + ppmToSat(7500, defaultPrepayRoutingFeePPM) + + ppmToSat(7500, defaultRoutingFeePPM) + params.ChannelRules = map[lnwire.ShortChannelID]*ThresholdRule{ chanID1: chanRule, }