Right now if position is closed by a built-in risk management model, tag is empty and I don't know which model did that, if I have multiple (like maximum drawdown and maximum profit). Maybe if you have added tag parameter to model initializer and this tag would be used for orders, it would solve this problem.

E.g.:

self.AddRiskManagement(MaximumDrawdownPercentPerSecurity(0.05, "Stop-loss"))