@@ -88,7 +88,12 @@ pub fn generate_rank_by_indicator_map(indicator_map: &MutexGuard<HashMap<String,
msv_score.rescale(2);
// liquidity_score
- let mut liquidity_score = ((liquidity_avg / Decimal::ONE_THOUSAND) * TWENTY).log10();
+ let mut liquidity = (liquidity_avg / Decimal::ONE_THOUSAND) * TWENTY;
+ let mut liquidity_score = if liquidity == Decimal::ZERO {
+ Decimal::ZERO
+ } else {
+ liquidity.log10()
+ };
liquidity_score.rescale(2);
// frequency_score计算规则