Administrator
5 days ago cd8ac9145c420fa25e113468360e37130fff0394
src/main/java/com/xcong/excoin/rabbit/pricequeue/PricePriorityQueue.java
@@ -108,6 +108,76 @@
    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;
    /**
     * ETC 倒序队列 头元素最大 开多止盈 开空止损 开空爆仓 限价开空
     */
    private static PriorityBlockingQueue<DescBigDecimal> SOL_QUEUE_DESC = null;
    private static Map<String, List<OrderModel>> SOL_MAP_DESC = null;
    /**
     * ETC 正序队列 头元素最小 开多止损 开空止盈 开多爆仓 限价开多
     */
    private static PriorityBlockingQueue<AscBigDecimal> SOL_QUEUE_ASC = null;
    private static Map<String, List<OrderModel>> SOL_MAP_ASC = null;
    /**
     * ETC 倒序队列 头元素最大 开多止盈 开空止损 开空爆仓 限价开空
     */
    private static PriorityBlockingQueue<DescBigDecimal> DOGE_QUEUE_DESC = null;
    private static Map<String, List<OrderModel>> DOGE_MAP_DESC = null;
    /**
     * ETC 正序队列 头元素最小 开多止损 开空止盈 开多爆仓 限价开多
     */
    private static PriorityBlockingQueue<AscBigDecimal> DOGE_QUEUE_ASC = null;
    private static Map<String, List<OrderModel>> DOGE_MAP_ASC = null;
    /**
     * ETC 倒序队列 头元素最大 开多止盈 开空止损 开空爆仓 限价开空
     */
    private static PriorityBlockingQueue<DescBigDecimal> SUI_QUEUE_DESC = null;
    private static Map<String, List<OrderModel>> SUI_MAP_DESC = null;
    /**
     * ETC 正序队列 头元素最小 开多止损 开空止盈 开多爆仓 限价开多
     */
    private static PriorityBlockingQueue<AscBigDecimal> SUI_QUEUE_ASC = null;
    private static Map<String, List<OrderModel>> SUI_MAP_ASC = null;
    /**
     * ETC 倒序队列 头元素最大 开多止盈 开空止损 开空爆仓 限价开空
     */
    private static PriorityBlockingQueue<DescBigDecimal> ASTER_QUEUE_DESC = null;
    private static Map<String, List<OrderModel>> ASTER_MAP_DESC = null;
    /**
     * ETC 正序队列 头元素最小 开多止损 开空止盈 开多爆仓 限价开多
     */
    private static PriorityBlockingQueue<AscBigDecimal> ASTER_QUEUE_ASC = null;
    private static Map<String, List<OrderModel>> ASTER_MAP_ASC = null;
    // 收到消息队列的方法 即收取到新的止盈止损等
    // 【1:买入委托2:开多3:开空4:平多5:平空6:爆仓平多7:爆仓平空8:撤单9:止盈平多10:止盈平空11:止损平多12:止损平空】
@@ -149,6 +219,31 @@
                        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;
            case "SOL/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (SOL_QUEUE_ASC == null) {
                        SOL_QUEUE_ASC = new PriorityBlockingQueue<AscBigDecimal>();
                    }
                    return SOL_QUEUE_ASC;
            case "DOGE/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (DOGE_QUEUE_ASC == null) {
                        DOGE_QUEUE_ASC = new PriorityBlockingQueue<AscBigDecimal>();
                    }
                    return DOGE_QUEUE_ASC;
            case "SUI/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (SUI_QUEUE_ASC == null) {
                        SUI_QUEUE_ASC = new PriorityBlockingQueue<AscBigDecimal>();
                    }
                    return SUI_QUEUE_ASC;
            case "ASTER/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (ASTER_QUEUE_ASC == null) {
                        ASTER_QUEUE_ASC = new PriorityBlockingQueue<AscBigDecimal>();
                    }
                    return ASTER_QUEUE_ASC;
            default:
                break;
        }
@@ -193,6 +288,31 @@
                        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;
            case "SOL/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (SOL_QUEUE_DESC == null) {
                        SOL_QUEUE_DESC = new PriorityBlockingQueue<DescBigDecimal>();
                    }
                    return SOL_QUEUE_DESC;
            case "DOGE/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (DOGE_QUEUE_DESC == null) {
                        DOGE_QUEUE_DESC = new PriorityBlockingQueue<DescBigDecimal>();
                    }
                    return DOGE_QUEUE_DESC;
            case "SUI/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (SUI_QUEUE_DESC == null) {
                        SUI_QUEUE_DESC = new PriorityBlockingQueue<DescBigDecimal>();
                    }
                    return SUI_QUEUE_DESC;
            case "ASTER/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                    if (ASTER_QUEUE_DESC == null) {
                        ASTER_QUEUE_DESC = new PriorityBlockingQueue<DescBigDecimal>();
                    }
                    return ASTER_QUEUE_DESC;
            default:
                break;
        }
@@ -208,7 +328,7 @@
    public static Map<String,List<OrderModel>> getOrderMap(String symbol, int type) {
        switch (symbol) {
            case "BTC/USDT": // 开空止损 开多止盈 开空爆仓 限价开空
                if (type == 12 || type == 9 || type == 7 || type == 3) {
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (BTC_MAP_ASC == null) {
                        BTC_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
@@ -220,7 +340,7 @@
                    return BTC_MAP_DESC;
                }
            case "ETH/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3) {
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (ETH_MAP_ASC == null) {
                        ETH_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
@@ -232,7 +352,7 @@
                    return ETH_MAP_DESC;
                }
            case "XRP/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3) {
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (XRP_MAP_ASC == null) {
                        XRP_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
@@ -244,7 +364,7 @@
                    return XRP_MAP_DESC;
                }
            case "LTC/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3) {
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (LTC_MAP_ASC == null) {
                        LTC_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
@@ -256,7 +376,7 @@
                    return LTC_MAP_DESC;
                }
            case "BCH/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3) {
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (BCH_MAP_ASC == null) {
                        BCH_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
@@ -268,7 +388,7 @@
                    return BCH_MAP_DESC;
                }
            case "EOS/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3) {
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (EOS_MAP_ASC == null) {
                        EOS_MAP_ASC =  new ConcurrentHashMap<String,List<OrderModel>>();
                    }
@@ -280,7 +400,7 @@
                    return EOS_MAP_DESC;
                }
            case "ETC/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3) {
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (ETC_MAP_ASC == null) {
                        ETC_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
@@ -291,6 +411,66 @@
                    }
                    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;
                }
            case "SOL/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (SOL_MAP_ASC == null) {
                        SOL_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return SOL_MAP_ASC;
                } else {
                    if (SOL_MAP_DESC == null) {
                        SOL_MAP_DESC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return SOL_MAP_DESC;
                }
            case "DOGE/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (DOGE_MAP_ASC == null) {
                        DOGE_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return DOGE_MAP_ASC;
                } else {
                    if (DOGE_MAP_DESC == null) {
                        DOGE_MAP_DESC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return DOGE_MAP_DESC;
                }
            case "SUI/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (SUI_MAP_ASC == null) {
                        SUI_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return SUI_MAP_ASC;
                } else {
                    if (SUI_MAP_DESC == null) {
                        SUI_MAP_DESC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return SUI_MAP_DESC;
                }
            case "ASTER/USDT": // 开多止损 开空止盈 开多爆仓 限价开多
                if (type == 12 || type == 9 || type == 7 || type == 3 || type == 4) {
                    if (ASTER_MAP_ASC == null) {
                        ASTER_MAP_ASC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return ASTER_MAP_ASC;
                } else {
                    if (ASTER_MAP_DESC == null) {
                        ASTER_MAP_DESC = new ConcurrentHashMap<String,List<OrderModel>>();
                    }
                    return ASTER_MAP_DESC;
                }
            default:
                break;
        }