diff --git a/zhixing-server/src/zhixing_server/modules/selection/domain/gold_brick.py b/zhixing-server/src/zhixing_server/modules/selection/domain/gold_brick.py index f8c22d1..6547bb4 100644 --- a/zhixing-server/src/zhixing_server/modules/selection/domain/gold_brick.py +++ b/zhixing-server/src/zhixing_server/modules/selection/domain/gold_brick.py @@ -19,9 +19,7 @@ from .zhixing_b1 import compute_signal_masks, prepare_zhixing_b1_indicators GOLD_BRICK_MINIMUM_HISTORY = 200 GOLD_BRICK_TURNOVER_RATE_THRESHOLD = 0.99 -GOLD_BRICK_SIGNAL_ORDER: tuple[GoldBrickCategory, ...] = ( - GoldBrickCategory.RESONANCE, -) +GOLD_BRICK_SIGNAL_ORDER: tuple[GoldBrickCategory, ...] = (GoldBrickCategory.RESONANCE,) def _safe_ratio(numerator: pd.Series, denominator: pd.Series) -> pd.Series: @@ -90,9 +88,7 @@ def prepare_gold_brick_indicators(frame: pd.DataFrame, code: str) -> pd.DataFram ) multiple_volume_bonus = pd.Series( np.where( - (close > open_price) - & (close > previous_close) - & (volume > previous_volume * 1.8), + (close > open_price) & (close > previous_close) & (volume > previous_volume * 1.8), multiple_volume_coefficient, 1.0, ), @@ -115,13 +111,9 @@ def prepare_gold_brick_indicators(frame: pd.DataFrame, code: str) -> pd.DataFram ) result["j_momentum"] = j_momentum result["rsi_momentum"] = rsi_momentum - result["yellow_column"] = ( - momentum_sum.div(2).mul(shadow_coefficient).mul(multiple_volume_bonus) - ) + result["yellow_column"] = momentum_sum.div(2).mul(shadow_coefficient).mul(multiple_volume_bonus) x_condition = ( - (close > open_price) - & (close > previous_close) - & (momentum_sum > previous_momentum_sum) + (close > open_price) & (close > previous_close) & (momentum_sum > previous_momentum_sum) ) result["x_momentum"] = ( momentum_sum.sub(previous_momentum_sum) @@ -163,9 +155,8 @@ def prepare_gold_brick_indicators(frame: pd.DataFrame, code: str) -> pd.DataFram high - close, high - upper_shadow_floor, ) - result["upper_shadow_condition"] = ( - ((close >= open_price) | (close > previous_close)) - & (result["upper_shadow_strength"] > 0.618) + result["upper_shadow_condition"] = ((close >= open_price) | (close > previous_close)) & ( + result["upper_shadow_strength"] > 0.618 ) long = result["long_oscillator"]