Supported Models
Wolverine
Introduction
This page explains the WolverineBrokerageModel, including the asset classes it supports, its default security-level models, and its default markets.
SetBrokerageModel(BrokerageName.Wolverine, AccountType.Cash); SetBrokerageModel(BrokerageName.Wolverine, AccountType.Margin);
self.set_brokerage_model(BrokerageName.WOLVERINE, AccountType.CASH) self.set_brokerage_model(BrokerageName.WOLVERINE, AccountType.MARGIN)
For more information about this model, see the class reference and implementation.
For more information about this model, see the class reference and implementation.
Asset Classes
The WolverineBrokerageModel supports trading US Equities.
Orders
The WolverineBrokerageModel supports one order type, but doesn't support order updates or extended market hours trading.
Order Types
The WolverineBrokerageModel supports market orders.
Updates
The WolverineBrokerageModel doesn't support order updates.
Extended Market Hours
The WolverineBrokerageModel doesn't support extended market hours trading. If you place an order outside of regular trading hours, the order is invalid.
Order Properties
The WolverineBrokerageModel supports custom order properties. The following table describes the members of the WolverineOrderProperties object that you can set to customize order execution:
| Property | Description | ||
|---|---|---|---|
TimeInForcetime_in_force | TimeInForce | A TimeInForce instruction to apply to the order. The following instructions are supported:
| TimeInForce.GoodTilCanceledTimeInForce.GOOD_TIL_CANCELED |
Exchangeexchange | Exchange | Defines the exchange name for a particular market. For example, Exchange.SMART. | |
ExchangePostFixexchange_post_fix | stringstr | The exchange post fix to apply if any. For example, if you set Exchangeexchange to Exchange.SMART, then "-INCA-TX" yields "SMART-INCA-TX". |
public override void Initialize()
{
// Set the default order properties
DefaultOrderProperties = new WolverineOrderProperties
{
TimeInForce = TimeInForce.GoodTilCanceled,
Exchange = Exchange.SMART,
ExchangePostFix = "-INCA-TX"
};
} def initialize(self) -> None:
# Set the default order properties
self.default_order_properties = WolverineOrderProperties()
self.default_order_properties.time_in_force = TimeInForce.GOOD_TIL_CANCELED
self.default_order_properties.exchange = Exchange.SMART
self.default_order_properties.exchange_post_fix = "-INCA-TX"
Fills
The WolverineBrokerageModel uses the EquityFillModel for Equity trades.
Slippage
The WolverineBrokerageModel uses the NullSlippageModel.
Fees
The WolverineBrokerageModel uses the WolverineFeeModel.
Settlement
The WolverineBrokerageModel uses the ImmediateSettlementModel for margin accounts and the DelayedSettlementModel with the default settlement rules for cash accounts.
// For cash accounts: security.SetSettlementModel(new DelayedSettlementModel(Equity.DefaultSettlementDays, Equity.DefaultSettlementTime)); // For margin accounts: security.SetSettlementModel(new ImmediateSettlementModel());
# For cash accounts: security.set_settlement_model(DelayedSettlementModel(Equity.DEFAULT_SETTLEMENT_DAYS, Equity.DEFAULT_SETTLEMENT_TIME)) # For margin accounts: security.set_settlement_model(ImmediateSettlementModel())
Margin Interest Rate
The WolverineBrokerageModel uses the NullMarginInterestRateModel.
Account Currency
The WolverineBrokerageModel doesn't set a default currency.
To change the algorithm's currency from USD to a different currency, see Set Account Currency.