Sets the commission models for the simulation. Parameters ---------- us_equities : EquityCommissionModel The commission model to use for trading US equities. us_futures : FutureCommissionModel The commission model to use for trading US futures
(self, us_equities=None, us_futures=None)
| 1536 | |
| 1537 | @api_method |
| 1538 | def set_commission(self, us_equities=None, us_futures=None): |
| 1539 | """Sets the commission models for the simulation. |
| 1540 | |
| 1541 | Parameters |
| 1542 | ---------- |
| 1543 | us_equities : EquityCommissionModel |
| 1544 | The commission model to use for trading US equities. |
| 1545 | us_futures : FutureCommissionModel |
| 1546 | The commission model to use for trading US futures. |
| 1547 | |
| 1548 | Notes |
| 1549 | ----- |
| 1550 | This function can only be called during |
| 1551 | :func:`~zipline.api.initialize`. |
| 1552 | |
| 1553 | See Also |
| 1554 | -------- |
| 1555 | :class:`zipline.finance.commission.PerShare` |
| 1556 | :class:`zipline.finance.commission.PerTrade` |
| 1557 | :class:`zipline.finance.commission.PerDollar` |
| 1558 | """ |
| 1559 | if self.initialized: |
| 1560 | raise SetCommissionPostInit() |
| 1561 | |
| 1562 | if us_equities is not None: |
| 1563 | if Equity not in us_equities.allowed_asset_types: |
| 1564 | raise IncompatibleCommissionModel( |
| 1565 | asset_type='equities', |
| 1566 | given_model=us_equities, |
| 1567 | supported_asset_types=us_equities.allowed_asset_types, |
| 1568 | ) |
| 1569 | self.blotter.commission_models[Equity] = us_equities |
| 1570 | |
| 1571 | if us_futures is not None: |
| 1572 | if Future not in us_futures.allowed_asset_types: |
| 1573 | raise IncompatibleCommissionModel( |
| 1574 | asset_type='futures', |
| 1575 | given_model=us_futures, |
| 1576 | supported_asset_types=us_futures.allowed_asset_types, |
| 1577 | ) |
| 1578 | self.blotter.commission_models[Future] = us_futures |
| 1579 | |
| 1580 | @api_method |
| 1581 | def set_cancel_policy(self, cancel_policy): |