| Overall Statistics |
|
Total Orders 3 Average Win 0% Average Loss -0.17% Compounding Annual Return -0.512% Drawdown 0.200% Expectancy -1 Start Equity 100000 End Equity 99828.95 Net Profit -0.171% Sharpe Ratio -23.6 Sortino Ratio -14.242 Probabilistic Sharpe Ratio 0.039% Loss Rate 100% Win Rate 0% Profit-Loss Ratio 0 Alpha -0.059 Beta 0.007 Annual Standard Deviation 0.002 Annual Variance 0 Information Ratio -1.031 Tracking Error 0.106 Treynor Ratio -8.83 Total Fees $0.00 Estimated Strategy Capacity $46000000000.00 Lowest Capacity Asset F R735QTJ8XC9X Portfolio Turnover 0.00% Drawdown Recovery 0 |
# region imports
from AlgorithmImports import *
# endregion
class WolverineDemoAlgorithm(QCAlgorithm):
def initialize(self):
self.set_start_date(2024, 9, 1)
self.set_end_date(2024, 12, 31)
self.set_cash(100000)
self.set_brokerage_model(BrokerageName.WOLVERINE, AccountType.MARGIN)
self.add_equity("F", Resolution.SECOND)
self._option = self.add_option_contract(Symbol.create_option("SPY", Market.USA, OptionStyle.AMERICAN, OptionRight.CALL, 560, datetime(2024, 9, 3)))
dvOrders = WolverineOrderProperties()
dvOrders.exchange = Exchange.SMART
dvOrders.exchange_post_fix = "OPT-INCA"
dvOrders.time_in_force = TimeInForce.DAY
self.DefaultOrderProperties = dvOrders
self._ticket = None
def on_data(self, data: Slice):
if self._ticket or not self._option.has_data:
return
dvOrders = WolverineOrderProperties()
dvOrders.exchange = Exchange.SMART
dvOrders.exchange_post_fix = "-INCA-TX"
dvOrders.time_in_force = TimeInForce.DAY
# Optionally, you can specify for equity shorts which broker will provide the stock to short
# if not specified defaults to broker will provide
dvOrders.locate_broker = "abn"
self._ticket = self.market_order("F", -1, order_properties=dvOrders)
self.market_order(self._option, 1)