Administrator
5 days ago c1be55f61d9e93e93aff06a88c53f874fe25bb40
feat(coin): 添加BNB/USDT交易对支持

- 在CoinTypeConvert中添加BNB/USDT的价格和交易量转换映射
- 为BNB/USDT交易对创建正序和倒序优先队列
- 实现BNB/USDT的订单模型映射功能
- 支持BNB/USDT的止盈止损和爆仓订单处理
2 files modified
40 ■■■■■ changed files
src/main/java/com/xcong/excoin/rabbit/pricequeue/PricePriorityQueue.java 36 ●●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/utils/CoinTypeConvert.java 4 ●●●● patch | view | raw | blame | history
src/main/java/com/xcong/excoin/rabbit/pricequeue/PricePriorityQueue.java
@@ -108,6 +108,20 @@
    private static Map<String, List<OrderModel>> ETC_MAP_DESC = null;
    /**
     * ETC 倒序队列 头元素最大 开多止盈 开空止损 开空爆仓 限价开空
     */
    private static PriorityBlockingQueue<DescBigDecimal> BNB_QUEUE_DESC = null;
    private static Map<String, List<OrderModel>> BNB_MAP_DESC = null;
    /**
     * ETC 正序队列 头元素最小 开多止损 开空止盈 开多爆仓 限价开多
     */
    private static PriorityBlockingQueue<AscBigDecimal> BNB_QUEUE_ASC = null;
    private static Map<String, List<OrderModel>> BNB_MAP_ASC = null;
    // 收到消息队列的方法 即收取到新的止盈止损等
    // 【1:买入委托2:开多3:开空4:平多5:平空6:爆仓平多7:爆仓平空8:撤单9:止盈平多10:止盈平空11:止损平多12:止损平空】
@@ -149,6 +163,11 @@
                        ETC_QUEUE_ASC = new PriorityBlockingQueue<AscBigDecimal>();
                    }
                    return ETC_QUEUE_ASC;
            case "BNB/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (BNB_QUEUE_ASC == null) {
                        BNB_QUEUE_ASC = new PriorityBlockingQueue<AscBigDecimal>();
                    }
                    return BNB_QUEUE_ASC;
            default:
                break;
        }
@@ -193,6 +212,11 @@
                        ETC_QUEUE_DESC = new PriorityBlockingQueue<DescBigDecimal>();
                    }
                    return ETC_QUEUE_DESC;
            case "BNB/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (BNB_QUEUE_DESC == null) {
                        BNB_QUEUE_DESC = new PriorityBlockingQueue<DescBigDecimal>();
                    }
                    return BNB_QUEUE_DESC;
            default:
                break;
        }
@@ -291,6 +315,18 @@
                    }
                    return ETC_MAP_DESC;
                }
            case "BNB/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (BNB_MAP_ASC == null) {
                        BNB_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return BNB_MAP_ASC;
                } else {
                    if (BNB_MAP_DESC == null) {
                        BNB_MAP_DESC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return BNB_MAP_DESC;
                }
            default:
                break;
        }
src/main/java/com/xcong/excoin/utils/CoinTypeConvert.java
@@ -115,6 +115,8 @@
                return "open:BCH_NEW_PRICE";
            case "ETC/USDT":
                return "open:ETC_NEW_PRICE";
            case "BNB/USDT":
                return "open:BNB_NEW_PRICE";
            default:
                return null;
        }
@@ -136,6 +138,8 @@
                return "volume:PRICE_BCHUSDTSWAP";
            case "ETC/USDT":
                return "volume:PRICE_ETCUSDTSWAP";
            case "BNB/USDT":
                return "volume:PRICE_BNBUSDTSWAP";
            default:
                return null;
        }