Overall Statistics
Total Orders
2
Average Win
0%
Average Loss
0%
Compounding Annual Return
0%
Drawdown
0%
Expectancy
0
Start Equity
100000.00
End Equity
100249.7
Net Profit
0%
Sharpe Ratio
0
Sortino Ratio
0
Probabilistic Sharpe Ratio
0%
Loss Rate
0%
Win Rate
0%
Profit-Loss Ratio
0
Alpha
0
Beta
0
Annual Standard Deviation
0
Annual Variance
0
Information Ratio
0
Tracking Error
0
Treynor Ratio
0
Total Fees
$0.00
Estimated Strategy Capacity
$0
Lowest Capacity Asset
BTCUSD 2XR
Portfolio Turnover
93.87%
Drawdown Recovery
0
# region imports
from AlgorithmImports import *
# endregion
class CryptoTickQuantityDebugAlgorithm(QCAlgorithm):
    def Initialize(self):
        self.SetStartDate(2025, 1, 1)
        self.SetEndDate(2025, 1, 2)
        self.SetCash(100000)

        self.crypto = self.AddCrypto("BTCUSD", Resolution.Tick).Symbol

        # Schedule buy at 10:00 UTC
        self.Schedule.On(self.DateRules.Today, self.TimeRules.At(10, 0), self.PlaceBuyOrder)
        # Schedule sell at 11:00 UTC
        self.Schedule.On(self.DateRules.Today, self.TimeRules.At(11, 0), self.PlaceSellOrder)

    def OnData(self, data):
        if data.Ticks.ContainsKey(self.crypto):
            for tick in data.Ticks[self.crypto]:
                self.Debug(f"Tick trade - Time: {tick.EndTime}, Quantity: {tick.Quantity}, Price: {tick.Price}")

    def PlaceBuyOrder(self):
        quantity = 1
        self.Debug(f"Placing Buy MarketOrder with quantity: {quantity}")
        self.MarketOrder(self.crypto, quantity)

    def PlaceSellOrder(self):
        quantity = -1
        self.Debug(f"Placing Sell MarketOrder with quantity: {quantity}")
        self.MarketOrder(self.crypto, quantity)