summaryrefslogtreecommitdiff
path: root/services/backtester/tests/test_metrics.py
diff options
context:
space:
mode:
authorTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2026-04-01 16:24:30 +0900
committerTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2026-04-01 16:24:30 +0900
commit100aa624ad3f8ad466a95f9da8af30f31f77cc9c (patch)
treeef81b9f37872ed462a1f84ea238a130f758782d2 /services/backtester/tests/test_metrics.py
parent73eaf704584e5bf3c4499ccdd574af87304e1e5f (diff)
fix: resolve lint issues and final integration fixes
- Fix ambiguous variable name in binance_rest.py - Remove unused volumes variable in volume_profile_strategy.py - Fix import ordering in backtester main.py and test_metrics.py - Auto-format all files with ruff
Diffstat (limited to 'services/backtester/tests/test_metrics.py')
-rw-r--r--services/backtester/tests/test_metrics.py17
1 files changed, 8 insertions, 9 deletions
diff --git a/services/backtester/tests/test_metrics.py b/services/backtester/tests/test_metrics.py
index b222b8a..68bc0b5 100644
--- a/services/backtester/tests/test_metrics.py
+++ b/services/backtester/tests/test_metrics.py
@@ -1,4 +1,6 @@
"""Tests for detailed backtest metrics."""
+
+import math
from datetime import datetime, timedelta, timezone
from decimal import Decimal
@@ -21,9 +23,9 @@ def test_compute_metrics_basic():
"""Two round-trip trades: 1 win, 1 loss. Verify counts and win_rate."""
trades = [
_make_trade("BUY", "100", 0),
- _make_trade("SELL", "120", 10), # win: +20
+ _make_trade("SELL", "120", 10), # win: +20
_make_trade("BUY", "130", 20),
- _make_trade("SELL", "110", 30), # loss: -20
+ _make_trade("SELL", "110", 30), # loss: -20
]
metrics = compute_detailed_metrics(trades, Decimal("10000"), Decimal("10000"))
@@ -37,9 +39,9 @@ def test_compute_metrics_profit_factor():
"""Verify profit_factor = gross_profit / gross_loss."""
trades = [
_make_trade("BUY", "100", 0),
- _make_trade("SELL", "150", 10), # win: +50
+ _make_trade("SELL", "150", 10), # win: +50
_make_trade("BUY", "150", 20),
- _make_trade("SELL", "130", 30), # loss: -20
+ _make_trade("SELL", "130", 30), # loss: -20
]
metrics = compute_detailed_metrics(trades, Decimal("10000"), Decimal("10030"))
@@ -51,9 +53,9 @@ def test_compute_metrics_max_drawdown():
"""Max drawdown should be > 0 when there is a losing trade after a peak."""
trades = [
_make_trade("BUY", "100", 0),
- _make_trade("SELL", "150", 10), # win: equity goes up
+ _make_trade("SELL", "150", 10), # win: equity goes up
_make_trade("BUY", "150", 20),
- _make_trade("SELL", "120", 30), # loss: equity drops
+ _make_trade("SELL", "120", 30), # loss: equity drops
]
metrics = compute_detailed_metrics(trades, Decimal("10000"), Decimal("10020"))
@@ -91,6 +93,3 @@ def test_compute_metrics_empty_trades():
assert metrics.calmar_ratio == 0.0
assert metrics.max_drawdown == 0.0
assert metrics.monthly_returns == {}
-
-
-import math