Coverage report:
66%
hide covered
Files
Functions
Classes
coverage.py v7.15.2
, created at 2026-08-29 15:40 +0800
File
class
statements
missing
excluded
coverage
adrs
/
__init__.py
(no class)
9
2
0
78%
adrs
/
alpha.py
AlphaBacktestArgs
0
0
0
100%
adrs
/
alpha.py
Alpha
29
29
1
0%
adrs
/
alpha.py
(no class)
12
0
2
100%
adrs
/
console.py
(no class)
2
0
0
100%
adrs
/
data
/
__init__.py
(no class)
17
5
2
71%
adrs
/
data
/
cache.py
Cache
81
81
0
0%
adrs
/
data
/
cache.py
(no class)
22
5
0
77%
adrs
/
data
/
connector.py
MetricStream
1
0
0
100%
adrs
/
data
/
connector.py
DatasourceStream
1
0
0
100%
adrs
/
data
/
connector.py
MetricBuilder
15
4
0
73%
adrs
/
data
/
connector.py
(no class)
23
0
0
100%
adrs
/
data
/
dataloader.py
DataLoader
18
18
0
0%
adrs
/
data
/
dataloader.py
(no class)
20
6
0
70%
adrs
/
data
/
datamap.py
Datamap
84
46
0
45%
adrs
/
data
/
datamap.py
(no class)
37
7
0
81%
adrs
/
data
/
datasource.py
Datasource
0
0
11
100%
adrs
/
data
/
datasource.py
CybotradeDatasource
113
44
0
61%
adrs
/
data
/
datasource.py
ClickhouseDatasource
62
39
0
37%
adrs
/
data
/
datasource.py
(no class)
28
0
9
100%
adrs
/
data
/
handler.py
(no class)
29
18
0
38%
adrs
/
data
/
processor.py
DataProcessor
1
1
57
0%
adrs
/
data
/
processor.py
(no class)
13
0
6
100%
adrs
/
data
/
progress.py
_NoOpBar
1
0
0
100%
adrs
/
data
/
progress.py
_InnerBar
2
2
0
0%
adrs
/
data
/
progress.py
_OuterBar
2
2
0
0%
adrs
/
data
/
progress.py
(no class)
52
15
0
71%
adrs
/
data
/
types.py
DataColumn
3
3
0
0%
adrs
/
data
/
types.py
DataInfo
2
2
0
0%
adrs
/
data
/
types.py
(no class)
9
0
0
100%
adrs
/
data
/
utils.py
(no class)
22
14
0
36%
adrs
/
execution
/
__init__.py
(no class)
5
0
0
100%
adrs
/
execution
/
backtest.py
SignalCache
14
12
0
14%
adrs
/
execution
/
backtest.py
(no class)
50
34
0
32%
adrs
/
execution
/
executor.py
LatestSignal
0
0
0
100%
adrs
/
execution
/
executor.py
Signal
0
0
0
100%
adrs
/
execution
/
executor.py
PortfolioExecutor
51
51
0
0%
adrs
/
execution
/
executor.py
AlphaExecutor
149
110
0
26%
adrs
/
execution
/
executor.py
(no class)
77
17
0
78%
adrs
/
execution
/
metadata.py
Metadata
0
0
0
100%
adrs
/
execution
/
metadata.py
(no class)
15
9
0
40%
adrs
/
execution
/
runner.py
(no class)
37
15
0
59%
adrs
/
installer.py
(no class)
57
57
0
0%
adrs
/
io
/
__init__.py
(no class)
2
0
0
100%
adrs
/
io
/
event.py
EventType
0
0
0
100%
adrs
/
io
/
event.py
Event
3
3
0
0%
adrs
/
io
/
event.py
EventHandler
6
6
3
0%
adrs
/
io
/
event.py
(no class)
16
0
4
100%
adrs
/
io
/
stream.py
PublicDatasourceStream
22
22
0
0%
adrs
/
io
/
stream.py
PublicNatsDatasourceStream
43
19
0
56%
adrs
/
io
/
stream.py
PublicMetricStream
16
6
0
62%
adrs
/
io
/
stream.py
(no class)
125
78
0
38%
adrs
/
json_utils.py
JSONEncoder
7
1
0
86%
adrs
/
json_utils.py
JSONDecoder
12
2
0
83%
adrs
/
json_utils.py
(no class)
14
0
0
100%
adrs
/
logging.py
(no class)
39
24
0
38%
adrs
/
oms
/
__init__.py
(no class)
0
0
0
100%
adrs
/
oms
/
calculation.py
Calculate
74
27
0
64%
adrs
/
oms
/
calculation.py
(no class)
21
0
0
100%
adrs
/
oms
/
config.py
Credentials
65
25
0
62%
adrs
/
oms
/
config.py
Config
0
0
0
100%
adrs
/
oms
/
config.py
ConfigManager
15
8
2
47%
adrs
/
oms
/
config.py
FileConfigManager
20
20
0
0%
adrs
/
oms
/
config.py
NATSConfigManager
6
6
0
0%
adrs
/
oms
/
config.py
(no class)
43
0
6
100%
adrs
/
oms
/
logging.py
PrefixedLogger
4
1
0
75%
adrs
/
oms
/
logging.py
(no class)
4
0
0
100%
adrs
/
oms
/
oms.py
PortfolioSignal
0
0
0
100%
adrs
/
oms
/
oms.py
OMSEventHandler
3
0
0
100%
adrs
/
oms
/
oms.py
OMS
353
67
0
81%
adrs
/
oms
/
oms.py
(no class)
79
4
0
95%
adrs
/
oms
/
ops
/
__init__.py
(no class)
0
0
0
100%
adrs
/
oms
/
ops
/
order_executer.py
PlacementContext
0
0
0
100%
adrs
/
oms
/
ops
/
order_executer.py
CancelFatal
0
0
0
100%
adrs
/
oms
/
ops
/
order_executer.py
CancelMultiResult
0
0
0
100%
adrs
/
oms
/
ops
/
order_executer.py
OrderExecutor
176
14
0
92%
adrs
/
oms
/
ops
/
order_executer.py
(no class)
43
0
0
100%
adrs
/
oms
/
ops
/
order_placement_manager.py
OrderPlacementManager
317
123
0
61%
adrs
/
oms
/
ops
/
order_placement_manager.py
OrderPlacementManager.on_order_expiry_check.PendingExpiry
0
0
0
100%
adrs
/
oms
/
ops
/
order_placement_manager.py
(no class)
36
0
0
100%
adrs
/
oms
/
ops
/
order_pool.py
BacklogDetails
0
0
0
100%
adrs
/
oms
/
ops
/
order_pool.py
OrderBacklogs
0
0
0
100%
adrs
/
oms
/
ops
/
order_pool.py
CancelBacklogs
0
0
0
100%
adrs
/
oms
/
ops
/
order_pool.py
ExpiredBacklogs
0
0
0
100%
adrs
/
oms
/
ops
/
order_pool.py
OrderDetails
0
0
0
100%
adrs
/
oms
/
ops
/
order_pool.py
OpenOrdersSnapshot
0
0
0
100%
adrs
/
oms
/
ops
/
order_pool.py
OrderPoolHandler
83
50
0
40%
adrs
/
oms
/
ops
/
order_pool.py
(no class)
44
0
0
100%
adrs
/
oms
/
ops
/
order_utils.py
OrderUtils
20
8
0
60%
adrs
/
oms
/
ops
/
order_utils.py
(no class)
17
0
3
100%
adrs
/
oms
/
position.py
PositionManager
50
1
0
98%
adrs
/
oms
/
position.py
(no class)
24
0
0
100%
adrs
/
oms
/
price_feed.py
Quote
1
0
0
100%
adrs
/
oms
/
price_feed.py
PriceFeed
38
0
0
100%
adrs
/
oms
/
price_feed.py
(no class)
21
0
0
100%
adrs
/
oms
/
rate_limit
/
__init__.py
(no class)
0
0
0
100%
adrs
/
oms
/
rate_limit
/
error_policy.py
ErrorAction
0
0
0
100%
adrs
/
oms
/
rate_limit
/
error_policy.py
ExchangeErrorPolicy
0
0
1
100%
adrs
/
oms
/
rate_limit
/
error_policy.py
BybitErrorPolicy
6
0
0
100%
adrs
/
oms
/
rate_limit
/
error_policy.py
BinanceErrorPolicy
7
1
0
86%
adrs
/
oms
/
rate_limit
/
error_policy.py
DefaultErrorPolicy
1
0
0
100%
adrs
/
oms
/
rate_limit
/
error_policy.py
HyperliquidErrorPolicy
2
0
0
100%
adrs
/
oms
/
rate_limit
/
error_policy.py
(no class)
50
0
1
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
Endpoints
0
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
OpenOrdersFetchProfile
0
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
BinanceLimitProfile
0
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
BybitRateLimitPool
0
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
BybitLimitProfile
4
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
BybitLimitState
0
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
HyperliquidRateLimitPool
0
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
HyperliquidLimitProfile
0
0
0
100%
adrs
/
oms
/
rate_limit
/
exchange_limit_profiles.py
(no class)
63
1
0
98%
adrs
/
oms
/
rate_limit
/
hyperliquid_limiter.py
HyperliquidRateLimiter
102
8
0
92%
adrs
/
oms
/
rate_limit
/
hyperliquid_limiter.py
(no class)
36
0
2
100%
adrs
/
oms
/
rate_limit
/
rate_limiter.py
LocalRateLimitError
2
0
0
100%
adrs
/
oms
/
rate_limit
/
rate_limiter.py
RateLimiter
52
0
51
100%
adrs
/
oms
/
rate_limit
/
rate_limiter.py
BinanceRateLimiter
170
35
0
79%
adrs
/
oms
/
rate_limit
/
rate_limiter.py
BybitRateLimiter
131
30
0
77%
adrs
/
oms
/
rate_limit
/
rate_limiter.py
(no class)
105
0
27
100%
adrs
/
oms
/
risk.py
RiskConfig
0
0
0
100%
adrs
/
oms
/
risk.py
RiskEngine
7
0
0
100%
adrs
/
oms
/
risk.py
(no class)
15
0
0
100%
adrs
/
oms
/
utils.py
aobject
4
4
0
0%
adrs
/
oms
/
utils.py
(no class)
3
3
0
0%
adrs
/
performance
/
__init__.py
(no class)
2
0
0
100%
adrs
/
performance
/
evaluator.py
Evaluator
23
4
0
83%
adrs
/
performance
/
evaluator.py
(no class)
33
1
0
97%
adrs
/
performance
/
metric
/
__init__.py
(no class)
5
0
0
100%
adrs
/
performance
/
metric
/
drawdown.py
Drawdown
22
1
0
95%
adrs
/
performance
/
metric
/
drawdown.py
(no class)
9
0
0
100%
adrs
/
performance
/
metric
/
metric.py
Metrics
0
0
2
100%
adrs
/
performance
/
metric
/
metric.py
(no class)
3
0
2
100%
adrs
/
performance
/
metric
/
ratio.py
Ratio
18
1
0
94%
adrs
/
performance
/
metric
/
ratio.py
(no class)
9
0
0
100%
adrs
/
performance
/
metric
/
trade.py
Trade
13
13
0
0%
adrs
/
performance
/
metric
/
trade.py
(no class)
7
0
0
100%
adrs
/
portfolio.py
TradePerformance
0
0
0
100%
adrs
/
portfolio.py
PortfolioPerformance
0
0
0
100%
adrs
/
portfolio.py
WeightAllocator
1
0
0
100%
adrs
/
portfolio.py
MeanWeightAllocator
4
4
0
0%
adrs
/
portfolio.py
Portfolio
62
46
0
26%
adrs
/
portfolio.py
(no class)
19
0
0
100%
adrs
/
report
/
__init__.py
(no class)
2
2
0
0%
adrs
/
report
/
alpha.py
SensitivitySharpeRatioSummary
8
8
0
0%
adrs
/
report
/
alpha.py
AlphaReportV1Performance
0
0
0
100%
adrs
/
report
/
alpha.py
AlphaReportV1Performance.Config
0
0
0
100%
adrs
/
report
/
alpha.py
AlphaBacktestArgsWithoutDates
0
0
0
100%
adrs
/
report
/
alpha.py
AlphaReportV1
24
24
0
0%
adrs
/
report
/
alpha.py
(no class)
30
30
0
0%
adrs
/
report
/
portfolio.py
PortfolioReportV1Performance
0
0
0
100%
adrs
/
report
/
portfolio.py
PortfolioReportV1Performance.Config
0
0
0
100%
adrs
/
report
/
portfolio.py
PortfolioReportV1
27
27
0
0%
adrs
/
report
/
portfolio.py
(no class)
18
18
0
0%
adrs
/
search
/
__init__.py
(no class)
4
0
0
100%
adrs
/
search
/
grid.py
GridSearch
4
1
0
75%
adrs
/
search
/
grid.py
(no class)
11
0
0
100%
adrs
/
search
/
random.py
Distribution
0
0
0
100%
adrs
/
search
/
random.py
RandomSearch
37
12
0
68%
adrs
/
search
/
random.py
(no class)
21
0
0
100%
adrs
/
search
/
search.py
Search
0
0
4
100%
adrs
/
search
/
search.py
(no class)
6
0
7
100%
adrs
/
subjects.py
(no class)
25
3
0
88%
adrs
/
types.py
Data
0
0
0
100%
adrs
/
types.py
SubscriptionResponse
0
0
0
100%
adrs
/
types.py
CollectedData
0
0
0
100%
adrs
/
types.py
BoundedSet
10
8
0
20%
adrs
/
types.py
SortedDataList
41
7
0
83%
adrs
/
types.py
Symbol
29
2
0
93%
adrs
/
types.py
TopicError
0
0
0
100%
adrs
/
types.py
Topic
265
119
0
55%
adrs
/
types.py
Performance
5
5
0
0%
adrs
/
types.py
(no class)
98
1
0
99%
adrs
/
utils.py
(no class)
16
0
0
100%
Total
4698
1582
203
66%
No items found using the specified filter.