├── .gitignore ├── README.md ├── pom.xml ├── qt-admin ├── pom.xml ├── src │ ├── main │ │ ├── docker │ │ │ └── DockerFile │ │ ├── java │ │ │ └── com │ │ │ │ └── quant │ │ │ │ └── admin │ │ │ │ ├── AppAdmin.java │ │ │ │ ├── component │ │ │ │ ├── IMailServiceImpl.java │ │ │ │ ├── OrderIdReceiver.java │ │ │ │ ├── ProfitReceiver.java │ │ │ │ └── RobotMsgReceiver.java │ │ │ │ ├── config │ │ │ │ ├── AsyncConfig.java │ │ │ │ ├── GlobalCorsConfig.java │ │ │ │ ├── MybatisPlusConfig.java │ │ │ │ ├── SubscriberConfig.java │ │ │ │ └── WebSocketConfig.java │ │ │ │ ├── controller │ │ │ │ ├── AccountController.java │ │ │ │ ├── BalanceController.java │ │ │ │ ├── BaseController.java │ │ │ │ ├── IndicatorController.java │ │ │ │ ├── NodeController.java │ │ │ │ ├── OrderController.java │ │ │ │ ├── OrderProfitController.java │ │ │ │ ├── RobotController.java │ │ │ │ ├── StrategyController.java │ │ │ │ ├── SymbolController.java │ │ │ │ └── UserController.java │ │ │ │ ├── dao │ │ │ │ ├── AccountMapper.java │ │ │ │ ├── BalanceMapper.java │ │ │ │ ├── OrderProfitMapper.java │ │ │ │ ├── OrdersMapper.java │ │ │ │ ├── RobotMapper.java │ │ │ │ ├── StrategyMapper.java │ │ │ │ ├── SymbolMapper.java │ │ │ │ └── UserMapper.java │ │ │ │ ├── generator │ │ │ │ ├── Tab.java │ │ │ │ └── createsql.java │ │ │ │ ├── rest │ │ │ │ ├── RobotClientService.java │ │ │ │ └── impl │ │ │ │ │ └── RobotClientServiceImpl.java │ │ │ │ ├── service │ │ │ │ ├── AccountService.java │ │ │ │ ├── BalanceService.java │ │ │ │ ├── IMailService.java │ │ │ │ ├── OrderProfitService.java │ │ │ │ ├── OrdersService.java │ │ │ │ ├── RobotService.java │ │ │ │ ├── StrategyService.java │ │ │ │ ├── SymbolService.java │ │ │ │ ├── UserService.java │ │ │ │ └── impl │ │ │ │ │ ├── AccountServiceImpl.java │ │ │ │ │ ├── BalanceServiceImpl.java │ │ │ │ │ ├── OrderProfitServiceImpl.java │ │ │ │ │ ├── OrdersServiceImpl.java │ │ │ │ │ ├── RobotServiceImpl.java │ │ │ │ │ ├── StrategyServiceImpl.java │ │ │ │ │ ├── SymbolServiceImpl.java │ │ │ │ │ └── UserServiceImpl.java │ │ │ │ ├── task │ │ │ │ ├── RobotStatusTask.java │ │ │ │ └── SymbolTask.java │ │ │ │ └── utils │ │ │ │ └── MysqlGenerator.java │ │ └── resources │ │ │ ├── application-dev.yml │ │ │ ├── application-prod.yml │ │ │ ├── application.yml │ │ │ ├── banner.txt │ │ │ ├── logback-spring.xml │ │ │ └── mapper │ │ │ ├── AccountMapper.xml │ │ │ ├── BalanceMapper.xml │ │ │ ├── OrderProfitMapper.xml │ │ │ ├── OrdersMapper.xml │ │ │ ├── RobotMapper.xml │ │ │ ├── StrategyMapper.xml │ │ │ ├── SymbolMapper.xml │ │ │ └── UserMapper.xml │ └── test │ │ └── java │ │ └── com │ │ └── quant │ │ └── admin │ │ └── QtParentApplicationTests.java └── target │ └── classes │ ├── application-dev.yml │ ├── application-prod.yml │ ├── application.yml │ ├── banner.txt │ ├── com │ └── quant │ │ └── admin │ │ ├── AppAdmin.class │ │ ├── component │ │ ├── IMailServiceImpl.class │ │ ├── OrderIdReceiver.class │ │ ├── ProfitReceiver.class │ │ └── RobotMsgReceiver.class │ │ ├── config │ │ ├── AsyncConfig.class │ │ ├── GlobalCorsConfig$1.class │ │ ├── GlobalCorsConfig.class │ │ ├── MybatisPlusConfig.class │ │ ├── SubscriberConfig.class │ │ └── WebSocketConfig.class │ │ ├── controller │ │ ├── AccountController.class │ │ ├── BalanceController.class │ │ ├── BaseController.class │ │ ├── IndicatorController.class │ │ ├── NodeController.class │ │ ├── OrderController.class │ │ ├── OrderProfitController.class │ │ ├── RobotController.class │ │ ├── StrategyController.class │ │ ├── SymbolController.class │ │ └── UserController.class │ │ ├── dao │ │ ├── AccountMapper.class │ │ ├── BalanceMapper.class │ │ ├── OrderProfitMapper.class │ │ ├── OrdersMapper.class │ │ ├── RobotMapper.class │ │ ├── StrategyMapper.class │ │ ├── SymbolMapper.class │ │ └── UserMapper.class │ │ ├── generator │ │ ├── Tab.class │ │ └── createsql.class │ │ ├── rest │ │ ├── RobotClientService.class │ │ └── impl │ │ │ └── RobotClientServiceImpl.class │ │ ├── service │ │ ├── AccountService.class │ │ ├── BalanceService.class │ │ ├── IMailService.class │ │ ├── OrderProfitService.class │ │ ├── OrdersService.class │ │ ├── RobotService.class │ │ ├── StrategyService.class │ │ ├── SymbolService.class │ │ ├── UserService.class │ │ └── impl │ │ │ ├── AccountServiceImpl.class │ │ │ ├── BalanceServiceImpl.class │ │ │ ├── OrderProfitServiceImpl.class │ │ │ ├── OrdersServiceImpl.class │ │ │ ├── RobotServiceImpl.class │ │ │ ├── StrategyServiceImpl.class │ │ │ ├── SymbolServiceImpl.class │ │ │ └── UserServiceImpl.class │ │ ├── task │ │ └── SymbolTask.class │ │ └── utils │ │ ├── MysqlGenerator$1.class │ │ ├── MysqlGenerator$2.class │ │ ├── MysqlGenerator$3.class │ │ └── MysqlGenerator.class │ ├── logback-spring.xml │ └── mapper │ ├── AccountMapper.xml │ ├── BalanceMapper.xml │ ├── OrderProfitMapper.xml │ ├── OrdersMapper.xml │ ├── RobotMapper.xml │ ├── StrategyMapper.xml │ ├── SymbolMapper.xml │ └── UserMapper.xml ├── qt-client ├── pom.xml ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── quant │ │ │ │ └── client │ │ │ │ ├── AppClient.java │ │ │ │ ├── config │ │ │ │ └── ThreadPool.java │ │ │ │ ├── controller │ │ │ │ └── BotController.java │ │ │ │ ├── service │ │ │ │ ├── RobotService.java │ │ │ │ └── impl │ │ │ │ │ └── RobotServiceImpl.java │ │ │ │ └── task │ │ │ │ ├── IndicatorRobotOperate.java │ │ │ │ ├── SimpleNumRobotOperate.java │ │ │ │ └── SteadyCoinRobotOperate.java │ │ └── resources │ │ │ ├── application-dev.yml │ │ │ ├── application-prod.yml │ │ │ ├── application.yml │ │ │ ├── banner.txt │ │ │ └── logback-spring.xml │ └── test │ │ └── java │ │ └── Test.java └── target │ ├── classes │ ├── application-dev.yml │ ├── application-prod.yml │ ├── application.yml │ ├── banner.txt │ ├── com │ │ └── quant │ │ │ └── client │ │ │ ├── AppClient.class │ │ │ ├── config │ │ │ └── ThreadPool.class │ │ │ ├── controller │ │ │ └── BotController.class │ │ │ ├── service │ │ │ ├── RobotService.class │ │ │ └── impl │ │ │ │ └── RobotServiceImpl.class │ │ │ └── task │ │ │ ├── IndicatorRobotOperate.class │ │ │ ├── SimpleNumRobotOperate.class │ │ │ └── SteadyCoinRobotOperate.class │ └── logback-spring.xml │ └── test-classes │ └── Test.class ├── qt-common ├── pom.xml ├── src │ └── main │ │ ├── java │ │ └── com │ │ │ └── quant │ │ │ └── common │ │ │ ├── config │ │ │ ├── JsonConfig.java │ │ │ ├── RedisConfig.java │ │ │ ├── RedisUtil.java │ │ │ ├── RestTemplateConfig.java │ │ │ └── VpnProxyConfig.java │ │ │ ├── constans │ │ │ ├── IndicatorCons.java │ │ │ └── RobotRedisKeyConfig.java │ │ │ ├── domain │ │ │ ├── bo │ │ │ │ └── RobotBo.java │ │ │ ├── entity │ │ │ │ ├── Account.java │ │ │ │ ├── Balance.java │ │ │ │ ├── MarketOrder.java │ │ │ │ ├── OrderProfit.java │ │ │ │ ├── Orders.java │ │ │ │ ├── Robot.java │ │ │ │ ├── Strategy.java │ │ │ │ ├── Symbol.java │ │ │ │ └── User.java │ │ │ ├── request │ │ │ │ ├── CreateOrderRequest.java │ │ │ │ ├── DepthRequest.java │ │ │ │ └── IntrustOrdersDetailRequest.java │ │ │ ├── response │ │ │ │ ├── Account.java │ │ │ │ ├── Accounts.java │ │ │ │ ├── AccountsResponse.java │ │ │ │ ├── ApiResponse.java │ │ │ │ ├── Balance.java │ │ │ │ ├── BalanceBean.java │ │ │ │ ├── BalanceResponse.java │ │ │ │ ├── Batchcancel.java │ │ │ │ ├── BatchcancelBean.java │ │ │ │ ├── BatchcancelResponse.java │ │ │ │ ├── Currencys.java │ │ │ │ ├── CurrencysResponse.java │ │ │ │ ├── Depth.java │ │ │ │ ├── DepthResponse.java │ │ │ │ ├── DetailResponse.java │ │ │ │ ├── Details.java │ │ │ │ ├── HistoryTrade.java │ │ │ │ ├── HistoryTradeResponse.java │ │ │ │ ├── HistoryTradess.java │ │ │ │ ├── IntrustDetail.java │ │ │ │ ├── IntrustDetailResponse.java │ │ │ │ ├── Kline.java │ │ │ │ ├── KlineResponse.java │ │ │ │ ├── MatchresultsOrdersDetail.java │ │ │ │ ├── MatchresultsOrdersDetailResponse.java │ │ │ │ ├── Merged.java │ │ │ │ ├── MergedResponse.java │ │ │ │ ├── OrdersDetail.java │ │ │ │ ├── OrdersDetailResponse.java │ │ │ │ ├── Place.java │ │ │ │ ├── SubmitcancelResponse.java │ │ │ │ ├── Symbol.java │ │ │ │ ├── Symbols.java │ │ │ │ ├── SymbolsResponse.java │ │ │ │ ├── TimestampResponse.java │ │ │ │ ├── Trade.java │ │ │ │ ├── TradeBean.java │ │ │ │ └── TradeResponse.java │ │ │ ├── to │ │ │ │ ├── BuyAndSellIndicatorTo.java │ │ │ │ ├── IndicatorBean.java │ │ │ │ ├── RobotRunMessage.java │ │ │ │ ├── RuleBean.java │ │ │ │ └── llIndicatorTo.java │ │ │ └── vo │ │ │ │ ├── Account.java │ │ │ │ ├── AccountVo.java │ │ │ │ ├── BaseInfoEntity.java │ │ │ │ ├── IndicatorCalParam.java │ │ │ │ ├── IndicatorStrategyVo.java │ │ │ │ ├── Market.java │ │ │ │ ├── OrderTaskMessage.java │ │ │ │ ├── ProfitMessage.java │ │ │ │ ├── RobotStrategyVo.java │ │ │ │ ├── RobotVo.java │ │ │ │ └── StrategyVo.java │ │ │ ├── enums │ │ │ ├── AType.java │ │ │ ├── HBOrderType.java │ │ │ ├── OrderType.java │ │ │ ├── PirceType.java │ │ │ ├── RobotState.java │ │ │ ├── SellType.java │ │ │ ├── Status.java │ │ │ ├── StrategyType.java │ │ │ └── TraceType.java │ │ │ ├── exception │ │ │ ├── ApiException.java │ │ │ ├── ExchangeNetworkException.java │ │ │ ├── IndicatorException.java │ │ │ └── TradingApiException.java │ │ │ └── utils │ │ │ ├── ComputeUtil.java │ │ │ ├── DateUtils.java │ │ │ ├── JsonFormate.java │ │ │ └── SpringUtils.java │ │ └── resources │ │ └── libs │ │ └── opslabJutil-2.0.3.jar └── target │ └── classes │ ├── com │ └── quant │ │ └── common │ │ ├── config │ │ ├── JsonConfig.class │ │ ├── RedisConfig.class │ │ ├── RedisUtil.class │ │ ├── RestTemplateConfig.class │ │ └── VpnProxyConfig.class │ │ ├── constans │ │ ├── IndicatorCons.class │ │ └── RobotRedisKeyConfig.class │ │ ├── domain │ │ ├── bo │ │ │ └── RobotBo.class │ │ ├── entity │ │ │ ├── Account.class │ │ │ ├── Balance.class │ │ │ ├── MarketOrder.class │ │ │ ├── OrderProfit.class │ │ │ ├── Orders.class │ │ │ ├── Robot.class │ │ │ ├── Strategy.class │ │ │ ├── Symbol.class │ │ │ └── User.class │ │ ├── request │ │ │ ├── CreateOrderRequest.class │ │ │ ├── DepthRequest.class │ │ │ ├── IntrustOrdersDetailRequest$OrderStates.class │ │ │ ├── IntrustOrdersDetailRequest$OrderType.class │ │ │ └── IntrustOrdersDetailRequest.class │ │ ├── response │ │ │ ├── Account.class │ │ │ ├── Accounts.class │ │ │ ├── AccountsResponse.class │ │ │ ├── ApiResponse.class │ │ │ ├── Balance.class │ │ │ ├── BalanceBean.class │ │ │ ├── BalanceResponse.class │ │ │ ├── Batchcancel.class │ │ │ ├── BatchcancelBean.class │ │ │ ├── BatchcancelResponse.class │ │ │ ├── Currencys.class │ │ │ ├── CurrencysResponse.class │ │ │ ├── Depth.class │ │ │ ├── DepthResponse.class │ │ │ ├── DetailResponse.class │ │ │ ├── Details.class │ │ │ ├── HistoryTrade.class │ │ │ ├── HistoryTradeResponse.class │ │ │ ├── HistoryTradess.class │ │ │ ├── IntrustDetail.class │ │ │ ├── IntrustDetailResponse.class │ │ │ ├── Kline.class │ │ │ ├── KlineResponse.class │ │ │ ├── MatchresultsOrdersDetail.class │ │ │ ├── MatchresultsOrdersDetailResponse.class │ │ │ ├── Merged.class │ │ │ ├── MergedResponse.class │ │ │ ├── OrdersDetail.class │ │ │ ├── OrdersDetailResponse$DataBean.class │ │ │ ├── OrdersDetailResponse.class │ │ │ ├── Place.class │ │ │ ├── SubmitcancelResponse.class │ │ │ ├── Symbol.class │ │ │ ├── Symbols.class │ │ │ ├── SymbolsResponse.class │ │ │ ├── TimestampResponse.class │ │ │ ├── Trade.class │ │ │ ├── TradeBean.class │ │ │ └── TradeResponse.class │ │ ├── to │ │ │ ├── BuyAndSellIndicatorTo$CompareBean.class │ │ │ ├── BuyAndSellIndicatorTo$IndicatorBuyBean.class │ │ │ ├── BuyAndSellIndicatorTo$IndicatorSellBean.class │ │ │ ├── BuyAndSellIndicatorTo$RuleFirstBean.class │ │ │ ├── BuyAndSellIndicatorTo$RuleSecondBean.class │ │ │ ├── BuyAndSellIndicatorTo$SourceBean.class │ │ │ ├── BuyAndSellIndicatorTo.class │ │ │ ├── IndicatorBean.class │ │ │ ├── RobotRunMessage.class │ │ │ ├── RuleBean.class │ │ │ └── llIndicatorTo.class │ │ └── vo │ │ │ ├── Account.class │ │ │ ├── AccountVo.class │ │ │ ├── BaseInfoEntity.class │ │ │ ├── IndicatorCalParam.class │ │ │ ├── IndicatorStrategyVo.class │ │ │ ├── Market.class │ │ │ ├── OrderTaskMessage.class │ │ │ ├── ProfitMessage.class │ │ │ ├── RobotStrategyVo.class │ │ │ ├── RobotVo.class │ │ │ ├── StrategyVo$Setting1Entity.class │ │ │ ├── StrategyVo$Setting2Entity.class │ │ │ ├── StrategyVo$Setting3Entity.class │ │ │ ├── StrategyVo$Setting4Entity.class │ │ │ ├── StrategyVo$Setting5Entity$BuyStrategyBean.class │ │ │ ├── StrategyVo$Setting5Entity$SellStrategyBean.class │ │ │ ├── StrategyVo$Setting5Entity.class │ │ │ ├── StrategyVo$Setting6Entity.class │ │ │ └── StrategyVo.class │ │ ├── enums │ │ ├── AType.class │ │ ├── HBOrderType.class │ │ ├── OrderType.class │ │ ├── PirceType.class │ │ ├── RobotState.class │ │ ├── SellType.class │ │ ├── Status.class │ │ ├── StrategyType.class │ │ └── TraceType.class │ │ ├── exception │ │ ├── ApiException.class │ │ ├── ExchangeNetworkException.class │ │ ├── IndicatorException.class │ │ └── TradingApiException.class │ │ └── utils │ │ ├── ComputeUtil.class │ │ ├── DateUtils.class │ │ ├── JsonFormate.class │ │ └── SpringUtils.class │ └── libs │ └── opslabJutil-2.0.3.jar ├── qt-core ├── pom.xml ├── src │ ├── main │ │ └── java │ │ │ └── com │ │ │ └── quant │ │ │ └── core │ │ │ ├── Main.java │ │ │ ├── api │ │ │ ├── ApiClient.java │ │ │ └── ApiResult.java │ │ │ ├── builder │ │ │ └── StrategyBuilder.java │ │ │ ├── config │ │ │ ├── AccountConfig.java │ │ │ ├── KlineConfig.java │ │ │ ├── MarketConfig.java │ │ │ ├── StrategyConfig.java │ │ │ └── imp │ │ │ │ ├── HuoBiAccountConfigImpl.java │ │ │ │ ├── HuoBiKlineConfigImpl.java │ │ │ │ ├── HuoBiMarketConfigImpl.java │ │ │ │ ├── HuoboIndicatorStragegyConfig.java │ │ │ │ └── HuoboSimpleStragegyConfig.java │ │ │ ├── exchangeAdapter │ │ │ ├── BaseExchangeAdapter.java │ │ │ └── HuobiExchangeAdapter.java │ │ │ ├── factory │ │ │ ├── AbsIndicatorFactory.java │ │ │ └── IndicatorFactory.java │ │ │ ├── helpers │ │ │ └── IndicatorHelper.java │ │ │ ├── indicatorAdapter │ │ │ ├── ADXIndicatorAdapter.java │ │ │ ├── AoIndicatorAdapter.java │ │ │ ├── CciIndicatorAdapter.java │ │ │ ├── EmaIndicatorAdapter.java │ │ │ ├── IndicatorAdapter.java │ │ │ ├── MacdIndicatorAdapter.java │ │ │ ├── RsiIndicatorAdapter.java │ │ │ ├── SmaIndicatorAdapter.java │ │ │ ├── StochasticDIndicatorAdapter.java │ │ │ ├── StochasticKiIndicatorAdapter.java │ │ │ └── StochasticRsiiIndicatorAdapter.java │ │ │ ├── redisMq │ │ │ ├── OrderIdRedisMqServiceImpl.java │ │ │ ├── OrderProfitRedisMqServiceImpl.java │ │ │ ├── RedisMqService.java │ │ │ └── RobotLogsRedisMqServiceImpl.java │ │ │ ├── strategy │ │ │ ├── AbstractStrategy.java │ │ │ ├── StrategyException.java │ │ │ ├── TradingStrategy.java │ │ │ ├── handle │ │ │ │ ├── HuobiDefaultBuyPriceHandle.java │ │ │ │ ├── HuobiDefaultSellPriceHandle.java │ │ │ │ ├── HuobiLimitBuyPriceHandle.java │ │ │ │ ├── HuobiLimitSellPriceHandle.java │ │ │ │ ├── HuobiNotLimitBuyPriceHandle.java │ │ │ │ ├── HuobiNotLimitSellPriceHandle.java │ │ │ │ ├── HuobiSteadyBuyPriceHandle.java │ │ │ │ ├── HuobiSteadySellPriceHandle.java │ │ │ │ └── StrategyHandle.java │ │ │ └── impl │ │ │ │ ├── HuoBIndicatoryStrategyImpl.java │ │ │ │ ├── HuoBiSimpleStrategyImpl.java │ │ │ │ ├── HuoBiSteadyStrategyImpl.java │ │ │ │ └── StrategyDelegate.java │ │ │ └── trading │ │ │ ├── BalanceInfo.java │ │ │ ├── OpenOrder.java │ │ │ ├── TradingApi.java │ │ │ └── impl │ │ │ └── HuoBiOpenOrderImpl.java │ └── test │ │ └── java │ │ ├── StrategyTest.java │ │ └── TradingBotOnMovingTimeSeries.java └── target │ ├── classes │ └── com │ │ └── quant │ │ └── core │ │ ├── Main$RSI2Strategy.class │ │ ├── Main$SMA.class │ │ ├── Main.class │ │ ├── api │ │ ├── ApiClient$1.class │ │ ├── ApiClient$10.class │ │ ├── ApiClient$11.class │ │ ├── ApiClient$12.class │ │ ├── ApiClient$13.class │ │ ├── ApiClient$14.class │ │ ├── ApiClient$15.class │ │ ├── ApiClient$16.class │ │ ├── ApiClient$17.class │ │ ├── ApiClient$18.class │ │ ├── ApiClient$19.class │ │ ├── ApiClient$2.class │ │ ├── ApiClient$20.class │ │ ├── ApiClient$21.class │ │ ├── ApiClient$3.class │ │ ├── ApiClient$4.class │ │ ├── ApiClient$5.class │ │ ├── ApiClient$6.class │ │ ├── ApiClient$7.class │ │ ├── ApiClient$8.class │ │ ├── ApiClient$9.class │ │ ├── ApiClient.class │ │ ├── ApiResult.class │ │ ├── ApiSignature.class │ │ └── JsonUtil.class │ │ ├── builder │ │ └── StrategyBuilder.class │ │ ├── config │ │ ├── AccountConfig.class │ │ ├── KlineConfig.class │ │ ├── MarketConfig.class │ │ ├── StrategyConfig.class │ │ └── imp │ │ │ ├── HuoBiAccountConfigImpl.class │ │ │ ├── HuoBiKlineConfigImpl.class │ │ │ ├── HuoBiMarketConfigImpl.class │ │ │ ├── HuoboIndicatorStragegyConfig.class │ │ │ └── HuoboSimpleStragegyConfig.class │ │ ├── exchangeAdapter │ │ ├── BaseExchangeAdapter.class │ │ └── HuobiExchangeAdapter.class │ │ ├── factory │ │ ├── AbsIndicatorFactory.class │ │ └── IndicatorFactory.class │ │ ├── helpers │ │ └── IndicatorHelper.class │ │ ├── indicatorAdapter │ │ ├── ADXIndicatorAdapter.class │ │ ├── AoIndicatorAdapter.class │ │ ├── CciIndicatorAdapter.class │ │ ├── EmaIndicatorAdapter.class │ │ ├── IndicatorAdapter.class │ │ ├── MacdIndicatorAdapter.class │ │ ├── RsiIndicatorAdapter.class │ │ ├── SmaIndicatorAdapter.class │ │ ├── StochasticDIndicatorAdapter.class │ │ ├── StochasticKiIndicatorAdapter.class │ │ └── StochasticRsiiIndicatorAdapter.class │ │ ├── redisMq │ │ ├── OrderIdRedisMqServiceImpl.class │ │ ├── OrderProfitRedisMqServiceImpl.class │ │ ├── RedisMqService.class │ │ └── RobotLogsRedisMqServiceImpl.class │ │ ├── strategy │ │ ├── AbstractStrategy$OrderState.class │ │ ├── AbstractStrategy$Profit.class │ │ ├── AbstractStrategy$Weights.class │ │ ├── AbstractStrategy.class │ │ ├── StrategyException.class │ │ ├── TradingStrategy.class │ │ ├── handle │ │ │ ├── HuobiDefaultBuyPriceHandle.class │ │ │ ├── HuobiDefaultSellPriceHandle.class │ │ │ ├── HuobiLimitBuyPriceHandle.class │ │ │ ├── HuobiLimitSellPriceHandle.class │ │ │ ├── HuobiNotLimitBuyPriceHandle.class │ │ │ ├── HuobiNotLimitSellPriceHandle.class │ │ │ ├── HuobiSteadyBuyPriceHandle.class │ │ │ ├── HuobiSteadySellPriceHandle.class │ │ │ ├── StrategyHandle$HandleResult.class │ │ │ └── StrategyHandle.class │ │ └── impl │ │ │ ├── HuoBIndicatoryStrategyImpl.class │ │ │ ├── HuoBiSimpleStrategyImpl.class │ │ │ ├── HuoBiSteadyStrategyImpl.class │ │ │ └── StrategyDelegate.class │ │ └── trading │ │ ├── BalanceInfo.class │ │ ├── OpenOrder.class │ │ ├── TradingApi.class │ │ └── impl │ │ └── HuoBiOpenOrderImpl.class │ └── test-classes │ └── StrategyTest.class ├── qt-eureka ├── pom.xml ├── src │ ├── main │ │ ├── java │ │ │ └── com │ │ │ │ └── ambc │ │ │ │ └── eureka │ │ │ │ ├── ServerEurekaApplication.java │ │ │ │ └── WebSecurityConfigurer.java │ │ └── resources │ │ │ ├── application.yml │ │ │ ├── application_test.properties │ │ │ ├── bootstrap-ha.yml │ │ │ └── logback-spring.xml │ └── test │ │ └── java │ │ └── com │ │ └── ambc │ │ └── eureka │ │ └── ServerEurekaApplicationTests.java └── target │ ├── classes │ ├── application.yml │ ├── application_test.properties │ ├── bootstrap-ha.yml │ ├── com │ │ └── abc │ │ │ └── eureka │ │ │ ├── ServerEurekaApplication.class │ │ │ └── WebSecurityConfigurer.class │ └── logback-spring.xml │ ├── maven-archiver │ └── pom.properties │ ├── maven-status │ └── maven-compiler-plugin │ │ ├── compile │ │ └── default-compile │ │ │ ├── createdFiles.lst │ │ │ └── inputFiles.lst │ │ └── testCompile │ │ └── default-testCompile │ │ ├── createdFiles.lst │ │ └── inputFiles.lst │ ├── qt-eureka.jar │ ├── qt-eureka.jar.original │ ├── surefire-reports │ ├── TEST-com.abc.eureka.ServerEurekaApplicationTests.xml │ └── com.abc.eureka.ServerEurekaApplicationTests.txt │ └── test-classes │ └── com │ └── abc │ └── eureka │ └── ServerEurekaApplicationTests.class ├── qt-register ├── pom.xml ├── src │ └── main │ │ ├── java │ │ └── com │ │ │ └── quant │ │ │ └── center │ │ │ ├── AppRegister.java │ │ │ └── te.java │ │ └── resources │ │ ├── application-dev.yml │ │ ├── application-prod.yml │ │ ├── application.yml │ │ ├── banner.txt │ │ └── logback-spring.xml └── target │ └── classes │ ├── application-dev.yml │ ├── application-prod.yml │ ├── application.yml │ ├── banner.txt │ └── logback-spring.xml └── sql └── quant.sql /.gitignore: -------------------------------------------------------------------------------- 1 | HELP.md 2 | /target/ 3 | !.mvn/wrapper/maven-wrapper.jar 4 | 5 | ### STS ### 6 | .apt_generated 7 | .classpath 8 | .factorypath 9 | .project 10 | .settings 11 | .springBeans 12 | .sts4-cache 13 | 14 | ### IntelliJ IDEA ### 15 | .idea 16 | *.iws 17 | *.iml 18 | *.ipr 19 | 20 | ### NetBeans ### 21 | /nbproject/private/ 22 | /nbbuild/ 23 | /dist/ 24 | /nbdist/ 25 | /.nb-gradle/ 26 | /build/ 27 | 28 | ### VS Code ### 29 | .vscode/ 30 | -------------------------------------------------------------------------------- /qt-admin/src/main/docker/DockerFile: -------------------------------------------------------------------------------- 1 | FROM -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/AppAdmin.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.EnableEurekaClient; 6 | import org.springframework.context.annotation.ComponentScan; 7 | import org.springframework.scheduling.annotation.EnableScheduling; 8 | 9 | 10 | @SpringBootApplication 11 | @EnableEurekaClient 12 | @EnableScheduling 13 | @ComponentScan({"com.quant.common", "com.quant.admin"}) 14 | public class AppAdmin { 15 | public static void main(String[] args) { 16 | SpringApplication.run(AppAdmin.class, args); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/component/RobotMsgReceiver.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.component; 2 | 3 | import com.alibaba.fastjson.JSON; 4 | import com.quant.common.domain.to.RobotRunMessage; 5 | import com.quant.common.utils.JsonFormate; 6 | import lombok.extern.slf4j.Slf4j; 7 | import org.springframework.messaging.simp.SimpMessagingTemplate; 8 | 9 | /*** 10 | * 消息接收者(订阅者) 需要注入到springboot中 11 | */ 12 | @Slf4j 13 | public class RobotMsgReceiver { 14 | 15 | private SimpMessagingTemplate simpMessageSendingOperations;//消息发送模板 16 | 17 | public RobotMsgReceiver(SimpMessagingTemplate simpMessageSendingOperations) { 18 | this.simpMessageSendingOperations = simpMessageSendingOperations; 19 | } 20 | 21 | /** 22 | * 收到通道的消息之后执行的方法 23 | * 24 | * @param message 25 | */ 26 | public void receiveMessage(String message) { 27 | try { 28 | //这里是收到通道的消息之后执行的方法?? 29 | RobotRunMessage msg = JSON.parseObject(JsonFormate.parseJsonToString(message), RobotRunMessage.class); 30 | simpMessageSendingOperations.convertAndSend("/topic/" + msg.getRobotId(), JsonFormate.parseJsonToString(message)); 31 | } catch (NumberFormatException e) { 32 | e.printStackTrace(); 33 | } 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/config/AsyncConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.config; 2 | 3 | import org.springframework.context.annotation.Bean; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.scheduling.annotation.EnableAsync; 6 | import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; 7 | 8 | import java.util.concurrent.Executor; 9 | 10 | @Configuration 11 | @EnableAsync 12 | public class AsyncConfig { 13 | 14 | private final static int corePoolSize = 2; 15 | private final static int maxPoolSize = 4; 16 | private final static int queueCapacity = 6; 17 | 18 | @Bean 19 | public Executor taskExecutor() { 20 | ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor(); 21 | executor.setCorePoolSize(corePoolSize); 22 | executor.setMaxPoolSize(maxPoolSize); 23 | executor.setQueueCapacity(queueCapacity); 24 | executor.initialize(); 25 | return executor; 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/config/GlobalCorsConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.config; 2 | 3 | import org.springframework.context.annotation.Bean; 4 | import org.springframework.context.annotation.Configuration; 5 | import org.springframework.web.servlet.config.annotation.CorsRegistry; 6 | import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; 7 | 8 | @Configuration 9 | public class GlobalCorsConfig { 10 | 11 | 12 | @Bean 13 | public WebMvcConfigurer addCorsMappings() { 14 | 15 | return new WebMvcConfigurer() { 16 | @Override 17 | public void addCorsMappings(CorsRegistry registry) { 18 | 19 | registry.addMapping("/**") 20 | .allowCredentials(true) 21 | .allowedHeaders("*") 22 | .allowedOrigins("*") 23 | .allowedMethods("*"); 24 | } 25 | }; 26 | 27 | } 28 | 29 | 30 | } 31 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/config/MybatisPlusConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.config; 2 | 3 | import com.baomidou.mybatisplus.plugins.PaginationInterceptor; 4 | import org.mybatis.spring.annotation.MapperScan; 5 | import org.springframework.context.annotation.Bean; 6 | import org.springframework.context.annotation.Configuration; 7 | import org.springframework.transaction.annotation.EnableTransactionManagement; 8 | 9 | //Spring boot方式 10 | @EnableTransactionManagement 11 | @Configuration 12 | @MapperScan("com.quant.admin.dao") 13 | public class MybatisPlusConfig { 14 | 15 | /** 16 | * 分页插件 17 | */ 18 | @Bean 19 | public PaginationInterceptor paginationInterceptor() { 20 | return new PaginationInterceptor(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/config/WebSocketConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.config; 2 | 3 | import org.springframework.context.annotation.Configuration; 4 | import org.springframework.messaging.simp.config.MessageBrokerRegistry; 5 | import org.springframework.web.socket.config.annotation.EnableWebSocketMessageBroker; 6 | import org.springframework.web.socket.config.annotation.StompEndpointRegistry; 7 | import org.springframework.web.socket.config.annotation.WebSocketMessageBrokerConfigurer; 8 | 9 | 10 | @Configuration 11 | @EnableWebSocketMessageBroker 12 | public class WebSocketConfig implements WebSocketMessageBrokerConfigurer { 13 | @Override 14 | public void registerStompEndpoints(StompEndpointRegistry registry) { 15 | //注册一个Stomp 协议的endpoint指定URL为myWebSocket,并用.withSockJS()指定 SockJS协议。.setAllowedOrigins("*")设置跨域 16 | registry.addEndpoint("/robotLog").setAllowedOrigins("*").withSockJS(); 17 | } 18 | 19 | @Override 20 | public void configureMessageBroker(MessageBrokerRegistry config) { 21 | //配置消息代理(message broker) 22 | //将消息传回给以‘/topic’开头的客户端 23 | config.enableSimpleBroker("/topic"); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/controller/BalanceController.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.controller; 2 | 3 | import com.quant.admin.service.BalanceService; 4 | import com.quant.core.api.ApiResult; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.web.bind.annotation.GetMapping; 7 | import org.springframework.web.bind.annotation.RequestMapping; 8 | import org.springframework.web.bind.annotation.RestController; 9 | import org.springframework.web.servlet.ModelAndView; 10 | 11 | import javax.servlet.http.HttpServletRequest; 12 | import javax.servlet.http.HttpServletResponse; 13 | 14 | /** 15 | *

16 | * 前端控制器 17 | *

18 | * 19 | * @author yang 20 | * @since 2019-04-15 21 | */ 22 | @RestController 23 | @RequestMapping("/balance") 24 | public class BalanceController extends BaseController { 25 | 26 | @Autowired 27 | BalanceService balanceService; 28 | 29 | 30 | @GetMapping("/getBalanceList") 31 | public ApiResult getBalanceList(String accountId) { 32 | return balanceService.getBalanceListByAccountId(accountId); 33 | } 34 | 35 | 36 | @Override 37 | protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { 38 | return null; 39 | } 40 | } 41 | 42 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/controller/BaseController.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.controller; 2 | 3 | import org.springframework.web.servlet.ModelAndView; 4 | import org.springframework.web.servlet.mvc.AbstractController; 5 | 6 | import javax.servlet.http.HttpServletRequest; 7 | import javax.servlet.http.HttpServletResponse; 8 | 9 | public class BaseController extends AbstractController { 10 | 11 | 12 | public String getUid(HttpServletRequest httpRequest) { 13 | return httpRequest.getHeader("X-Token"); 14 | } 15 | 16 | @Override 17 | protected ModelAndView handleRequestInternal(HttpServletRequest request, HttpServletResponse response) throws Exception { 18 | return null; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/controller/SymbolController.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.controller; 2 | 3 | import com.quant.admin.service.SymbolService; 4 | import com.quant.core.api.ApiResult; 5 | import org.springframework.beans.factory.annotation.Autowired; 6 | import org.springframework.web.bind.annotation.GetMapping; 7 | import org.springframework.web.bind.annotation.RequestMapping; 8 | import org.springframework.web.bind.annotation.RestController; 9 | 10 | @RequestMapping("symbol") 11 | @RestController 12 | public class SymbolController extends BaseController { 13 | 14 | @Autowired 15 | SymbolService symbolService; 16 | 17 | 18 | @GetMapping("/symbols") 19 | public ApiResult getSymbols() { 20 | return symbolService.getSymbols(); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/AccountMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.quant.common.domain.entity.Account; 4 | import com.baomidou.mybatisplus.mapper.BaseMapper; 5 | 6 | /** 7 | *

8 | * Mapper 接口 9 | *

10 | * 11 | * @author yang 12 | * @since 2019-04-08 13 | */ 14 | public interface AccountMapper extends BaseMapper { 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/BalanceMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.baomidou.mybatisplus.mapper.BaseMapper; 4 | import com.quant.common.domain.entity.Balance; 5 | 6 | /** 7 | *

8 | * Mapper 接口 9 | *

10 | * 11 | * @author yang 12 | * @since 2019-04-15 13 | */ 14 | public interface BalanceMapper extends BaseMapper { 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/OrderProfitMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.baomidou.mybatisplus.mapper.BaseMapper; 4 | import com.quant.common.domain.entity.OrderProfit; 5 | 6 | /** 7 | *

8 | * Mapper 接口 9 | *

10 | * 11 | * @author yang 12 | * @since 2019-04-26 13 | */ 14 | public interface OrderProfitMapper extends BaseMapper { 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/OrdersMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.baomidou.mybatisplus.mapper.BaseMapper; 4 | import com.quant.common.domain.entity.Orders; 5 | 6 | /** 7 | *

8 | * Mapper 接口 9 | *

10 | * 11 | * @author yang 12 | * @since 2019-04-22 13 | */ 14 | public interface OrdersMapper extends BaseMapper { 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/RobotMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.baomidou.mybatisplus.mapper.BaseMapper; 4 | import com.quant.common.domain.bo.RobotBo; 5 | import com.quant.common.domain.entity.Robot; 6 | 7 | import java.util.List; 8 | 9 | /** 10 | *

11 | * Mapper 接口 12 | *

13 | * 14 | * @author yang 15 | * @since 2019-04-17 16 | */ 17 | public interface RobotMapper extends BaseMapper { 18 | List getRobotList(String uid); 19 | } 20 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/StrategyMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.baomidou.mybatisplus.mapper.BaseMapper; 4 | import com.quant.common.domain.entity.Strategy; 5 | 6 | /** 7 | *

8 | * Mapper 接口 9 | *

10 | * 11 | * @author yang 12 | * @since 2019-04-15 13 | */ 14 | public interface StrategyMapper extends BaseMapper { 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/SymbolMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.baomidou.mybatisplus.mapper.BaseMapper; 4 | import com.quant.common.domain.entity.Symbol; 5 | 6 | /** 7 | *

8 | * Mapper 接口 9 | *

10 | * 11 | * @author yang 12 | * @since 2019-04-17 13 | */ 14 | public interface SymbolMapper extends BaseMapper { 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/dao/UserMapper.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.dao; 2 | 3 | import com.quant.common.domain.entity.User; 4 | import com.baomidou.mybatisplus.mapper.BaseMapper; 5 | 6 | /** 7 | *

8 | * Mapper 接口 9 | *

10 | * 11 | * @author yang 12 | * @since 2019-04-08 13 | */ 14 | public interface UserMapper extends BaseMapper { 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/rest/RobotClientService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.rest; 2 | 3 | import com.quant.common.domain.vo.IndicatorStrategyVo; 4 | import com.quant.core.api.ApiResult; 5 | import com.quant.common.domain.vo.RobotStrategyVo; 6 | 7 | public interface RobotClientService { 8 | 9 | ApiResult operatingRobot(String url, RobotStrategyVo vo); 10 | 11 | ApiResult operatingIndicatorRobot(String url, IndicatorStrategyVo strategyVo); 12 | } 13 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/rest/impl/RobotClientServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.rest.impl; 2 | 3 | import com.quant.admin.rest.RobotClientService; 4 | import com.quant.common.domain.vo.IndicatorStrategyVo; 5 | import com.quant.core.api.ApiResult; 6 | import com.quant.common.domain.vo.RobotStrategyVo; 7 | import org.springframework.beans.factory.annotation.Autowired; 8 | import org.springframework.stereotype.Service; 9 | import org.springframework.web.client.RestTemplate; 10 | 11 | /** 12 | * 调用机器人节点服务器 传递数据给机器人 13 | */ 14 | @Service 15 | public class RobotClientServiceImpl implements RobotClientService { 16 | 17 | @Autowired 18 | RestTemplate restTemplate; 19 | 20 | /** 21 | * 发送信息到client端 22 | * 23 | * @param url 24 | * @param vo 25 | * @return 26 | */ 27 | @Override 28 | public ApiResult operatingRobot(String url, RobotStrategyVo vo) { 29 | return restTemplate.postForEntity(url, vo, ApiResult.class).getBody(); 30 | } 31 | 32 | @Override 33 | public ApiResult operatingIndicatorRobot(String url, IndicatorStrategyVo strategyVo) { 34 | return restTemplate.postForEntity(url, strategyVo, ApiResult.class).getBody(); 35 | } 36 | 37 | 38 | } 39 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/AccountService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.quant.common.domain.entity.Account; 4 | import com.baomidou.mybatisplus.service.IService; 5 | import com.quant.common.domain.vo.AccountVo; 6 | import com.quant.core.api.ApiResult; 7 | 8 | /** 9 | *

10 | * 服务类 11 | *

12 | * 13 | * @author yang 14 | * @since 2019-04-08 15 | */ 16 | public interface AccountService extends IService { 17 | 18 | /** 19 | * 添加一个账户 20 | * 21 | * @param account 22 | */ 23 | ApiResult addOrUpdate(AccountVo account); 24 | 25 | ApiResult selectListByUid(int uid, int page, int limit); 26 | 27 | ApiResult accounts(int uid); 28 | } 29 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/BalanceService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.baomidou.mybatisplus.service.IService; 4 | import com.quant.common.domain.entity.Balance; 5 | import com.quant.core.api.ApiResult; 6 | 7 | /** 8 | *

9 | * 服务类 10 | *

11 | * 12 | * @author yang 13 | * @since 2019-04-15 14 | */ 15 | public interface BalanceService extends IService { 16 | 17 | ApiResult getBalanceListByAccountId(String accountId); 18 | } 19 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/IMailService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import javax.mail.MessagingException; 4 | 5 | public interface IMailService { 6 | /** 7 | * 发送文本邮件 8 | * 9 | * @param to 10 | * @param subject 11 | * @param content 12 | */ 13 | void sendSimpleMail(String to, String subject, String content); 14 | 15 | 16 | /** 17 | * 发送HTML邮件 18 | * 19 | * @param to 20 | * @param subject 21 | * @param content 22 | * @throws MessagingException 23 | */ 24 | void sendHtmlMail(String to, String subject, String content) throws MessagingException; 25 | 26 | /** 27 | * 发送带附件的邮件 28 | * 29 | * @param to 30 | * @param subject 31 | * @param content 32 | * @param filePath 33 | * @throws MessagingException 34 | */ 35 | void sendAttachmentsMail(String to, String subject, String content, String filePath) throws MessagingException; 36 | 37 | /** 38 | * 发送正文中有静态资源的邮件 39 | * 40 | * @param to 41 | * @param subject 42 | * @param content 43 | * @param rscPath 44 | * @param rscId 45 | * @throws MessagingException 46 | */ 47 | void sendResourceMail(String to, String subject, String content, String rscPath, String rscId) throws MessagingException; 48 | 49 | 50 | } -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/OrderProfitService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.baomidou.mybatisplus.service.IService; 4 | import com.quant.common.domain.entity.OrderProfit; 5 | import com.quant.core.api.ApiResult; 6 | 7 | /** 8 | *

9 | * 服务类 10 | *

11 | * 12 | * @author yang 13 | * @since 2019-04-26 14 | */ 15 | public interface OrderProfitService extends IService { 16 | 17 | ApiResult getProfitList(int rid, int page, int limit); 18 | } 19 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/OrdersService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.baomidou.mybatisplus.service.IService; 4 | import com.quant.common.domain.entity.Orders; 5 | import com.quant.core.api.ApiResult; 6 | 7 | /** 8 | *

9 | * 服务类 10 | *

11 | * 12 | * @author yang 13 | * @since 2019-04-22 14 | */ 15 | public interface OrdersService extends IService { 16 | 17 | ApiResult getOrderByRobotId(int robotId, int page, int limit); 18 | } 19 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/RobotService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.baomidou.mybatisplus.service.IService; 4 | import com.quant.common.domain.entity.Robot; 5 | import com.quant.core.api.ApiResult; 6 | import com.quant.common.domain.vo.RobotVo; 7 | 8 | import javax.validation.constraints.NotBlank; 9 | 10 | /** 11 | *

12 | * 服务类 13 | *

14 | * 15 | * @author yang 16 | * @since 2019-04-17 17 | */ 18 | public interface RobotService extends IService { 19 | 20 | ApiResult addOrUpdateRobot(RobotVo vo); 21 | 22 | ApiResult list(String uid); 23 | 24 | ApiResult operatingRobot(Integer id,Integer state, String uid); 25 | 26 | ApiResult deleteRobot(String uid,int id); 27 | 28 | boolean editRobotRunState(int runState); 29 | 30 | ApiResult getRobotById(@NotBlank int uid); 31 | } 32 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/StrategyService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.alibaba.fastjson.JSONObject; 4 | import com.baomidou.mybatisplus.service.IService; 5 | import com.quant.common.domain.entity.Strategy; 6 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 7 | import com.quant.common.domain.to.llIndicatorTo; 8 | import com.quant.core.api.ApiResult; 9 | import com.quant.common.domain.vo.StrategyVo; 10 | 11 | /** 12 | *

13 | * 服务类 14 | *

15 | * 16 | * @author yang 17 | * @since 2019-04-15 18 | */ 19 | public interface StrategyService extends IService { 20 | 21 | ApiResult addOrUpdateStrategy(StrategyVo strategyVo, String uid); 22 | 23 | ApiResult strategyList(String uid); 24 | 25 | ApiResult simpleStrategyList(String uid); 26 | 27 | ApiResult getStrategyById(int id, String uid); 28 | 29 | ApiResult deleteStrategy(int id, String uid); 30 | 31 | ApiResult addOrUpdateIndicatorStrategy(llIndicatorTo strategyVo, String uid); 32 | } 33 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/SymbolService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.baomidou.mybatisplus.service.IService; 4 | import com.quant.common.domain.entity.Symbol; 5 | import com.quant.core.api.ApiResult; 6 | 7 | /** 8 | *

9 | * 服务类 10 | *

11 | * 12 | * @author yang 13 | * @since 2019-04-17 14 | */ 15 | public interface SymbolService extends IService { 16 | 17 | ApiResult getSymbols(); 18 | } 19 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/UserService.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service; 2 | 3 | import com.baomidou.mybatisplus.service.IService; 4 | import com.quant.common.domain.entity.User; 5 | import com.quant.core.api.ApiResult; 6 | 7 | import javax.validation.constraints.NotNull; 8 | 9 | /** 10 | *

11 | * 服务类 12 | *

13 | * 14 | * @author yang 15 | * @since 2019-04-08 16 | */ 17 | public interface UserService extends IService { 18 | 19 | /** 20 | * simple登录 21 | * @param params 22 | * @return 23 | */ 24 | ApiResult login(User params); 25 | 26 | 27 | ApiResult info(String token); 28 | 29 | ApiResult logout(); 30 | 31 | ApiResult getUserEmail(@NotNull Integer id); 32 | 33 | ApiResult emailEditer(@NotNull User user); 34 | } 35 | -------------------------------------------------------------------------------- /qt-admin/src/main/java/com/quant/admin/service/impl/SymbolServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.quant.admin.service.impl; 2 | 3 | import com.baomidou.mybatisplus.service.impl.ServiceImpl; 4 | import com.quant.admin.dao.SymbolMapper; 5 | import com.quant.common.domain.entity.Symbol; 6 | import com.quant.admin.service.SymbolService; 7 | import com.quant.common.enums.Status; 8 | import com.quant.core.api.ApiResult; 9 | import org.springframework.stereotype.Service; 10 | 11 | import java.util.List; 12 | 13 | /** 14 | *

15 | * 服务实现类 16 | *

17 | * 18 | * @author yang 19 | * @since 2019-04-17 20 | */ 21 | @Service 22 | public class SymbolServiceImpl extends ServiceImpl implements SymbolService { 23 | 24 | @Override 25 | public ApiResult getSymbols() { 26 | Symbol symbol = new Symbol(); 27 | List symbols = symbol.selectAll(); 28 | return new ApiResult(Status.SUCCESS, symbols); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /qt-admin/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | profiles: 3 | active: dev 4 | -------------------------------------------------------------------------------- /qt-admin/src/main/resources/banner.txt: -------------------------------------------------------------------------------- 1 | __ _ _ _ __ 2 | / / | | | | (_) \ \ 3 | / / __ _ _ _ __ _ _ __ | |_ ______ __ _ __| |_ __ ___ _ _ __ \ \ 4 | < < / _` | | | |/ _` | '_ \| __|______/ _` |/ _` | '_ ` _ \| | '_ \ > > 5 | \ | (_| | |_| | (_| | | | | |_ | (_| | (_| | | | | | | | | | |/ / 6 | \_\__, |\__,_|\__,_|_| |_|\__| \__,_|\__,_|_| |_| |_|_|_| |_/_/ 7 | | | 8 | |_| -------------------------------------------------------------------------------- /qt-admin/src/main/resources/mapper/AccountMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | id, user_id AS userId,name as name , access_key AS accessKey, secret_key AS secretKey, type, state, info, create_time AS createTime, is_delete AS isDelete 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /qt-admin/src/main/resources/mapper/BalanceMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | id, account_id AS accountId, type, currency, trade_balance AS tradeBalance, frozen_balance AS frozenBalance 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /qt-admin/src/main/resources/mapper/SymbolMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | id, base_currency AS baseCurrency, quote_currency AS quoteCurrency, price_precision AS pricePrecision, amount_precision AS amountPrecision, symbol 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /qt-admin/src/main/resources/mapper/UserMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | id, username, password, create_time AS createTime, is_delete AS isDelete, avatar, introduction, roles 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /qt-admin/src/test/java/com/quant/admin/QtParentApplicationTests.java: -------------------------------------------------------------------------------- 1 | //package com.qklx.qt.admin; 2 | // 3 | //import User; 4 | //import RedisUtil; 5 | //import org.junit.Test; 6 | //import org.junit.runner.RunWith; 7 | //import org.springframework.beans.factory.annotation.Autowired; 8 | //import org.springframework.boot.test.context.SpringBootTest; 9 | //import org.springframework.test.context.junit4.SpringRunner; 10 | // 11 | //@RunWith(SpringRunner.class) 12 | //@SpringBootTest 13 | //public class QtParentApplicationTests { 14 | // 15 | // @Autowired 16 | // RedisUtil redisUtil; 17 | // 18 | // 19 | // @Test 20 | // public void test() throws Exception { 21 | // 22 | // redisUtil.sSet("testSet", 1, 2, 3); 23 | // 24 | // boolean testSet1 = redisUtil.sHasKey("testSet", 1); 25 | // boolean testSet2 = redisUtil.sHasKey("testSet", 4); 26 | // System.out.println("testSet1" + testSet1); 27 | // System.out.println("testSet2" + testSet2); 28 | // } 29 | // 30 | // 31 | //} 32 | -------------------------------------------------------------------------------- /qt-admin/target/classes/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | profiles: 3 | active: dev 4 | -------------------------------------------------------------------------------- /qt-admin/target/classes/banner.txt: -------------------------------------------------------------------------------- 1 | __ _ _ _ __ 2 | / / | | | | (_) \ \ 3 | / / __ _ _ _ __ _ _ __ | |_ ______ __ _ __| |_ __ ___ _ _ __ \ \ 4 | < < / _` | | | |/ _` | '_ \| __|______/ _` |/ _` | '_ ` _ \| | '_ \ > > 5 | \ | (_| | |_| | (_| | | | | |_ | (_| | (_| | | | | | | | | | |/ / 6 | \_\__, |\__,_|\__,_|_| |_|\__| \__,_|\__,_|_| |_| |_|_|_| |_/_/ 7 | | | 8 | |_| -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/AppAdmin.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/AppAdmin.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/component/IMailServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/component/IMailServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/component/OrderIdReceiver.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/component/OrderIdReceiver.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/component/ProfitReceiver.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/component/ProfitReceiver.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/component/RobotMsgReceiver.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/component/RobotMsgReceiver.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/config/AsyncConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/config/AsyncConfig.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/config/GlobalCorsConfig$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/config/GlobalCorsConfig$1.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/config/GlobalCorsConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/config/GlobalCorsConfig.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/config/MybatisPlusConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/config/MybatisPlusConfig.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/config/SubscriberConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/config/SubscriberConfig.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/config/WebSocketConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/config/WebSocketConfig.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/AccountController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/AccountController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/BalanceController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/BalanceController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/BaseController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/BaseController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/IndicatorController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/IndicatorController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/NodeController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/NodeController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/OrderController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/OrderController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/OrderProfitController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/OrderProfitController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/RobotController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/RobotController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/StrategyController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/StrategyController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/SymbolController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/SymbolController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/controller/UserController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/controller/UserController.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/AccountMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/AccountMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/BalanceMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/BalanceMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/OrderProfitMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/OrderProfitMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/OrdersMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/OrdersMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/RobotMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/RobotMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/StrategyMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/StrategyMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/SymbolMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/SymbolMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/dao/UserMapper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/dao/UserMapper.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/generator/Tab.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/generator/Tab.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/generator/createsql.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/generator/createsql.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/rest/RobotClientService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/rest/RobotClientService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/rest/impl/RobotClientServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/rest/impl/RobotClientServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/AccountService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/AccountService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/BalanceService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/BalanceService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/IMailService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/IMailService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/OrderProfitService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/OrderProfitService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/OrdersService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/OrdersService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/RobotService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/RobotService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/StrategyService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/StrategyService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/SymbolService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/SymbolService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/UserService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/UserService.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/AccountServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/AccountServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/BalanceServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/BalanceServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/OrderProfitServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/OrderProfitServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/OrdersServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/OrdersServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/RobotServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/RobotServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/StrategyServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/StrategyServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/SymbolServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/SymbolServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/service/impl/UserServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/service/impl/UserServiceImpl.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/task/SymbolTask.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/task/SymbolTask.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator$1.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator$2.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator$3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator$3.class -------------------------------------------------------------------------------- /qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-admin/target/classes/com/quant/admin/utils/MysqlGenerator.class -------------------------------------------------------------------------------- /qt-admin/target/classes/mapper/AccountMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | id, user_id AS userId,name as name , access_key AS accessKey, secret_key AS secretKey, type, state, info, create_time AS createTime, is_delete AS isDelete 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /qt-admin/target/classes/mapper/BalanceMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | id, account_id AS accountId, type, currency, trade_balance AS tradeBalance, frozen_balance AS frozenBalance 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /qt-admin/target/classes/mapper/SymbolMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | id, base_currency AS baseCurrency, quote_currency AS quoteCurrency, price_precision AS pricePrecision, amount_precision AS amountPrecision, symbol 18 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /qt-admin/target/classes/mapper/UserMapper.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | id, username, password, create_time AS createTime, is_delete AS isDelete, avatar, introduction, roles 20 | 21 | 22 | 23 | -------------------------------------------------------------------------------- /qt-client/src/main/java/com/quant/client/AppClient.java: -------------------------------------------------------------------------------- 1 | package com.quant.client; 2 | 3 | 4 | import org.springframework.boot.SpringApplication; 5 | import org.springframework.boot.autoconfigure.SpringBootApplication; 6 | import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration; 7 | import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration; 8 | import org.springframework.cloud.netflix.eureka.EnableEurekaClient; 9 | import org.springframework.context.annotation.ComponentScan; 10 | import org.springframework.scheduling.annotation.EnableScheduling; 11 | 12 | @EnableEurekaClient 13 | @EnableScheduling 14 | @SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class}) 15 | @ComponentScan({"com.quant.common","com.quant.client"}) 16 | public class AppClient { 17 | public static void main(String[] args) { 18 | 19 | SpringApplication.run(AppClient.class, args); 20 | } 21 | 22 | } 23 | -------------------------------------------------------------------------------- /qt-client/src/main/java/com/quant/client/config/ThreadPool.java: -------------------------------------------------------------------------------- 1 | package com.quant.client.config; 2 | 3 | import com.google.common.util.concurrent.ThreadFactoryBuilder; 4 | import org.springframework.context.annotation.Bean; 5 | import org.springframework.context.annotation.Configuration; 6 | 7 | import java.util.concurrent.*; 8 | 9 | @Configuration 10 | public class ThreadPool { 11 | 12 | @Bean 13 | public ExecutorService initPool() { 14 | ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() 15 | .setNameFormat("-----机器人后台程序-----pool--%d").build(); 16 | return new ThreadPoolExecutor(10, 17 | 20, 18 | 1000L, 19 | TimeUnit.MILLISECONDS, 20 | new LinkedBlockingQueue<>(1000), 21 | namedThreadFactory, 22 | new ThreadPoolExecutor.AbortPolicy()); 23 | } 24 | 25 | } 26 | -------------------------------------------------------------------------------- /qt-client/src/main/java/com/quant/client/service/RobotService.java: -------------------------------------------------------------------------------- 1 | package com.quant.client.service; 2 | 3 | import com.quant.common.domain.vo.IndicatorStrategyVo; 4 | import com.quant.common.domain.vo.RobotStrategyVo; 5 | import com.quant.core.api.ApiResult; 6 | 7 | public interface RobotService { 8 | 9 | 10 | ApiResult operatingRobot(RobotStrategyVo vo); 11 | 12 | ApiResult operatingIndicatorRobot(IndicatorStrategyVo vo); 13 | } 14 | -------------------------------------------------------------------------------- /qt-client/src/main/resources/application-dev.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 8024 3 | address: 0.0.0.0 4 | eureka: 5 | client: 6 | serviceUrl: 7 | defaultZone: http://${EUREKA_ZONE_HOST:boniu:zongjie@127.0.0.1}:${EUREKA_ZONE_PORT:9001}/eureka/ 8 | instance: 9 | prefer-ip-address: true 10 | ip-address: ${server.address} 11 | spring: 12 | application: 13 | name: qt-client 14 | # rabbitmq: 15 | # host: ${RABBIT_MQ_HOST:localhost} 16 | # port: ${RABBIT_MQ_PORT:5672} 17 | # username: ${RABBIT_MQ_USERNAME:yang} 18 | # password: ${RABBIT_MQ_PASSWORD:yang} 19 | redis: 20 | database: 0 21 | host: 127.0.0.1 22 | port: 6379 23 | password: 12345678 24 | jedis: 25 | pool: 26 | max-active: 8 27 | max-wait: -1 28 | max-idle: 8 29 | min-idle: 0 30 | timeout: 15000 31 | feign: 32 | hystrix: 33 | enabled: true 34 | 35 | management: 36 | endpoints: 37 | web: 38 | exposure: 39 | include: '*' 40 | base-path: / 41 | vpnproxy: 42 | enable: false 43 | ip: 127.0.0.1 44 | port: 1080 45 | 46 | -------------------------------------------------------------------------------- /qt-client/src/main/resources/application-prod.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 8024 3 | address: 0.0.0.0 4 | eureka: 5 | client: 6 | serviceUrl: 7 | defaultZone: http://${EUREKA_ZONE_HOST:124.156.196.215}:${EUREKA_ZONE_PORT:8762}/eureka/ 8 | instance: 9 | prefer-ip-address: true 10 | ip-address: 124.156.196.215 11 | 12 | spring: 13 | application: 14 | name: qt-client 15 | redis: 16 | database: 0 17 | host: 127.0.0.1 18 | port: 6379 19 | password: 20 | jedis: 21 | pool: 22 | max-active: 8 23 | max-wait: -1 24 | max-idle: 8 25 | min-idle: 0 26 | timeout: 15000 27 | feign: 28 | hystrix: 29 | enabled: true 30 | 31 | management: 32 | endpoints: 33 | web: 34 | exposure: 35 | include: '*' 36 | base-path: / 37 | vpnproxy: 38 | enable: false 39 | ip: 127.0.0.1 40 | port: 64035 41 | 42 | -------------------------------------------------------------------------------- /qt-client/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | profiles: 3 | active: dev 4 | -------------------------------------------------------------------------------- /qt-client/src/main/resources/banner.txt: -------------------------------------------------------------------------------- 1 | __ _ _ _ _ __ 2 | / / | | | (_) | | \ \ 3 | / / __ _ _ _ __ _ _ __ | |_ ______ ___| |_ ___ _ __ | |_ \ \ 4 | < < / _` | | | |/ _` | '_ \| __|______/ __| | |/ _ | '_ \| __| > > 5 | \ | (_| | |_| | (_| | | | | |_ | (__| | | __| | | | |_ / / 6 | \_\__, |\__,_|\__,_|_| |_|\__| \___|_|_|\___|_| |_|\__/_/ 7 | | | 8 | |_| -------------------------------------------------------------------------------- /qt-client/src/test/java/Test.java: -------------------------------------------------------------------------------- 1 | public class Test { 2 | 3 | public static void main(String[] args) { 4 | 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /qt-client/target/classes/application-dev.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 8024 3 | address: 0.0.0.0 4 | eureka: 5 | client: 6 | serviceUrl: 7 | defaultZone: http://${EUREKA_ZONE_HOST:boniu:zongjie@127.0.0.1}:${EUREKA_ZONE_PORT:9001}/eureka/ 8 | instance: 9 | prefer-ip-address: true 10 | ip-address: ${server.address} 11 | spring: 12 | application: 13 | name: qt-client 14 | # rabbitmq: 15 | # host: ${RABBIT_MQ_HOST:localhost} 16 | # port: ${RABBIT_MQ_PORT:5672} 17 | # username: ${RABBIT_MQ_USERNAME:yang} 18 | # password: ${RABBIT_MQ_PASSWORD:yang} 19 | redis: 20 | database: 0 21 | host: 127.0.0.1 22 | port: 6379 23 | password: 12345678 24 | jedis: 25 | pool: 26 | max-active: 8 27 | max-wait: -1 28 | max-idle: 8 29 | min-idle: 0 30 | timeout: 15000 31 | feign: 32 | hystrix: 33 | enabled: true 34 | 35 | management: 36 | endpoints: 37 | web: 38 | exposure: 39 | include: '*' 40 | base-path: / 41 | vpnproxy: 42 | enable: false 43 | ip: 127.0.0.1 44 | port: 1080 45 | 46 | -------------------------------------------------------------------------------- /qt-client/target/classes/application-prod.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 8024 3 | address: 0.0.0.0 4 | eureka: 5 | client: 6 | serviceUrl: 7 | defaultZone: http://${EUREKA_ZONE_HOST:124.156.196.215}:${EUREKA_ZONE_PORT:8762}/eureka/ 8 | instance: 9 | prefer-ip-address: true 10 | ip-address: 124.156.196.215 11 | 12 | spring: 13 | application: 14 | name: qt-client 15 | redis: 16 | database: 0 17 | host: 127.0.0.1 18 | port: 6379 19 | password: 20 | jedis: 21 | pool: 22 | max-active: 8 23 | max-wait: -1 24 | max-idle: 8 25 | min-idle: 0 26 | timeout: 15000 27 | feign: 28 | hystrix: 29 | enabled: true 30 | 31 | management: 32 | endpoints: 33 | web: 34 | exposure: 35 | include: '*' 36 | base-path: / 37 | vpnproxy: 38 | enable: false 39 | ip: 127.0.0.1 40 | port: 64035 41 | 42 | -------------------------------------------------------------------------------- /qt-client/target/classes/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | profiles: 3 | active: dev 4 | -------------------------------------------------------------------------------- /qt-client/target/classes/banner.txt: -------------------------------------------------------------------------------- 1 | __ _ _ _ _ __ 2 | / / | | | (_) | | \ \ 3 | / / __ _ _ _ __ _ _ __ | |_ ______ ___| |_ ___ _ __ | |_ \ \ 4 | < < / _` | | | |/ _` | '_ \| __|______/ __| | |/ _ | '_ \| __| > > 5 | \ | (_| | |_| | (_| | | | | |_ | (__| | | __| | | | |_ / / 6 | \_\__, |\__,_|\__,_|_| |_|\__| \___|_|_|\___|_| |_|\__/_/ 7 | | | 8 | |_| -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/AppClient.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/AppClient.class -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/config/ThreadPool.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/config/ThreadPool.class -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/controller/BotController.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/controller/BotController.class -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/service/RobotService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/service/RobotService.class -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/service/impl/RobotServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/service/impl/RobotServiceImpl.class -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/task/IndicatorRobotOperate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/task/IndicatorRobotOperate.class -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/task/SimpleNumRobotOperate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/task/SimpleNumRobotOperate.class -------------------------------------------------------------------------------- /qt-client/target/classes/com/quant/client/task/SteadyCoinRobotOperate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/classes/com/quant/client/task/SteadyCoinRobotOperate.class -------------------------------------------------------------------------------- /qt-client/target/test-classes/Test.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-client/target/test-classes/Test.class -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/config/VpnProxyConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.config; 2 | 3 | import lombok.Data; 4 | import org.springframework.boot.context.properties.ConfigurationProperties; 5 | import org.springframework.stereotype.Component; 6 | 7 | /** 8 | * Created by yang on 2019/5/16. 9 | */ 10 | @Data 11 | @Component 12 | @ConfigurationProperties(prefix = "vpnproxy") 13 | public class VpnProxyConfig { 14 | 15 | private Boolean enable; 16 | 17 | private String ip; 18 | 19 | private int port; 20 | 21 | 22 | } 23 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/bo/RobotBo.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.bo; 2 | 3 | import lombok.Data; 4 | 5 | import java.util.Date; 6 | 7 | @Data 8 | public class RobotBo { 9 | private static final long serialVersionUID = 1L; 10 | 11 | 12 | private Integer id; 13 | 14 | private String robotName; 15 | 16 | private String symbol; 17 | 18 | private String userId; 19 | 20 | private Integer strategyId; 21 | 22 | private String clientAddress; 23 | 24 | private Date createTime; 25 | 26 | private Integer isDelete; 27 | 28 | private Integer isRun; 29 | 30 | private String strategyName; 31 | 32 | 33 | } 34 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/entity/MarketOrder.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.entity; 2 | 3 | import com.quant.common.domain.response.TradeBean; 4 | import lombok.Data; 5 | 6 | import java.util.List; 7 | 8 | /** 9 | * @author yang 10 | 11 | * @desc MarketOrder 12 | * @date 2019/7/9 13 | */ 14 | @Data 15 | public class MarketOrder { 16 | 17 | List buy; 18 | List sell; 19 | 20 | } 21 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/request/CreateOrderRequest.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.request; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class CreateOrderRequest { 7 | 8 | /** 9 | * 交易对,必填,例如:"ethcny", 10 | */ 11 | String symbol; 12 | 13 | /** 14 | * 账户ID,必填,例如:"12345" 15 | */ 16 | String accountId; 17 | 18 | /** 19 | * 当订单类型为buy-limit,sell-limit时,表示订单数量, 当订单类型为buy-market时,表示订单总金额, 当订单类型为sell-market时,表示订单总数量 20 | */ 21 | String amount; 22 | 23 | /** 24 | * 订单价格,仅针对限价单有效,例如:"1234.56" 25 | */ 26 | String price = "0.0"; 27 | 28 | /** 29 | * 订单类型,取值范围"buy-market,sell-market,buy-limit,sell-limit" 30 | */ 31 | String type; 32 | 33 | /** 34 | * 订单来源,例如:"api" 35 | */ 36 | String source = "com/qklx/qt/core/api"; 37 | } 38 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/request/DepthRequest.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.request; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 14:39 7 | */ 8 | 9 | public class DepthRequest { 10 | 11 | //交易对 12 | public String symbol; 13 | 14 | //Depth 类型 step0, step1, step2, step3, step4, step5(合并深度0-5);step0时,不合并深度 15 | public String type; 16 | 17 | public String getSymbol() { 18 | return symbol; 19 | } 20 | 21 | public void setSymbol(String symbol) { 22 | this.symbol = symbol; 23 | } 24 | 25 | public String getType() { 26 | return type; 27 | } 28 | 29 | public void setType(String type) { 30 | this.type = type; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Account.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * @Author ISME 7 | * @Date 2018/1/14 8 | * @Time 16:02 9 | */ 10 | @Data 11 | public class Account { 12 | public long id; 13 | public String type; 14 | public String state; 15 | } 16 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Accounts.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 16:02 7 | */ 8 | 9 | public class Accounts { 10 | /** 11 | * id : 100009 12 | * type : spot 13 | * state : working 14 | * user-id : 1000 15 | */ 16 | 17 | private int id; 18 | private String type; 19 | private String state; 20 | private int userid; 21 | 22 | public int getId() { 23 | return id; 24 | } 25 | 26 | public void setId(int id) { 27 | this.id = id; 28 | } 29 | 30 | public String getType() { 31 | return type; 32 | } 33 | 34 | public void setType(String type) { 35 | this.type = type; 36 | } 37 | 38 | public String getState() { 39 | return state; 40 | } 41 | 42 | public void setState(String state) { 43 | this.state = state; 44 | } 45 | 46 | public int getUserid() { 47 | return userid; 48 | } 49 | 50 | public void setUserid(int userid) { 51 | this.userid = userid; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/ApiResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import com.quant.common.exception.ApiException; 4 | import lombok.Data; 5 | 6 | @Data 7 | public class ApiResponse { 8 | 9 | public String status; 10 | public String errCode; 11 | public String errMsg; 12 | public T data; 13 | 14 | public T checkAndReturn() { 15 | if ("ok".equals(status)) { 16 | return data; 17 | } 18 | throw new ApiException(errCode, errMsg); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/BalanceBean.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 16:23 7 | */ 8 | 9 | public class BalanceBean { 10 | /** 11 | * currency : usdt 12 | * type : trade 13 | * balance : 500009195917.4362872650 14 | */ 15 | 16 | private String currency; 17 | private String type; 18 | private String balance; 19 | 20 | public String getCurrency() { 21 | return currency; 22 | } 23 | 24 | public void setCurrency(String currency) { 25 | this.currency = currency; 26 | } 27 | 28 | public String getType() { 29 | return type; 30 | } 31 | 32 | public void setType(String type) { 33 | this.type = type; 34 | } 35 | 36 | public String getBalance() { 37 | return balance; 38 | } 39 | 40 | public void setBalance(String balance) { 41 | this.balance = balance; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/BalanceResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 16:11 7 | */ 8 | 9 | public class BalanceResponse { 10 | 11 | 12 | /** 13 | * status : ok 14 | * data : {"id":"100009","type":"spot","state":"working","list":[{"currency":"usdt","type":"trade","balance":"500009195917.4362872650"}],"user-id":"1000"} 15 | */ 16 | 17 | private String status; 18 | public String errCode; 19 | public String errMsg; 20 | private T data; 21 | 22 | public String getStatus() { 23 | return status; 24 | } 25 | 26 | public void setStatus(String status) { 27 | this.status = status; 28 | } 29 | 30 | public T getData() { 31 | return data; 32 | } 33 | 34 | public void setData(T data) { 35 | this.data = data; 36 | } 37 | 38 | public String getErrCode() { 39 | return errCode; 40 | } 41 | 42 | public void setErrCode(String errCode) { 43 | this.errCode = errCode; 44 | } 45 | 46 | public String getErrMsg() { 47 | return errMsg; 48 | } 49 | 50 | public void setErrMsg(String errMsg) { 51 | this.errMsg = errMsg; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Batchcancel.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 17:52 7 | */ 8 | 9 | public class Batchcancel { 10 | private T1 success; 11 | private T2 failed; 12 | 13 | public T1 getSuccess() { 14 | return success; 15 | } 16 | 17 | public void setSuccess(T1 success) { 18 | this.success = success; 19 | } 20 | 21 | public T2 getFailed() { 22 | return failed; 23 | } 24 | 25 | public void setFailed(T2 failed) { 26 | this.failed = failed; 27 | } 28 | } 29 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/BatchcancelBean.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 17:53 7 | */ 8 | 9 | public class BatchcancelBean { 10 | /** 11 | * err-msg : 记录无效 12 | * order-id : 2 13 | * err-code : base-record-invalid 14 | */ 15 | 16 | private String errmsg; 17 | private String orderid; 18 | private String errcode; 19 | 20 | public String getErrmsg() { 21 | return errmsg; 22 | } 23 | 24 | public void setErrmsg(String errmsg) { 25 | this.errmsg = errmsg; 26 | } 27 | 28 | public String getOrderid() { 29 | return orderid; 30 | } 31 | 32 | public void setOrderid(String orderid) { 33 | this.orderid = orderid; 34 | } 35 | 36 | public String getErrcode() { 37 | return errcode; 38 | } 39 | 40 | public void setErrcode(String errcode) { 41 | this.errcode = errcode; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/BatchcancelResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 17:51 7 | */ 8 | 9 | public class BatchcancelResponse { 10 | 11 | 12 | /** 13 | * status : ok 14 | * data : {"success":["1","3"],"failed":[{"err-msg":"记录无效","order-id":"2","err-code":"base-record-invalid"}]} 15 | */ 16 | 17 | private String status; 18 | public String errCode; 19 | public String errMsg; 20 | private T data; 21 | 22 | public String getStatus() { 23 | return status; 24 | } 25 | 26 | public void setStatus(String status) { 27 | this.status = status; 28 | } 29 | 30 | public String getErrCode() { 31 | return errCode; 32 | } 33 | 34 | public void setErrCode(String errCode) { 35 | this.errCode = errCode; 36 | } 37 | 38 | public String getErrMsg() { 39 | return errMsg; 40 | } 41 | 42 | public void setErrMsg(String errMsg) { 43 | this.errMsg = errMsg; 44 | } 45 | 46 | public T getData() { 47 | return data; 48 | } 49 | 50 | public void setData(T data) { 51 | this.data = data; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Currencys.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 15:47 7 | */ 8 | 9 | public class Currencys { 10 | } 11 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/CurrencysResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import java.util.List; 4 | 5 | /** 6 | * @Author ISME 7 | * @Date 2018/1/14 8 | * @Time 15:46 9 | */ 10 | 11 | public class CurrencysResponse { 12 | 13 | 14 | /** 15 | * status : ok 16 | * data : ["usdt","eth","etc"] 17 | */ 18 | 19 | private String status; 20 | public String errCode; 21 | public String errMsg; 22 | private List data; 23 | 24 | public String getStatus() { 25 | return status; 26 | } 27 | 28 | public void setStatus(String status) { 29 | this.status = status; 30 | } 31 | 32 | public List getData() { 33 | return data; 34 | } 35 | 36 | public void setData(List data) { 37 | this.data = data; 38 | } 39 | 40 | public String getErrCode() { 41 | return errCode; 42 | } 43 | 44 | public void setErrCode(String errCode) { 45 | this.errCode = errCode; 46 | } 47 | 48 | public String getErrMsg() { 49 | return errMsg; 50 | } 51 | 52 | public void setErrMsg(String errMsg) { 53 | this.errMsg = errMsg; 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Depth.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import java.math.BigDecimal; 4 | import java.util.List; 5 | 6 | /** 7 | * @Author ISME 8 | * @Date 2018/1/14 9 | * @Time 14:39 10 | */ 11 | 12 | public class Depth { 13 | 14 | /** 15 | * id : 1489464585407 16 | * ts : 1489464585407 17 | * bids : [[7964,0.0678],[7963,0.9162]] 18 | * asks : [[7979,0.0736],[8020,13.6584]] 19 | */ 20 | 21 | private String id; 22 | private String ts; 23 | private List> bids; 24 | private List> asks; 25 | 26 | public String getId() { 27 | return id; 28 | } 29 | 30 | public void setId(String id) { 31 | this.id = id; 32 | } 33 | 34 | public String getTs() { 35 | return ts; 36 | } 37 | 38 | public void setTs(String ts) { 39 | this.ts = ts; 40 | } 41 | 42 | public List> getBids() { 43 | return bids; 44 | } 45 | 46 | public void setBids(List> bids) { 47 | this.bids = bids; 48 | } 49 | 50 | public List> getAsks() { 51 | return asks; 52 | } 53 | 54 | public void setAsks(List> asks) { 55 | this.asks = asks; 56 | } 57 | } 58 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Details.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import lombok.Data; 4 | 5 | import java.math.BigDecimal; 6 | 7 | /** 8 | * @Author ISME 9 | * @Date 2018/1/14 10 | * @Time 15:33 11 | */ 12 | @Data 13 | public class Details { 14 | 15 | /** 16 | * amount : 4316.4346 17 | * open : 8090.54 18 | * close : 7962.62 19 | * high : 8119 20 | * ts : 1489464451000 21 | * id : 1489464451 22 | * count : 9595 23 | * low : 7875 24 | * vol : 3.449727690576E7 25 | */ 26 | 27 | private BigDecimal amount; 28 | private BigDecimal open; 29 | private BigDecimal close; 30 | private BigDecimal high; 31 | private String ts; 32 | private String id; 33 | private String count; 34 | private BigDecimal low; 35 | private BigDecimal vol; 36 | 37 | } 38 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/HistoryTradess.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 15:25 7 | */ 8 | 9 | public class HistoryTradess { 10 | /** 11 | * id : 31459998 12 | * ts : 1502448920106 13 | * data : [{"id":17592256642623,"amount":0.04,"price":1997,"direction":"buy","ts":1502448920106}] 14 | */ 15 | 16 | private int id; 17 | private long ts; 18 | private HistoryTrade data; 19 | 20 | public int getId() { 21 | return id; 22 | } 23 | 24 | public void setId(int id) { 25 | this.id = id; 26 | } 27 | 28 | public long getTs() { 29 | return ts; 30 | } 31 | 32 | public void setTs(long ts) { 33 | this.ts = ts; 34 | } 35 | 36 | public HistoryTrade getData() { 37 | return data; 38 | } 39 | 40 | public void setData(HistoryTrade data) { 41 | this.data = data; 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Kline.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * @Author yang 7 | * @Date 2018/1/14 8 | * @Time 11:35 9 | * kline 10 | */ 11 | @Data 12 | public class Kline { 13 | private long id; 14 | private Double amount; 15 | private int count; 16 | private Double open; 17 | private Double close; 18 | private Double low; 19 | private Double high; 20 | private Double vol; 21 | 22 | } 23 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/KlineResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import com.quant.common.exception.ApiException; 4 | import lombok.Data; 5 | 6 | /** 7 | * @Author ISME 8 | * @Date 2018/1/14 9 | * @Time 11:56 10 | */ 11 | @Data 12 | public class KlineResponse { 13 | 14 | private String status; 15 | private String ch; 16 | private String ts; 17 | public String errCode; 18 | public String errMsg; 19 | public T data; 20 | 21 | public T checkAndReturn() { 22 | if ("ok".equals(status)) { 23 | return data; 24 | } 25 | throw new ApiException(errCode, errMsg); 26 | } 27 | 28 | 29 | public String getStatus() { 30 | return status; 31 | } 32 | 33 | public void setStatus(String status) { 34 | this.status = status; 35 | } 36 | 37 | public String getCh() { 38 | return ch; 39 | } 40 | 41 | public void setCh(String ch) { 42 | this.ch = ch; 43 | } 44 | 45 | public String getTs() { 46 | return ts; 47 | } 48 | 49 | public void setTs(String ts) { 50 | this.ts = ts; 51 | } 52 | } 53 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/MatchresultsOrdersDetailResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 18:48 7 | */ 8 | 9 | public class MatchresultsOrdersDetailResponse { 10 | 11 | 12 | /** 13 | * status : ok 14 | * data : [{"id":29553,"order-id":59378,"match-id":59335,"symbol":"ethusdt","type":"buy-limit","source":"api","price":"100.1000000000","filled-amount":"9.1155000000","filled-fees":"0.0182310000","created-at":1494901400435}] 15 | */ 16 | 17 | private String status; 18 | public String errCode; 19 | public String errMsg; 20 | private T data; 21 | 22 | public String getStatus() { 23 | return status; 24 | } 25 | 26 | public void setStatus(String status) { 27 | this.status = status; 28 | } 29 | 30 | public T getData() { 31 | return data; 32 | } 33 | 34 | public void setData(T data) { 35 | this.data = data; 36 | } 37 | 38 | public String getErrCode() { 39 | return errCode; 40 | } 41 | 42 | public void setErrCode(String errCode) { 43 | this.errCode = errCode; 44 | } 45 | 46 | public String getErrMsg() { 47 | return errMsg; 48 | } 49 | 50 | public void setErrMsg(String errMsg) { 51 | this.errMsg = errMsg; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Place.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 17:10 7 | */ 8 | 9 | public class Place { 10 | } 11 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/SubmitcancelResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | /** 4 | * @Author ISME 5 | * @Date 2018/1/14 6 | * @Time 17:15 7 | */ 8 | 9 | public class SubmitcancelResponse { 10 | 11 | 12 | /** 13 | * status : ok 14 | * data : 59378 15 | */ 16 | 17 | private String status; 18 | public String errCode; 19 | public String errMsg; 20 | private String data; 21 | 22 | public String getStatus() { 23 | return status; 24 | } 25 | 26 | public void setStatus(String status) { 27 | this.status = status; 28 | } 29 | 30 | public String getData() { 31 | return data; 32 | } 33 | 34 | public void setData(String data) { 35 | this.data = data; 36 | } 37 | 38 | public String getErrCode() { 39 | return errCode; 40 | } 41 | 42 | public void setErrCode(String errCode) { 43 | this.errCode = errCode; 44 | } 45 | 46 | public String getErrMsg() { 47 | return errMsg; 48 | } 49 | 50 | public void setErrMsg(String errMsg) { 51 | this.errMsg = errMsg; 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Symbol.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class Symbol { 7 | 8 | private String baseCurrency; 9 | private String quoteCurrency; 10 | private String symbol; 11 | private Integer pricePrecision; 12 | private Integer amountPrecision; 13 | 14 | } 15 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/TimestampResponse.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import java.text.SimpleDateFormat; 4 | import java.util.Date; 5 | 6 | /** 7 | * @Author ISME 8 | * @Date 2018/1/14 9 | * @Time 15:53 10 | */ 11 | 12 | public class TimestampResponse { 13 | 14 | /** 15 | * status : ok 16 | * data : 1494900087029 17 | */ 18 | 19 | private String status; 20 | private long data; 21 | private String dateTime; 22 | 23 | public String getStatus() { 24 | return status; 25 | } 26 | 27 | public void setStatus(String status) { 28 | this.status = status; 29 | } 30 | 31 | public long getData() { 32 | return data; 33 | } 34 | 35 | public void setData(long data) { 36 | this.data = data; 37 | } 38 | 39 | public String getDateTime() { 40 | SimpleDateFormat sdf = new SimpleDateFormat("YYYY-MM-dd hh:mm:ss"); 41 | Date date = new Date(data); 42 | return sdf.format(date); 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/Trade.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * @Author ISME 7 | * @Date 2018/1/14 8 | * @Time 14:52 9 | */ 10 | @Data 11 | public class Trade { 12 | 13 | /** 14 | * id : 600848670 15 | * ts : 1489464451000 16 | * data : [{"id":600848670,"price":7962.62,"amount":0.0122,"direction":"buy","ts":1489464451000}] 17 | */ 18 | 19 | private String id; 20 | private long ts; 21 | private T data; 22 | 23 | } 24 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/response/TradeBean.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.response; 2 | 3 | import lombok.Data; 4 | 5 | import java.math.BigDecimal; 6 | 7 | /** 8 | * @Author ISME 9 | * @Date 2018/1/14 10 | * @Time 14:57 11 | */ 12 | @Data 13 | public class TradeBean { 14 | 15 | /** 16 | * id : 600848670 17 | * price : 7962.62 18 | * amount : 0.0122 19 | * direction : buy 20 | * ts : 1489464451000 21 | */ 22 | 23 | private String id; 24 | private BigDecimal price; 25 | private BigDecimal amount; 26 | private String direction; 27 | private long ts; 28 | 29 | 30 | } 31 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/to/IndicatorBean.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.to; 2 | 3 | /** 4 | * Created by yang on 2019/5/28. 5 | */ 6 | public interface IndicatorBean { 7 | 8 | String getCondition(); 9 | 10 | BuyAndSellIndicatorTo.CompareBean getCompare(); 11 | 12 | BuyAndSellIndicatorTo.RuleFirstBean getRuleFirst(); 13 | 14 | BuyAndSellIndicatorTo.RuleSecondBean getRuleSecond(); 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/to/RobotRunMessage.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.to; 2 | 3 | import lombok.Data; 4 | 5 | /** 6 | * @author yang 7 | * @desc 机器人实时日志 8 | * @date 2019/5/26 9 | */ 10 | @Data 11 | public class RobotRunMessage { 12 | 13 | int userId; 14 | int robotId; 15 | String msg; 16 | String date; 17 | 18 | } 19 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/to/RuleBean.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.to; 2 | 3 | /** 4 | * Created by yang on 2019/5/28. 5 | */ 6 | public interface RuleBean { 7 | 8 | public String getName(); 9 | 10 | public String getValue(); 11 | 12 | public String getParams(); 13 | 14 | BuyAndSellIndicatorTo.SourceBean getSource(); 15 | } 16 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/to/llIndicatorTo.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.to; 2 | 3 | import com.quant.common.domain.vo.BaseInfoEntity; 4 | import lombok.Data; 5 | import lombok.NoArgsConstructor; 6 | 7 | import java.util.List; 8 | 9 | /** 10 | * Created by yang on 2019/5/28. 11 | */ 12 | @NoArgsConstructor 13 | @Data 14 | public class llIndicatorTo { 15 | private Integer id; 16 | private BaseInfoEntity baseInfo; 17 | private BuyAndSellIndicatorTo baseData; 18 | 19 | } 20 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/Account.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import lombok.Data; 4 | 5 | @Data 6 | public class Account { 7 | 8 | String id; 9 | String type; 10 | String state; 11 | 12 | String accessKey; 13 | 14 | String secretKey; 15 | 16 | String userId; 17 | 18 | } 19 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/AccountVo.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import lombok.Data; 4 | 5 | import javax.validation.constraints.NotBlank; 6 | 7 | @Data 8 | public class AccountVo { 9 | Integer id; 10 | @NotBlank(message = "名称 不能为空") 11 | String name; 12 | 13 | @NotBlank(message = "accessKey 不能为空") 14 | String accessKey; 15 | 16 | @NotBlank(message = "secretKey 不能为空") 17 | String secretKey; 18 | 19 | @NotBlank(message = "用户id 不能为空") 20 | int userId; 21 | 22 | String info; 23 | String type; 24 | String state; 25 | 26 | } 27 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/BaseInfoEntity.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import lombok.Data; 4 | 5 | import java.math.BigDecimal; 6 | 7 | @Data 8 | public class BaseInfoEntity { 9 | /** 10 | * buyPrice : 1.0E-8 11 | * sleep : 3 12 | * strategyName : 13 | * buyAmount : 14 | * buyAllWeights : 1 15 | * sellAmount : 16 | * isAllBuy : true 17 | * sellPrice : 1.0E-8 18 | * isAllSell : true 19 | * isLimitPrice : true 20 | * sellAllWeights : 1 21 | */ 22 | private BigDecimal buyPrice; 23 | private double sleep; 24 | private String strategyName; 25 | private BigDecimal buyAmount; 26 | private int buyAllWeights; 27 | private BigDecimal sellAmount; 28 | private int isAllBuy; 29 | private BigDecimal sellPrice; 30 | private BigDecimal buyQuotaPrice; 31 | private int isAllSell; 32 | private int isLimitPrice; 33 | private int sellAllWeights; 34 | private int profit; 35 | 36 | } -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/IndicatorCalParam.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import lombok.Data; 5 | 6 | /** 7 | * Created by yang on 2019/5/26. 8 | */ 9 | @Data 10 | public class IndicatorCalParam { 11 | private String indicatorName; 12 | private String[] params; 13 | private BuyAndSellIndicatorTo.SourceBean sourceBean; 14 | } 15 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/IndicatorStrategyVo.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import com.quant.common.domain.to.llIndicatorTo; 5 | import lombok.Data; 6 | 7 | import java.math.BigDecimal; 8 | 9 | @Data 10 | public class IndicatorStrategyVo { 11 | 12 | //机器人id 13 | int robotId; 14 | 15 | //机器人托管地址 16 | String address; 17 | 18 | String appKey; 19 | 20 | String appSecret; 21 | 22 | String symbol; 23 | 24 | llIndicatorTo indicatorTo; 25 | 26 | Account accountConfig; 27 | 28 | } 29 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/Market.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | 6 | @Data 7 | @AllArgsConstructor 8 | public class Market { 9 | 10 | String marketName; 11 | 12 | } 13 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/OrderTaskMessage.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import lombok.AllArgsConstructor; 4 | import lombok.Data; 5 | 6 | @AllArgsConstructor 7 | @Data 8 | public class OrderTaskMessage { 9 | 10 | private Long orderId; 11 | 12 | private String accessKey; 13 | 14 | private String secretKey; 15 | 16 | private int robotId; 17 | 18 | private String userId; 19 | 20 | 21 | } 22 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/ProfitMessage.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import lombok.Data; 4 | 5 | import java.math.BigDecimal; 6 | 7 | @Data 8 | public class ProfitMessage { 9 | 10 | 11 | long sellOrderId; 12 | long buyOrderId; 13 | int robot_id; 14 | 15 | BigDecimal buyPrice; 16 | BigDecimal sellPrice; 17 | 18 | BigDecimal buyAmount; 19 | BigDecimal sellAmount; 20 | 21 | BigDecimal buyCashAmount; 22 | BigDecimal sellCashAmount; 23 | //是否盈利 24 | int isProfit; 25 | 26 | BigDecimal diff; 27 | 28 | BigDecimal divide; 29 | 30 | } 31 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/RobotStrategyVo.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import lombok.Data; 5 | 6 | @Data 7 | public class RobotStrategyVo { 8 | 9 | //机器人id 10 | int robotId; 11 | 12 | //机器人托管地址 13 | String address; 14 | 15 | String appKey; 16 | 17 | String appSecret; 18 | 19 | String symbol; 20 | //策略信息 21 | StrategyVo strategyVo; 22 | 23 | Account accountConfig; 24 | 25 | @Override 26 | public String toString() { 27 | return "RobotStrategyVo{" + 28 | "robotId=" + robotId + 29 | ", address='" + address + '\'' + 30 | ", strategyVo=" + strategyVo + 31 | '}'; 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/domain/vo/RobotVo.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.domain.vo; 2 | 3 | import lombok.Data; 4 | 5 | import javax.validation.constraints.NotNull; 6 | 7 | @Data 8 | public class RobotVo { 9 | Integer id; 10 | @NotNull 11 | String robotName; 12 | @NotNull 13 | String symbol; 14 | @NotNull 15 | int strategyId; 16 | @NotNull 17 | String nodeAddress; 18 | @NotNull 19 | String userId; 20 | @NotNull 21 | int accountId; 22 | } 23 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/AType.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | 4 | /** 5 | * spot:现货账户, margin:杠杆账户,otc:OTC 账户,point:点卡账户 6 | */ 7 | 8 | public enum AType { 9 | 10 | 11 | SPOT("spot"), 12 | MARGIN("margin"), 13 | OTC("otc"), 14 | POINT("point"); 15 | 16 | 17 | String str; 18 | 19 | AType(String str) { 20 | this.str = str; 21 | } 22 | 23 | public String getStr() { 24 | return str; 25 | } 26 | } 27 | 28 | 29 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/HBOrderType.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | public enum HBOrderType { 4 | /** 5 | * 限价买入 6 | */ 7 | BUY_LIMIT("buy-limit"), 8 | /** 9 | * 限价卖出 10 | */ 11 | SELL_LIMIT("sell-limit"), 12 | 13 | /** 14 | * 市价买入 15 | */ 16 | BUY_MARKET("buy-market"), 17 | /** 18 | * 市价卖出 19 | */ 20 | SELL_MARKET("sell-market"); 21 | 22 | String tyoe; 23 | 24 | HBOrderType(String tyoe) { 25 | this.tyoe = tyoe; 26 | } 27 | 28 | public String getTyoe() { 29 | return tyoe; 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/PirceType.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | public enum PirceType { 4 | isLimit(1), 5 | notLimit(0); 6 | 7 | 8 | Integer type; 9 | 10 | PirceType(Integer type) { 11 | this.type = type; 12 | } 13 | 14 | public Integer getType() { 15 | return type; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/RobotState.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | /** 4 | * 机器人启动状态 5 | */ 6 | public enum RobotState { 7 | 8 | start(1), 9 | stop(0); 10 | 11 | 12 | int str; 13 | 14 | RobotState(int str) { 15 | this.str = str; 16 | } 17 | 18 | public int getStr() { 19 | return str; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/SellType.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | public enum SellType { 4 | sellAll(1), 5 | sellCustom(0); 6 | 7 | 8 | Integer type; 9 | 10 | SellType(Integer type) { 11 | this.type = type; 12 | } 13 | 14 | public Integer getType() { 15 | return type; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/Status.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | 4 | /** 5 | * 返回骂 6 | */ 7 | public enum Status { 8 | 9 | SUCCESS(20000, "请求成功"), 10 | USER_NOT_EXIST(1001, "用户不存在"), 11 | KEYS_NOT_Available(1002, "accesskey和秘钥 不可用"), 12 | Account_maybe_exist(1003, "该api已经存在或者数据服务器异常"), 13 | getRobotListError(1004, "获取机器人列表发生错误"), 14 | startRobotError(1005, "启动client端机器人失败"), 15 | Login_out(50014, "登录过期"), 16 | ERROR(1000, "请求参数异常"); 17 | 18 | int code; 19 | String msg; 20 | 21 | Status(int code, String msg) { 22 | this.code = code; 23 | this.msg = msg; 24 | } 25 | 26 | public int getCode() { 27 | return code; 28 | } 29 | 30 | public void setCode(int code) { 31 | this.code = code; 32 | } 33 | 34 | public String getMsg() { 35 | return msg; 36 | } 37 | 38 | public void setMsg(String msg) { 39 | this.msg = msg; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/StrategyType.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | /** 4 | * Created by yang on 2019/8/24. 5 | */ 6 | public enum StrategyType { 7 | /** 8 | * 简单数值 9 | */ 10 | simple(0), 11 | /** 12 | * 指标 13 | */ 14 | indicator(1); 15 | 16 | 17 | Integer type; 18 | 19 | StrategyType(Integer type) { 20 | this.type = type; 21 | } 22 | 23 | public Integer getType() { 24 | return type; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/enums/TraceType.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.enums; 2 | 3 | public enum TraceType { 4 | up("1"), 5 | down("2"); 6 | 7 | 8 | String str; 9 | 10 | TraceType(String str) { 11 | this.str = str; 12 | } 13 | 14 | public String getStr() { 15 | return str; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/exception/ApiException.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.exception; 2 | 3 | /** 4 | * ApiException if api returns error. 5 | * 6 | * @Date 2018/1/14 7 | * @Time 16:02 8 | */ 9 | 10 | public class ApiException extends RuntimeException { 11 | 12 | final String errCode; 13 | 14 | public ApiException(String errCode, String errMsg) { 15 | super(errMsg); 16 | this.errCode = errCode; 17 | } 18 | 19 | public ApiException(Exception e) { 20 | super(e); 21 | this.errCode = e.getClass().getName(); 22 | } 23 | 24 | public String getErrCode() { 25 | return this.errCode; 26 | } 27 | 28 | } 29 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/exception/IndicatorException.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.exception; 2 | 3 | /** 4 | * @author yang 5 | * @desc IndicatorException 6 | * @date 2019/5/28 7 | */ 8 | 9 | public class IndicatorException extends RuntimeException { 10 | 11 | final String errCode; 12 | 13 | public IndicatorException(String errCode, String errMsg) { 14 | super(errMsg); 15 | this.errCode = errCode; 16 | } 17 | 18 | public IndicatorException(Exception e) { 19 | super(e); 20 | this.errCode = e.getClass().getName(); 21 | } 22 | 23 | public String getErrCode() { 24 | return this.errCode; 25 | } 26 | 27 | } 28 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/utils/DateUtils.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.utils; 2 | 3 | import java.text.SimpleDateFormat; 4 | import java.util.Date; 5 | 6 | public class DateUtils { 7 | 8 | /** 9 | * @author yang 10 | * @desc 使用ThreadLocal保证线程安全 11 | * @date 2019/5/26 12 | */ 13 | private static final ThreadLocal local = new ThreadLocal<>(); 14 | 15 | public static void main(String[] args) { 16 | long time = System.currentTimeMillis(); 17 | Date date = parseTimeMillisToDate(time); 18 | System.out.println(date); 19 | } 20 | 21 | public static Date parseTimeMillisToDate(Long timeStamp) { 22 | return new Date(Long.parseLong(String.valueOf(timeStamp))); 23 | } 24 | 25 | public static String formateDate(Date date, String format) { 26 | if (local.get() != null) { 27 | return local.get().format(date); 28 | } 29 | if (format == null) { 30 | format = "yyyy-MM-dd HH:mm:ss"; 31 | } 32 | final SimpleDateFormat simpleDateFormat = new SimpleDateFormat(format); 33 | local.set(simpleDateFormat); 34 | return simpleDateFormat.format(date); 35 | } 36 | 37 | 38 | } 39 | -------------------------------------------------------------------------------- /qt-common/src/main/java/com/quant/common/utils/JsonFormate.java: -------------------------------------------------------------------------------- 1 | package com.quant.common.utils; 2 | 3 | import java.lang.reflect.Field; 4 | import java.util.HashMap; 5 | 6 | public class JsonFormate { 7 | 8 | public static String parseJsonToString(String message) { 9 | message = message.replaceAll("\\\\", ""); 10 | message = message.substring(1, message.length() - 1); 11 | return message; 12 | } 13 | 14 | /** 15 | * 16 | * 使用java.lang.reflect进行转换 17 | * @param object 18 | * @return map 19 | */ 20 | public static HashMap objToHashMap(Object object){ 21 | HashMap map = new HashMap<>(); 22 | try{ 23 | Field[] declaredFields = object.getClass().getDeclaredFields(); 24 | for (Field field : declaredFields) { 25 | field.setAccessible(true); 26 | try { 27 | map.put(field.getName(), field.get(object)); 28 | } catch (IllegalArgumentException | IllegalAccessException e) { 29 | e.printStackTrace(); 30 | } 31 | } 32 | }catch(SecurityException e){ 33 | e.printStackTrace(); 34 | } 35 | return map; 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /qt-common/src/main/resources/libs/opslabJutil-2.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/src/main/resources/libs/opslabJutil-2.0.3.jar -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/config/JsonConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/config/JsonConfig.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/config/RedisConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/config/RedisConfig.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/config/RedisUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/config/RedisUtil.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/config/RestTemplateConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/config/RestTemplateConfig.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/config/VpnProxyConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/config/VpnProxyConfig.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/constans/IndicatorCons.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/constans/IndicatorCons.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/constans/RobotRedisKeyConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/constans/RobotRedisKeyConfig.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/bo/RobotBo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/bo/RobotBo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/Account.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/Account.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/Balance.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/Balance.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/MarketOrder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/MarketOrder.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/OrderProfit.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/OrderProfit.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/Orders.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/Orders.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/Robot.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/Robot.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/Strategy.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/Strategy.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/Symbol.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/Symbol.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/entity/User.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/entity/User.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/request/CreateOrderRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/request/CreateOrderRequest.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/request/DepthRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/request/DepthRequest.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/request/IntrustOrdersDetailRequest$OrderStates.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/request/IntrustOrdersDetailRequest$OrderStates.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/request/IntrustOrdersDetailRequest$OrderType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/request/IntrustOrdersDetailRequest$OrderType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/request/IntrustOrdersDetailRequest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/request/IntrustOrdersDetailRequest.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Account.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Account.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Accounts.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Accounts.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/AccountsResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/AccountsResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/ApiResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/ApiResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Balance.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Balance.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/BalanceBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/BalanceBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/BalanceResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/BalanceResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Batchcancel.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Batchcancel.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/BatchcancelBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/BatchcancelBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/BatchcancelResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/BatchcancelResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Currencys.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Currencys.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/CurrencysResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/CurrencysResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Depth.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Depth.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/DepthResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/DepthResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/DetailResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/DetailResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Details.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Details.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/HistoryTrade.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/HistoryTrade.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/HistoryTradeResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/HistoryTradeResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/HistoryTradess.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/HistoryTradess.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/IntrustDetail.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/IntrustDetail.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/IntrustDetailResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/IntrustDetailResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Kline.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Kline.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/KlineResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/KlineResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/MatchresultsOrdersDetail.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/MatchresultsOrdersDetail.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/MatchresultsOrdersDetailResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/MatchresultsOrdersDetailResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Merged.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Merged.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/MergedResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/MergedResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/OrdersDetail.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/OrdersDetail.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/OrdersDetailResponse$DataBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/OrdersDetailResponse$DataBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/OrdersDetailResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/OrdersDetailResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Place.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Place.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/SubmitcancelResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/SubmitcancelResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Symbol.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Symbol.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Symbols.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Symbols.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/SymbolsResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/SymbolsResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/TimestampResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/TimestampResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/Trade.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/Trade.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/TradeBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/TradeBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/response/TradeResponse.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/response/TradeResponse.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$CompareBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$CompareBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$IndicatorBuyBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$IndicatorBuyBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$IndicatorSellBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$IndicatorSellBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$RuleFirstBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$RuleFirstBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$RuleSecondBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$RuleSecondBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$SourceBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo$SourceBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/BuyAndSellIndicatorTo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/IndicatorBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/IndicatorBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/RobotRunMessage.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/RobotRunMessage.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/RuleBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/RuleBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/to/llIndicatorTo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/to/llIndicatorTo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/Account.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/Account.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/AccountVo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/AccountVo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/BaseInfoEntity.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/BaseInfoEntity.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/IndicatorCalParam.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/IndicatorCalParam.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/IndicatorStrategyVo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/IndicatorStrategyVo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/Market.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/Market.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/OrderTaskMessage.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/OrderTaskMessage.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/ProfitMessage.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/ProfitMessage.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/RobotStrategyVo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/RobotStrategyVo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/RobotVo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/RobotVo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting1Entity.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting1Entity.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting2Entity.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting2Entity.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting3Entity.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting3Entity.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting4Entity.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting4Entity.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting5Entity$BuyStrategyBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting5Entity$BuyStrategyBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting5Entity$SellStrategyBean.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting5Entity$SellStrategyBean.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting5Entity.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting5Entity.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting6Entity.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo$Setting6Entity.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/domain/vo/StrategyVo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/domain/vo/StrategyVo.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/AType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/AType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/HBOrderType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/HBOrderType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/OrderType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/OrderType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/PirceType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/PirceType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/RobotState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/RobotState.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/SellType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/SellType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/Status.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/Status.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/StrategyType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/StrategyType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/enums/TraceType.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/enums/TraceType.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/exception/ApiException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/exception/ApiException.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/exception/ExchangeNetworkException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/exception/ExchangeNetworkException.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/exception/IndicatorException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/exception/IndicatorException.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/exception/TradingApiException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/exception/TradingApiException.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/utils/ComputeUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/utils/ComputeUtil.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/utils/DateUtils.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/utils/DateUtils.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/utils/JsonFormate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/utils/JsonFormate.class -------------------------------------------------------------------------------- /qt-common/target/classes/com/quant/common/utils/SpringUtils.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/com/quant/common/utils/SpringUtils.class -------------------------------------------------------------------------------- /qt-common/target/classes/libs/opslabJutil-2.0.3.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-common/target/classes/libs/opslabJutil-2.0.3.jar -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/api/ApiResult.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.api; 2 | 3 | import com.quant.common.enums.Status; 4 | import lombok.AllArgsConstructor; 5 | import lombok.Data; 6 | 7 | 8 | /** 9 | * @author yang 10 | * @desc 返回的数据结构 11 | * @date 2019/7/9 12 | */ 13 | @Data 14 | @AllArgsConstructor 15 | public class ApiResult { 16 | 17 | int code; 18 | 19 | String message; 20 | 21 | Object data; 22 | 23 | public ApiResult() { 24 | } 25 | 26 | public ApiResult(Status status, Object res) { 27 | this.data = res; 28 | this.message = status.getMsg(); 29 | this.code = status.getCode(); 30 | } 31 | 32 | public ApiResult(Status status) { 33 | this.message = status.getMsg(); 34 | this.code = status.getCode(); 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/AccountConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config; 2 | 3 | 4 | /** 5 | * @author yang 6 | * @desc 账号扩展 7 | * @date 2019/7/9 8 | */ 9 | public interface AccountConfig { 10 | 11 | 12 | String accountId(); 13 | 14 | String getAccessKey(); 15 | 16 | String getSecretKey(); 17 | 18 | String getUserId(); 19 | 20 | } 21 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/KlineConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config; 2 | 3 | /** 4 | * @author yang 5 | * @desc k线扩展 6 | * @date 2019/7/9 7 | */ 8 | public interface KlineConfig { 9 | /** 10 | * 每次获取数据的大小 11 | * @return 12 | */ 13 | String size(); 14 | 15 | /** 16 | * 返回数据时间粒度,也就是每根蜡烛的时间区间 1min, 5min, 15min, 30min, 60min, 1day, 1mon, 1week, 1year 17 | * @return 18 | */ 19 | String period(); 20 | 21 | } 22 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/MarketConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config; 2 | 3 | /** 4 | * @author yang 5 | * @desc 市场扩展 6 | * @date 2019/7/9 7 | */ 8 | public interface MarketConfig { 9 | /** 10 | * 市场交易对名称 11 | */ 12 | String markName(); 13 | 14 | } 15 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/imp/HuoBiAccountConfigImpl.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config.imp; 2 | 3 | import com.quant.common.domain.vo.Account; 4 | import com.quant.core.config.AccountConfig; 5 | import lombok.Data; 6 | 7 | @Data 8 | public class HuoBiAccountConfigImpl implements AccountConfig { 9 | 10 | private Account account; 11 | 12 | public HuoBiAccountConfigImpl(Account account) { 13 | this.account = account; 14 | } 15 | 16 | @Override 17 | public String accountId() { 18 | return account.getId(); 19 | } 20 | 21 | @Override 22 | public String getAccessKey() { 23 | return account.getAccessKey(); 24 | } 25 | 26 | @Override 27 | public String getSecretKey() { 28 | return account.getSecretKey(); 29 | } 30 | 31 | @Override 32 | public String getUserId() { 33 | return account.getUserId(); 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/imp/HuoBiKlineConfigImpl.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config.imp; 2 | 3 | import com.quant.core.config.KlineConfig; 4 | 5 | 6 | public class HuoBiKlineConfigImpl implements KlineConfig { 7 | 8 | String size; 9 | String period; 10 | 11 | public HuoBiKlineConfigImpl(String size, String period) { 12 | this.size = size; 13 | this.period = period; 14 | } 15 | 16 | @Override 17 | public String size() { 18 | return size; 19 | } 20 | 21 | @Override 22 | public String period() { 23 | return period; 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/imp/HuoBiMarketConfigImpl.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config.imp; 2 | 3 | import com.quant.core.config.MarketConfig; 4 | import com.quant.common.domain.vo.Market; 5 | 6 | public class HuoBiMarketConfigImpl implements MarketConfig { 7 | private Market market; 8 | 9 | public HuoBiMarketConfigImpl(Market market) { 10 | this.market = market; 11 | } 12 | 13 | 14 | @Override 15 | public String markName() { 16 | return market.getMarketName(); 17 | } 18 | 19 | 20 | } 21 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/imp/HuoboIndicatorStragegyConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config.imp; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import com.quant.common.domain.to.llIndicatorTo; 5 | import com.quant.common.domain.vo.StrategyVo; 6 | import com.quant.core.config.StrategyConfig; 7 | 8 | /** 9 | * Created by yang on 2019/5/31. 10 | */ 11 | public class HuoboIndicatorStragegyConfig implements StrategyConfig { 12 | 13 | 14 | public HuoboIndicatorStragegyConfig(llIndicatorTo strategyVo) { 15 | this.strategyVo = strategyVo; 16 | } 17 | 18 | private llIndicatorTo strategyVo; 19 | 20 | @Override 21 | public StrategyVo getStrategyVo() { 22 | return null; 23 | } 24 | 25 | @Override 26 | public llIndicatorTo getIndicatorStrategy() { 27 | return strategyVo; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/config/imp/HuoboSimpleStragegyConfig.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.config.imp; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import com.quant.common.domain.to.llIndicatorTo; 5 | import com.quant.common.domain.vo.StrategyVo; 6 | import com.quant.core.config.StrategyConfig; 7 | 8 | /** 9 | * Created by yang on 2019/5/31. 10 | */ 11 | public class HuoboSimpleStragegyConfig implements StrategyConfig { 12 | 13 | 14 | public HuoboSimpleStragegyConfig(StrategyVo strategyVo) { 15 | this.strategyVo = strategyVo; 16 | } 17 | 18 | private StrategyVo strategyVo; 19 | 20 | @Override 21 | public StrategyVo getStrategyVo() { 22 | return strategyVo; 23 | } 24 | 25 | @Override 26 | public llIndicatorTo getIndicatorStrategy() { 27 | return null; 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/exchangeAdapter/BaseExchangeAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.exchangeAdapter; 2 | 3 | /** 4 | * @author yang 5 | 6 | * @desc 交换器基类 7 | * @date 2019/7/9 8 | */ 9 | public abstract class BaseExchangeAdapter { 10 | 11 | protected static final String status = "ok"; 12 | protected static final String buySign = "buy"; 13 | protected static final String sellSign = "sell"; 14 | 15 | } 16 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/factory/AbsIndicatorFactory.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.factory; 2 | 3 | 4 | import com.quant.common.domain.vo.IndicatorCalParam; 5 | import org.ta4j.core.BarSeries; 6 | import org.ta4j.core.Indicator; 7 | 8 | /** 9 | * 指标工厂基类 10 | * Created by yang on 2019/5/26. 11 | */ 12 | public abstract class AbsIndicatorFactory { 13 | 14 | protected volatile BarSeries timeSeries; 15 | 16 | AbsIndicatorFactory(BarSeries timeSeries) { 17 | this.timeSeries = timeSeries; 18 | } 19 | 20 | /** 21 | * 通过指标名称获取指标 22 | * 23 | * @param indicatorName 24 | * @return 25 | */ 26 | public abstract Indicator getIndicator(String indicatorName); 27 | 28 | public abstract Indicator getIndicator(IndicatorCalParam simpleIndicatorVo); 29 | 30 | public abstract void updateTimeSeries(BarSeries timeSeries); 31 | } 32 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/ADXIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import org.ta4j.core.BarSeries; 5 | import org.ta4j.core.Indicator; 6 | import org.ta4j.core.indicators.adx.ADXIndicator; 7 | 8 | /** 9 | * 计算adx指标 10 | * Created by yang on 2019/5/26. 11 | */ 12 | public class ADXIndicatorAdapter extends IndicatorAdapter { 13 | 14 | public ADXIndicatorAdapter(BarSeries timeSeries, int barCount, BuyAndSellIndicatorTo.SourceBean sourceBean) { 15 | super(timeSeries, barCount, sourceBean); 16 | } 17 | 18 | @Override 19 | public Indicator indicatorCalculation() { 20 | return new ADXIndicator(timeSeries, barCount); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/AoIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | 4 | import org.ta4j.core.BarSeries; 5 | import org.ta4j.core.Indicator; 6 | import org.ta4j.core.indicators.AwesomeOscillatorIndicator; 7 | import org.ta4j.core.indicators.helpers.MedianPriceIndicator; 8 | 9 | 10 | /** 11 | * cci指标计算 12 | */ 13 | public class AoIndicatorAdapter extends IndicatorAdapter { 14 | 15 | 16 | public AoIndicatorAdapter(BarSeries timeSeries, Integer barCount, Integer barCount2) { 17 | super(timeSeries, barCount, barCount2); 18 | } 19 | 20 | /** 21 | * 计算并返回Indicator 22 | * 23 | * @return 24 | */ 25 | @Override 26 | public Indicator indicatorCalculation() { 27 | 28 | if (barCount != null && barCount2 == null) { 29 | return new AwesomeOscillatorIndicator(new MedianPriceIndicator(timeSeries), barCount, 34); 30 | } else if (barCount != null) { 31 | return new AwesomeOscillatorIndicator(new MedianPriceIndicator(timeSeries), barCount, barCount2); 32 | } else { 33 | return new AwesomeOscillatorIndicator(timeSeries); 34 | } 35 | 36 | } 37 | } 38 | 39 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/CciIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | 4 | import org.ta4j.core.BarSeries; 5 | import org.ta4j.core.Indicator; 6 | import org.ta4j.core.indicators.CCIIndicator; 7 | 8 | 9 | /** 10 | * cci指标计算 11 | */ 12 | public class CciIndicatorAdapter extends IndicatorAdapter { 13 | 14 | 15 | public CciIndicatorAdapter(BarSeries timeSeries, int barCount) { 16 | super(timeSeries, barCount); 17 | } 18 | 19 | /** 20 | * 计算并返回Indicator 21 | * 22 | * @return 23 | */ 24 | @Override 25 | public Indicator indicatorCalculation() { 26 | return new CCIIndicator(timeSeries, barCount); 27 | } 28 | } 29 | 30 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/EmaIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | 4 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 5 | import org.ta4j.core.BarSeries; 6 | import org.ta4j.core.Indicator; 7 | import org.ta4j.core.indicators.EMAIndicator; 8 | 9 | 10 | /** 11 | * ema指标计算 12 | */ 13 | public class EmaIndicatorAdapter extends IndicatorAdapter { 14 | 15 | 16 | public EmaIndicatorAdapter(BarSeries timeSeries, int barCount, BuyAndSellIndicatorTo.SourceBean sourceBean) { 17 | super(timeSeries, barCount, sourceBean); 18 | } 19 | 20 | /** 21 | * 计算并返回Indicator 22 | * 23 | * @return 24 | */ 25 | @Override 26 | public Indicator indicatorCalculation() { 27 | final Indicator indicator = defaultIndicatorFromSource(); 28 | return new EMAIndicator(indicator, barCount); 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/MacdIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import org.ta4j.core.BarSeries; 5 | import org.ta4j.core.Indicator; 6 | import org.ta4j.core.indicators.MACDIndicator; 7 | 8 | /** 9 | * 计算madc指标 10 | * Created by yang on 2019/5/26. 11 | */ 12 | public class MacdIndicatorAdapter extends IndicatorAdapter { 13 | 14 | public MacdIndicatorAdapter(BarSeries timeSeries, Integer barCount, Integer barCount2, 15 | BuyAndSellIndicatorTo.SourceBean sourceBean) { 16 | super(timeSeries, barCount, barCount2, sourceBean); 17 | } 18 | 19 | @Override 20 | public Indicator indicatorCalculation() { 21 | final Indicator indicator = defaultIndicatorFromSource(); 22 | if (barCount != null && barCount2 == null) { 23 | return new MACDIndicator(indicator, barCount, 26); 24 | } 25 | if (barCount != null && barCount2 != null) { 26 | return new MACDIndicator(indicator, barCount, barCount2); 27 | } else { 28 | return new MACDIndicator(indicator); 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/RsiIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | 4 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 5 | import org.ta4j.core.BarSeries; 6 | import org.ta4j.core.Indicator; 7 | import org.ta4j.core.indicators.RSIIndicator; 8 | 9 | 10 | /** 11 | * Rsi指标计算 12 | */ 13 | public class RsiIndicatorAdapter extends IndicatorAdapter { 14 | 15 | 16 | public RsiIndicatorAdapter(BarSeries timeSeries, int barCount, BuyAndSellIndicatorTo.SourceBean sourceBean) { 17 | super(timeSeries, barCount, sourceBean); 18 | } 19 | 20 | /** 21 | * 计算并返回Indicator 22 | * 23 | * @return 24 | */ 25 | @Override 26 | public Indicator indicatorCalculation() { 27 | final Indicator indicator = defaultIndicatorFromSource(); 28 | return new RSIIndicator(indicator, barCount); 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/SmaIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | 4 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 5 | import org.ta4j.core.BarSeries; 6 | import org.ta4j.core.Indicator; 7 | import org.ta4j.core.indicators.SMAIndicator; 8 | 9 | 10 | /** 11 | * sma指标计算 12 | */ 13 | public class SmaIndicatorAdapter extends IndicatorAdapter { 14 | 15 | 16 | public SmaIndicatorAdapter(BarSeries timeSeries, int barCount, BuyAndSellIndicatorTo.SourceBean sourceBean) { 17 | super(timeSeries, barCount, sourceBean); 18 | } 19 | 20 | /** 21 | * 计算并返回Indicator 22 | * 23 | * @return 24 | */ 25 | @Override 26 | public Indicator indicatorCalculation() { 27 | final Indicator indicator = defaultIndicatorFromSource(); 28 | return new SMAIndicator(indicator, barCount); 29 | } 30 | } 31 | 32 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/StochasticDIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | import org.ta4j.core.BarSeries; 4 | import org.ta4j.core.Indicator; 5 | import org.ta4j.core.indicators.SMAIndicator; 6 | import org.ta4j.core.indicators.StochasticRSIIndicator; 7 | import org.ta4j.core.num.Num; 8 | 9 | /** 10 | * Created by yang on 2019/5/30. 11 | */ 12 | public class StochasticDIndicatorAdapter extends IndicatorAdapter { 13 | 14 | 15 | public StochasticDIndicatorAdapter(BarSeries timeSeries, int barCount) { 16 | super(timeSeries, barCount); 17 | } 18 | 19 | 20 | @Override 21 | public Indicator indicatorCalculation() { 22 | Indicator stochRSI = new StochasticRSIIndicator(timeSeries, 14); 23 | return new SMAIndicator(stochRSI, barCount); 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/StochasticKiIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | import org.ta4j.core.BarSeries; 4 | import org.ta4j.core.Indicator; 5 | import org.ta4j.core.indicators.StochasticOscillatorKIndicator; 6 | 7 | /** 8 | * Created by yang on 2019/5/30. 9 | */ 10 | public class StochasticKiIndicatorAdapter extends IndicatorAdapter { 11 | 12 | 13 | public StochasticKiIndicatorAdapter(BarSeries timeSeries, int barCount) { 14 | super(timeSeries, barCount); 15 | } 16 | 17 | 18 | @Override 19 | public Indicator indicatorCalculation() { 20 | return new StochasticOscillatorKIndicator(timeSeries, barCount); 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/indicatorAdapter/StochasticRsiiIndicatorAdapter.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.indicatorAdapter; 2 | 3 | import com.quant.common.domain.to.BuyAndSellIndicatorTo; 4 | import org.ta4j.core.BarSeries; 5 | import org.ta4j.core.Indicator; 6 | import org.ta4j.core.indicators.RSIIndicator; 7 | import org.ta4j.core.indicators.StochasticRSIIndicator; 8 | 9 | /** 10 | * Created by yang on 2019/5/30. 11 | */ 12 | public class StochasticRsiiIndicatorAdapter extends IndicatorAdapter { 13 | 14 | 15 | public StochasticRsiiIndicatorAdapter(BarSeries timeSeries, int barCount, int barCount2, 16 | BuyAndSellIndicatorTo.SourceBean sourceBean) { 17 | super(timeSeries, barCount, barCount2, sourceBean); 18 | } 19 | 20 | 21 | @Override 22 | public Indicator indicatorCalculation() { 23 | final Indicator indicator = defaultIndicatorFromSource(); 24 | RSIIndicator r = new RSIIndicator(indicator, barCount); 25 | return new StochasticRSIIndicator(r, barCount2); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/redisMq/OrderProfitRedisMqServiceImpl.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.redisMq; 2 | 3 | import com.alibaba.fastjson.JSON; 4 | import com.quant.common.config.RedisUtil; 5 | import com.quant.common.constans.RobotRedisKeyConfig; 6 | import lombok.extern.slf4j.Slf4j; 7 | 8 | /** 9 | * @author yang 10 | 11 | * @desc 订单盈利推送到admin 12 | * @date 2019/7/9 13 | */ 14 | @Slf4j 15 | public class OrderProfitRedisMqServiceImpl implements RedisMqService { 16 | 17 | private RedisUtil redisUtil; 18 | 19 | 20 | public OrderProfitRedisMqServiceImpl(RedisUtil redisUtil) { 21 | this.redisUtil = redisUtil; 22 | 23 | } 24 | 25 | @Override 26 | public void sendMsg(Object msg) { 27 | redisUtil.convertAndSend(RobotRedisKeyConfig.getOrder_profit(), JSON.toJSONString(msg)); 28 | log.info("机器人盈利信息日志:" + JSON.toJSONString(msg)); 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/redisMq/RedisMqService.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.redisMq; 2 | 3 | public interface RedisMqService { 4 | 5 | 6 | void sendMsg(Object msg); 7 | 8 | 9 | } 10 | -------------------------------------------------------------------------------- /qt-core/src/main/java/com/quant/core/strategy/impl/StrategyDelegate.java: -------------------------------------------------------------------------------- 1 | package com.quant.core.strategy.impl; 2 | 3 | import com.quant.common.enums.HBOrderType; 4 | import com.quant.common.enums.OrderType; 5 | import com.quant.core.trading.TradingApi; 6 | 7 | import java.math.BigDecimal; 8 | 9 | /** 10 | * StrategyDelegate 11 | * Created by yang on 2019/8/23. 12 | */ 13 | public interface StrategyDelegate { 14 | 15 | /** 16 | * 计算盈利 17 | */ 18 | void CalculateProfit(); 19 | 20 | /** 21 | * 下单 22 | * 23 | * @param tradingApi 24 | * @param sellAmount 25 | * @param sellPrice 26 | * @param HBOrderType 27 | * @param type 28 | */ 29 | void orderPlace(TradingApi tradingApi, BigDecimal sellAmount, BigDecimal sellPrice, HBOrderType HBOrderType, OrderType type); 30 | } 31 | -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/Main$RSI2Strategy.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/Main$RSI2Strategy.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/Main$SMA.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/Main$SMA.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/Main.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/Main.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$1.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$1.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$10.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$10.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$11.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$11.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$12.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$12.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$13.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$13.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$14.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$14.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$15.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$15.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$16.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$17.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$17.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$18.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$18.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$19.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$19.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$2.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$2.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$20.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$20.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$21.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$21.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$3.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$3.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$4.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$4.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$5.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$5.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$6.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$6.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$7.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$7.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$8.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient$9.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient$9.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiClient.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiClient.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiResult.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiResult.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/ApiSignature.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/ApiSignature.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/api/JsonUtil.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/api/JsonUtil.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/builder/StrategyBuilder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/builder/StrategyBuilder.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/AccountConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/AccountConfig.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/KlineConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/KlineConfig.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/MarketConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/MarketConfig.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/StrategyConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/StrategyConfig.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/imp/HuoBiAccountConfigImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/imp/HuoBiAccountConfigImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/imp/HuoBiKlineConfigImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/imp/HuoBiKlineConfigImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/imp/HuoBiMarketConfigImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/imp/HuoBiMarketConfigImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/imp/HuoboIndicatorStragegyConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/imp/HuoboIndicatorStragegyConfig.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/config/imp/HuoboSimpleStragegyConfig.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/config/imp/HuoboSimpleStragegyConfig.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/exchangeAdapter/BaseExchangeAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/exchangeAdapter/BaseExchangeAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/exchangeAdapter/HuobiExchangeAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/exchangeAdapter/HuobiExchangeAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/factory/AbsIndicatorFactory.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/factory/AbsIndicatorFactory.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/factory/IndicatorFactory.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/factory/IndicatorFactory.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/helpers/IndicatorHelper.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/helpers/IndicatorHelper.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/ADXIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/ADXIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/AoIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/AoIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/CciIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/CciIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/EmaIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/EmaIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/IndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/IndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/MacdIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/MacdIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/RsiIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/RsiIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/SmaIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/SmaIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/StochasticDIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/StochasticDIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/StochasticKiIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/StochasticKiIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/indicatorAdapter/StochasticRsiiIndicatorAdapter.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/indicatorAdapter/StochasticRsiiIndicatorAdapter.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/redisMq/OrderIdRedisMqServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/redisMq/OrderIdRedisMqServiceImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/redisMq/OrderProfitRedisMqServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/redisMq/OrderProfitRedisMqServiceImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/redisMq/RedisMqService.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/redisMq/RedisMqService.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/redisMq/RobotLogsRedisMqServiceImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/redisMq/RobotLogsRedisMqServiceImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/AbstractStrategy$OrderState.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/AbstractStrategy$OrderState.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/AbstractStrategy$Profit.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/AbstractStrategy$Profit.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/AbstractStrategy$Weights.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/AbstractStrategy$Weights.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/AbstractStrategy.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/AbstractStrategy.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/StrategyException.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/StrategyException.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/TradingStrategy.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/TradingStrategy.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiDefaultBuyPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiDefaultBuyPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiDefaultSellPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiDefaultSellPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiLimitBuyPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiLimitBuyPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiLimitSellPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiLimitSellPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiNotLimitBuyPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiNotLimitBuyPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiNotLimitSellPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiNotLimitSellPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiSteadyBuyPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiSteadyBuyPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/HuobiSteadySellPriceHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/HuobiSteadySellPriceHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/StrategyHandle$HandleResult.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/StrategyHandle$HandleResult.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/handle/StrategyHandle.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/handle/StrategyHandle.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/impl/HuoBIndicatoryStrategyImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/impl/HuoBIndicatoryStrategyImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/impl/HuoBiSimpleStrategyImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/impl/HuoBiSimpleStrategyImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/impl/HuoBiSteadyStrategyImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/impl/HuoBiSteadyStrategyImpl.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/strategy/impl/StrategyDelegate.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/strategy/impl/StrategyDelegate.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/trading/BalanceInfo.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/trading/BalanceInfo.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/trading/OpenOrder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/trading/OpenOrder.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/trading/TradingApi.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/trading/TradingApi.class -------------------------------------------------------------------------------- /qt-core/target/classes/com/quant/core/trading/impl/HuoBiOpenOrderImpl.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/classes/com/quant/core/trading/impl/HuoBiOpenOrderImpl.class -------------------------------------------------------------------------------- /qt-core/target/test-classes/StrategyTest.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-core/target/test-classes/StrategyTest.class -------------------------------------------------------------------------------- /qt-eureka/src/main/java/com/ambc/eureka/ServerEurekaApplication.java: -------------------------------------------------------------------------------- 1 | package com.abc.eureka; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; 6 | 7 | @SpringBootApplication 8 | @EnableEurekaServer 9 | public class ServerEurekaApplication { 10 | 11 | public static void main(String[] args) { 12 | SpringApplication.run(ServerEurekaApplication.class, args); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /qt-eureka/src/main/java/com/ambc/eureka/WebSecurityConfigurer.java: -------------------------------------------------------------------------------- 1 | package com.abc.eureka; 2 | 3 | import org.springframework.security.config.annotation.web.builders.HttpSecurity; 4 | import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; 5 | import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; 6 | 7 | @EnableWebSecurity 8 | public class WebSecurityConfigurer extends WebSecurityConfigurerAdapter { 9 | @Override 10 | protected void configure(HttpSecurity http) throws Exception { 11 | http.csrf().disable(); 12 | super.configure(http); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /qt-eureka/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 9001 3 | eureka: 4 | instance: 5 | instance-id: ${spring.cloud.client.ip-address}:${server.port} 6 | prefer-ip-address: true 7 | hostname: ${spring.cloud.client.ip-address} 8 | # 心跳时间,即服务续约间隔时间(缺省为30s,生成环境建议缺省) 9 | lease-renewal-interval-in-seconds: 5 10 | # 服务失效时间(缺省为90s,生成环境建议缺省) 11 | lease-expiration-duration-in-seconds: 20 12 | client: 13 | #表示是否注册Eureka服务器,因为自身作为服务注册中心,所以为false 14 | registerWithEureka: false 15 | #是否从eureka上获取注册信息,同上 16 | fetchRegistry: false 17 | serviceUrl: 18 | defaultZone: http://${spring.cloud.client.ip-address}:${server.port}/eureka/ 19 | #设为false,关闭自我保护主要 20 | server: 21 | # 关闭注册中心的保护机制 默认为true (生成环境建议开启) 22 | enable-self-preservation: false 23 | #清理间隔(单位毫秒,默认是60*1000) 24 | eviction-interval-timer-in-ms: 4000 25 | spring: 26 | application: 27 | name: server-eureka 28 | security: 29 | user: 30 | name: boniu 31 | password: zongjie 32 | -------------------------------------------------------------------------------- /qt-eureka/src/main/resources/application_test.properties: -------------------------------------------------------------------------------- 1 | server.port=9001 2 | eureka.instance.preferIpAddress=true 3 | eureka.instance.instance-id=${spring.cloud.client.ipAddress}:${server.port} 4 | #eureka.instance.instance-id=http\://192.168.1.231\:9001 5 | eureka.instance.hostname=server-eureka 6 | eureka.client.registerWithEureka=false 7 | eureka.client.fetchRegistry=false 8 | 9 | #\u8BBE\u4E3Afalse\uFF0C\u5173\u95ED\u81EA\u6211\u4FDD\u62A4\u4E3B\u8981 10 | eureka.server.enable-self-preservation=false 11 | #\u6E05\u7406\u95F4\u9694\uFF08\u5355\u4F4D\u6BEB\u79D2\uFF0C\u9ED8\u8BA4\u662F60*1000\uFF09 12 | eureka.server.eviction-interval-timer-in-ms=4000 13 | 14 | eureka.client.serviceUrl.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/ 15 | #eureka.client.serviceUrl.defaultZone=http\://192.168.1.231\:9001/eureka/ 16 | -------------------------------------------------------------------------------- /qt-eureka/src/test/java/com/ambc/eureka/ServerEurekaApplicationTests.java: -------------------------------------------------------------------------------- 1 | package com.abc.eureka; 2 | 3 | import org.junit.Test; 4 | import org.junit.runner.RunWith; 5 | import org.springframework.boot.test.context.SpringBootTest; 6 | import org.springframework.test.context.junit4.SpringRunner; 7 | 8 | @RunWith(SpringRunner.class) 9 | @SpringBootTest 10 | public class ServerEurekaApplicationTests { 11 | 12 | @Test 13 | public void contextLoads() { 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /qt-eureka/target/classes/application.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: 9001 3 | eureka: 4 | instance: 5 | instance-id: ${spring.cloud.client.ip-address}:${server.port} 6 | prefer-ip-address: true 7 | hostname: ${spring.cloud.client.ip-address} 8 | # 心跳时间,即服务续约间隔时间(缺省为30s,生成环境建议缺省) 9 | lease-renewal-interval-in-seconds: 5 10 | # 服务失效时间(缺省为90s,生成环境建议缺省) 11 | lease-expiration-duration-in-seconds: 20 12 | client: 13 | #表示是否注册Eureka服务器,因为自身作为服务注册中心,所以为false 14 | registerWithEureka: false 15 | #是否从eureka上获取注册信息,同上 16 | fetchRegistry: false 17 | serviceUrl: 18 | defaultZone: http://${spring.cloud.client.ip-address}:${server.port}/eureka/ 19 | #设为false,关闭自我保护主要 20 | server: 21 | # 关闭注册中心的保护机制 默认为true (生成环境建议开启) 22 | enable-self-preservation: false 23 | #清理间隔(单位毫秒,默认是60*1000) 24 | eviction-interval-timer-in-ms: 4000 25 | spring: 26 | application: 27 | name: server-eureka 28 | security: 29 | user: 30 | name: boniu 31 | password: zongjie 32 | -------------------------------------------------------------------------------- /qt-eureka/target/classes/application_test.properties: -------------------------------------------------------------------------------- 1 | server.port=9001 2 | eureka.instance.preferIpAddress=true 3 | eureka.instance.instance-id=${spring.cloud.client.ipAddress}:${server.port} 4 | #eureka.instance.instance-id=http\://192.168.1.231\:9001 5 | eureka.instance.hostname=server-eureka 6 | eureka.client.registerWithEureka=false 7 | eureka.client.fetchRegistry=false 8 | 9 | #\u8BBE\u4E3Afalse\uFF0C\u5173\u95ED\u81EA\u6211\u4FDD\u62A4\u4E3B\u8981 10 | eureka.server.enable-self-preservation=false 11 | #\u6E05\u7406\u95F4\u9694\uFF08\u5355\u4F4D\u6BEB\u79D2\uFF0C\u9ED8\u8BA4\u662F60*1000\uFF09 12 | eureka.server.eviction-interval-timer-in-ms=4000 13 | 14 | eureka.client.serviceUrl.defaultZone=http://${eureka.instance.hostname}:${server.port}/eureka/ 15 | #eureka.client.serviceUrl.defaultZone=http\://192.168.1.231\:9001/eureka/ 16 | -------------------------------------------------------------------------------- /qt-eureka/target/classes/com/abc/eureka/ServerEurekaApplication.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-eureka/target/classes/com/abc/eureka/ServerEurekaApplication.class -------------------------------------------------------------------------------- /qt-eureka/target/classes/com/abc/eureka/WebSecurityConfigurer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-eureka/target/classes/com/abc/eureka/WebSecurityConfigurer.class -------------------------------------------------------------------------------- /qt-eureka/target/maven-archiver/pom.properties: -------------------------------------------------------------------------------- 1 | #Created by Apache Maven 3.5.4 2 | version=1.0.0 3 | groupId=com.quant 4 | artifactId=qt-eureka 5 | -------------------------------------------------------------------------------- /qt-eureka/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst: -------------------------------------------------------------------------------- 1 | com\abc\eureka\ServerEurekaApplication.class 2 | com\abc\eureka\WebSecurityConfigurer.class 3 | -------------------------------------------------------------------------------- /qt-eureka/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst: -------------------------------------------------------------------------------- 1 | D:\projects\chain\quant4j-master\quant4j-master\qt-eureka\src\main\java\com\ambc\eureka\ServerEurekaApplication.java 2 | D:\projects\chain\quant4j-master\quant4j-master\qt-eureka\src\main\java\com\ambc\eureka\WebSecurityConfigurer.java 3 | -------------------------------------------------------------------------------- /qt-eureka/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst: -------------------------------------------------------------------------------- 1 | com\abc\eureka\ServerEurekaApplicationTests.class 2 | -------------------------------------------------------------------------------- /qt-eureka/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst: -------------------------------------------------------------------------------- 1 | D:\projects\chain\quant4j-master\quant4j-master\qt-eureka\src\test\java\com\ambc\eureka\ServerEurekaApplicationTests.java 2 | -------------------------------------------------------------------------------- /qt-eureka/target/qt-eureka.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-eureka/target/qt-eureka.jar -------------------------------------------------------------------------------- /qt-eureka/target/qt-eureka.jar.original: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-eureka/target/qt-eureka.jar.original -------------------------------------------------------------------------------- /qt-eureka/target/surefire-reports/com.abc.eureka.ServerEurekaApplicationTests.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------------- 2 | Test set: com.abc.eureka.ServerEurekaApplicationTests 3 | ------------------------------------------------------------------------------- 4 | Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 16.853 s - in com.abc.eureka.ServerEurekaApplicationTests 5 | -------------------------------------------------------------------------------- /qt-eureka/target/test-classes/com/abc/eureka/ServerEurekaApplicationTests.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhangdongle/quant-exchange/d37588c119241bf6d665f7d5e000ab67f9aacf90/qt-eureka/target/test-classes/com/abc/eureka/ServerEurekaApplicationTests.class -------------------------------------------------------------------------------- /qt-register/pom.xml: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | qt-parent 7 | com.quant 8 | 0.0.1-SNAPSHOT 9 | 10 | 4.0.0 11 | 12 | qt-register 13 | 14 | 15 | 16 | 17 | org.springframework.cloud 18 | spring-cloud-starter-netflix-eureka-server 19 | 20 | 21 | 22 | org.springframework.boot 23 | spring-boot-starter-web 24 | 25 | 26 | 27 | 28 | 29 | 30 | org.springframework.boot 31 | spring-boot-maven-plugin 32 | 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /qt-register/src/main/java/com/quant/center/AppRegister.java: -------------------------------------------------------------------------------- 1 | package com.quant.center; 2 | 3 | import org.springframework.boot.SpringApplication; 4 | import org.springframework.boot.autoconfigure.SpringBootApplication; 5 | import org.springframework.cloud.netflix.eureka.server.EnableEurekaServer; 6 | 7 | @SpringBootApplication 8 | @EnableEurekaServer 9 | public class AppRegister { 10 | 11 | 12 | /** 13 | * 注册中心 可以移至 admin 为了方便管理 还是单独使用、 14 | * 注册中心只是为了注册节点 获取节点的ip 无其他意义 15 | * @param args 16 | */ 17 | public static void main(String[] args) { 18 | SpringApplication.run(AppRegister.class, args); 19 | } 20 | 21 | } 22 | -------------------------------------------------------------------------------- /qt-register/src/main/java/com/quant/center/te.java: -------------------------------------------------------------------------------- 1 | package com.quant.center; 2 | 3 | public class te { 4 | } 5 | -------------------------------------------------------------------------------- /qt-register/src/main/resources/application-dev.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: ${EUREKA_PORT:8761} 3 | 4 | eureka: 5 | client: 6 | registerWithEureka: false 7 | fetchRegistry: false 8 | serviceUrl: 9 | defaultZone: http://${EUREKA_ZONE_HOST:localhost}:${EUREKA_ZONE_PORT:8761}/eureka/ 10 | 11 | spring: 12 | application: 13 | name: eureka-server 14 | -------------------------------------------------------------------------------- /qt-register/src/main/resources/application-prod.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: ${EUREKA_PORT:8762} 3 | address: 0.0.0.0 4 | eureka: 5 | client: 6 | registerWithEureka: false 7 | fetchRegistry: false 8 | serviceUrl: 9 | defaultZone: http://${EUREKA_ZONE_HOST:0.0.0.0}:${EUREKA_ZONE_PORT:8762}/eureka/ 10 | 11 | spring: 12 | application: 13 | name: eureka-server 14 | -------------------------------------------------------------------------------- /qt-register/src/main/resources/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | profiles: 3 | active: dev 4 | -------------------------------------------------------------------------------- /qt-register/src/main/resources/banner.txt: -------------------------------------------------------------------------------- 1 | __ _ _ _ __ 2 | / / | | (_) | | \ \ 3 | / / __ _ _ _ __ _ _ __ | |_ ______ _ __ ___ __ _ _ ___| |_ ___ _ _\ \ 4 | < < / _` | | | |/ _` | '_ \| __|______| '__/ _ \/ _` | / __| __/ _ | '__> > 5 | \ | (_| | |_| | (_| | | | | |_ | | | __| (_| | \__ | || __| | / / 6 | \_\__, |\__,_|\__,_|_| |_|\__| |_| \___|\__, |_|___/\__\___|_|/_/ 7 | | | __/ | 8 | |_| |___/ -------------------------------------------------------------------------------- /qt-register/target/classes/application-dev.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: ${EUREKA_PORT:8761} 3 | 4 | eureka: 5 | client: 6 | registerWithEureka: false 7 | fetchRegistry: false 8 | serviceUrl: 9 | defaultZone: http://${EUREKA_ZONE_HOST:localhost}:${EUREKA_ZONE_PORT:8761}/eureka/ 10 | 11 | spring: 12 | application: 13 | name: eureka-server 14 | -------------------------------------------------------------------------------- /qt-register/target/classes/application-prod.yml: -------------------------------------------------------------------------------- 1 | server: 2 | port: ${EUREKA_PORT:8762} 3 | address: 0.0.0.0 4 | eureka: 5 | client: 6 | registerWithEureka: false 7 | fetchRegistry: false 8 | serviceUrl: 9 | defaultZone: http://${EUREKA_ZONE_HOST:0.0.0.0}:${EUREKA_ZONE_PORT:8762}/eureka/ 10 | 11 | spring: 12 | application: 13 | name: eureka-server 14 | -------------------------------------------------------------------------------- /qt-register/target/classes/application.yml: -------------------------------------------------------------------------------- 1 | spring: 2 | profiles: 3 | active: dev 4 | -------------------------------------------------------------------------------- /qt-register/target/classes/banner.txt: -------------------------------------------------------------------------------- 1 | __ _ _ _ __ 2 | / / | | (_) | | \ \ 3 | / / __ _ _ _ __ _ _ __ | |_ ______ _ __ ___ __ _ _ ___| |_ ___ _ _\ \ 4 | < < / _` | | | |/ _` | '_ \| __|______| '__/ _ \/ _` | / __| __/ _ | '__> > 5 | \ | (_| | |_| | (_| | | | | |_ | | | __| (_| | \__ | || __| | / / 6 | \_\__, |\__,_|\__,_|_| |_|\__| |_| \___|\__, |_|___/\__\___|_|/_/ 7 | | | __/ | 8 | |_| |___/ --------------------------------------------------------------------------------