示例#1
0
  private MarginAssetsQueryResult getMarginAsset(
      MarginCashAccountView assetsPositionQueryView,
      MarginAccountPositionInfoResult marginAccountPositionInfo1) {
    MarginAccountPositionInfoResult marginAccountPositionInfo = marginAccountPositionInfo1;
    MarginAssetsQueryResult result = new MarginAssetsQueryResult();
    result.setFundName(assetsPositionQueryView.getFundName());
    result.setPortfolioName(assetsPositionQueryView.getPortfolioName());
    result.setCashAccountName(assetsPositionQueryView.getCashAccountName());
    result.setTotalAssets(marginAccountPositionInfo.getTotalAssets());

    result.setTotalDebt(marginAccountPositionInfo.getTotalDebt());

    BigDecimal netAssets = BigDecimalUtil.minus(result.getTotalAssets(), result.getTotalDebt());
    result.setTotalNetAssets(netAssets);

    BigDecimal totalProfitAndLoss = marginAccountPositionInfo.getTotalProfit();
    result.setProfitAndLoss(totalProfitAndLoss);

    BigDecimal maintainGuarantyRatio =
        BigDecimalUtil.divide(
            result.getTotalAssets(), result.getTotalDebt(), 4, BigDecimal.ROUND_HALF_DOWN);
    result.setMaintainGuarantyRatio(maintainGuarantyRatio);

    result.setTotalFee(marginAccountPositionInfo.getLeftFeeAndInterest());
    return result;
  }