Automated Job Processing

This document covers the automated job processing system that continuously monitors and executes trading signals for supported cryptocurrency symbols. The SignalJobService orchestrates periodic signal validation, resolution, and execution tasks on a 15-second interval.

For information about the signal generation and validation logic itself, see Signal Generation and Validation. For details about how signals are processed and persisted after generation, see Signal Logic and Management.

The automated job processing system is built around the SignalJobService class, which coordinates with multiple service dependencies to perform continuous signal monitoring and execution.

Mermaid Diagram

The job service processes a predefined list of cryptocurrency trading pairs on each execution cycle.

Mermaid Diagram

Configuration Value Description
JOB_INTERVAL 15,000 ms Execution interval between job cycles
JOB_LIST 5 symbols Supported cryptocurrency trading pairs

The job service includes multiple safety checks before starting automated processing:

Mermaid Diagram

Each job execution cycle processes two distinct types of signal operations for every supported trading pair.

Mermaid Diagram

The first phase of processing handles closing existing signals when market conditions indicate resolution:

Mermaid Diagram

The second phase handles generating and executing new signals:

Mermaid Diagram

The job service respects command line arguments that control its execution behavior:

Argument Effect Implementation
--repl Disables job processing in REPL mode bootstrapService.isRepl
--noJob Completely disables automated jobs bootstrapService.isNoJob

Job processing also depends on various environment configurations that affect its operation:

Mermaid Diagram

The job service implements comprehensive error handling to ensure continuous operation despite individual symbol processing failures.

Mermaid Diagram

The service provides extensive logging for monitoring and debugging:

Log Type Content Purpose
Initialization signalJobService run Service startup confirmation
Signal Resolution Russian language status messages Operational transparency
Signal Execution Request and skip messages Processing decision tracking
Error Handling Symbol-specific failure logs Debugging and monitoring

The SignalJobService is automatically initialized during application startup through the dependency injection container and runs continuously until application shutdown.

Mermaid Diagram