Nula strategy webhookova ikada poslato — mehaničkim kvarom, ne konfiguracijom. Live-scan prozor je ~20 sati dnevno prazan od feature-a.
Scope: requested analysis of all generators locally, plus a production (.207) check of whether signals are being dispatched over webhooks, whether they should have been, the per-signal statistics, and a counterfactual against deeper klines history.
produced 0 signals. No generator has emitted a single live signal since the 2026-05-20 backfill (~40 days). The only webhook target/routes that exist are armed for growth_threshold_quality_blacklist_cycle, which produces nothing live, so nothing is ever sent.utcnow() (GENERATOR_LIVE_LOOKBACK_CANDLES=2). For ~20 h/day that window starts after the newest available feature, so feature_store.get_features returns 0 rows → 0 candles processed → last_processed_at never advances past the May backfill boundary.3commas-paper → https://api.3commas.io/signal_bots/webhooks (enabled).growth_threshold_quality_blacklist_cycle: buy/1h, sell/1h, buy/4h, sell/4h.| stream | table | rows | window | dispatched? |
|---|---|---|---|---|
market scanner scanner_positive/scanner_negative (4h) | signal_events (source_type internal) | 23,146 | 2026-05-23 → 2026-06-29 (live, current) | No — no matching route |
| per-generator strategy signals | signal_events__<gen> | backfill only | last write 2026-05-20 | n/a — 0 live rows |
signal_events__growth_threshold_quality_blacklist_cycle: 3,988 rows, all is_backfill=true, received 2026-05-20 00:52–16:26. 4h only (1995 buy / 1993 sell); 0 rows on 1h even though two routes target 1h. Zero live rows ever.bb_adx_combo_long, bollinger_band_pullback_long, best_symbols_cycle, best_symbols_cycle_v2, supertrend_long): 0 live signals; only best_symbols_cycle/v2 have backfill rows (2811 / 2293).generator_logs: 1.72M rows, current to 2026-06-29 18:07. Every cycle for all 6 enabled generators logs <gen> produced 0 signals.generator_runtime_state is being written today (best_symbols 4h, blacklist 1h: last write 18:15) but last_processed_at does not advance:blacklist_cycle 4h: max last_processed_at = 2026-05-19 (frozen).blacklist_cycle 1h: last_processed_at = None for all 54 symbols (never processed one candle).best_symbols_cycle 4h: frozen at 2026-05-20.get_features(BTCUSDT, 4h, start=now-8h, end=now) → 0 rows.get_features(BTCUSDT, 4h, start=2026-05-01, end=now) → 355 rows, max close_time 2026-06-29 03:59 (feature table is fresh; only the live window is empty).klines_cache.db, 28.6 GB, written today)Re-ran tools/analysis/analyze_all_generators.py against local crypto_scanner.db on 2026-06-29 → reports/historical_generator_stats_2026-06-29.txt (full backfill = the "rest of history" scenario). Selected rows (after-fee = avg return − 0.2% round-trip):
| generator (tf) | closed | win % | avg after-fee % | enabled(prod) | webhook |
|---|---|---|---|---|---|
| dual_growth_trailing_stop (all) | 2,603 | 75.5 | +1.84 | no | no |
| bb_adx_combo_long (all) | 2,640 | 46.0 | +0.92 | yes | no |
| supertrend_long (4h) | 3,447 | 22.4 | +0.85 | yes | no |
| best_symbols_cycle_v3 (all) | 1,092 | 37.3 | +0.61 | no | no |
| bollinger_band_pullback_long (all) | 5,979 | 47.9 | +0.56 | no | no |
| blacklist_cycle (4h) | 13 | 30.8 | +0.46 | yes | yes |
| growth_threshold_regime_cycle (all) | 1,135 | 35.8 | +0.30 | yes | no |
| blacklist_cycle (1h) | 14,584 | 31.5 | −0.23 | yes | yes |
| blacklist_cycle (all) | 14,597 | 31.5 | −0.23 | yes | yes |
| rsi_macd_trend (all) | 3,565 | 34.7 | −0.09 | no | no |
| green2_red1_test (all) | 92,101 | 33.8 | −0.20 | no | no |
Counterfactual vs actual:
blacklist_cycle would emit at roughly its historical cadence — dominated by 1h, which is negative expectancy (−0.23% after fee over 14.6k trades, 31.5% win). Its only positive slice is 4h, but that is a 13-trade sample.dual_growth_trailing_stop, bb_adx_combo_long, supertrend_long 4h, best_symbols_cycle_v3) are either disabled or not webhook-wired.bb_adx_combo_long, supertrend_long 4h), and/or drop the two 1h routes (the generator emits no 1h signals anyway). Confirm whether the live scanner_positive/negative stream should have a route.Source data: prod PG crypto_scanner-db-1, prod klines_cache.db via scheduler-1, local crypto_scanner.db. Read-only; no production state changed.
Izvor: crypto_scanner/reports/analysis/2026-06-29_webhook_and_live_signal_audit.md