Class TradeServiceDryModeImplementation
- java.lang.Object
-
- tech.cassandre.trading.bot.util.base.Base
-
- tech.cassandre.trading.bot.util.base.service.BaseService
-
- tech.cassandre.trading.bot.service.dry.TradeServiceDryModeImplementation
-
- All Implemented Interfaces:
TradeService
public class TradeServiceDryModeImplementation extends BaseService implements TradeService
Trade service (dry mode implementation).
-
-
Field Summary
-
Fields inherited from class tech.cassandre.trading.bot.util.base.Base
accountMapper, currencyMapper, logger, orderMapper, positionMapper, strategyMapper, tickerMapper, tradeMapper, utilMapper
-
-
Constructor Summary
Constructors Constructor Description TradeServiceDryModeImplementation(UserServiceDryModeImplementation newUserService, TradeRepository newTradeRepository, OrderRepository newOrderRepository)
Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
cancelOrder(String orderId)
Cancel order.OrderCreationResultDTO
createBuyLimitOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount, BigDecimal limitPrice)
Creates a buy limit order.OrderCreationResultDTO
createBuyMarketOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount)
Creates a buy market order.OrderCreationResultDTO
createSellLimitOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount, BigDecimal limitPrice)
Creates a sell limit order.OrderCreationResultDTO
createSellMarketOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount)
Creates a sell market order.Set<OrderDTO>
getOrders()
Get orders from exchange.Set<TradeDTO>
getTrades()
Get trades from exchange.void
setDependencies(OrderFlux newOrderFlux, TradeFlux newTradeFlux)
Set dependencies.void
tickerUpdate(TickerDTO ticker)
Method called by streams at every ticker update.-
Methods inherited from class tech.cassandre.trading.bot.util.base.service.BaseService
getBucket
-
-
-
-
Constructor Detail
-
TradeServiceDryModeImplementation
public TradeServiceDryModeImplementation(UserServiceDryModeImplementation newUserService, TradeRepository newTradeRepository, OrderRepository newOrderRepository)
Constructor.- Parameters:
newUserService
- user servicenewTradeRepository
- trade repositorynewOrderRepository
- order repository
-
-
Method Detail
-
setDependencies
public void setDependencies(OrderFlux newOrderFlux, TradeFlux newTradeFlux)
Set dependencies.- Parameters:
newOrderFlux
- order fluxnewTradeFlux
- trade flux
-
createBuyMarketOrder
public final OrderCreationResultDTO createBuyMarketOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount)
Description copied from interface:TradeService
Creates a buy market order.- Specified by:
createBuyMarketOrder
in interfaceTradeService
- Parameters:
strategy
- strategycurrencyPair
- currency pairamount
- amount- Returns:
- order result (order id or error)
-
createSellMarketOrder
public final OrderCreationResultDTO createSellMarketOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount)
Description copied from interface:TradeService
Creates a sell market order.- Specified by:
createSellMarketOrder
in interfaceTradeService
- Parameters:
strategy
- strategycurrencyPair
- currency pairamount
- amount- Returns:
- order result (order id or error)
-
createBuyLimitOrder
public final OrderCreationResultDTO createBuyLimitOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount, BigDecimal limitPrice)
Description copied from interface:TradeService
Creates a buy limit order.- Specified by:
createBuyLimitOrder
in interfaceTradeService
- Parameters:
strategy
- strategycurrencyPair
- currency pairamount
- amountlimitPrice
- the highest acceptable price- Returns:
- order result (order id or error)
-
createSellLimitOrder
public final OrderCreationResultDTO createSellLimitOrder(StrategyDTO strategy, CurrencyPairDTO currencyPair, BigDecimal amount, BigDecimal limitPrice)
Description copied from interface:TradeService
Creates a sell limit order.- Specified by:
createSellLimitOrder
in interfaceTradeService
- Parameters:
strategy
- strategycurrencyPair
- currency pairamount
- amountlimitPrice
- the lowest acceptable price- Returns:
- order result (order id or error)
-
cancelOrder
public final boolean cancelOrder(String orderId)
Description copied from interface:TradeService
Cancel order.- Specified by:
cancelOrder
in interfaceTradeService
- Parameters:
orderId
- order id- Returns:
- true if cancelled
-
getOrders
public final Set<OrderDTO> getOrders()
Description copied from interface:TradeService
Get orders from exchange.- Specified by:
getOrders
in interfaceTradeService
- Returns:
- list of orders
-
getTrades
public final Set<TradeDTO> getTrades()
Description copied from interface:TradeService
Get trades from exchange.- Specified by:
getTrades
in interfaceTradeService
- Returns:
- list of orders
-
tickerUpdate
public void tickerUpdate(TickerDTO ticker)
Method called by streams at every ticker update.- Parameters:
ticker
- ticker
-
-