This commit is contained in:
parent
f8c8f92401
commit
5660cd67b7
1 changed files with 4 additions and 3 deletions
|
|
@ -69,16 +69,17 @@ public class OrderCalculationService {
|
|||
? calculationRubSums(registry, listing.getLotSize().intValue(), s, n)
|
||||
: calculationSums(registry, listing.getLotSize().intValue(), s, n);
|
||||
|
||||
SCrossRate rates = imdgQueryService.getSCrossRates(pair.getBaseCurrency(), LocalDate.now());
|
||||
long nextWorkDayDelta = n.longValue();
|
||||
Rates rates = imdgQueryService.getRate(pair.getBaseCurrency(), LocalDate.now().plusDays(nextWorkDayDelta));
|
||||
BigDecimal quantityLot;
|
||||
BigDecimal price;
|
||||
if (SettleCode.T0 == settleCode) {
|
||||
quantityLot = result.sum3().abs();
|
||||
price = rates.getUnitRate().setScale(listing.getPrecision().intValue(), RoundingMode.HALF_UP);
|
||||
price = rates.getValue().setScale(listing.getPrecision().intValue(), RoundingMode.HALF_UP);
|
||||
} else {
|
||||
quantityLot = result.sum5().abs();
|
||||
BigDecimal delta = swapPriceCalcT1(pair.getBaseCurrency(), s, n, listing.getPrecision().intValue());
|
||||
price = rates.getUnitRate().add(delta).setScale(listing.getPrecision().intValue(), RoundingMode.HALF_UP);;
|
||||
price = rates.getValue().add(delta).setScale(listing.getPrecision().intValue(), RoundingMode.HALF_UP);;
|
||||
}
|
||||
|
||||
return new FinalCalculationResult(price, s, quantityLot, result);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue