2026-03-28
← BackAlpha Engine — Daily Report (2026-03-28)
RunId: b7e3639d262c Scratchpads (77):
- .scratchpad/2026-03-28T21-15-05-654Z_03b227d51ad4.jsonl
- .scratchpad/2026-03-28T21-16-58-359Z_85e2c51969d1.jsonl
- .scratchpad/2026-03-28T21-30-05-747Z_5b6340ac8d12.jsonl
- .scratchpad/2026-03-28T21-45-07-774Z_d93f546cbdcd.jsonl
- .scratchpad/2026-03-28T22-00-05-732Z_075fd45ff99e.jsonl
- .scratchpad/2026-03-28T22-15-05-533Z_44cf850b35c1.jsonl
- .scratchpad/2026-03-28T22-30-04-621Z_921d79bc8d66.jsonl
- .scratchpad/2026-03-28T22-45-05-633Z_c572a8fe56b7.jsonl
- .scratchpad/2026-03-28T23-40-10-224Z_dba48658bb9e.jsonl
- .scratchpad/2026-03-28T23-41-37-628Z_b7e3639d262c.jsonl
- … (+67 more)
1) P&L + risk
- Start cash (paper): $924.37
- End cash (paper, computed): $180.53
- Realized PnL: $1.16 (0.13%)
- Open exposure: $745.00 / $1200.00 cap
- Open positions (today ledger): 13
- State now: cash $948.76, positions 0, exposureCounter $395.00
2) Trades list (proof)
- 025d872e6cb8:BTC-USDT-SWAP:1774709107024 · okx · BTC-USDT-SWAP · BTC-USDT-SWAP
- entry 2026-03-28T14:45:07.024Z @ $66884.10 · long
- exit 2026-03-28T22:15:06.911Z @ $66569.60 · PnL $-0.28 · stop_0.4%
- 03b227d51ad4:KAT-USDT-SWAP:1774732525258 · okx · KAT-USDT-SWAP · KAT-USDT-SWAP
- entry 2026-03-28T21:15:25.258Z @ $0.01261000 · long
- exit 2026-03-28T21:45:13.260Z @ $0.01241000 · PnL $-0.95 · stop_0.4%
- 03b227d51ad4:MON-USDT-SWAP:1774732525259 · okx · MON-USDT-SWAP · MON-USDT-SWAP
- entry 2026-03-28T21:15:25.259Z @ $0.02392000 · long
- exit 2026-03-28T21:45:13.529Z @ $0.02369000 · PnL $-0.58 · stop_0.4%
- 03b227d51ad4:NIGHT-USDT-SWAP:1774732525257 · okx · NIGHT-USDT-SWAP · NIGHT-USDT-SWAP
- entry 2026-03-28T21:15:25.257Z @ $0.05118500 · short
- exit 2026-03-28T21:45:13.013Z @ $0.05141900 · PnL $-0.27 · stop_0.4%
- 075fd45ff99e:BONK-USDT-SWAP:1774735225986 · okx · BONK-USDT-SWAP · BONK-USDT-SWAP
- entry 2026-03-28T22:00:25.986Z @ $0.00000578 · short
- exit 2026-03-28T23:40:12.988Z @ $0.00000574 · PnL $0.47 · tp_0.6%
- 1703550ceb28:0x9326:1774681225051 · onchain · (unknown) · 0x9326314259102cfb0448e3a5022188d56e61cba3
- entry 2026-03-28T07:00:25.051Z @ $0.00000104
- exit 2026-03-28T08:00:07.337Z @ $9.99e-7 · PnL $-1.10 · time_45m
- 322c8e16a90c:BTC-USDT-SWAP:1774703492065 · okx · BTC-USDT-SWAP · BTC-USDT-SWAP
- entry 2026-03-28T13:11:32.065Z @ $66477.20 · long
- exit 2026-03-28T13:45:08.593Z @ $66903.10 · PnL $0.16 · tp_0.6%
- 36ebf9d565e0:AVAX-USDT-SWAP:1774715412485 · okx · AVAX-USDT-SWAP · AVAX-USDT-SWAP
- entry 2026-03-28T16:30:12.485Z @ $8.9250 · short
- exit 2026-03-28T17:45:08.585Z @ $8.8680 · PnL $0.16 · tp_0.6%
- 436a1317b49c:ETH-USDT-SWAP:1774703355597 · okx · ETH-USDT-SWAP · ETH-USDT-SWAP
- entry 2026-03-28T13:09:15.597Z @ $1999.50 · long
- exit 2026-03-28T13:45:08.278Z @ $2027.88 · PnL $0.35 · tp_0.6%
- 436a1317b49c:SOL-USDT-SWAP:1774703355597 · okx · SOL-USDT-SWAP · SOL-USDT-SWAP
- entry 2026-03-28T13:09:15.597Z @ $82.7400 · long
- exit 2026-03-28T13:45:08.008Z @ $83.4200 · PnL $0.21 · tp_0.6%
- 44bf0e90c1e7:SOL-USDT-SWAP:1774724415056 · okx · SOL-USDT-SWAP · SOL-USDT-SWAP
- entry 2026-03-28T19:00:15.056Z @ $83.2900 · short
- exit 2026-03-28T22:00:08.737Z @ $82.6600 · PnL $0.45 · tp_0.6%
- 44bf0e90c1e7:XRP-USDT-SWAP:1774724415055 · okx · XRP-USDT-SWAP · XRP-USDT-SWAP
- entry 2026-03-28T19:00:15.055Z @ $1.3448 · short
- exit 2026-03-28T23:40:12.216Z @ $1.3337 · PnL $0.50 · tp_0.6%
- 44cf850b35c1:BOME-USDT-SWAP:1774736121227 · okx · BOME-USDT-SWAP · BOME-USDT-SWAP
- entry 2026-03-28T22:15:21.227Z @ $0.00037900 · short
- exit OPEN
- 44cf850b35c1:DOGE-USDT-SWAP:1774736121228 · okx · DOGE-USDT-SWAP · DOGE-USDT-SWAP
- entry 2026-03-28T22:15:21.228Z @ $0.09151000 · short
- exit 2026-03-28T23:40:13.807Z @ $0.09085000 · PnL $0.43 · tp_0.6%
- 44cf850b35c1:TRIA-USDT-SWAP:1774736121225 · okx · TRIA-USDT-SWAP · TRIA-USDT-SWAP
- entry 2026-03-28T22:15:21.225Z @ $0.03077000 · long
- exit OPEN
- 44cf850b35c1:ZIL-USDT-SWAP:1774736121226 · okx · ZIL-USDT-SWAP · ZIL-USDT-SWAP
- entry 2026-03-28T22:15:21.226Z @ $0.00376900 · short
- exit OPEN
- 4bec8e14f13a:0x9326:1774671327574 · onchain · (unknown) · 0x9326314259102cfb0448e3a5022188d56e61cba3
- entry 2026-03-28T04:15:27.574Z @ $0.00000102
- exit 2026-03-28T07:00:07.120Z @ $0.00000104 · PnL $0.49 · time_45m
- 4cc899c891ed:SOL-USDT-SWAP:1774710907598 · okx · SOL-USDT-SWAP · SOL-USDT-SWAP
- entry 2026-03-28T15:15:07.598Z @ $83.3800 · long
- exit 2026-03-28T16:45:07.271Z @ $83.5600 · PnL $0.05 · trail_0.3%
- 51632717ccd9:ADA-USDT-SWAP:1774728017611 · okx · ADA-USDT-SWAP · ADA-USDT-SWAP
- entry 2026-03-28T20:00:17.611Z @ $0.24970000 · long
- exit 2026-03-28T22:00:08.950Z @ $0.24840000 · PnL $-0.31 · stop_0.4%
- 51632717ccd9:DOGE-USDT-SWAP:1774728017612 · okx · DOGE-USDT-SWAP · DOGE-USDT-SWAP
- entry 2026-03-28T20:00:17.612Z @ $0.09225000 · long
- exit 2026-03-28T22:00:09.154Z @ $0.09174000 · PnL $-0.33 · stop_0.4%
- 5b6340ac8d12:FLOKI-USDT-SWAP:1774733423264 · okx · FLOKI-USDT-SWAP · FLOKI-USDT-SWAP
- entry 2026-03-28T21:30:23.264Z @ $0.00002801 · long
- exit 2026-03-28T22:00:11.706Z @ $0.00002784 · PnL $-0.36 · stop_0.4%
- 5b6340ac8d12:NEIRO-USDT-SWAP:1774733423265 · okx · NEIRO-USDT-SWAP · NEIRO-USDT-SWAP
- entry 2026-03-28T21:30:23.265Z @ $0.00005624 · long
- exit 2026-03-28T22:00:11.909Z @ $0.00005575 · PnL $-0.52 · stop_0.4%
- 5b6340ac8d12:ROBO-USDT-SWAP:1774733423262 · okx · ROBO-USDT-SWAP · ROBO-USDT-SWAP
- entry 2026-03-28T21:30:23.262Z @ $0.02346000 · long
- exit 2026-03-28T22:15:08.160Z @ $0.02333000 · PnL $-0.33 · stop_0.4%
- 5b6340ac8d12:SHIB-USDT-SWAP:1774733423266 · okx · SHIB-USDT-SWAP · SHIB-USDT-SWAP
- entry 2026-03-28T21:30:23.266Z @ $0.00000593 · long
- exit 2026-03-28T22:00:12.116Z @ $0.00000589 · PnL $-0.36 · stop_0.4%
- 670fc2a6b831:LTC-USDT-SWAP:1774731998101 · okx · LTC-USDT-SWAP · LTC-USDT-SWAP
- entry 2026-03-28T21:06:38.101Z @ $54.1000 · short
- exit OPEN
- 670fc2a6b831:OP-USDT-SWAP:1774731998100 · okx · OP-USDT-SWAP · OP-USDT-SWAP
- entry 2026-03-28T21:06:38.100Z @ $0.10440000 · short
- exit 2026-03-28T22:00:09.574Z @ $0.10350000 · PnL $0.52 · tp_0.6%
- 78d10cc7fc33:TRX-USDT-SWAP:1774719914554 · okx · TRX-USDT-SWAP · TRX-USDT-SWAP
- entry 2026-03-28T17:45:14.554Z @ $0.31741000 · long
- exit 2026-03-28T23:40:12.006Z @ $0.31604000 · PnL $-0.26 · stop_0.4%
- 8074ffaf2667:LINK-USDT-SWAP:1774723515456 · okx · LINK-USDT-SWAP · LINK-USDT-SWAP
- entry 2026-03-28T18:45:15.456Z @ $8.6080 · long
- exit 2026-03-28T22:00:08.243Z @ $8.5510 · PnL $-0.40 · stop_0.4%
- 85e2c51969d1:CHZ-USDT-SWAP:1774732636072 · okx · CHZ-USDT-SWAP · CHZ-USDT-SWAP
- entry 2026-03-28T21:17:16.072Z @ $0.04150000 · long
- exit 2026-03-28T22:00:10.917Z @ $0.04123000 · PnL $-0.39 · stop_0.4%
- 85e2c51969d1:MEW-USDT-SWAP:1774732636074 · okx · MEW-USDT-SWAP · MEW-USDT-SWAP
- entry 2026-03-28T21:17:16.074Z @ $0.00056120 · short
- exit 2026-03-28T22:00:11.116Z @ $0.00055720 · PnL $0.43 · tp_0.6%
- 85e2c51969d1:TURBO-USDT-SWAP:1774732636075 · okx · TURBO-USDT-SWAP · TURBO-USDT-SWAP
- entry 2026-03-28T21:17:16.075Z @ $0.00104950 · short
- exit 2026-03-28T22:00:11.314Z @ $0.00103690 · PnL $0.72 · tp_0.6%
- 8a9fda90637e:LTC-USDT-SWAP:1774718113947 · okx · LTC-USDT-SWAP · LTC-USDT-SWAP
- entry 2026-03-28T17:15:13.947Z @ $54.7000 · short
- exit 2026-03-28T17:45:09.189Z @ $54.3400 · PnL $0.16 · tp_0.6%
- 8e1e092478e7:AVAX-USDT-SWAP:1774721713269 · okx · AVAX-USDT-SWAP · AVAX-USDT-SWAP
- entry 2026-03-28T18:15:13.269Z @ $8.9000 · long
- exit 2026-03-28T19:30:07.670Z @ $8.8620 · PnL $-0.11 · stop_0.4%
- 921d79bc8d66:CHZ-USDT-SWAP:1774737019729 · okx · CHZ-USDT-SWAP · CHZ-USDT-SWAP
- entry 2026-03-28T22:30:19.729Z @ $0.04116000 · long
- exit 2026-03-28T22:45:09.233Z @ $0.04043000 · PnL $-1.06 · stop_0.4%
- 921d79bc8d66:HUMA-USDT-SWAP:1774737019732 · okx · HUMA-USDT-SWAP · HUMA-USDT-SWAP
- entry 2026-03-28T22:30:19.732Z @ $0.01579000 · long
- exit OPEN
- 921d79bc8d66:MEME-USDT-SWAP:1774737019733 · okx · MEME-USDT-SWAP · MEME-USDT-SWAP
- entry 2026-03-28T22:30:19.733Z @ $0.00051970 · short
- exit 2026-03-28T23:40:14.437Z @ $0.00051530 · PnL $0.51 · tp_0.6%
- 921d79bc8d66:NIGHT-USDT-SWAP:1774737019734 · okx · NIGHT-USDT-SWAP · NIGHT-USDT-SWAP
- entry 2026-03-28T22:30:19.734Z @ $0.05108600 · short
- exit 2026-03-28T23:40:14.648Z @ $0.05140400 · PnL $-0.37 · stop_0.4%
- 921d79bc8d66:ONT-USDT-SWAP:1774737019731 · okx · ONT-USDT-SWAP · ONT-USDT-SWAP
- entry 2026-03-28T22:30:19.731Z @ $0.06111000 · long
- exit 2026-03-28T22:45:09.427Z @ $0.06209000 · PnL $0.96 · tp_0.6%
- 921d79bc8d66:PIPPIN-USDT-SWAP:1774737019734 · okx · PIPPIN-USDT-SWAP · PIPPIN-USDT-SWAP
- entry 2026-03-28T22:30:19.734Z @ $0.05505000 · long
- exit 2026-03-28T23:40:14.859Z @ $0.05566000 · PnL $0.66 · tp_0.6%
- 921d79bc8d66:SPACE-USDT-SWAP:1774737019732 · okx · SPACE-USDT-SWAP · SPACE-USDT-SWAP
- entry 2026-03-28T22:30:19.732Z @ $0.00556400 · long
- exit OPEN
- a512634b715c:ARB-USDT-SWAP:1774722613546 · okx · ARB-USDT-SWAP · ARB-USDT-SWAP
- entry 2026-03-28T18:30:13.546Z @ $0.09167000 · short
- exit 2026-03-28T22:00:07.935Z @ $0.09079000 · PnL $0.58 · tp_0.6%
- a88d148ec981:ATH-USDT-SWAP:1774732240902 · okx · ATH-USDT-SWAP · ATH-USDT-SWAP
- entry 2026-03-28T21:10:40.902Z @ $0.00697300 · short
- exit 2026-03-28T22:00:10.700Z @ $0.00691900 · PnL $0.46 · tp_0.6%
- a88d148ec981:NOT-USDT-SWAP:1774732240901 · okx · NOT-USDT-SWAP · NOT-USDT-SWAP
- entry 2026-03-28T21:10:40.901Z @ $0.00035400 · short
- exit 2026-03-28T22:00:10.296Z @ $0.00035160 · PnL $0.41 · tp_0.6%
- a88d148ec981:RSR-USDT-SWAP:1774732240900 · okx · RSR-USDT-SWAP · RSR-USDT-SWAP
- entry 2026-03-28T21:10:40.900Z @ $0.00156100 · short
- exit OPEN
- a88d148ec981:ZIL-USDT-SWAP:1774732240902 · okx · ZIL-USDT-SWAP · ZIL-USDT-SWAP
- entry 2026-03-28T21:10:40.902Z @ $0.00380800 · short
- exit 2026-03-28T22:00:10.508Z @ $0.00378400 · PnL $0.38 · tp_0.6%
- aac23ce71a10:BCH-USDT-SWAP:1774714512838 · okx · BCH-USDT-SWAP · BCH-USDT-SWAP
- entry 2026-03-28T16:15:12.839Z @ $482.5000 · long
- exit OPEN
- b367940447e0:DOGE-USDT-SWAP:1774716313146 · okx · DOGE-USDT-SWAP · DOGE-USDT-SWAP
- entry 2026-03-28T16:45:13.146Z @ $0.09307000 · short
- exit 2026-03-28T17:45:08.995Z @ $0.09251000 · PnL $0.15 · tp_0.6%
- b367940447e0:OP-USDT-SWAP:1774716313145 · okx · OP-USDT-SWAP · OP-USDT-SWAP
- entry 2026-03-28T16:45:13.145Z @ $0.10500000 · long
- exit 2026-03-28T19:30:07.258Z @ $0.10450000 · PnL $-0.12 · stop_0.4%
- b7e3639d262c:MON-USDT-SWAP:1774741313228 · okx · MON-USDT-SWAP · MON-USDT-SWAP
- entry 2026-03-28T23:41:53.228Z @ $0.02315000 · short
- exit OPEN
- b7e3639d262c:TURBO-USDT-SWAP:1774741313229 · okx · TURBO-USDT-SWAP · TURBO-USDT-SWAP
- entry 2026-03-28T23:41:53.229Z @ $0.00102960 · short
- exit OPEN
- c572a8fe56b7:MON-USDT-SWAP:1774737920512 · okx · MON-USDT-SWAP · MON-USDT-SWAP
- entry 2026-03-28T22:45:20.512Z @ $0.02355000 · long
- exit 2026-03-28T23:40:15.976Z @ $0.02329000 · PnL $-0.66 · stop_0.4%
- c572a8fe56b7:PUMP-USDT-SWAP:1774737920510 · okx · PUMP-USDT-SWAP · PUMP-USDT-SWAP
- entry 2026-03-28T22:45:20.510Z @ $0.00172600 · short
- exit 2026-03-28T23:40:15.166Z @ $0.00171000 · PnL $0.56 · tp_0.6%
- c572a8fe56b7:ROBO-USDT-SWAP:1774737920512 · okx · ROBO-USDT-SWAP · ROBO-USDT-SWAP
- entry 2026-03-28T22:45:20.512Z @ $0.02323000 · short
- exit 2026-03-28T23:40:15.422Z @ $0.02301000 · PnL $0.57 · tp_0.6%
- c8afa0cde313:AVAX-USDT-SWAP:1774728912187 · okx · AVAX-USDT-SWAP · AVAX-USDT-SWAP
- entry 2026-03-28T20:15:12.187Z @ $8.9000 · long
- exit 2026-03-28T21:10:27.283Z @ $8.8550 · PnL $-0.30 · stop_0.4%
- c8afa0cde313:ETH-USDT-SWAP:1774728912186 · okx · ETH-USDT-SWAP · ETH-USDT-SWAP
- entry 2026-03-28T20:15:12.186Z @ $2025.56 · long
- exit 2026-03-28T22:00:09.351Z @ $2009.00 · PnL $-0.49 · stop_0.4%
- d1209b2d46d7:ARB-USDT-SWAP:1774713615114 · okx · ARB-USDT-SWAP · ARB-USDT-SWAP
- entry 2026-03-28T16:00:15.114Z @ $0.09152000 · long
- exit 2026-03-28T16:45:07.671Z @ $0.09211000 · PnL $0.16 · tp_0.6%
- d1209b2d46d7:DOT-USDT-SWAP:1774713615115 · okx · DOT-USDT-SWAP · DOT-USDT-SWAP
- entry 2026-03-28T16:00:15.115Z @ $1.2880 · long
- exit 2026-03-28T17:30:08.278Z @ $1.2780 · PnL $-0.19 · stop_0.4%
- d1209b2d46d7:ETH-USDT-SWAP:1774713615116 · okx · ETH-USDT-SWAP · ETH-USDT-SWAP
- entry 2026-03-28T16:00:15.116Z @ $2026.25 · long
- exit 2026-03-28T19:15:08.398Z @ $2018.10 · PnL $-0.10 · stop_0.4%
- d1209b2d46d7:LINK-USDT-SWAP:1774713615116 · okx · LINK-USDT-SWAP · LINK-USDT-SWAP
- entry 2026-03-28T16:00:15.116Z @ $8.6400 · long
- exit 2026-03-28T17:45:07.773Z @ $8.6010 · PnL $-0.11 · stop_0.4%
- d1209b2d46d7:TRX-USDT-SWAP:1774713615116 · okx · TRX-USDT-SWAP · TRX-USDT-SWAP
- entry 2026-03-28T16:00:15.116Z @ $0.31530000 · long
- exit 2026-03-28T17:45:07.988Z @ $0.31738000 · PnL $0.16 · tp_0.6%
- d93f546cbdcd:MON-USDT-SWAP:1774734326698 · okx · MON-USDT-SWAP · MON-USDT-SWAP
- entry 2026-03-28T21:45:26.698Z @ $0.02368000 · short
- exit 2026-03-28T22:45:08.048Z @ $0.02353000 · PnL $0.38 · tp_0.6%
- d93f546cbdcd:NIGHT-USDT-SWAP:1774734326699 · okx · NIGHT-USDT-SWAP · NIGHT-USDT-SWAP
- entry 2026-03-28T21:45:26.699Z @ $0.05144600 · long
- exit 2026-03-28T22:30:07.412Z @ $0.05108900 · PnL $-0.42 · stop_0.4%
- d93f546cbdcd:ONT-USDT-SWAP:1774734326700 · okx · ONT-USDT-SWAP · ONT-USDT-SWAP
- entry 2026-03-28T21:45:26.700Z @ $0.06127000 · short
- exit 2026-03-28T22:15:08.861Z @ $0.06064000 · PnL $0.62 · tp_0.6%
- da9e27808cd6:XRP-USDT-SWAP:1774712115105 · okx · XRP-USDT-SWAP · XRP-USDT-SWAP
- entry 2026-03-28T15:35:15.105Z @ $1.3547 · long
- exit 2026-03-28T17:00:08.793Z @ $1.3492 · PnL $-0.10 · stop_0.4%
- dba48658bb9e:KAT-USDT-SWAP:1774741228470 · okx · KAT-USDT-SWAP · KAT-USDT-SWAP
- entry 2026-03-28T23:40:28.470Z @ $0.01218000 · long
- exit OPEN
- dba48658bb9e:MEME-USDT-SWAP:1774741228471 · okx · MEME-USDT-SWAP · MEME-USDT-SWAP
- entry 2026-03-28T23:40:28.471Z @ $0.00051530 · short
- exit OPEN
- dba48658bb9e:PIPPIN-USDT-SWAP:1774741228469 · okx · PIPPIN-USDT-SWAP · PIPPIN-USDT-SWAP
- entry 2026-03-28T23:40:28.469Z @ $0.05575000 · long
- exit OPEN
3) What worked vs didn’t (measured)
- Trades closed: 54 · Win rate: 51.9%
- Avg win: $0.42 · Avg loss: $-0.40
- Biggest winner: 921d79bc8d66:ONT-USDT-SWAP:1774737019731 ($0.96)
- Biggest loser: 1703550ceb28:0x9326:1774681225051 ($-1.10)
- Risk metrics (daily): max drawdown -0.32% · Sortino 0.044
4) Learning log
- Change today: fixed Pulse chain id parsing + token address selection; added paper-trading skip diagnostics; added price sanity + major-token denylist + min liquidity filter; fixed tsx runner flag for Node >=20.6.
- Evidence: see
paper_diagin scratchpads; it reports why entries were skipped (no price, caps, etc.). - Next hypothesis: if
skipped_majordominates, we need better filtering to target non-major tokens; ifskipped_liquiditydominates, tune minLiquidityUsd; ifskipped_no_pricedominates, add pricing fallbacks.
Diagnostics (latest paper_diag)
RunId: ff76290ff135
{
"pulse_txs": 25,
"skipped_no_addr": 0,
"skipped_not_base": 0,
"skipped_already_held": 0,
"skipped_daily_loss_cap": 0,
"skipped_exposure_cap": 0,
"skipped_cash_cap": 0,
"skipped_no_price": 0,
"skipped_price_sanity": 0,
"skipped_liquidity": 0,
"skipped_activity": 0,
"skipped_confidence": 25,
"skipped_confirmation2": 0,
"skipped_macro_riskoff": 25,
"skipped_major": 0,
"entries": 0
}
Diagnostics (latest okx_paper_diag)
RunId: b7e3639d262c
{
"insts": 30,
"skipped_already_held": 9,
"skipped_exposure_cap": 0,
"skipped_cash": 0,
"skipped_atr": 0,
"entries": 2
}
5) Next 24h plan
- Add pricing fallback for common Base tokens + better Dexscreener pair selection (expected: fewer skipped_no_price). Guardrail: keep $/trade + exposure caps unchanged.
- Enforce maxPositions consistently (expected: prevent over-entry). Guardrail: maxPositions from config.
- If still zero entries, log first 5 candidate token addresses + chains for manual inspection.