diff options
Diffstat (limited to 'tests/integration')
| -rw-r--r-- | tests/integration/test_backtest_end_to_end.py | 4 | ||||
| -rw-r--r-- | tests/integration/test_order_execution_flow.py | 6 | ||||
| -rw-r--r-- | tests/integration/test_portfolio_tracking_flow.py | 14 | ||||
| -rw-r--r-- | tests/integration/test_strategy_signal_flow.py | 4 |
4 files changed, 14 insertions, 14 deletions
diff --git a/tests/integration/test_backtest_end_to_end.py b/tests/integration/test_backtest_end_to_end.py index 4a484f5..4cc0b12 100644 --- a/tests/integration/test_backtest_end_to_end.py +++ b/tests/integration/test_backtest_end_to_end.py @@ -16,7 +16,7 @@ from shared.models import Candle from backtester.engine import BacktestEngine -def _generate_candles(prices: list[float], symbol="BTCUSDT") -> list[Candle]: +def _generate_candles(prices: list[float], symbol="AAPL") -> list[Candle]: return [ Candle( symbol=symbol, @@ -47,7 +47,7 @@ def test_backtest_rsi_strategy_end_to_end(): result = engine.run(candles) assert result.strategy_name == "rsi" - assert result.symbol == "BTCUSDT" + assert result.symbol == "AAPL" assert result.initial_balance == Decimal("10000") assert result.detailed is not None assert result.detailed.total_trades >= 0 diff --git a/tests/integration/test_order_execution_flow.py b/tests/integration/test_order_execution_flow.py index d842d29..dcbc498 100644 --- a/tests/integration/test_order_execution_flow.py +++ b/tests/integration/test_order_execution_flow.py @@ -19,7 +19,7 @@ async def test_signal_to_order_flow(): """A valid signal passes risk checks and produces a filled order.""" signal = Signal( strategy="rsi", - symbol="BTC/USDT", + symbol="AAPL", side=OrderSide.BUY, price=Decimal("50000"), quantity=Decimal("0.01"), @@ -52,7 +52,7 @@ async def test_signal_to_order_flow(): assert order is not None assert order.status == OrderStatus.FILLED - assert order.symbol == "BTC/USDT" + assert order.symbol == "AAPL" assert order.side == OrderSide.BUY # Verify order was persisted and published @@ -66,7 +66,7 @@ async def test_signal_rejected_by_risk_manager(): """A signal that exceeds position size is rejected.""" signal = Signal( strategy="rsi", - symbol="BTC/USDT", + symbol="AAPL", side=OrderSide.BUY, price=Decimal("50000"), quantity=Decimal("100"), # Way too large diff --git a/tests/integration/test_portfolio_tracking_flow.py b/tests/integration/test_portfolio_tracking_flow.py index 80a781c..b20275a 100644 --- a/tests/integration/test_portfolio_tracking_flow.py +++ b/tests/integration/test_portfolio_tracking_flow.py @@ -19,7 +19,7 @@ def test_portfolio_tracks_buy_sell_cycle(): buy_order = Order( signal_id="sig-1", - symbol="BTCUSDT", + symbol="AAPL", side=OrderSide.BUY, type=OrderType.MARKET, price=Decimal("50000"), @@ -28,14 +28,14 @@ def test_portfolio_tracks_buy_sell_cycle(): ) tracker.apply_order(buy_order) - pos = tracker.get_position("BTCUSDT") + pos = tracker.get_position("AAPL") assert pos is not None assert pos.quantity == Decimal("0.1") assert pos.avg_entry_price == Decimal("50000") sell_order = Order( signal_id="sig-2", - symbol="BTCUSDT", + symbol="AAPL", side=OrderSide.SELL, type=OrderType.MARKET, price=Decimal("55000"), @@ -44,7 +44,7 @@ def test_portfolio_tracks_buy_sell_cycle(): ) tracker.apply_order(sell_order) - pos = tracker.get_position("BTCUSDT") + pos = tracker.get_position("AAPL") assert pos is None # Fully sold @@ -55,7 +55,7 @@ def test_portfolio_weighted_average_on_multiple_buys(): tracker.apply_order( Order( signal_id="s1", - symbol="BTCUSDT", + symbol="AAPL", side=OrderSide.BUY, type=OrderType.MARKET, price=Decimal("50000"), @@ -66,7 +66,7 @@ def test_portfolio_weighted_average_on_multiple_buys(): tracker.apply_order( Order( signal_id="s2", - symbol="BTCUSDT", + symbol="AAPL", side=OrderSide.BUY, type=OrderType.MARKET, price=Decimal("60000"), @@ -75,6 +75,6 @@ def test_portfolio_weighted_average_on_multiple_buys(): ) ) - pos = tracker.get_position("BTCUSDT") + pos = tracker.get_position("AAPL") assert pos.quantity == Decimal("0.2") assert pos.avg_entry_price == Decimal("55000") # weighted avg diff --git a/tests/integration/test_strategy_signal_flow.py b/tests/integration/test_strategy_signal_flow.py index 448329f..6b048fb 100644 --- a/tests/integration/test_strategy_signal_flow.py +++ b/tests/integration/test_strategy_signal_flow.py @@ -26,7 +26,7 @@ def candles(): price = Decimal(str(100 - i * 2)) # 100, 98, 96... base.append( Candle( - symbol="BTCUSDT", + symbol="AAPL", timeframe="1m", open_time=datetime(2025, 1, 1, i, 0, tzinfo=timezone.utc), open=price, @@ -54,7 +54,7 @@ async def test_strategy_engine_produces_signals_from_candles(candles): engine = StrategyEngine(broker=broker, strategies=[strategy]) - await engine.process_once("candles.BTCUSDT", "$") + await engine.process_once("candles.AAPL", "$") # With 20 declining candles (100->62), RSI should be very low # Check if broker.publish was called with a signal |
