Hello,

I am working through the algorithm framework and am looking to tag my orders so I can track what part of the framework triggered a specific order (Portfolio Rebalancing, Drawdown past the MaxDrawdown limit in Risk Management, Insight time expiration, etc.). 

At first, I thought I could create limit orders in the Execution Model and then update the tags within the Alpha, Portfolio Construction, Risk Management modules however I think this violates the separation of concerns principle. I was wondering the following:

1). Does the approach I describe above work or does it violate the separation of concerns?

2). If it does violate, are there any common ways to work around the order tags while still tracking each module's effect on my overall targets?

 

Thank you for the help,

Jason