akulikov 2024-12-09 16:07:07 +03:00
parent 4a38552b3f
commit 88a45e7361

View file

@ -185,7 +185,7 @@ public class KSRepLccValueReportBuilder extends CSVReportBuilder<EmptyParams, KS
);
posMoneys.put(currencyId, posMoney);
log.debug("tkr = {}: ObligMoney[{}] = {}", tkr, rate.getCurrency(), obligMoneys.get(currencyId));
log.debug("tkr = {}: DemandMoney[{}} = {}", tkr, rate.getCurrency(), demandMoneys.get(currencyId));
log.debug("tkr = {}: DemandMoney[{}] = {}", tkr, rate.getCurrency(), demandMoneys.get(currencyId));
log.debug("tkr = {}: PosMoney[{}] = {}", tkr, rate.getCurrency(), posMoney);
ImdgPredicateBuilder currencyPairPB = currencyPairDictionaryImdg.predicateBuilder();
@ -266,10 +266,10 @@ public class KSRepLccValueReportBuilder extends CSVReportBuilder<EmptyParams, KS
minPos = constValue.negate().divide(BigDecimal.ONE.subtract(riskValue).multiply(rate.getValue()), RoundingMode.HALF_UP);
}
BigDecimal delta = posMoney.subtract(minPos);
BigDecimal delta = posMoney.subtract(minPos.divide(rate.getValue(), RoundingMode.HALF_UP));
if (delta.compareTo(BigDecimal.ZERO) >= 0 && delta.compareTo(quantity) <= 0) {
freeQuantity = delta;
} else if (delta.compareTo(BigDecimal.ZERO) < 0 && delta.compareTo(quantity) > 0) {
} else if (delta.compareTo(BigDecimal.ZERO) < 0 || delta.compareTo(quantity) > 0) {
freeQuantity = quantity;
} else freeQuantity = BigDecimal.ZERO;
}