Skip to main content

Troubleshooting signals (entry / adjust / exit)

Signals in MesoLive are typically evaluated server-side on a periodic timer and surfaced in the Portal UI. If signals are missing or stale, the root cause is usually data availability or rule context differences vs MesoSim.

Quick checklist

  1. Is the Agent online? See Troubleshooting → Agent.
  2. Do you have fresh market data? Verify in Data Explorer.
  3. Are you in a schedule window? Many strategies gate signals with Entry.Schedule / Exit.Schedule / Adjustment.Schedule.

Entry signals never show up

Common cause: MesoSim-style entry conditions that require a position context.

In MesoLive, Entry.Conditions are evaluated in two contexts:

  • Build preview: a preview position exists, so pos_* / leg_* and many options.* functions can work.
  • Entry readiness signals: no preview position is built, so pos_* / leg_* are not available and options.* calls return null.

Fix:

  • Keep Entry.Conditions based on top-level variables (underlying_*, timing.*, ExternalData vars) if you want entry readiness signals to be meaningful.
  • Use Build-time checks (e.g. Entry.AbortConditions) for structure/greeks validations.

See: Compatibility matrix → Entry.

Signals are stale / not updating

Checklist:

  • Verify the Agent’s “Last update” timestamps keep advancing (Accounts / Positions / Orders / Market Data).
  • Check Troubleshooting → Events for authorization failures, broker connectivity issues, or market data errors.
  • Confirm you are using a supported market data source for the symbols you are trading (permissions/subscriptions matter).

Exit signals don’t match MesoSim

Common causes:

  • Live fills, partial fills, and real commissions change PnL compared to a simulated fill model.
  • Some MesoSim sim-only settings are ignored in live.

See: