{
  "additionalProperties": false,
  "description": "Reference to the zone that fired the entry's ZoneCondition (VIB-591).\n\nResolves to a level of the *triggering* zone \u2014 the zone selected by the\nentry's ZoneCondition on the signal bar. The id is captured into\n``TradeContext.triggering_zone_id`` so post-entry references (e.g. a\nstanding stop-loss bound to the FVG's lower wick) keep resolving to the\nsame zone for the trade's lifetime.\n\nReturns NaN when no triggering zone is bound (no entry condition with a\nrequired ZoneCondition fired) or the zone has been invalidated/GC'd.",
  "properties": {
    "factor": {
      "anyOf": [
        {
          "maximum": 1000000.0,
          "minimum": -1000000.0,
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Factor"
    },
    "level": {
      "default": "mid",
      "enum": [
        "upper",
        "lower",
        "mid"
      ],
      "title": "Level",
      "type": "string"
    },
    "resolution": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Optional higher-timeframe override for this value ref. Set it inside lhs/rhs refs such as {'type': 'indicator', ..., 'resolution': '4h'} or {'type': 'price', 'field': 'close', 'resolution': '4h'}. Do not put timeframe/source_timeframe on the parent condition. None = strategy timeframe.",
      "title": "Resolution"
    },
    "type": {
      "const": "triggering_zone",
      "default": "triggering_zone",
      "title": "Type",
      "type": "string"
    }
  },
  "title": "TriggeringZoneSignalRef",
  "type": "object"
}
