| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TSLA] Old triggered TS#3393 (triggered 2026-03-12 12:40:03.748710) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.808404 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TEM] Old triggered TS#3487 (triggered 2026-03-12 20:01:12.916464) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.017196 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
TSM |
trailing_stop_scheduler |
[TSM] Old triggered TS#3470 (triggered 2026-03-12 20:01:18.122453) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.090808 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TSLA] Old triggered TS#3393 (triggered 2026-03-12 12:40:03.748710) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.808404 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TSLA] Old triggered TS#3393 (triggered 2026-03-12 12:40:03.748710) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.808404 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
error |
|
trailing_stop_engine |
⚡ Real account: API failed, using database fallback |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_engine |
📦 real: using DB holdings fallback (3 positions) |
| 03-12 20:36:12 |
ERROR
|
error |
|
tiger_client |
Failed to initialize Tiger client: [Errno 13] Permission denied: './tiger_openapi_config.properties' |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TSLA] Old triggered TS#3393 (triggered 2026-03-12 12:40:03.748710) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.808404 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TSLA] Old triggered TS#3393 (triggered 2026-03-12 12:40:03.748710) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.808404 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[HOOD] Old triggered TS#3379 (triggered 2026-03-11 17:23:02.265993) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.757732 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[ON] Old triggered TS#3418 (triggered 2026-03-12 20:07:50.031860) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:08:10.294728 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TEM] Old triggered TS#3487 (triggered 2026-03-12 20:01:12.916464) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.017196 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[HOOD] Old triggered TS#3379 (triggered 2026-03-11 17:23:02.265993) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.757732 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
TSM |
trailing_stop_scheduler |
[TSM] Old triggered TS#3470 (triggered 2026-03-12 20:01:18.122453) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.090808 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
AAPL |
trailing_stop_scheduler |
[AAPL] Old triggered TS#3456 (triggered 2026-03-12 16:22:49.909435) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.833505 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
TSM |
trailing_stop_scheduler |
[TSM] Old triggered TS#3470 (triggered 2026-03-12 20:01:18.122453) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.090808 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TEM] Old triggered TS#3487 (triggered 2026-03-12 20:01:12.916464) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.017196 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TEM] Old triggered TS#3487 (triggered 2026-03-12 20:01:12.916464) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.017196 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[TEM] Old triggered TS#3487 (triggered 2026-03-12 20:01:12.916464) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.017196 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
QCOM |
trailing_stop_scheduler |
[QCOM] Old triggered TS#3431 (triggered 2026-03-12 15:00:18.382396) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.788182 — allowing re-creation |
| 03-12 20:36:12 |
INFO
|
position |
|
trailing_stop_scheduler |
[ON] Old triggered TS#3418 (triggered 2026-03-12 20:07:50.031860) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:08:10.294728 — allowing re-creation |
| 03-12 20:36:11 |
INFO
|
position |
QCOM |
trailing_stop_scheduler |
[QCOM] Old triggered TS#3431 (triggered 2026-03-12 15:00:18.382396) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:17:08.788182 — allowing re-creation |
| 03-12 20:36:11 |
INFO
|
position |
|
trailing_stop_scheduler |
[ON] Old triggered TS#3418 (triggered 2026-03-12 20:07:50.031860) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:08:10.294728 — allowing re-creation |
| 03-12 20:36:11 |
INFO
|
position |
|
trailing_stop_scheduler |
[TEM] Old triggered TS#3487 (triggered 2026-03-12 20:01:12.916464) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:09:50.017196 — allowing re-creation |
| 03-12 20:36:11 |
INFO
|
position |
|
trailing_stop_scheduler |
[ON] Old triggered TS#3418 (triggered 2026-03-12 20:07:50.031860) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:08:10.294728 — allowing re-creation |
| 03-12 20:36:11 |
INFO
|
position |
|
trailing_stop_scheduler |
[ON] Old triggered TS#3418 (triggered 2026-03-12 20:07:50.031860) belongs to previous lifecycle, current OPEN position created 2026-03-12 20:08:10.294728 — allowing re-creation |
| 03-12 20:36:11 |
ERROR
|
general |
|
root |
[Errno 13] Permission denied: './tiger_openapi_config.properties' |
| 03-12 20:36:11 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:11 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:11 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:11 |
WARN
|
general |
COIN |
tiger_client |
Extended hours price not available for COIN, falling back to briefs |
| 03-12 20:36:11 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:11 |
INFO
|
trailing_stop |
|
trailing_stop_scheduler |
🔄 Full sync: Processing 1 active trailing stop positions (API verification) |
| 03-12 20:36:11 |
INFO
|
error |
|
trailing_stop_engine |
⚡ Paper account: API failed, using database fallback |
| 03-12 20:36:11 |
INFO
|
position |
|
trailing_stop_engine |
📦 paper: using DB holdings fallback (10 positions) |
| 03-12 20:36:11 |
ERROR
|
error |
|
tiger_client |
Failed to initialize Tiger Paper Trading client: [Errno 13] Permission denied: './tiger_openapi_config.properties' |
| 03-12 20:36:11 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:11 |
WARN
|
general |
COIN |
tiger_client |
Extended hours price not available for COIN, falling back to briefs |
| 03-12 20:36:11 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:11 |
INFO
|
general |
COIN |
trailing_stop_engine |
📊 EODHD batch fallback: 1/1 symbols: ['COIN'] |
| 03-12 20:36:11 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:11 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:11 |
INFO
|
websocket |
|
tiger_push_client |
🔄 Force reconnect requested - resetting attempt counter |
| 03-12 20:36:11 |
WARN
|
websocket |
|
trailing_stop_scheduler |
⚠️ WebSocket disconnected during market hours, forcing reconnect... |
| 03-12 20:36:10 |
ERROR
|
general |
|
root |
[Errno 13] Permission denied: './tiger_openapi_config.properties' |
| 03-12 20:36:10 |
INFO
|
error |
|
trailing_stop_engine |
⚡ Real account: API failed, using database fallback |
| 03-12 20:36:10 |
INFO
|
position |
|
trailing_stop_engine |
📦 real: using DB holdings fallback (3 positions) |
| 03-12 20:36:10 |
ERROR
|
error |
|
tiger_client |
Failed to initialize Tiger client: [Errno 13] Permission denied: './tiger_openapi_config.properties' |
| 03-12 20:36:10 |
ERROR
|
general |
|
root |
[Errno 13] Permission denied: './tiger_openapi_config.properties' |
| 03-12 20:36:09 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:09 |
WARN
|
general |
COIN |
tiger_client |
Extended hours price not available for COIN, falling back to briefs |
| 03-12 20:36:09 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:09 |
INFO
|
general |
COIN |
trailing_stop_engine |
📊 EODHD batch fallback: 1/1 symbols: ['COIN'] |
| 03-12 20:36:09 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:09 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:09 |
INFO
|
websocket |
|
tiger_push_client |
🔄 Force reconnect requested - resetting attempt counter |
| 03-12 20:36:09 |
WARN
|
websocket |
|
trailing_stop_scheduler |
⚠️ WebSocket disconnected during market hours, forcing reconnect... |
| 03-12 20:36:06 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:06 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:06 |
INFO
|
general |
NVDA |
trailing_stop_engine |
📊 EODHD batch fallback: 6/6 symbols: ['MS', 'SLAB', 'APH', 'NVDA', 'IR', 'MSFT'] |
| 03-12 20:36:06 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:06 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:06 |
INFO
|
general |
IR |
trailing_stop_engine |
📊 EODHD batch fallback: 6/6 symbols: ['MS', 'IR', 'MSFT', 'APH', 'NVDA', 'SLAB'] |
| 03-12 20:36:06 |
WARN
|
websocket |
COIN |
trailing_stop_scheduler |
🔄 Auto re-subscribed symbols with stale WebSocket data: ['COIN'] |
| 03-12 20:36:06 |
WARN
|
websocket |
|
tiger_push_client |
Push client not connected, cannot subscribe quotes |
| 03-12 20:36:05 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:05 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:05 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:05 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:05 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:05 |
WARN
|
general |
COIN |
tiger_client |
Extended hours price not available for COIN, falling back to briefs |
| 03-12 20:36:05 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:05 |
INFO
|
general |
COIN |
trailing_stop_engine |
📊 EODHD batch fallback: 1/1 symbols: ['COIN'] |
| 03-12 20:36:05 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:05 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:04 |
WARN
|
websocket |
COIN |
trailing_stop_scheduler |
🔄 Auto re-subscribed symbols with stale WebSocket data: ['COIN'] |
| 03-12 20:36:04 |
WARN
|
websocket |
|
tiger_push_client |
Push client not connected, cannot subscribe quotes |
| 03-12 20:36:03 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:03 |
WARN
|
general |
COIN |
tiger_client |
Extended hours price not available for COIN, falling back to briefs |
| 03-12 20:36:03 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:36:03 |
INFO
|
general |
COIN |
trailing_stop_engine |
📊 EODHD batch fallback: 1/1 symbols: ['COIN'] |
| 03-12 20:36:03 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:03 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:00 |
INFO
|
general |
IR |
trailing_stop_engine |
📊 EODHD batch fallback: 6/6 symbols: ['MS', 'SLAB', 'IR', 'MSFT', 'APH', 'NVDA'] |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:00 |
INFO
|
general |
IR |
trailing_stop_engine |
📊 EODHD batch fallback: 6/6 symbols: ['MS', 'SLAB', 'IR', 'MSFT', 'APH', 'NVDA'] |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch briefs fallback failed: 'NoneType' object has no attribute 'get_stock_briefs' |
| 03-12 20:36:00 |
WARN
|
error |
|
tiger_client |
Batch timeline fetch failed: 'NoneType' object has no attribute 'get_timeline' |
| 03-12 20:36:00 |
INFO
|
websocket |
|
tiger_push_client |
🔄 Reconnecting attempt 6/20 in 60s... |
| 03-12 20:36:00 |
ERROR
|
error |
|
tiger_push_client |
❌ Failed to connect Tiger Push Client: ('Could not deserialize key data. The data may be in an incorrect format, it may be encrypted with an unsupported algorithm, or it may be an unsupported key type (e.g. EC curves with explicit parameters).', [<OpenSSLError(code=503841036, lib=60, reason=524556, reason_text=unsupported)>]) |
| 03-12 20:36:00 |
INFO
|
websocket |
|
tiger_push_client |
🔄 Reconnecting attempt 6/20 in 60s... |
| 03-12 20:36:00 |
ERROR
|
error |
|
tiger_push_client |
❌ Failed to connect Tiger Push Client: ('Could not deserialize key data. The data may be in an incorrect format, it may be encrypted with an unsupported algorithm, or it may be an unsupported key type (e.g. EC curves with explicit parameters).', [<OpenSSLError(code=503841036, lib=60, reason=524556, reason_text=unsupported)>]) |
| 03-12 20:35:59 |
ERROR
|
general |
|
tiger_client |
Quote client not initialized |
| 03-12 20:35:59 |
WARN
|
general |
COIN |
tiger_client |
Extended hours price not available for COIN, falling back to briefs |