2026-03-20
← BackAlpha Engine — Daily Report (2026-03-20)
RunId: manual Scratchpads (2):
- .scratchpad/2026-03-20T17-51-18-554Z_cc355342b9c5.jsonl
- .scratchpad/2026-03-20T23-45-51-502Z_4cea1589c494.jsonl
1) P&L + risk
- Start cash (paper): $937.04
- End cash (paper, computed): $931.98
- Realized PnL: $-5.06 (-0.54%)
- Open exposure: $0.00 / $120.00 cap
- Open positions (today ledger): 0
- State now: cash $951.98, positions 0, exposureCounter $0.00
2) Trades list (proof)
- 2ddc63560069:0xe432:1773971832543 · (unknown) · 0xe432e4b79830fa534914b9e7767f904346b7bba3
- entry 2026-03-20T01:57:12.544Z @ $5.99e-7
- exit 2026-03-20T17:51:20.131Z @ $3.20e-7 · PnL $-4.66 · stop_loss_15%
- 2ddc63560069:0xea64:1773971832543 · (unknown) · 0xea644f7d935ced4915674f28fc2fe7380a663ba3
- entry 2026-03-20T01:57:12.543Z @ $8.60e-7
- exit 2026-03-20T17:51:20.049Z @ $8.25e-7 · PnL $-0.40 · time_30m
3) What worked vs didn’t (measured)
- Trades closed: 2 · Win rate: 0.0%
- Avg win: $0.00 · Avg loss: $-2.53
- Biggest winner: —
- Biggest loser: 2ddc63560069:0xe432:1773971832543 ($-4.66)
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: 4cea1589c494
{
"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": 8,
"skipped_confirmation2": 17,
"skipped_macro_riskoff": 0,
"skipped_major": 0,
"entries": 0
}
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.