What logs are generated during observation?
During the DCA observation lifecycle, the system generates structured log messages that clearly indicate:
- When the gate blocks an order
- Why it is being held
- What the current volatility state is
- When confirmation is reached
- When execution occurs
- Whether the release was cooldown-based or timeout-based
These logs allow you to audit every decision made by the Volatility Gate in real time.
🔹 1️⃣ Gate Evaluation Logs
✅ Volatility gate: CLEAR
Meaning:
- Deviation threshold was hit
- Smoothed momentum is below explosive threshold
- Order is allowed to execute immediately
This indicates:
- Normal market behavior
- No observation state entered
- DCA behaves like traditional fixed-interval logic
🔭 Volatility gate: HELD
Meaning:
- Deviation threshold was hit
- Smoothed adverse movement exceeded explosive threshold
- DCA order has entered observation state
This marks the beginning of the observation lifecycle.
Typical additional context in logs may include:
- Current smoothed movement %
- Explosive threshold %
- Symbol name
- Trade direction (LONG/SHORT)
Example:
🔭 Volatility gate: HELD | BTCUSDT | adverse=4.2% | threshold=3.0%
🔹 2️⃣ Observation Polling Logs (Every 60 Seconds)
Once in observation, the system polls every 60 seconds and logs its findings.
👁️ DCA Observer: still volatile
Meaning:
- Smoothed movement is still above neutral threshold
- Market is still accelerating or unstable
- Neutral streak reset (if previously active)
Example:
👁️ DCA Observer: still volatile | adverse=2.1% | streak=0
This confirms the system is intentionally waiting.
🟡 DCA Observer: neutral reading
(If neutral logging is enabled in verbose mode)
Meaning:
- Adverse movement dropped below neutral threshold
- Neutral streak incremented
Example:
🟡 DCA Observer: neutral | adverse=0.4% | streak=1/2
If the required streak is not yet met, observation continues.
🔄 DCA Observer: reversal detected
Meaning:
- Momentum flipped toward trade direction
- Reversal threshold met
- Contributes to streak confirmation
Example:
🔄 DCA Observer: reversal | adverse=-0.3% | streak=2/2
If required streak is satisfied → execution follows immediately.
🔹 3️⃣ Release Logs
When release conditions are satisfied, the system generates execution logs.
🚀 DCA Release [cooled]
Meaning:
- Neutral streak confirmed
- Momentum cooled
- DCA order placed at live market price
Example:
🚀 DCA Release [cooled] | BTCUSDT | live_price=41850
Indicates controlled entry after stabilization.
🚀 DCA Release [reversal]
Meaning:
- Reversal threshold confirmed
- Order executed during early recovery
This often results in improved average entry.
⌚ DCA Observer: Force-releasing
Meaning:
- Observation exceeded max_observation_minutes
- Safety timeout triggered
- Order executed regardless of current volatility
Example:
⌚ DCA Observer: Force-releasing | held_for=120m
🚀 DCA Release [timeout]
This prevents indefinite blocking.
🔹 4️⃣ What You Can Infer From Logs
By reviewing logs, you can determine:
- How often explosive events occur
- Whether thresholds are too sensitive
- Whether timeout releases are frequent
- How long orders typically remain held
- Whether releases improve entry prices
🔍 Debugging Insights
If you see:
Frequent HELD but few releases → explosive_threshold_pct may be too low.
Frequent timeout releases → max_observation_minutes may be too short OR explosive threshold too sensitive.
No HELD events during volatile sessions → explosive_threshold_pct may be too high.
🔹 5️⃣ Active Dashboard Visibility
In addition to logs:
- Observed symbols appear in the Active Trades dashboard
You can see:
- Current volatility %
- Time under observation
- Current streak status
This gives live operational transparency.
🏁 Summary
During observation, the system logs:
- Gate decision (CLEAR or HELD)
- Continuous volatility checks (still volatile / neutral / reversal)
- Streak progression or reset
- Final execution (cooled / reversal / timeout)
These logs ensure:
- Full traceability
- Risk transparency
- Debug capability
- Confidence in automated decisions
In simple terms:
Every hold, every wait, and every release is logged with reason and context.
If you'd like, I can also provide:
- A structured JSON log format example
- Or a troubleshooting checklist specifically tied to log patterns.