ExecutionFond#Quantity
This commit is contained in:
parent
4e78439e54
commit
3f5fa0433f
1 changed files with 5 additions and 4 deletions
|
|
@ -229,14 +229,15 @@ public class ExecutionFondComponent {
|
||||||
eFond.setInterestAmount(sTrades.getAccruedint());
|
eFond.setInterestAmount(sTrades.getAccruedint());
|
||||||
eFond.setExchangeOrderId(sTrades.getOrderNum());
|
eFond.setExchangeOrderId(sTrades.getOrderNum());
|
||||||
if (valuation) {
|
if (valuation) {
|
||||||
BigDecimal lots = safeBD(sTrades.getQty());// eFond.getLots
|
Listing listing = listingImdg.getFirstObjectBySQL("securityId = %d and market = '%s'".formatted(security.getId(), sTrades.getClassCode()));
|
||||||
|
BigDecimal lotSize = listing != null ? safeBD(listing.getLotSize()) : BigDecimal.ONE;
|
||||||
|
BigDecimal qty = safeBD(eFond.getLots()).multiply(lotSize);
|
||||||
|
eFond.setQuantity(qty);
|
||||||
BigDecimal price = safeBD(sTrades.getPrice());// eFond.setPrice
|
BigDecimal price = safeBD(sTrades.getPrice());// eFond.setPrice
|
||||||
BigDecimal settlementAmount = BigDecimal.ZERO;
|
BigDecimal settlementAmount = BigDecimal.ZERO;
|
||||||
if (InstrumentType.BOND.equalsByKey(security.getInstrumentType())) {
|
if (InstrumentType.BOND.equalsByKey(security.getInstrumentType())) {
|
||||||
FixedIncomeSecurity fixedIncome = (FixedIncomeSecurity) security;
|
FixedIncomeSecurity fixedIncome = (FixedIncomeSecurity) security;
|
||||||
BigDecimal nominalValue;
|
BigDecimal nominalValue;
|
||||||
Listing listing = listingImdg.getFirstObjectBySQL("securityId = %d and market = '%s'".formatted(fixedIncome.getId(), sTrades.getClassCode()));
|
|
||||||
BigDecimal lotSize = listing != null ? safeBD(listing.getLotSize()) : BigDecimal.ONE;
|
|
||||||
ImdgPredicateBuilder pb = fixedIncomeCashFlowImdg.predicateBuilder();
|
ImdgPredicateBuilder pb = fixedIncomeCashFlowImdg.predicateBuilder();
|
||||||
ImdgPredicate prdct = pb.and(
|
ImdgPredicate prdct = pb.and(
|
||||||
pb.equals("securityId", fixedIncome.getId()),
|
pb.equals("securityId", fixedIncome.getId()),
|
||||||
|
|
@ -250,7 +251,7 @@ public class ExecutionFondComponent {
|
||||||
nominalValue = safeBD(fixedIncome.getNominalValue());
|
nominalValue = safeBD(fixedIncome.getNominalValue());
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
settlementAmount = lotSize.multiply(lots)
|
settlementAmount = eFond.getQuantity()
|
||||||
.multiply(nominalValue)
|
.multiply(nominalValue)
|
||||||
.multiply(price)
|
.multiply(price)
|
||||||
.divide(new BigDecimal(100), RoundingMode.HALF_UP)
|
.divide(new BigDecimal(100), RoundingMode.HALF_UP)
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue