From c8bbb87364e02f3ffe538173f98b2a2192e9f974 Mon Sep 17 00:00:00 2001
From: zainali5120 <512061637@qq.com>
Date: Thu, 12 Nov 2020 19:58:39 +0800
Subject: [PATCH] 同步ROC代码
---
src/main/java/com/xcong/excoin/trade/TradePlate.java | 2 +-
src/main/java/com/xcong/excoin/trade/CoinTrader.java | 37 +++++++++++++++++++------------------
2 files changed, 20 insertions(+), 19 deletions(-)
diff --git a/src/main/java/com/xcong/excoin/trade/CoinTrader.java b/src/main/java/com/xcong/excoin/trade/CoinTrader.java
index 8ab6f28..20300e2 100644
--- a/src/main/java/com/xcong/excoin/trade/CoinTrader.java
+++ b/src/main/java/com/xcong/excoin/trade/CoinTrader.java
@@ -376,7 +376,7 @@
BigDecimal leftTurnover = order.getEntrustAmount().subtract(order.getDealAmount());
if(leftTurnover.divide(dealPrice,coinScale,BigDecimal.ROUND_DOWN)
.compareTo(BigDecimal.ZERO)==0){
- //order.setDealAmount(order.getEntrustAmount());
+ order.setDealAmount(order.getEntrustAmount());
return leftTurnover;
}
}
@@ -425,20 +425,6 @@
// 用户单成交金额
focusedOrder.setDealAmount(focusedOrder.getDealAmount().add(turnover));
- // 判断两个单是否完成
- if(matchOrder.getEntrustAmount()!=null &&matchOrder.getEntrustAmount().compareTo(BigDecimal.ZERO)>0 && matchOrder.getEntrustAmount().compareTo(matchOrder.getDealAmount())<=0){
- matchOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
- }
- if(matchOrder.getEntrustCnt()!=null &&matchOrder.getEntrustCnt().compareTo(BigDecimal.ZERO)>0 && matchOrder.getEntrustCnt().compareTo(matchOrder.getDealCnt())<=0){
- matchOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
- }
-
- if(focusedOrder.getEntrustAmount()!=null && focusedOrder.getEntrustAmount().compareTo(BigDecimal.ZERO)>0 && focusedOrder.getEntrustAmount().compareTo(focusedOrder.getDealAmount())<=0){
- focusedOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
- }
- if(focusedOrder.getEntrustCnt()!=null &&focusedOrder.getEntrustCnt().compareTo(BigDecimal.ZERO)>0 && focusedOrder.getEntrustCnt().compareTo(focusedOrder.getDealCnt())<=0){
- focusedOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
- }
//创建成交记录
ExchangeTrade exchangeTrade = new ExchangeTrade();
@@ -454,10 +440,25 @@
//校正市价单剩余成交额
if (OrderCoinsEntity.TRADETYPE_MARKETPRICE == focusedOrder.getTradeType() && focusedOrder.getOrderType() == OrderCoinsEntity.ORDERTYPE_BUY) {
BigDecimal adjustTurnover = adjustMarketOrderTurnover(focusedOrder, dealPrice);
- exchangeTrade.setBuyTurnover(turnover.add(adjustTurnover));
- } else if (OrderCoinsEntity.TRADETYPE_MARKETPRICE == matchOrder.getTradeType() && matchOrder.getOrderType() == OrderCoinsEntity.ORDERTYPE_BUY) {
+ //exchangeTrade.setBuyTurnover(turnover.add(adjustTurnover));
+ }
+ if (OrderCoinsEntity.TRADETYPE_MARKETPRICE == matchOrder.getTradeType() && matchOrder.getOrderType() == OrderCoinsEntity.ORDERTYPE_BUY) {
BigDecimal adjustTurnover = adjustMarketOrderTurnover(matchOrder, dealPrice);
- exchangeTrade.setBuyTurnover(turnover.add(adjustTurnover));
+ //exchangeTrade.setBuyTurnover(turnover.add(adjustTurnover));
+ }
+ // 判断两个单是否完成
+ if(matchOrder.getEntrustAmount()!=null &&matchOrder.getEntrustAmount().compareTo(BigDecimal.ZERO)>0 && matchOrder.getEntrustAmount().compareTo(matchOrder.getDealAmount())<=0){
+ matchOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
+ }
+ if(matchOrder.getEntrustCnt()!=null &&matchOrder.getEntrustCnt().compareTo(BigDecimal.ZERO)>0 && matchOrder.getEntrustCnt().compareTo(matchOrder.getDealCnt())<=0){
+ matchOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
+ }
+
+ if(focusedOrder.getEntrustAmount()!=null && focusedOrder.getEntrustAmount().compareTo(BigDecimal.ZERO)>0 && focusedOrder.getEntrustAmount().compareTo(focusedOrder.getDealAmount())<=0){
+ focusedOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
+ }
+ if(focusedOrder.getEntrustCnt()!=null &&focusedOrder.getEntrustCnt().compareTo(BigDecimal.ZERO)>0 && focusedOrder.getEntrustCnt().compareTo(focusedOrder.getDealCnt())<=0){
+ focusedOrder.setOrderStatus(OrderCoinsEntity.ORDERSTATUS_DONE);
}
if (focusedOrder.getOrderType() == OrderCoinsEntity.ORDERTYPE_BUY) {
diff --git a/src/main/java/com/xcong/excoin/trade/TradePlate.java b/src/main/java/com/xcong/excoin/trade/TradePlate.java
index fe24e0b..31d82df 100644
--- a/src/main/java/com/xcong/excoin/trade/TradePlate.java
+++ b/src/main/java/com/xcong/excoin/trade/TradePlate.java
@@ -17,7 +17,7 @@
public class TradePlate {
private LinkedList<TradePlateItem> items;
//最大深度
- private int maxDepth = 100;
+ private int maxDepth = 200;
//方向 订单类型 1、买入2、卖出
private int direction;
private String symbol;
--
Gitblit v1.9.1