How serukalinin/v1tgb works
This is a Java trading-bot application: market candles feed strategy signals, signals are evaluated for risk and converted into orders, and execution interacts with an exchange before state and events are recorded. Risk reconciliation, recovery, outbox processing, market-data access, and user-facing integrations are distinct supporting capabilities in the tree. The graph reflects documented and indexed relationships; several subsystems are represented by their exact enclosing directories because their source was not sampled, so uncertain links are omitted or dashed.
Main entry points: OrderApplicationService.java Order application · OrderExecutionHandler.java Order execution · MarketDataService.java Market data service · Order.java Order model
Components 26
Market and strategy
- Market data service
src/main/java/com/tradingbot/application/market/MarketDataService.java - Market cache
src/main/java/com/tradingbot/application/market/MarketDataCache.java - Binance market client
src/main/java/com/tradingbot/infrastructure/client/binance/BinanceMarketDataClient.java - Closed candle event
src/main/java/com/tradingbot/application/event/NewClosedCandleEvent.java - Strategy engine
src/main/java/com/tradingbot/application/strategy/TestStrategyEngine.java - Signal event
src/main/java/com/tradingbot/domain/event/SignalEvent.java - Signal routing
src/main/java/com/tradingbot/application/service/strategy/SignalRouter.java
Risk management
- Risk engine
src/main/java/com/tradingbot/application/risk/RiskEngine.java - Risk service
src/main/java/com/tradingbot/domain/risk/RiskService.java - Risk state
src/main/java/com/tradingbot/domain/risk/RiskState.java - Risk reconciliation
src/main/java/com/tradingbot/application/service/risk/ReconciliationService.java
Orders and execution
- Order application
src/main/java/com/tradingbot/application/service/order/OrderApplicationService.java - Order model
src/main/java/com/tradingbot/domain/model/Order.java - Order execution
src/main/java/com/tradingbot/application/service/execution/OrderExecutionHandler.java - Execution result
src/main/java/com/tradingbot/domain/model/ExecutionResult.java - Binance execution
src/main/java/com/tradingbot/infrastructure/execution/binance/BinanceExecutionEngine.java - Position rebuild
src/main/java/com/tradingbot/application/service/execution/PositionRebuildService.java
Events and state
- Outbox service
src/main/java/com/tradingbot/infrastructure/outbox/OutboxService.java - Outbox processing
src/main/java/com/tradingbot/infrastructure/outbox/OutboxProcessor.java - Persistence adapters
src/main/java/com/tradingbot/infrastructure/persistence/adapter
Interfaces and operations
- Market scheduler
src/main/java/com/tradingbot/interfaces/scheduler/MarketScheduler.java - System bootstrap
src/main/java/com/tradingbot/application/bootstrap/SystemStateManager.java - Telegram bot
src/main/java/com/tradingbot/infrastructure/telegram/TradingTelegramBot.java - SaaS monitoring
src/main/java/com/tradingbot/interfaces/web/SaasMonitoringController.java
Other components
- Trading user
- Binance exchange
Connections 27
- Market data service → Market cache: uses cache
src/main/java/com/tradingbot/application/market/MarketDataService.java - Market data service → Binance market client: fetches data
src/main/java/com/tradingbot/application/market/MarketDataService.java - Market data service → Closed candle event: emits candle
src/main/java/com/tradingbot/application/market/MarketDataService.java - Closed candle event → Strategy engine: triggers strategy
src/main/java/com/tradingbot/application/strategy/TestStrategyEngine.java - Strategy engine → Signal event: creates signal
src/main/java/com/tradingbot/application/strategy/TestStrategyEngine.java - Signal event → Signal routing: routes signal
- Signal routing → Order application: submits signal
- Order application → Risk engine: evaluates risk
src/main/java/com/tradingbot/application/service/order/OrderApplicationService.java - Risk engine → Risk service: delegates risk
src/main/java/com/tradingbot/application/risk/RiskEngine.java - Risk service → Risk state: updates state
src/main/java/com/tradingbot/domain/risk/RiskService.java - Risk reconciliation → Risk engine: reconciles risk
src/main/java/com/tradingbot/application/service/risk/ReconciliationService.java - Order application → Order model: creates order
src/main/java/com/tradingbot/application/service/order/OrderApplicationService.java - Order model → Execution result: applies transitions
- Order model → Order execution: executes order
- Order execution → Binance execution: calls exchange
- Binance execution → Binance exchange: places orders
- Order execution → Execution result: receives result
- Order execution → Outbox service: publishes events
- Order application → Outbox service: publishes events
src/main/java/com/tradingbot/application/service/order/OrderApplicationService.java - Outbox service → Persistence adapters: writes events
src/main/java/com/tradingbot/infrastructure/outbox/OutboxService.java - Outbox processing → Persistence adapters: reads events
- Risk reconciliation → Position rebuild: rebuilds positions
src/main/java/com/tradingbot/application/service/risk/ReconciliationService.java - System bootstrap → Risk reconciliation: coordinates recovery
src/main/java/com/tradingbot/application/service/risk/ReconciliationService.java - Trading user → Telegram bot: sends commands
- Telegram bot → Order application: submits orders
- Trading user → SaaS monitoring: views status
- Market scheduler → Market data service: requests updates