Hello,
I'm trying to add a custom slippage model for features, but it is not working... I think that my problem is related with slippage.create_transaction():
class PerStockSpreadSlippage(slippage.SlippageModel):
def __init__(self, spreads):
self.spreads = spreads
def process_order(self, trade_bar, my_order):
spread = self.spreads[my_order.sid]
price = trade_bar.current(my_order.sid, 'price')
vol = trade_bar.current(my_order.sid, 'volume')
slip_amount_1 = min(vol/40,my_order.amount)
slip_amount_2 = my_order.amount-slip_amount_1
new_price_2 = price + (spread * my_order.direction)
new_price = (new_price_2*slip_amount_2+price*slip_amount_1)/my_order.amount
return slippage.create_transaction(
my_order,
trade_bar,
new_price,
my_order.amount
)
def initialize(context):
context.spreads = {
sid(1006201911): 0.005,
sid(1006202002): 0.005
}
# Initialize slippage settings given the parameters of our model
set_slippage(us_futures=PerStockSpreadSlippage(context.spreads))
Can you help me please?