| | |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @TableName("t_contract_order") |
| | | public class ContractOrder extends BaseEntity { |
| | | public class ContractOrder extends BaseEntity { |
| | | public final static String STATE_SUBMITTED = "submitted"; |
| | | public final static String STATE_CREATED = "created"; |
| | | /** |
| | |
| | | .ne(ContractOrder::getOrderNo, order.getOrderNo()) |
| | | ); |
| | | |
| | | // 提前计算 currentPrice 与 order.getTradeAvgPrice() 的差值,避免重复计算 |
| | | BigDecimal priceDifference = currentPrice.subtract(order.getTradeAvgPrice()); |
| | | |
| | | // 计算所有订单的收益 |
| | | // 计算所有订单的收益+保证金 |
| | | for (ContractOrder contractOrder : list) { |
| | | BigDecimal profit = priceDifference |
| | | .multiply(new BigDecimal("0.01")) |
| | | .multiply(contractOrder.getVolumeOpen()) |
| | | BigDecimal profit = contractOrder.getProfit().add(contractOrder.getDepositOpen()) |
| | | .setScale(4, RoundingMode.DOWN); |
| | | |
| | | earnings = earnings.add(profit); // 累加收益 |
| | |
| | | , Constants.MONEYLOG_CATEGORY_CONTRACT, Constants.WALLET_USDT, Constants.MONEYLOG_CONTENT_FEE, "委托单,订单号[" + f.getOrderNo() + "]" |
| | | ); |
| | | } |
| | | //计算强平价格 |
| | | getStrongPrice(f,item); |
| | | // //计算强平价格 |
| | | // getStrongPrice(f,item); |
| | | update(f); |
| | | refreshOrder(applyOrder, f); |
| | | }else{ |
| | |
| | | , Constants.MONEYLOG_CATEGORY_CONTRACT, Constants.WALLET_USDT, Constants.MONEYLOG_CONTENT_FEE, "委托单,订单号[" + order.getOrderNo() + "]" |
| | | ); |
| | | } |
| | | //计算强平价格 |
| | | getStrongPrice(order,item); |
| | | // //计算强平价格 |
| | | // getStrongPrice(order,item); |
| | | save(order); |
| | | refreshOrder(applyOrder, order); |
| | | } |