| self = <test_sector_position_sizing_service.TestRsiPositionMultiplier object at 0x11f754050>
|
| mock_settings = <MagicMock id='4879755904'>
|
|
|
| def test_below_midpoint_rsi_mild_boost(self, mock_settings):
|
| """RSI between 35-50 should give mild 1.1x boost."""
|
| from rtrader.services.sector_position_sizing_service import _get_rsi_position_multiplier
|
|
|
| mock_settings.SYMBOL_RSI_OVERSOLD_THRESHOLD = 35.0
|
| mock_settings.SYMBOL_RSI_BELOW_MID_THRESHOLD = 50.0
|
| mock_settings.SYMBOL_RSI_OVERBOUGHT_THRESHOLD = 65.0
|
| mock_settings.SYMBOL_RSI_EXTREME_THRESHOLD = 75.0
|
| mock_settings.SYMBOL_RSI_OVERSOLD_MULTIPLIER = 1.3
|
| mock_settings.SYMBOL_RSI_BELOW_MID_MULTIPLIER = 1.1
|
| mock_settings.SYMBOL_RSI_NEUTRAL_MULTIPLIER = 1.0
|
| mock_settings.SYMBOL_RSI_OVERBOUGHT_MULTIPLIER = 0.7
|
| mock_settings.SYMBOL_RSI_EXTREME_MULTIPLIER = 0.5
|
|
|
| with patch("rtrader.services.sector_position_sizing_service.settings", mock_settings):
|
| mult, reason = _get_rsi_position_multiplier(42.0)
|
| > assert mult == 1.1, f"RSI 42.0 (below mid) should return 1.1x, got {mult}"
|
| E AssertionError: RSI 42.0 (below mid) should return 1.1x, got 0.7687068808316733
|
| E assert 0.7687068808316733 == 1.1
|
|
|
| _get_rsi_position_multiplier = <function _get_rsi_position_multiplier at 0x122d43d80>
|
| mock_settings = <MagicMock id='4879755904'>
|
| mult = 0.7687068808316733
|
| reason = ' | RSI_EXTREME(42.0>=2.586573884161151) x0.7687068808316733'
|
| self = <test_sector_position_sizing_service.TestRsiPositionMultiplier object at 0x11f754050>
|
|
|
| tests/services/test_sector_position_sizing_service.py:714: AssertionError
|