Overall Statistics
Total Orders
2
Average Win
0%
Average Loss
0%
Compounding Annual Return
66.488%
Drawdown
0.400%
Expectancy
0
Start Equity
100000
End Equity
100935.4
Net Profit
0.935%
Sharpe Ratio
12.647
Sortino Ratio
0
Probabilistic Sharpe Ratio
100%
Loss Rate
0%
Win Rate
0%
Profit-Loss Ratio
0
Alpha
0.311
Beta
-0.515
Annual Standard Deviation
0.041
Annual Variance
0.002
Information Ratio
8.833
Tracking Error
0.103
Treynor Ratio
-0.996
Total Fees
$2.60
Estimated Strategy Capacity
$120000.00
Lowest Capacity Asset
SPY 32UMX5ALG3L2E|SPY R735QTJ8XC9X
Portfolio Turnover
0.28%
Drawdown Recovery
3
#region imports
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using QuantConnect;
    using QuantConnect.Util;
    using QuantConnect.Algorithm;
    using QuantConnect.Data;
    using QuantConnect.Orders;
    using QuantConnect.Securities;
#endregion

public class TradeStationComboLimitOrder : QCAlgorithm
{
    private List<Leg> _legs;
    private List<OrderTicket> _tickets;

    public override void Initialize()
    {
        SetStartDate(2025, 8, 27);
        
        var underlying = QuantConnect.Symbol.Create("SPY", SecurityType.Equity, Market.USA);
        
        Leg getLeg(OptionRight right)
        {
            var symbol = QuantConnect.Symbol.CreateOption(
                underlying, underlying.ID.Market, OptionStyle.American, 
                right, 641, new DateTime(2025,9,4));
            AddOptionContract(symbol);
            return Leg.Create(symbol, 1);
        }
        
        _legs = [.. new []{ OptionRight.Call, OptionRight.Put }.Select(getLeg)];
    }

    public override void OnData(Slice data)
    {
        if (!_tickets.IsNullOrEmpty()) return;
        _tickets = ComboLimitOrder(_legs, -2, 1m);
    }
}