Skip to content

Commit 5b6d7b2

Browse files
committed
fix: tune scorer fee params
1 parent e76c672 commit 5b6d7b2

1 file changed

Lines changed: 17 additions & 0 deletions

File tree

app/src/main/java/to/bitkit/services/LightningService.kt

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ import org.lightningdevkit.ldknode.PaymentDetails
3838
import org.lightningdevkit.ldknode.PaymentId
3939
import org.lightningdevkit.ldknode.PeerDetails
4040
import org.lightningdevkit.ldknode.PublicKey
41+
import org.lightningdevkit.ldknode.ScoringFeeParameters
4142
import org.lightningdevkit.ldknode.SpendableUtxo
4243
import org.lightningdevkit.ldknode.Txid
4344
import org.lightningdevkit.ldknode.defaultConfig
@@ -89,6 +90,12 @@ class LightningService @Inject constructor(
8990
companion object {
9091
private const val TAG = "LightningService"
9192
private const val NODE_ID_PREVIEW_LEN = 20
93+
private const val SCORING_BASE_PENALTY_MSAT = 50_000uL
94+
private const val SCORING_LIQUIDITY_PENALTY_MULTIPLIER_MSAT = 10_000uL
95+
private const val SCORING_LIQUIDITY_PENALTY_AMOUNT_MULTIPLIER_MSAT = 10_000uL
96+
private const val SCORING_HISTORICAL_LIQUIDITY_PENALTY_AMOUNT_MULTIPLIER_MSAT = 20_000uL
97+
private const val SCORING_CONSIDERED_IMPOSSIBLE_PENALTY_MSAT = 1_000_000_000_000uL
98+
private const val SCORING_PROBING_DIVERSITY_PENALTY_MSAT = 60_000uL
9299
}
93100

94101
@Volatile
@@ -168,6 +175,7 @@ class LightningService @Inject constructor(
168175
configureChainSource(customServerUrl)
169176
configureGossipSource(customRgsServerUrl)
170177
configureScorerSource()
178+
setScoringFeeParams(scorerFeeParameters(config))
171179
setAddressType(selectedType)
172180
setAddressTypesToMonitor(monitoredTypes)
173181

@@ -860,6 +868,15 @@ class LightningService @Inject constructor(
860868
}
861869
// endregion
862870

871+
private fun scorerFeeParameters(config: Config): ScoringFeeParameters = config.scoringFeeParams.copy(
872+
basePenaltyMsat = SCORING_BASE_PENALTY_MSAT,
873+
liquidityPenaltyMultiplierMsat = SCORING_LIQUIDITY_PENALTY_MULTIPLIER_MSAT,
874+
liquidityPenaltyAmountMultiplierMsat = SCORING_LIQUIDITY_PENALTY_AMOUNT_MULTIPLIER_MSAT,
875+
historicalLiquidityPenaltyAmountMultiplierMsat = SCORING_HISTORICAL_LIQUIDITY_PENALTY_AMOUNT_MULTIPLIER_MSAT,
876+
consideredImpossiblePenaltyMsat = SCORING_CONSIDERED_IMPOSSIBLE_PENALTY_MSAT,
877+
probingDiversityPenaltyMsat = SCORING_PROBING_DIVERSITY_PENALTY_MSAT,
878+
)
879+
863880
// region utxo selection
864881
suspend fun listSpendableOutputs(): Result<List<SpendableUtxo>> {
865882
val node = this.node ?: throw ServiceError.NodeNotSetup()

0 commit comments

Comments
 (0)