I read the MHDB and found that futures in HKFE have two trading sessions in a day, which is the morning session from 9:30 to 12:00, and noon session from 13:00 to 16:00. The MHDB definition is:

    "Future-hkfe-[*]": {
      "dataTimeZone": "UTC",
      "exchangeTimeZone": "Asia/Hong_Kong",
      "sunday": [],
      "monday": [
        {
          "start": "09:30:00",
          "end": "12:00:00",
          "state": "market"
        },
        {
          "start": "13:00:00",
          "end": "16:00:00",
          "state": "market"
        }
      ],
      ...
    }

I suppose that OnEndOfDay will be triggered 10 minutes ahead of market close, which is 15:50:00. But it's called at 11:50 which is the end of the morning session rather than the day end. Is this a bug? The sample algo is posted.