Hey, I'm trying to create a custom slippage model to to esitmate the slippage when all have is a TradeBar (Second or Minute resolution).

After looking around and looking at the code, it seems like all I have to do is create my model,

public class EstimatedSlippageModel : ISlippageModel
{
public decimal GetSlippageApproximation(Security asset, Order order)
{
....
}
}



And then add it to the security:

Securities[equity.Symbol].SlippageModel = new EstimatedSlippageModel();

But it doesn't look like this is working. When Buying, it's still calling into the SpreadSlippageModel which is being supplied through the default ISecurityTransactionModel.

So I create a custom ISecurityTransactionModel,

public class MySecurityTransactionModel : SecurityTransactionModel
{
private ISlippageModel SlippageModel { get; set; }

public MySecurityTransactionModel(ISlippageModel slippageModel)
{
this.SlippageModel = slippageModel;
}

public override decimal GetSlippageApproximation(Security security, Order order)
{
return this.SlippageModel.GetSlippageApproximation(security, order);
}
}


And then assigned it to the Security's model,

Securities[equity.Symbol].Model = new MySecurityTransactionModel(new EstimatedSlippageModel());


But this is still not working. The default SpreadSlippageModel is being ran through the default SecurityTransactionModel.

Any suggestions?