| brokers / broker_api_wrapper.py |
|
93% |
111 |
8 |
0 |
|
83% |
12 |
0 |
|
92% |
| brokers / korea_investment / korea_invest_account_api.py |
|
100% |
29 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| brokers / korea_investment / korea_invest_api_base.py |
|
95% |
183 |
9 |
0 |
|
96% |
54 |
2 |
|
95% |
| brokers / korea_investment / korea_invest_client.py |
|
95% |
100 |
5 |
0 |
|
100% |
0 |
0 |
|
95% |
| brokers / korea_investment / korea_invest_env.py |
|
100% |
89 |
0 |
0 |
|
100% |
16 |
0 |
|
100% |
| brokers / korea_investment / korea_invest_header_provider.py |
|
99% |
68 |
1 |
0 |
|
89% |
18 |
2 |
|
97% |
| brokers / korea_investment / korea_invest_params_provider.py |
|
96% |
400 |
14 |
0 |
|
60% |
10 |
4 |
|
96% |
| brokers / korea_investment / korea_invest_quotations_api.py |
|
98% |
450 |
10 |
0 |
|
93% |
138 |
10 |
|
97% |
| brokers / korea_investment / korea_invest_token_provider.py |
|
98% |
94 |
2 |
0 |
|
90% |
20 |
2 |
|
96% |
| brokers / korea_investment / korea_invest_trading_api.py |
|
95% |
58 |
3 |
0 |
|
88% |
8 |
1 |
|
94% |
| brokers / korea_investment / korea_invest_trid_keys.py |
|
100% |
37 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| brokers / korea_investment / korea_invest_trid_provider.py |
|
97% |
58 |
2 |
0 |
|
88% |
16 |
2 |
|
95% |
| brokers / korea_investment / korea_invest_url_keys.py |
|
100% |
23 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| brokers / korea_investment / korea_invest_url_provider.py |
|
100% |
33 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| brokers / korea_investment / korea_invest_websocket_api.py |
|
90% |
416 |
41 |
0 |
|
86% |
100 |
6 |
|
89% |
| common / types.py |
|
93% |
345 |
24 |
0 |
|
87% |
38 |
5 |
|
92% |
| config / DynamicConfig.py |
|
100% |
5 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| config / config_loader.py |
|
100% |
68 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core / cache / cache_config.py |
|
100% |
10 |
0 |
0 |
|
50% |
2 |
1 |
|
92% |
| core / cache / cache_store.py |
|
89% |
81 |
9 |
0 |
|
89% |
46 |
1 |
|
89% |
| core / cache / cache_wrapper.py |
|
90% |
131 |
13 |
0 |
|
75% |
60 |
9 |
|
85% |
| core / cache / db_cache.py |
|
96% |
181 |
7 |
0 |
|
76% |
76 |
18 |
|
90% |
| core / cache / file_cache.py |
|
96% |
168 |
6 |
0 |
|
86% |
92 |
13 |
|
93% |
| core / cache / memory_cache.py |
|
100% |
17 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| core / logger.py |
|
97% |
268 |
8 |
0 |
|
92% |
66 |
5 |
|
96% |
| core / market_clock.py |
|
100% |
80 |
0 |
0 |
|
100% |
22 |
0 |
|
100% |
| core / performance_profiler.py |
|
97% |
69 |
2 |
0 |
|
100% |
14 |
0 |
|
98% |
| core / retry_queue / api_request_queue.py |
|
100% |
81 |
0 |
0 |
|
92% |
12 |
1 |
|
99% |
| core / retry_queue / client_with_retry_queue.py |
|
100% |
17 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| core / retry_queue / retry_classifier.py |
|
100% |
31 |
0 |
0 |
|
100% |
14 |
0 |
|
100% |
| interfaces / live_strategy.py |
|
100% |
14 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| interfaces / schedulable_task.py |
|
100% |
41 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| interfaces / strategy.py |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| repositories / cache.py |
|
99% |
134 |
2 |
0 |
|
96% |
56 |
2 |
|
98% |
| repositories / stock_code_repository.py |
|
98% |
108 |
2 |
0 |
|
80% |
44 |
9 |
|
93% |
| repositories / stock_ohlcv_repository.py |
|
90% |
227 |
22 |
0 |
|
77% |
62 |
14 |
|
88% |
| repositories / stock_price_repository.py |
|
96% |
89 |
4 |
0 |
|
71% |
42 |
12 |
|
88% |
| repositories / stock_repository.py |
|
93% |
76 |
5 |
0 |
|
50% |
6 |
3 |
|
90% |
| repositories / virtual_trade_repository.py |
|
95% |
437 |
23 |
0 |
|
77% |
140 |
32 |
|
90% |
| scheduler / after_market_loop.py |
|
98% |
42 |
1 |
0 |
|
93% |
14 |
1 |
|
96% |
| scheduler / background_scheduler.py |
|
90% |
60 |
6 |
0 |
|
95% |
20 |
1 |
|
91% |
| scheduler / foreground_scheduler.py |
|
100% |
36 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| scheduler / strategy_scheduler.py |
|
91% |
397 |
36 |
0 |
|
83% |
138 |
18 |
|
89% |
| scheduler / strategy_scheduler_store.py |
|
93% |
107 |
8 |
0 |
|
93% |
14 |
1 |
|
93% |
| services / indicator_service.py |
|
95% |
263 |
12 |
0 |
|
84% |
88 |
14 |
|
93% |
| services / market_calendar_service.py |
|
94% |
139 |
9 |
0 |
|
88% |
48 |
6 |
|
92% |
| services / market_data_service.py |
|
91% |
373 |
33 |
0 |
|
77% |
144 |
21 |
|
87% |
| services / naver_finance_scraper_service.py |
|
100% |
51 |
0 |
0 |
|
77% |
22 |
5 |
|
93% |
| services / notification_service.py |
|
95% |
85 |
4 |
0 |
|
100% |
10 |
0 |
|
96% |
| services / oneil_universe_service.py |
|
92% |
442 |
34 |
0 |
|
86% |
158 |
16 |
|
91% |
| services / order_execution_service.py |
|
96% |
146 |
6 |
0 |
|
88% |
42 |
5 |
|
94% |
| services / price_subscription_service.py |
|
92% |
101 |
8 |
0 |
|
82% |
34 |
6 |
|
90% |
| services / program_trading_stream_service.py |
|
91% |
293 |
26 |
0 |
|
87% |
38 |
5 |
|
91% |
| services / stock_query_service.py |
|
97% |
387 |
12 |
0 |
|
91% |
124 |
9 |
|
95% |
| services / stock_sync_service.py |
|
95% |
61 |
3 |
0 |
|
100% |
6 |
0 |
|
96% |
| services / streaming_service.py |
|
83% |
134 |
23 |
0 |
|
62% |
40 |
13 |
|
78% |
| services / telegram_notifier.py |
|
96% |
159 |
6 |
0 |
|
90% |
50 |
5 |
|
95% |
| services / virtual_trade_service.py |
|
100% |
114 |
0 |
0 |
|
71% |
66 |
19 |
|
89% |
| strategies / GapUpPullback_strategy.py |
|
100% |
38 |
0 |
0 |
|
100% |
8 |
0 |
|
100% |
| strategies / backtest_data_provider.py |
|
98% |
46 |
1 |
0 |
|
93% |
14 |
1 |
|
97% |
| strategies / base_strategy_config.py |
|
100% |
4 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| strategies / first_pullback_strategy.py |
|
94% |
288 |
18 |
0 |
|
84% |
116 |
18 |
|
91% |
| strategies / first_pullback_types.py |
|
100% |
31 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| strategies / high_tight_flag_strategy.py |
|
95% |
237 |
13 |
0 |
|
90% |
94 |
9 |
|
93% |
| strategies / momentum_strategy.py |
|
91% |
68 |
6 |
0 |
|
85% |
20 |
3 |
|
90% |
| strategies / oneil_common_types.py |
|
100% |
125 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| strategies / oneil_pocket_pivot_strategy.py |
|
96% |
373 |
16 |
0 |
|
93% |
164 |
11 |
|
95% |
| strategies / oneil_squeeze_breakout_strategy.py |
|
94% |
235 |
13 |
0 |
|
86% |
106 |
15 |
|
92% |
| strategies / program_buy_follow_strategy.py |
|
95% |
165 |
8 |
0 |
|
88% |
48 |
6 |
|
93% |
| strategies / strategy_executor.py |
|
100% |
7 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| strategies / traditional_volume_breakout_strategy.py |
|
99% |
286 |
3 |
0 |
|
96% |
92 |
4 |
|
98% |
| strategies / volume_breakout_live_strategy.py |
|
92% |
118 |
10 |
0 |
|
88% |
34 |
4 |
|
91% |
| strategies / volume_breakout_strategy.py |
|
96% |
91 |
4 |
0 |
|
81% |
26 |
5 |
|
92% |
| task / background / after_market / after_market_task_base.py |
|
97% |
67 |
2 |
0 |
|
86% |
14 |
2 |
|
95% |
| task / background / after_market / cache_warmup_task.py |
|
94% |
162 |
9 |
0 |
|
90% |
42 |
4 |
|
94% |
| task / background / after_market / daily_price_collector_task.py |
|
75% |
315 |
79 |
0 |
|
58% |
98 |
23 |
|
71% |
| task / background / after_market / ohlcv_update_task.py |
|
97% |
159 |
5 |
0 |
|
93% |
56 |
4 |
|
96% |
| task / background / after_market / premium_watchlist_generator_task.py |
|
96% |
82 |
3 |
0 |
|
95% |
22 |
1 |
|
96% |
| task / background / after_market / ranking_task.py |
|
91% |
318 |
29 |
0 |
|
76% |
106 |
17 |
|
87% |
| task / background / always_on / notification_queue_task.py |
|
94% |
80 |
5 |
0 |
|
73% |
22 |
6 |
|
89% |
| task / background / intraday / strategy_scheduler_task_adapter.py |
|
100% |
42 |
0 |
0 |
|
100% |
8 |
0 |
|
100% |
| task / background / intraday / websocket_watchdog_task.py |
|
88% |
195 |
24 |
0 |
|
73% |
82 |
20 |
|
83% |
| utils / kr_stock_data.py |
|
100% |
10 |
0 |
0 |
|
100% |
0 |
0 |
|
100% |
| utils / transaction_cost_utils.py |
|
100% |
20 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| view / web / api_common.py |
|
100% |
51 |
0 |
0 |
|
100% |
14 |
0 |
|
100% |
| view / web / routes / auth.py |
|
100% |
17 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| view / web / routes / balance.py |
|
94% |
32 |
2 |
0 |
|
100% |
8 |
0 |
|
95% |
| view / web / routes / notification.py |
|
100% |
32 |
0 |
0 |
|
100% |
4 |
0 |
|
100% |
| view / web / routes / ohlcv.py |
|
100% |
22 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| view / web / routes / order.py |
|
100% |
32 |
0 |
0 |
|
88% |
16 |
2 |
|
96% |
| view / web / routes / program.py |
|
93% |
100 |
7 |
0 |
|
69% |
16 |
3 |
|
90% |
| view / web / routes / ranking.py |
|
100% |
38 |
0 |
0 |
|
100% |
12 |
0 |
|
100% |
| view / web / routes / scheduler.py |
|
94% |
98 |
6 |
0 |
|
86% |
36 |
3 |
|
92% |
| view / web / routes / stock.py |
|
95% |
108 |
5 |
0 |
|
94% |
16 |
1 |
|
95% |
| view / web / routes / streaming.py |
|
100% |
33 |
0 |
0 |
|
100% |
6 |
0 |
|
100% |
| view / web / routes / system.py |
|
100% |
125 |
0 |
0 |
|
100% |
44 |
0 |
|
100% |
| view / web / routes / virtual.py |
|
96% |
255 |
11 |
0 |
|
93% |
98 |
7 |
|
95% |
| view / web / web_api.py |
|
100% |
8 |
0 |
0 |
|
100% |
2 |
0 |
|
100% |
| view / web / web_app_initializer.py |
|
90% |
294 |
28 |
0 |
|
63% |
86 |
24 |
|
84% |
| view / web / web_main.py |
|
85% |
155 |
24 |
0 |
|
73% |
22 |
2 |
|
83% |