{
  "generated_at": "2026-06-12 13:47:36",
  "symbol": "BTC",
  "chart_tier": "v3",
  "analysis": {
    "lookback_days": 1095,
    "period_from": "2023-06-12 16:48:00",
    "period_to": "2026-06-11 16:48:00",
    "base_interval_min": 3,
    "timeframes": [
      {
        "interval_min": 1,
        "label": "1분"
      },
      {
        "interval_min": 3,
        "label": "3분"
      },
      {
        "interval_min": 5,
        "label": "5분"
      },
      {
        "interval_min": 10,
        "label": "10분"
      },
      {
        "interval_min": 15,
        "label": "15분"
      },
      {
        "interval_min": 30,
        "label": "30분"
      },
      {
        "interval_min": 60,
        "label": "60분"
      },
      {
        "interval_min": 240,
        "label": "240분"
      },
      {
        "interval_min": 1440,
        "label": "일"
      },
      {
        "interval_min": 10080,
        "label": "주"
      },
      {
        "interval_min": 43200,
        "label": "월"
      }
    ],
    "feature_names": [
      "close",
      "ema60",
      "close_vs_ema60_pct",
      "ema60_slope_5_pct",
      "rsi14",
      "macd_hist",
      "bb_position",
      "atr_pct",
      "zigzag_direction",
      "zigzag_leg_pct",
      "trend_bias"
    ],
    "numeric_features": [
      "close_vs_ema60_pct",
      "ema60_slope_5_pct",
      "rsi14",
      "macd_hist",
      "bb_position",
      "atr_pct",
      "zigzag_leg_pct"
    ],
    "categorical_features": [
      "zigzag_direction",
      "trend_bias"
    ],
    "negative_exclude_bars": 60,
    "negative_sample_requested": 2000,
    "negative_sample_count": 2000
  },
  "gt": {
    "signals_in_period": 390,
    "snapshots_extracted": 390,
    "snapshots_missing": 0,
    "signal_type_counts": {
      "swing_low": 96,
      "div_bull": 41,
      "div_bear": 55,
      "pullback": 70,
      "swing_high": 96,
      "breakout": 32
    }
  },
  "signal_type_labels": {
    "swing_low": "스윙 매수 (B)",
    "pullback": "눌림목 (B*)",
    "breakout": "돌파 (B^)",
    "div_bull": "상승 다이버전스 (Bd)",
    "swing_high": "스윙 매도 (S)",
    "div_bear": "하락 다이버전스 (Sd)"
  },
  "by_signal_type": {
    "breakout": {
      "label": "돌파 (B^)",
      "side": "buy",
      "sample_count": 32,
      "timeframes": {
        "1분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.3256,
              "positive_median": 0.2965,
              "negative_mean": -0.0009,
              "mean_delta": 0.3265,
              "cohens_d": 1.5739,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.0459,
              "positive_median": 0.0398,
              "negative_mean": -0.0004,
              "mean_delta": 0.0462,
              "cohens_d": 1.2928,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 73.3036,
              "positive_median": 72.868,
              "negative_mean": 49.8635,
              "mean_delta": 23.4401,
              "cohens_d": 1.8031,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 23976.5309,
              "positive_median": 15437.9503,
              "negative_mean": -712.4614,
              "mean_delta": 24688.9923,
              "cohens_d": 1.0872,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.0076,
              "positive_median": 1.0215,
              "negative_mean": 0.4972,
              "mean_delta": 0.5104,
              "cohens_d": 1.6174,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.068,
              "positive_median": 0.059,
              "negative_mean": 0.0581,
              "mean_delta": 0.0099,
              "cohens_d": 0.1983,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 8.0243,
              "positive_median": 7.6176,
              "negative_mean": 3.9733,
              "mean_delta": 4.051,
              "cohens_d": 0.3975,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 4
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 32
              },
              "negative_distribution": {
                "bearish": 1004,
                "bullish": 996
              },
              "positive_bullish_ratio": 1.0,
              "negative_bullish_ratio": 0.498,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 73.3036,
              "positive_median": 72.868,
              "negative_mean": 49.8635,
              "mean_delta": 23.4401,
              "cohens_d": 1.8031,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.0076,
              "positive_median": 1.0215,
              "negative_mean": 0.4972,
              "mean_delta": 0.5104,
              "cohens_d": 1.6174,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.3256,
              "positive_median": 0.2965,
              "negative_mean": -0.0009,
              "mean_delta": 0.3265,
              "cohens_d": 1.5739,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "3분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.4812,
              "positive_median": 0.4465,
              "negative_mean": 0.0067,
              "mean_delta": 0.4745,
              "cohens_d": 1.3244,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.0535,
              "positive_median": 0.0437,
              "negative_mean": 0.0015,
              "mean_delta": 0.052,
              "cohens_d": 0.8445,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 73.1124,
              "positive_median": 72.9586,
              "negative_mean": 50.0044,
              "mean_delta": 23.108,
              "cohens_d": 1.9135,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 25405.5131,
              "positive_median": 22827.1963,
              "negative_mean": -1253.6888,
              "mean_delta": 26659.2019,
              "cohens_d": 0.6913,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.108,
              "positive_median": 1.1041,
              "negative_mean": 0.4955,
              "mean_delta": 0.6125,
              "cohens_d": 1.9334,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.1044,
              "positive_median": 0.0927,
              "negative_mean": 0.1063,
              "mean_delta": -0.0019,
              "cohens_d": -0.0229,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 8.0243,
              "positive_median": 7.6176,
              "negative_mean": 3.9733,
              "mean_delta": 4.051,
              "cohens_d": 0.3975,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 4
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 32
              },
              "negative_distribution": {
                "bearish": 968,
                "bullish": 1032
              },
              "positive_bullish_ratio": 1.0,
              "negative_bullish_ratio": 0.516,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.108,
              "positive_median": 1.1041,
              "negative_mean": 0.4955,
              "mean_delta": 0.6125,
              "cohens_d": 1.9334,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 73.1124,
              "positive_median": 72.9586,
              "negative_mean": 50.0044,
              "mean_delta": 23.108,
              "cohens_d": 1.9135,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.4812,
              "positive_median": 0.4465,
              "negative_mean": 0.0067,
              "mean_delta": 0.4745,
              "cohens_d": 1.3244,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "5분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.5046,
              "positive_median": 0.3987,
              "negative_mean": 0.0103,
              "mean_delta": 0.4943,
              "cohens_d": 1.0428,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.0592,
              "positive_median": 0.0445,
              "negative_mean": 0.0029,
              "mean_delta": 0.0563,
              "cohens_d": 0.704,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 68.4758,
              "positive_median": 67.3279,
              "negative_mean": 49.9748,
              "mean_delta": 18.501,
              "cohens_d": 1.5731,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 21583.3071,
              "positive_median": 14784.345,
              "negative_mean": -891.0456,
              "mean_delta": 22474.3527,
              "cohens_d": 0.4491,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.0303,
              "positive_median": 0.9943,
              "negative_mean": 0.4933,
              "mean_delta": 0.537,
              "cohens_d": 1.6638,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.126,
              "positive_median": 0.1043,
              "negative_mean": 0.1412,
              "mean_delta": -0.0151,
              "cohens_d": -0.147,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.937,
              "positive_median": 7.4176,
              "negative_mean": 3.9679,
              "mean_delta": 3.9691,
              "cohens_d": 0.3894,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 4
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 32
              },
              "negative_distribution": {
                "bearish": 978,
                "bullish": 1022
              },
              "positive_bullish_ratio": 1.0,
              "negative_bullish_ratio": 0.511,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.0303,
              "positive_median": 0.9943,
              "negative_mean": 0.4933,
              "mean_delta": 0.537,
              "cohens_d": 1.6638,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 68.4758,
              "positive_median": 67.3279,
              "negative_mean": 49.9748,
              "mean_delta": 18.501,
              "cohens_d": 1.5731,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.5046,
              "positive_median": 0.3987,
              "negative_mean": 0.0103,
              "mean_delta": 0.4943,
              "cohens_d": 1.0428,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "10분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.5479,
              "positive_median": 0.5049,
              "negative_mean": 0.0269,
              "mean_delta": 0.5209,
              "cohens_d": 0.7603,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.0773,
              "positive_median": 0.0595,
              "negative_mean": 0.0052,
              "mean_delta": 0.0721,
              "cohens_d": 0.6276,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 64.2645,
              "positive_median": 64.3164,
              "negative_mean": 50.3143,
              "mean_delta": 13.9502,
              "cohens_d": 1.2139,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 21797.0127,
              "positive_median": 23516.6699,
              "negative_mean": 408.4106,
              "mean_delta": 21388.6021,
              "cohens_d": 0.3288,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.9008,
              "positive_median": 0.939,
              "negative_mean": 0.503,
              "mean_delta": 0.3978,
              "cohens_d": 1.2338,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.1704,
              "positive_median": 0.1603,
              "negative_mean": 0.2076,
              "mean_delta": -0.0372,
              "cohens_d": -0.2653,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.7933,
              "positive_median": 6.5991,
              "negative_mean": 3.9762,
              "mean_delta": 3.8171,
              "cohens_d": 0.3747,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 4
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 31,
                "bearish": 1
              },
              "negative_distribution": {
                "bearish": 989,
                "bullish": 1011
              },
              "positive_bullish_ratio": 0.9688,
              "negative_bullish_ratio": 0.5055,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.9008,
              "positive_median": 0.939,
              "negative_mean": 0.503,
              "mean_delta": 0.3978,
              "cohens_d": 1.2338,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 64.2645,
              "positive_median": 64.3164,
              "negative_mean": 50.3143,
              "mean_delta": 13.9502,
              "cohens_d": 1.2139,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.5479,
              "positive_median": 0.5049,
              "negative_mean": 0.0269,
              "mean_delta": 0.5209,
              "cohens_d": 0.7603,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "15분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.6306,
              "positive_median": 0.563,
              "negative_mean": 0.0445,
              "mean_delta": 0.5861,
              "cohens_d": 0.6993,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.0911,
              "positive_median": 0.0696,
              "negative_mean": 0.0078,
              "mean_delta": 0.0833,
              "cohens_d": 0.5906,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 62.8448,
              "positive_median": 64.24,
              "negative_mean": 50.4093,
              "mean_delta": 12.4356,
              "cohens_d": 1.1184,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 23868.1319,
              "positive_median": 20587.7909,
              "negative_mean": 772.9345,
              "mean_delta": 23095.1974,
              "cohens_d": 0.2946,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.8591,
              "positive_median": 0.8796,
              "negative_mean": 0.5044,
              "mean_delta": 0.3546,
              "cohens_d": 1.1162,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.2119,
              "positive_median": 0.1902,
              "negative_mean": 0.2621,
              "mean_delta": -0.0502,
              "cohens_d": -0.2946,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.7685,
              "positive_median": 6.6746,
              "negative_mean": 3.9739,
              "mean_delta": 3.7946,
              "cohens_d": 0.3723,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 4
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 32
              },
              "negative_distribution": {
                "bearish": 959,
                "bullish": 1041
              },
              "positive_bullish_ratio": 1.0,
              "negative_bullish_ratio": 0.5205,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 62.8448,
              "positive_median": 64.24,
              "negative_mean": 50.4093,
              "mean_delta": 12.4356,
              "cohens_d": 1.1184,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.8591,
              "positive_median": 0.8796,
              "negative_mean": 0.5044,
              "mean_delta": 0.3546,
              "cohens_d": 1.1162,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.6306,
              "positive_median": 0.563,
              "negative_mean": 0.0445,
              "mean_delta": 0.5861,
              "cohens_d": 0.6993,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "30분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.7548,
              "positive_median": 0.5711,
              "negative_mean": 0.0877,
              "mean_delta": 0.667,
              "cohens_d": 0.5482,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.105,
              "positive_median": 0.0723,
              "negative_mean": 0.0144,
              "mean_delta": 0.0905,
              "cohens_d": 0.4585,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 61.3375,
              "positive_median": 61.1435,
              "negative_mean": 50.7359,
              "mean_delta": 10.6016,
              "cohens_d": 0.9343,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 41983.122,
              "positive_median": 31346.3122,
              "negative_mean": -771.6768,
              "mean_delta": 42754.7988,
              "cohens_d": 0.3798,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.8462,
              "positive_median": 0.8948,
              "negative_mean": 0.5087,
              "mean_delta": 0.3375,
              "cohens_d": 1.0583,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.3175,
              "positive_median": 0.2993,
              "negative_mean": 0.3826,
              "mean_delta": -0.0651,
              "cohens_d": -0.2847,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.707,
              "positive_median": 6.5991,
              "negative_mean": 3.9624,
              "mean_delta": 3.7446,
              "cohens_d": 0.3666,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 4
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 30,
                "bearish": 2
              },
              "negative_distribution": {
                "bearish": 940,
                "bullish": 1060
              },
              "positive_bullish_ratio": 0.9375,
              "negative_bullish_ratio": 0.53,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.8462,
              "positive_median": 0.8948,
              "negative_mean": 0.5087,
              "mean_delta": 0.3375,
              "cohens_d": 1.0583,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 61.3375,
              "positive_median": 61.1435,
              "negative_mean": 50.7359,
              "mean_delta": 10.6016,
              "cohens_d": 0.9343,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.7548,
              "positive_median": 0.5711,
              "negative_mean": 0.0877,
              "mean_delta": 0.667,
              "cohens_d": 0.5482,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "60분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.9221,
              "positive_median": 0.5874,
              "negative_mean": 0.1723,
              "mean_delta": 0.7498,
              "cohens_d": 0.4412,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.1211,
              "positive_median": 0.0675,
              "negative_mean": 0.0288,
              "mean_delta": 0.0922,
              "cohens_d": 0.3287,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 59.8339,
              "positive_median": 57.165,
              "negative_mean": 51.0312,
              "mean_delta": 8.8026,
              "cohens_d": 0.7547,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 72385.4907,
              "positive_median": 52600.456,
              "negative_mean": 1466.0508,
              "mean_delta": 70919.4399,
              "cohens_d": 0.4277,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.8383,
              "positive_median": 0.8544,
              "negative_mean": 0.5165,
              "mean_delta": 0.3218,
              "cohens_d": 1.008,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.4731,
              "positive_median": 0.4172,
              "negative_mean": 0.5554,
              "mean_delta": -0.0824,
              "cohens_d": -0.2725,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.6355,
              "positive_median": 6.9433,
              "negative_mean": 3.985,
              "mean_delta": 3.6505,
              "cohens_d": 0.3572,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 4
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 31,
                "bearish": 1
              },
              "negative_distribution": {
                "bearish": 902,
                "bullish": 1098
              },
              "positive_bullish_ratio": 0.9688,
              "negative_bullish_ratio": 0.549,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.8383,
              "positive_median": 0.8544,
              "negative_mean": 0.5165,
              "mean_delta": 0.3218,
              "cohens_d": 1.008,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 59.8339,
              "positive_median": 57.165,
              "negative_mean": 51.0312,
              "mean_delta": 8.8026,
              "cohens_d": 0.7547,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.9221,
              "positive_median": 0.5874,
              "negative_mean": 0.1723,
              "mean_delta": 0.7498,
              "cohens_d": 0.4412,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "240분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.9559,
              "positive_median": 1.6517,
              "negative_mean": 0.6314,
              "mean_delta": 1.3245,
              "cohens_d": 0.3658,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.2698,
              "positive_median": 0.1541,
              "negative_mean": 0.1093,
              "mean_delta": 0.1605,
              "cohens_d": 0.2698,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 56.7083,
              "positive_median": 56.5962,
              "negative_mean": 52.0967,
              "mean_delta": 4.6116,
              "cohens_d": 0.3478,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 8878.4219,
              "positive_median": 19197.3859,
              "negative_mean": 13.7615,
              "mean_delta": 8864.6604,
              "cohens_d": 0.0297,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.6935,
              "positive_median": 0.6774,
              "negative_mean": 0.5272,
              "mean_delta": 0.1663,
              "cohens_d": 0.5057,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.0787,
              "positive_median": 1.0412,
              "negative_mean": 1.1489,
              "mean_delta": -0.0701,
              "cohens_d": -0.1413,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.0516,
              "positive_median": 6.9658,
              "negative_mean": 4.0063,
              "mean_delta": 3.0453,
              "cohens_d": 0.3045,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 27,
                "down": 5
              },
              "negative_distribution": {
                "up": 1242,
                "down": 758
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8438,
              "negative_up_ratio": 0.621
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 10,
                "bullish": 22
              },
              "negative_distribution": {
                "bullish": 1145,
                "bearish": 855
              },
              "positive_bullish_ratio": 0.6875,
              "negative_bullish_ratio": 0.5725,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.6935,
              "positive_median": 0.6774,
              "negative_mean": 0.5272,
              "mean_delta": 0.1663,
              "cohens_d": 0.5057,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.9559,
              "positive_median": 1.6517,
              "negative_mean": 0.6314,
              "mean_delta": 1.3245,
              "cohens_d": 0.3658,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 56.7083,
              "positive_median": 56.5962,
              "negative_mean": 52.0967,
              "mean_delta": 4.6116,
              "cohens_d": 0.3478,
              "feature": "rsi14"
            }
          ]
        },
        "일": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.5089,
              "positive_median": 7.2977,
              "negative_mean": 3.251,
              "mean_delta": 4.2579,
              "cohens_d": 0.4191,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.3071,
              "positive_median": 1.3506,
              "negative_mean": 0.5586,
              "mean_delta": 0.7486,
              "cohens_d": 0.4406,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 59.7557,
              "positive_median": 57.4751,
              "negative_mean": 53.5148,
              "mean_delta": 6.2409,
              "cohens_d": 0.43,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 171465.7749,
              "positive_median": 166700.1566,
              "negative_mean": 25033.4727,
              "mean_delta": 146432.3022,
              "cohens_d": 0.1874,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 0.6548,
              "positive_median": 0.7459,
              "negative_mean": 0.5545,
              "mean_delta": 0.1003,
              "cohens_d": 0.3025,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 2.9046,
              "positive_median": 2.8763,
              "negative_mean": 2.9161,
              "mean_delta": -0.0114,
              "cohens_d": -0.0134,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 4.3768,
              "positive_median": 6.0138,
              "negative_mean": 2.2354,
              "mean_delta": 2.1414,
              "cohens_d": 0.2836,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 24,
                "down": 8
              },
              "negative_distribution": {
                "up": 1169,
                "down": 831
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.75,
              "negative_up_ratio": 0.5845
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 8,
                "bullish": 24
              },
              "negative_distribution": {
                "bullish": 1255,
                "bearish": 745
              },
              "positive_bullish_ratio": 0.75,
              "negative_bullish_ratio": 0.6275,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1.3071,
              "positive_median": 1.3506,
              "negative_mean": 0.5586,
              "mean_delta": 0.7486,
              "cohens_d": 0.4406,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 59.7557,
              "positive_median": 57.4751,
              "negative_mean": 53.5148,
              "mean_delta": 6.2409,
              "cohens_d": 0.43,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.5089,
              "positive_median": 7.2977,
              "negative_mean": 3.251,
              "mean_delta": 4.2579,
              "cohens_d": 0.4191,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "주": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 31.6076,
              "positive_median": 29.7157,
              "negative_mean": 24.6975,
              "mean_delta": 6.9101,
              "cohens_d": 0.2562,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 4.9527,
              "positive_median": 4.4391,
              "negative_mean": 4.424,
              "mean_delta": 0.5287,
              "cohens_d": 0.1143,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 62.3886,
              "positive_median": 62.3399,
              "negative_mean": 58.0555,
              "mean_delta": 4.3331,
              "cohens_d": 0.2851,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 396548.3723,
              "positive_median": 92130.2555,
              "negative_mean": -218471.5992,
              "mean_delta": 615019.9715,
              "cohens_d": 0.2569,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 32,
              "negative_count": 1972,
              "positive_mean": 0.7057,
              "positive_median": 0.7958,
              "negative_mean": 0.5901,
              "mean_delta": 0.1156,
              "cohens_d": 0.3482,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 7.671,
              "positive_median": 7.5915,
              "negative_mean": 7.9176,
              "mean_delta": -0.2466,
              "cohens_d": -0.159,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 4.7357,
              "positive_median": 5.5113,
              "negative_mean": 2.4827,
              "mean_delta": 2.253,
              "cohens_d": 0.2383,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 18,
                "down": 14
              },
              "negative_distribution": {
                "down": 930,
                "up": 1070
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5625,
              "negative_up_ratio": 0.535
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 28,
                "bearish": 4
              },
              "negative_distribution": {
                "bullish": 1644,
                "bearish": 356
              },
              "positive_bullish_ratio": 0.875,
              "negative_bullish_ratio": 0.822,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 1972,
              "positive_mean": 0.7057,
              "positive_median": 0.7958,
              "negative_mean": 0.5901,
              "mean_delta": 0.1156,
              "cohens_d": 0.3482,
              "feature": "bb_position"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 62.3886,
              "positive_median": 62.3399,
              "negative_mean": 58.0555,
              "mean_delta": 4.3331,
              "cohens_d": 0.2851,
              "feature": "rsi14"
            },
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 396548.3723,
              "positive_median": 92130.2555,
              "negative_mean": -218471.5992,
              "mean_delta": 615019.9715,
              "cohens_d": 0.2569,
              "feature": "macd_hist"
            }
          ]
        },
        "월": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 70.4227,
              "positive_median": 87.1588,
              "negative_mean": 70.5741,
              "mean_delta": -0.1514,
              "cohens_d": -0.0034,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 32,
              "negative_count": 1868,
              "positive_mean": 11.6418,
              "positive_median": 14.6863,
              "negative_mean": 13.9134,
              "mean_delta": -2.2717,
              "cohens_d": -0.3114,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 20,
              "negative_count": 1358,
              "positive_mean": 68.6812,
              "positive_median": 72.0349,
              "negative_mean": 66.1336,
              "mean_delta": 2.5476,
              "cohens_d": 0.2347,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 1924832.2642,
              "positive_median": 2493052.6581,
              "negative_mean": 1734540.5118,
              "mean_delta": 190291.7524,
              "cohens_d": 0.048,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 14,
              "negative_count": 1085,
              "positive_mean": 0.7369,
              "positive_median": 0.8409,
              "negative_mean": 0.705,
              "mean_delta": 0.0319,
              "cohens_d": 0.121,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 21,
              "negative_count": 1415,
              "positive_mean": 15.6875,
              "positive_median": 14.68,
              "negative_mean": 15.9328,
              "mean_delta": -0.2453,
              "cohens_d": -0.0805,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 14.2953,
              "positive_median": 8.1739,
              "negative_mean": 5.6132,
              "mean_delta": 8.682,
              "cohens_d": 0.4343,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 20,
                "down": 12
              },
              "negative_distribution": {
                "up": 1011,
                "down": 989
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.625,
              "negative_up_ratio": 0.5055
            },
            "trend_bias": {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 3,
                "bullish": 29
              },
              "negative_distribution": {
                "bullish": 1856,
                "bearish": 144
              },
              "positive_bullish_ratio": 0.9062,
              "negative_bullish_ratio": 0.928,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 32,
              "negative_count": 2000,
              "positive_mean": 14.2953,
              "positive_median": 8.1739,
              "negative_mean": 5.6132,
              "mean_delta": 8.682,
              "cohens_d": 0.4343,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 32,
              "negative_count": 1868,
              "positive_mean": 11.6418,
              "positive_median": 14.6863,
              "negative_mean": 13.9134,
              "mean_delta": -2.2717,
              "cohens_d": -0.3114,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 20,
              "negative_count": 1358,
              "positive_mean": 68.6812,
              "positive_median": 72.0349,
              "negative_mean": 66.1336,
              "mean_delta": 2.5476,
              "cohens_d": 0.2347,
              "feature": "rsi14"
            }
          ]
        }
      }
    },
    "div_bear": {
      "label": "하락 다이버전스 (Sd)",
      "side": "sell",
      "sample_count": 55,
      "timeframes": {
        "1분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.2859,
              "positive_median": 0.2265,
              "negative_mean": -0.0009,
              "mean_delta": 0.2868,
              "cohens_d": 1.374,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.0509,
              "positive_median": 0.0406,
              "negative_mean": -0.0004,
              "mean_delta": 0.0512,
              "cohens_d": 1.4315,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 63.572,
              "positive_median": 64.0017,
              "negative_mean": 49.8635,
              "mean_delta": 13.7085,
              "cohens_d": 1.0545,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 12879.2041,
              "positive_median": 5572.8726,
              "negative_mean": -712.4614,
              "mean_delta": 13591.6655,
              "cohens_d": 0.6008,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.7398,
              "positive_median": 0.8132,
              "negative_mean": 0.4972,
              "mean_delta": 0.2426,
              "cohens_d": 0.7651,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.0708,
              "positive_median": 0.0586,
              "negative_mean": 0.0581,
              "mean_delta": 0.0127,
              "cohens_d": 0.2551,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.5815,
              "positive_median": 5.0119,
              "negative_mean": 3.9733,
              "mean_delta": -0.3918,
              "cohens_d": -0.0384,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 29,
                "down": 26
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5273,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 51,
                "bearish": 4
              },
              "negative_distribution": {
                "bearish": 1004,
                "bullish": 996
              },
              "positive_bullish_ratio": 0.9273,
              "negative_bullish_ratio": 0.498,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.0509,
              "positive_median": 0.0406,
              "negative_mean": -0.0004,
              "mean_delta": 0.0512,
              "cohens_d": 1.4315,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.2859,
              "positive_median": 0.2265,
              "negative_mean": -0.0009,
              "mean_delta": 0.2868,
              "cohens_d": 1.374,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 63.572,
              "positive_median": 64.0017,
              "negative_mean": 49.8635,
              "mean_delta": 13.7085,
              "cohens_d": 1.0545,
              "feature": "rsi14"
            }
          ]
        },
        "3분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.5507,
              "positive_median": 0.4022,
              "negative_mean": 0.0067,
              "mean_delta": 0.544,
              "cohens_d": 1.4984,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.0845,
              "positive_median": 0.0605,
              "negative_mean": 0.0015,
              "mean_delta": 0.083,
              "cohens_d": 1.3326,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 66.0145,
              "positive_median": 67.9577,
              "negative_mean": 50.0044,
              "mean_delta": 16.0102,
              "cohens_d": 1.328,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 25444.9114,
              "positive_median": 23064.6068,
              "negative_mean": -1253.6888,
              "mean_delta": 26698.6002,
              "cohens_d": 0.6884,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8845,
              "positive_median": 0.908,
              "negative_mean": 0.4955,
              "mean_delta": 0.389,
              "cohens_d": 1.2328,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.1289,
              "positive_median": 0.1102,
              "negative_mean": 0.1063,
              "mean_delta": 0.0226,
              "cohens_d": 0.2737,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.5815,
              "positive_median": 5.0119,
              "negative_mean": 3.9733,
              "mean_delta": -0.3918,
              "cohens_d": -0.0384,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 29,
                "down": 26
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5273,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 53,
                "bearish": 2
              },
              "negative_distribution": {
                "bearish": 968,
                "bullish": 1032
              },
              "positive_bullish_ratio": 0.9636,
              "negative_bullish_ratio": 0.516,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.5507,
              "positive_median": 0.4022,
              "negative_mean": 0.0067,
              "mean_delta": 0.544,
              "cohens_d": 1.4984,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.0845,
              "positive_median": 0.0605,
              "negative_mean": 0.0015,
              "mean_delta": 0.083,
              "cohens_d": 1.3326,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 66.0145,
              "positive_median": 67.9577,
              "negative_mean": 50.0044,
              "mean_delta": 16.0102,
              "cohens_d": 1.328,
              "feature": "rsi14"
            }
          ]
        },
        "5분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.7174,
              "positive_median": 0.6143,
              "negative_mean": 0.0103,
              "mean_delta": 0.7071,
              "cohens_d": 1.4787,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.1022,
              "positive_median": 0.0794,
              "negative_mean": 0.0029,
              "mean_delta": 0.0993,
              "cohens_d": 1.2255,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 68.2053,
              "positive_median": 67.6373,
              "negative_mean": 49.9748,
              "mean_delta": 18.2304,
              "cohens_d": 1.5517,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 29538.738,
              "positive_median": 20017.1624,
              "negative_mean": -891.0456,
              "mean_delta": 30429.7836,
              "cohens_d": 0.6054,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.9437,
              "positive_median": 0.9476,
              "negative_mean": 0.4933,
              "mean_delta": 0.4503,
              "cohens_d": 1.4026,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.1644,
              "positive_median": 0.1419,
              "negative_mean": 0.1412,
              "mean_delta": 0.0232,
              "cohens_d": 0.2254,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.5634,
              "positive_median": 5.0237,
              "negative_mean": 3.9679,
              "mean_delta": -0.4045,
              "cohens_d": -0.0396,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 29,
                "down": 26
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5273,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 53,
                "bearish": 2
              },
              "negative_distribution": {
                "bearish": 978,
                "bullish": 1022
              },
              "positive_bullish_ratio": 0.9636,
              "negative_bullish_ratio": 0.511,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 68.2053,
              "positive_median": 67.6373,
              "negative_mean": 49.9748,
              "mean_delta": 18.2304,
              "cohens_d": 1.5517,
              "feature": "rsi14"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.7174,
              "positive_median": 0.6143,
              "negative_mean": 0.0103,
              "mean_delta": 0.7071,
              "cohens_d": 1.4787,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.9437,
              "positive_median": 0.9476,
              "negative_mean": 0.4933,
              "mean_delta": 0.4503,
              "cohens_d": 1.4026,
              "feature": "bb_position"
            }
          ]
        },
        "10분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.9131,
              "positive_median": 0.7458,
              "negative_mean": 0.0269,
              "mean_delta": 0.8862,
              "cohens_d": 1.2814,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.1283,
              "positive_median": 0.0981,
              "negative_mean": 0.0052,
              "mean_delta": 0.1232,
              "cohens_d": 1.0631,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 66.8792,
              "positive_median": 64.9557,
              "negative_mean": 50.3143,
              "mean_delta": 16.5649,
              "cohens_d": 1.4392,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 46653.5034,
              "positive_median": 27272.5988,
              "negative_mean": 408.4106,
              "mean_delta": 46245.0928,
              "cohens_d": 0.7013,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8923,
              "positive_median": 0.9012,
              "negative_mean": 0.503,
              "mean_delta": 0.3894,
              "cohens_d": 1.2128,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.2328,
              "positive_median": 0.2173,
              "negative_mean": 0.2076,
              "mean_delta": 0.0252,
              "cohens_d": 0.1793,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.4977,
              "positive_median": 5.0237,
              "negative_mean": 3.9762,
              "mean_delta": -0.4785,
              "cohens_d": -0.0469,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 29,
                "down": 26
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5273,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 53,
                "bearish": 2
              },
              "negative_distribution": {
                "bearish": 989,
                "bullish": 1011
              },
              "positive_bullish_ratio": 0.9636,
              "negative_bullish_ratio": 0.5055,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 66.8792,
              "positive_median": 64.9557,
              "negative_mean": 50.3143,
              "mean_delta": 16.5649,
              "cohens_d": 1.4392,
              "feature": "rsi14"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.9131,
              "positive_median": 0.7458,
              "negative_mean": 0.0269,
              "mean_delta": 0.8862,
              "cohens_d": 1.2814,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8923,
              "positive_median": 0.9012,
              "negative_mean": 0.503,
              "mean_delta": 0.3894,
              "cohens_d": 1.2128,
              "feature": "bb_position"
            }
          ]
        },
        "15분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 1.0357,
              "positive_median": 0.8884,
              "negative_mean": 0.0445,
              "mean_delta": 0.9912,
              "cohens_d": 1.1741,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.1402,
              "positive_median": 0.0944,
              "negative_mean": 0.0078,
              "mean_delta": 0.1324,
              "cohens_d": 0.9333,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 66.3079,
              "positive_median": 64.8675,
              "negative_mean": 50.4093,
              "mean_delta": 15.8987,
              "cohens_d": 1.4249,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 63994.959,
              "positive_median": 23031.0548,
              "negative_mean": 772.9345,
              "mean_delta": 63222.0245,
              "cohens_d": 0.789,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8839,
              "positive_median": 0.8977,
              "negative_mean": 0.5044,
              "mean_delta": 0.3794,
              "cohens_d": 1.1969,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.2845,
              "positive_median": 0.2696,
              "negative_mean": 0.2621,
              "mean_delta": 0.0224,
              "cohens_d": 0.1316,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.4709,
              "positive_median": 4.9374,
              "negative_mean": 3.9739,
              "mean_delta": -0.503,
              "cohens_d": -0.0492,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 29,
                "down": 26
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5273,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 53,
                "bearish": 2
              },
              "negative_distribution": {
                "bearish": 959,
                "bullish": 1041
              },
              "positive_bullish_ratio": 0.9636,
              "negative_bullish_ratio": 0.5205,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 66.3079,
              "positive_median": 64.8675,
              "negative_mean": 50.4093,
              "mean_delta": 15.8987,
              "cohens_d": 1.4249,
              "feature": "rsi14"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8839,
              "positive_median": 0.8977,
              "negative_mean": 0.5044,
              "mean_delta": 0.3794,
              "cohens_d": 1.1969,
              "feature": "bb_position"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 1.0357,
              "positive_median": 0.8884,
              "negative_mean": 0.0445,
              "mean_delta": 0.9912,
              "cohens_d": 1.1741,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "30분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 1.1678,
              "positive_median": 0.8092,
              "negative_mean": 0.0877,
              "mean_delta": 1.08,
              "cohens_d": 0.8844,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.1476,
              "positive_median": 0.0981,
              "negative_mean": 0.0144,
              "mean_delta": 0.1332,
              "cohens_d": 0.6728,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 64.9626,
              "positive_median": 65.0036,
              "negative_mean": 50.7359,
              "mean_delta": 14.2267,
              "cohens_d": 1.2497,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 92967.7389,
              "positive_median": 39489.8288,
              "negative_mean": -771.6768,
              "mean_delta": 93739.4157,
              "cohens_d": 0.8182,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8913,
              "positive_median": 0.893,
              "negative_mean": 0.5087,
              "mean_delta": 0.3826,
              "cohens_d": 1.1992,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.3922,
              "positive_median": 0.3608,
              "negative_mean": 0.3826,
              "mean_delta": 0.0096,
              "cohens_d": 0.0419,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.283,
              "positive_median": 4.4687,
              "negative_mean": 3.9624,
              "mean_delta": -0.6794,
              "cohens_d": -0.0664,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 27
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5091,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 52,
                "bearish": 3
              },
              "negative_distribution": {
                "bearish": 940,
                "bullish": 1060
              },
              "positive_bullish_ratio": 0.9455,
              "negative_bullish_ratio": 0.53,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 64.9626,
              "positive_median": 65.0036,
              "negative_mean": 50.7359,
              "mean_delta": 14.2267,
              "cohens_d": 1.2497,
              "feature": "rsi14"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8913,
              "positive_median": 0.893,
              "negative_mean": 0.5087,
              "mean_delta": 0.3826,
              "cohens_d": 1.1992,
              "feature": "bb_position"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 1.1678,
              "positive_median": 0.8092,
              "negative_mean": 0.0877,
              "mean_delta": 1.08,
              "cohens_d": 0.8844,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "60분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 1.1866,
              "positive_median": 0.8874,
              "negative_mean": 0.1723,
              "mean_delta": 1.0143,
              "cohens_d": 0.5952,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.1216,
              "positive_median": 0.0928,
              "negative_mean": 0.0288,
              "mean_delta": 0.0928,
              "cohens_d": 0.3304,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 63.0787,
              "positive_median": 62.7145,
              "negative_mean": 51.0312,
              "mean_delta": 12.0474,
              "cohens_d": 1.0317,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 122496.8639,
              "positive_median": 81387.9571,
              "negative_mean": 1466.0508,
              "mean_delta": 121030.8131,
              "cohens_d": 0.7272,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8998,
              "positive_median": 0.8846,
              "negative_mean": 0.5165,
              "mean_delta": 0.3833,
              "cohens_d": 1.1967,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.5501,
              "positive_median": 0.5289,
              "negative_mean": 0.5554,
              "mean_delta": -0.0053,
              "cohens_d": -0.0176,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.197,
              "positive_median": 4.4597,
              "negative_mean": 3.985,
              "mean_delta": -0.788,
              "cohens_d": -0.0769,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 28,
                "down": 27
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5091,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 48,
                "bearish": 7
              },
              "negative_distribution": {
                "bearish": 902,
                "bullish": 1098
              },
              "positive_bullish_ratio": 0.8727,
              "negative_bullish_ratio": 0.549,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8998,
              "positive_median": 0.8846,
              "negative_mean": 0.5165,
              "mean_delta": 0.3833,
              "cohens_d": 1.1967,
              "feature": "bb_position"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 63.0787,
              "positive_median": 62.7145,
              "negative_mean": 51.0312,
              "mean_delta": 12.0474,
              "cohens_d": 1.0317,
              "feature": "rsi14"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 122496.8639,
              "positive_median": 81387.9571,
              "negative_mean": 1466.0508,
              "mean_delta": 121030.8131,
              "cohens_d": 0.7272,
              "feature": "macd_hist"
            }
          ]
        },
        "240분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.9925,
              "positive_median": 0.6629,
              "negative_mean": 0.6314,
              "mean_delta": 0.361,
              "cohens_d": 0.0999,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.0729,
              "positive_median": 0.0024,
              "negative_mean": 0.1093,
              "mean_delta": -0.0364,
              "cohens_d": -0.0614,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 55.8964,
              "positive_median": 55.9103,
              "negative_mean": 52.0967,
              "mean_delta": 3.7997,
              "cohens_d": 0.2868,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 64949.8796,
              "positive_median": 35699.7841,
              "negative_mean": 13.7615,
              "mean_delta": 64936.1181,
              "cohens_d": 0.217,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.7164,
              "positive_median": 0.7188,
              "negative_mean": 0.5272,
              "mean_delta": 0.1892,
              "cohens_d": 0.5736,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 1.1544,
              "positive_median": 1.1248,
              "negative_mean": 1.1489,
              "mean_delta": 0.0055,
              "cohens_d": 0.0111,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 2.3097,
              "positive_median": -0.2815,
              "negative_mean": 4.0063,
              "mean_delta": -1.6966,
              "cohens_d": -0.1693,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 27,
                "down": 28
              },
              "negative_distribution": {
                "up": 1242,
                "down": 758
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4909,
              "negative_up_ratio": 0.621
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 34,
                "bearish": 21
              },
              "negative_distribution": {
                "bullish": 1145,
                "bearish": 855
              },
              "positive_bullish_ratio": 0.6182,
              "negative_bullish_ratio": 0.5725,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.7164,
              "positive_median": 0.7188,
              "negative_mean": 0.5272,
              "mean_delta": 0.1892,
              "cohens_d": 0.5736,
              "feature": "bb_position"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 55.8964,
              "positive_median": 55.9103,
              "negative_mean": 52.0967,
              "mean_delta": 3.7997,
              "cohens_d": 0.2868,
              "feature": "rsi14"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 64949.8796,
              "positive_median": 35699.7841,
              "negative_mean": 13.7615,
              "mean_delta": 64936.1181,
              "cohens_d": 0.217,
              "feature": "macd_hist"
            }
          ]
        },
        "일": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.3164,
              "positive_median": 2.2995,
              "negative_mean": 3.251,
              "mean_delta": 0.0654,
              "cohens_d": 0.0065,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.5857,
              "positive_median": 0.47,
              "negative_mean": 0.5586,
              "mean_delta": 0.0272,
              "cohens_d": 0.016,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 53.2529,
              "positive_median": 51.6807,
              "negative_mean": 53.5148,
              "mean_delta": -0.2619,
              "cohens_d": -0.0181,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": -68086.7518,
              "positive_median": -192382.3018,
              "negative_mean": 25033.4727,
              "mean_delta": -93120.2245,
              "cohens_d": -0.1195,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.5407,
              "positive_median": 0.4842,
              "negative_mean": 0.5545,
              "mean_delta": -0.0138,
              "cohens_d": -0.0416,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.0524,
              "positive_median": 2.7972,
              "negative_mean": 2.9161,
              "mean_delta": 0.1363,
              "cohens_d": 0.159,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8225,
              "positive_median": -1.9746,
              "negative_mean": 2.2354,
              "mean_delta": -1.4129,
              "cohens_d": -0.1866,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 25,
                "down": 30
              },
              "negative_distribution": {
                "up": 1169,
                "down": 831
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4545,
              "negative_up_ratio": 0.5845
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 35,
                "bearish": 20
              },
              "negative_distribution": {
                "bullish": 1255,
                "bearish": 745
              },
              "positive_bullish_ratio": 0.6364,
              "negative_bullish_ratio": 0.6275,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 0.8225,
              "positive_median": -1.9746,
              "negative_mean": 2.2354,
              "mean_delta": -1.4129,
              "cohens_d": -0.1866,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 3.0524,
              "positive_median": 2.7972,
              "negative_mean": 2.9161,
              "mean_delta": 0.1363,
              "cohens_d": 0.159,
              "feature": "atr_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": -68086.7518,
              "positive_median": -192382.3018,
              "negative_mean": 25033.4727,
              "mean_delta": -93120.2245,
              "cohens_d": -0.1195,
              "feature": "macd_hist"
            }
          ]
        },
        "주": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 27.8504,
              "positive_median": 24.1117,
              "negative_mean": 24.6975,
              "mean_delta": 3.1529,
              "cohens_d": 0.117,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 5.3035,
              "positive_median": 4.9909,
              "negative_mean": 4.424,
              "mean_delta": 0.8795,
              "cohens_d": 0.1898,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 59.2445,
              "positive_median": 59.4986,
              "negative_mean": 58.0555,
              "mean_delta": 1.189,
              "cohens_d": 0.0783,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 81698.5826,
              "positive_median": 214151.6059,
              "negative_mean": -218471.5992,
              "mean_delta": 300170.1818,
              "cohens_d": 0.1255,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 54,
              "negative_count": 1972,
              "positive_mean": 0.6,
              "positive_median": 0.6939,
              "negative_mean": 0.5901,
              "mean_delta": 0.0099,
              "cohens_d": 0.0298,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 7.9735,
              "positive_median": 7.829,
              "negative_mean": 7.9176,
              "mean_delta": 0.0559,
              "cohens_d": 0.036,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 2.622,
              "positive_median": 2.027,
              "negative_mean": 2.4827,
              "mean_delta": 0.1393,
              "cohens_d": 0.0148,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 30,
                "down": 25
              },
              "negative_distribution": {
                "down": 930,
                "up": 1070
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5455,
              "negative_up_ratio": 0.535
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 48,
                "bearish": 7
              },
              "negative_distribution": {
                "bullish": 1644,
                "bearish": 356
              },
              "positive_bullish_ratio": 0.8727,
              "negative_bullish_ratio": 0.822,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 5.3035,
              "positive_median": 4.9909,
              "negative_mean": 4.424,
              "mean_delta": 0.8795,
              "cohens_d": 0.1898,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 81698.5826,
              "positive_median": 214151.6059,
              "negative_mean": -218471.5992,
              "mean_delta": 300170.1818,
              "cohens_d": 0.1255,
              "feature": "macd_hist"
            },
            {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 27.8504,
              "positive_median": 24.1117,
              "negative_mean": 24.6975,
              "mean_delta": 3.1529,
              "cohens_d": 0.117,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "월": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 77.4031,
              "positive_median": 88.9964,
              "negative_mean": 70.5741,
              "mean_delta": 6.8289,
              "cohens_d": 0.1517,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 51,
              "negative_count": 1868,
              "positive_mean": 14.7286,
              "positive_median": 16.0445,
              "negative_mean": 13.9134,
              "mean_delta": 0.8151,
              "cohens_d": 0.1119,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 38,
              "negative_count": 1358,
              "positive_mean": 68.5115,
              "positive_median": 72.0349,
              "negative_mean": 66.1336,
              "mean_delta": 2.3778,
              "cohens_d": 0.2195,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 2371814.4671,
              "positive_median": 3306758.9378,
              "negative_mean": 1734540.5118,
              "mean_delta": 637273.9553,
              "cohens_d": 0.1606,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 29,
              "negative_count": 1085,
              "positive_mean": 0.755,
              "positive_median": 0.8409,
              "negative_mean": 0.705,
              "mean_delta": 0.05,
              "cohens_d": 0.1905,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 39,
              "negative_count": 1415,
              "positive_mean": 15.3413,
              "positive_median": 14.7081,
              "negative_mean": 15.9328,
              "mean_delta": -0.5915,
              "cohens_d": -0.1952,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_mean": 6.7586,
              "positive_median": -1.5044,
              "negative_mean": 5.6132,
              "mean_delta": 1.1454,
              "cohens_d": 0.0576,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 28,
                "up": 27
              },
              "negative_distribution": {
                "up": 1011,
                "down": 989
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4909,
              "negative_up_ratio": 0.5055
            },
            "trend_bias": {
              "positive_count": 55,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 4,
                "bullish": 51
              },
              "negative_distribution": {
                "bullish": 1856,
                "bearish": 144
              },
              "positive_bullish_ratio": 0.9273,
              "negative_bullish_ratio": 0.928,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 38,
              "negative_count": 1358,
              "positive_mean": 68.5115,
              "positive_median": 72.0349,
              "negative_mean": 66.1336,
              "mean_delta": 2.3778,
              "cohens_d": 0.2195,
              "feature": "rsi14"
            },
            {
              "positive_count": 39,
              "negative_count": 1415,
              "positive_mean": 15.3413,
              "positive_median": 14.7081,
              "negative_mean": 15.9328,
              "mean_delta": -0.5915,
              "cohens_d": -0.1952,
              "feature": "atr_pct"
            },
            {
              "positive_count": 29,
              "negative_count": 1085,
              "positive_mean": 0.755,
              "positive_median": 0.8409,
              "negative_mean": 0.705,
              "mean_delta": 0.05,
              "cohens_d": 0.1905,
              "feature": "bb_position"
            }
          ]
        }
      }
    },
    "div_bull": {
      "label": "상승 다이버전스 (Bd)",
      "side": "buy",
      "sample_count": 41,
      "timeframes": {
        "1분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.3047,
              "positive_median": -0.2188,
              "negative_mean": -0.0009,
              "mean_delta": -0.3038,
              "cohens_d": -1.4462,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.0601,
              "positive_median": -0.0405,
              "negative_mean": -0.0004,
              "mean_delta": -0.0598,
              "cohens_d": -1.6499,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 40.61,
              "positive_median": 41.6568,
              "negative_mean": 49.8635,
              "mean_delta": -9.2536,
              "cohens_d": -0.712,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -10235.1455,
              "positive_median": -4498.306,
              "negative_mean": -712.4614,
              "mean_delta": -9522.6841,
              "cohens_d": -0.4214,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.3483,
              "positive_median": 0.3003,
              "negative_mean": 0.4972,
              "mean_delta": -0.149,
              "cohens_d": -0.4702,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.09,
              "positive_median": 0.0788,
              "negative_mean": 0.0581,
              "mean_delta": 0.0319,
              "cohens_d": 0.6379,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.8364,
              "positive_median": 1.2333,
              "negative_mean": 3.9733,
              "mean_delta": -3.1369,
              "cohens_d": -0.3076,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 22,
                "down": 19
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5366,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 41
              },
              "negative_distribution": {
                "bearish": 1004,
                "bullish": 996
              },
              "positive_bullish_ratio": 0.0,
              "negative_bullish_ratio": 0.498,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.0601,
              "positive_median": -0.0405,
              "negative_mean": -0.0004,
              "mean_delta": -0.0598,
              "cohens_d": -1.6499,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.3047,
              "positive_median": -0.2188,
              "negative_mean": -0.0009,
              "mean_delta": -0.3038,
              "cohens_d": -1.4462,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 40.61,
              "positive_median": 41.6568,
              "negative_mean": 49.8635,
              "mean_delta": -9.2536,
              "cohens_d": -0.712,
              "feature": "rsi14"
            }
          ]
        },
        "3분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.59,
              "positive_median": -0.4432,
              "negative_mean": 0.0067,
              "mean_delta": -0.5967,
              "cohens_d": -1.638,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.0954,
              "positive_median": -0.0695,
              "negative_mean": 0.0015,
              "mean_delta": -0.0969,
              "cohens_d": -1.5515,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 35.9498,
              "positive_median": 35.009,
              "negative_mean": 50.0044,
              "mean_delta": -14.0546,
              "cohens_d": -1.1648,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -28256.9268,
              "positive_median": -13300.5349,
              "negative_mean": -1253.6888,
              "mean_delta": -27003.238,
              "cohens_d": -0.6939,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.173,
              "positive_median": 0.15,
              "negative_mean": 0.4955,
              "mean_delta": -0.3224,
              "cohens_d": -1.0197,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1565,
              "positive_median": 0.1347,
              "negative_mean": 0.1063,
              "mean_delta": 0.0503,
              "cohens_d": 0.6051,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.8364,
              "positive_median": 1.2333,
              "negative_mean": 3.9733,
              "mean_delta": -3.1369,
              "cohens_d": -0.3076,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 22,
                "down": 19
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5366,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 41
              },
              "negative_distribution": {
                "bearish": 968,
                "bullish": 1032
              },
              "positive_bullish_ratio": 0.0,
              "negative_bullish_ratio": 0.516,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.59,
              "positive_median": -0.4432,
              "negative_mean": 0.0067,
              "mean_delta": -0.5967,
              "cohens_d": -1.638,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.0954,
              "positive_median": -0.0695,
              "negative_mean": 0.0015,
              "mean_delta": -0.0969,
              "cohens_d": -1.5515,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 35.9498,
              "positive_median": 35.009,
              "negative_mean": 50.0044,
              "mean_delta": -14.0546,
              "cohens_d": -1.1648,
              "feature": "rsi14"
            }
          ]
        },
        "5분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.7718,
              "positive_median": -0.5924,
              "negative_mean": 0.0103,
              "mean_delta": -0.7821,
              "cohens_d": -1.6297,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.1074,
              "positive_median": -0.0858,
              "negative_mean": 0.0029,
              "mean_delta": -0.1103,
              "cohens_d": -1.3641,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 31.757,
              "positive_median": 30.9245,
              "negative_mean": 49.9748,
              "mean_delta": -18.2179,
              "cohens_d": -1.5463,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -43678.2212,
              "positive_median": -29014.004,
              "negative_mean": -891.0456,
              "mean_delta": -42787.1756,
              "cohens_d": -0.8449,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.0795,
              "positive_median": 0.0553,
              "negative_mean": 0.4933,
              "mean_delta": -0.4139,
              "cohens_d": -1.2873,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1985,
              "positive_median": 0.1728,
              "negative_mean": 0.1412,
              "mean_delta": 0.0573,
              "cohens_d": 0.5523,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.8069,
              "positive_median": 1.6009,
              "negative_mean": 3.9679,
              "mean_delta": -3.161,
              "cohens_d": -0.3098,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 22,
                "down": 19
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5366,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 37,
                "bullish": 4
              },
              "negative_distribution": {
                "bearish": 978,
                "bullish": 1022
              },
              "positive_bullish_ratio": 0.0976,
              "negative_bullish_ratio": 0.511,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.7718,
              "positive_median": -0.5924,
              "negative_mean": 0.0103,
              "mean_delta": -0.7821,
              "cohens_d": -1.6297,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 31.757,
              "positive_median": 30.9245,
              "negative_mean": 49.9748,
              "mean_delta": -18.2179,
              "cohens_d": -1.5463,
              "feature": "rsi14"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.1074,
              "positive_median": -0.0858,
              "negative_mean": 0.0029,
              "mean_delta": -0.1103,
              "cohens_d": -1.3641,
              "feature": "ema60_slope_5_pct"
            }
          ]
        },
        "10분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.9303,
              "positive_median": -0.7933,
              "negative_mean": 0.0269,
              "mean_delta": -0.9573,
              "cohens_d": -1.3855,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.1237,
              "positive_median": -0.1097,
              "negative_mean": 0.0052,
              "mean_delta": -0.1288,
              "cohens_d": -1.1144,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 32.6749,
              "positive_median": 32.1818,
              "negative_mean": 50.3143,
              "mean_delta": -17.6394,
              "cohens_d": -1.5292,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -66923.8186,
              "positive_median": -30029.1743,
              "negative_mean": 408.4106,
              "mean_delta": -67332.2292,
              "cohens_d": -1.0196,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1072,
              "positive_median": 0.054,
              "negative_mean": 0.503,
              "mean_delta": -0.3958,
              "cohens_d": -1.2304,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.2694,
              "positive_median": 0.2239,
              "negative_mean": 0.2076,
              "mean_delta": 0.0618,
              "cohens_d": 0.4378,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.8549,
              "positive_median": 1.706,
              "negative_mean": 3.9762,
              "mean_delta": -3.1213,
              "cohens_d": -0.3061,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 22,
                "down": 19
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5366,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 37,
                "bullish": 4
              },
              "negative_distribution": {
                "bearish": 989,
                "bullish": 1011
              },
              "positive_bullish_ratio": 0.0976,
              "negative_bullish_ratio": 0.5055,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 32.6749,
              "positive_median": 32.1818,
              "negative_mean": 50.3143,
              "mean_delta": -17.6394,
              "cohens_d": -1.5292,
              "feature": "rsi14"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.9303,
              "positive_median": -0.7933,
              "negative_mean": 0.0269,
              "mean_delta": -0.9573,
              "cohens_d": -1.3855,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1072,
              "positive_median": 0.054,
              "negative_mean": 0.503,
              "mean_delta": -0.3958,
              "cohens_d": -1.2304,
              "feature": "bb_position"
            }
          ]
        },
        "15분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -1.023,
              "positive_median": -0.9469,
              "negative_mean": 0.0445,
              "mean_delta": -1.0675,
              "cohens_d": -1.2671,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.1291,
              "positive_median": -0.1299,
              "negative_mean": 0.0078,
              "mean_delta": -0.1369,
              "cohens_d": -0.967,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 32.6455,
              "positive_median": 33.2426,
              "negative_mean": 50.4093,
              "mean_delta": -17.7637,
              "cohens_d": -1.5867,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -72732.7803,
              "positive_median": -34445.7889,
              "negative_mean": 772.9345,
              "mean_delta": -73505.7148,
              "cohens_d": -0.9251,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1087,
              "positive_median": 0.0646,
              "negative_mean": 0.5044,
              "mean_delta": -0.3957,
              "cohens_d": -1.2449,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.3192,
              "positive_median": 0.262,
              "negative_mean": 0.2621,
              "mean_delta": 0.0571,
              "cohens_d": 0.3337,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.8972,
              "positive_median": 1.6009,
              "negative_mean": 3.9739,
              "mean_delta": -3.0767,
              "cohens_d": -0.3017,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 22,
                "down": 19
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5366,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 37,
                "bullish": 4
              },
              "negative_distribution": {
                "bearish": 959,
                "bullish": 1041
              },
              "positive_bullish_ratio": 0.0976,
              "negative_bullish_ratio": 0.5205,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 32.6455,
              "positive_median": 33.2426,
              "negative_mean": 50.4093,
              "mean_delta": -17.7637,
              "cohens_d": -1.5867,
              "feature": "rsi14"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -1.023,
              "positive_median": -0.9469,
              "negative_mean": 0.0445,
              "mean_delta": -1.0675,
              "cohens_d": -1.2671,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1087,
              "positive_median": 0.0646,
              "negative_mean": 0.5044,
              "mean_delta": -0.3957,
              "cohens_d": -1.2449,
              "feature": "bb_position"
            }
          ]
        },
        "30분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -1.153,
              "positive_median": -1.231,
              "negative_mean": 0.0877,
              "mean_delta": -1.2407,
              "cohens_d": -1.0181,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.1305,
              "positive_median": -0.1116,
              "negative_mean": 0.0144,
              "mean_delta": -0.1449,
              "cohens_d": -0.7342,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 34.4251,
              "positive_median": 35.2495,
              "negative_mean": 50.7359,
              "mean_delta": -16.3108,
              "cohens_d": -1.4306,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -72670.9149,
              "positive_median": -68011.4429,
              "negative_mean": -771.6768,
              "mean_delta": -71899.2382,
              "cohens_d": -0.6343,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1045,
              "positive_median": 0.0635,
              "negative_mean": 0.5087,
              "mean_delta": -0.4042,
              "cohens_d": -1.2634,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.4237,
              "positive_median": 0.4066,
              "negative_mean": 0.3826,
              "mean_delta": 0.0411,
              "cohens_d": 0.1792,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.9812,
              "positive_median": 1.9883,
              "negative_mean": 3.9624,
              "mean_delta": -2.9812,
              "cohens_d": -0.2917,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 22,
                "down": 19
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5366,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 37,
                "bullish": 4
              },
              "negative_distribution": {
                "bearish": 940,
                "bullish": 1060
              },
              "positive_bullish_ratio": 0.0976,
              "negative_bullish_ratio": 0.53,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 34.4251,
              "positive_median": 35.2495,
              "negative_mean": 50.7359,
              "mean_delta": -16.3108,
              "cohens_d": -1.4306,
              "feature": "rsi14"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1045,
              "positive_median": 0.0635,
              "negative_mean": 0.5087,
              "mean_delta": -0.4042,
              "cohens_d": -1.2634,
              "feature": "bb_position"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -1.153,
              "positive_median": -1.231,
              "negative_mean": 0.0877,
              "mean_delta": -1.2407,
              "cohens_d": -1.0181,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "60분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -1.0952,
              "positive_median": -1.0653,
              "negative_mean": 0.1723,
              "mean_delta": -1.2675,
              "cohens_d": -0.7459,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.1148,
              "positive_median": -0.1112,
              "negative_mean": 0.0288,
              "mean_delta": -0.1436,
              "cohens_d": -0.5129,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 37.1629,
              "positive_median": 35.8409,
              "negative_mean": 51.0312,
              "mean_delta": -13.8683,
              "cohens_d": -1.1835,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -90811.0594,
              "positive_median": -99457.446,
              "negative_mean": 1466.0508,
              "mean_delta": -92277.1102,
              "cohens_d": -0.5555,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1164,
              "positive_median": 0.0719,
              "negative_mean": 0.5165,
              "mean_delta": -0.4001,
              "cohens_d": -1.2453,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.5589,
              "positive_median": 0.5458,
              "negative_mean": 0.5554,
              "mean_delta": 0.0035,
              "cohens_d": 0.0114,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 1.1773,
              "positive_median": 1.628,
              "negative_mean": 3.985,
              "mean_delta": -2.8077,
              "cohens_d": -0.2745,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 22,
                "down": 19
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5366,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 36,
                "bullish": 5
              },
              "negative_distribution": {
                "bearish": 902,
                "bullish": 1098
              },
              "positive_bullish_ratio": 0.122,
              "negative_bullish_ratio": 0.549,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.1164,
              "positive_median": 0.0719,
              "negative_mean": 0.5165,
              "mean_delta": -0.4001,
              "cohens_d": -1.2453,
              "feature": "bb_position"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 37.1629,
              "positive_median": 35.8409,
              "negative_mean": 51.0312,
              "mean_delta": -13.8683,
              "cohens_d": -1.1835,
              "feature": "rsi14"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -1.0952,
              "positive_median": -1.0653,
              "negative_mean": 0.1723,
              "mean_delta": -1.2675,
              "cohens_d": -0.7459,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "240분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.5537,
              "positive_median": -0.301,
              "negative_mean": 0.6314,
              "mean_delta": -1.1851,
              "cohens_d": -0.3292,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.0011,
              "positive_median": 0.0432,
              "negative_mean": 0.1093,
              "mean_delta": -0.1104,
              "cohens_d": -0.1867,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 44.84,
              "positive_median": 45.5083,
              "negative_mean": 52.0967,
              "mean_delta": -7.2567,
              "cohens_d": -0.5488,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -97231.7328,
              "positive_median": -73779.6851,
              "negative_mean": 13.7615,
              "mean_delta": -97245.4943,
              "cohens_d": -0.3247,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.2951,
              "positive_median": 0.2799,
              "negative_mean": 0.5272,
              "mean_delta": -0.2321,
              "cohens_d": -0.7052,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 1.1374,
              "positive_median": 1.0497,
              "negative_mean": 1.1489,
              "mean_delta": -0.0115,
              "cohens_d": -0.0232,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 1.9729,
              "positive_median": 3.1516,
              "negative_mean": 4.0063,
              "mean_delta": -2.0335,
              "cohens_d": -0.2032,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 24,
                "down": 17
              },
              "negative_distribution": {
                "up": 1242,
                "down": 758
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5854,
              "negative_up_ratio": 0.621
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 18,
                "bearish": 23
              },
              "negative_distribution": {
                "bullish": 1145,
                "bearish": 855
              },
              "positive_bullish_ratio": 0.439,
              "negative_bullish_ratio": 0.5725,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.2951,
              "positive_median": 0.2799,
              "negative_mean": 0.5272,
              "mean_delta": -0.2321,
              "cohens_d": -0.7052,
              "feature": "bb_position"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 44.84,
              "positive_median": 45.5083,
              "negative_mean": 52.0967,
              "mean_delta": -7.2567,
              "cohens_d": -0.5488,
              "feature": "rsi14"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -0.5537,
              "positive_median": -0.301,
              "negative_mean": 0.6314,
              "mean_delta": -1.1851,
              "cohens_d": -0.3292,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "일": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 2.9093,
              "positive_median": 2.9898,
              "negative_mean": 3.251,
              "mean_delta": -0.3417,
              "cohens_d": -0.0338,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.5448,
              "positive_median": 0.4899,
              "negative_mean": 0.5586,
              "mean_delta": -0.0137,
              "cohens_d": -0.0081,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 53.2589,
              "positive_median": 52.2389,
              "negative_mean": 53.5148,
              "mean_delta": -0.256,
              "cohens_d": -0.0177,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 7811.9529,
              "positive_median": -71527.7094,
              "negative_mean": 25033.4727,
              "mean_delta": -17221.5198,
              "cohens_d": -0.0221,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.5202,
              "positive_median": 0.4871,
              "negative_mean": 0.5545,
              "mean_delta": -0.0343,
              "cohens_d": -0.1039,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 3.1759,
              "positive_median": 3.0836,
              "negative_mean": 2.9161,
              "mean_delta": 0.2599,
              "cohens_d": 0.3042,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 2.5857,
              "positive_median": 4.2707,
              "negative_mean": 2.2354,
              "mean_delta": 0.3504,
              "cohens_d": 0.0464,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 27,
                "down": 14
              },
              "negative_distribution": {
                "up": 1169,
                "down": 831
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.6585,
              "negative_up_ratio": 0.5845
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 17,
                "bullish": 24
              },
              "negative_distribution": {
                "bullish": 1255,
                "bearish": 745
              },
              "positive_bullish_ratio": 0.5854,
              "negative_bullish_ratio": 0.6275,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 3.1759,
              "positive_median": 3.0836,
              "negative_mean": 2.9161,
              "mean_delta": 0.2599,
              "cohens_d": 0.3042,
              "feature": "atr_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 0.5202,
              "positive_median": 0.4871,
              "negative_mean": 0.5545,
              "mean_delta": -0.0343,
              "cohens_d": -0.1039,
              "feature": "bb_position"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 2.5857,
              "positive_median": 4.2707,
              "negative_mean": 2.2354,
              "mean_delta": 0.3504,
              "cohens_d": 0.0464,
              "feature": "zigzag_leg_pct"
            }
          ]
        },
        "주": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 27.4725,
              "positive_median": 26.053,
              "negative_mean": 24.6975,
              "mean_delta": 2.775,
              "cohens_d": 0.1028,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 5.0478,
              "positive_median": 4.9754,
              "negative_mean": 4.424,
              "mean_delta": 0.6238,
              "cohens_d": 0.1344,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 59.2412,
              "positive_median": 62.3399,
              "negative_mean": 58.0555,
              "mean_delta": 1.1857,
              "cohens_d": 0.0779,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": -146639.4503,
              "positive_median": 92130.2555,
              "negative_mean": -218471.5992,
              "mean_delta": 71832.1489,
              "cohens_d": 0.03,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 40,
              "negative_count": 1972,
              "positive_mean": 0.601,
              "positive_median": 0.6747,
              "negative_mean": 0.5901,
              "mean_delta": 0.0109,
              "cohens_d": 0.0327,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 8.2711,
              "positive_median": 8.2289,
              "negative_mean": 7.9176,
              "mean_delta": 0.3535,
              "cohens_d": 0.2275,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 1.6595,
              "positive_median": -1.6924,
              "negative_mean": 2.4827,
              "mean_delta": -0.8232,
              "cohens_d": -0.0873,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 19,
                "down": 22
              },
              "negative_distribution": {
                "down": 930,
                "up": 1070
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4634,
              "negative_up_ratio": 0.535
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 34,
                "bearish": 7
              },
              "negative_distribution": {
                "bullish": 1644,
                "bearish": 356
              },
              "positive_bullish_ratio": 0.8293,
              "negative_bullish_ratio": 0.822,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 8.2711,
              "positive_median": 8.2289,
              "negative_mean": 7.9176,
              "mean_delta": 0.3535,
              "cohens_d": 0.2275,
              "feature": "atr_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 5.0478,
              "positive_median": 4.9754,
              "negative_mean": 4.424,
              "mean_delta": 0.6238,
              "cohens_d": 0.1344,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 27.4725,
              "positive_median": 26.053,
              "negative_mean": 24.6975,
              "mean_delta": 2.775,
              "cohens_d": 0.1028,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "월": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 72.6224,
              "positive_median": 87.1588,
              "negative_mean": 70.5741,
              "mean_delta": 2.0482,
              "cohens_d": 0.0455,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 39,
              "negative_count": 1868,
              "positive_mean": 13.7231,
              "positive_median": 16.0445,
              "negative_mean": 13.9134,
              "mean_delta": -0.1904,
              "cohens_d": -0.0261,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 28,
              "negative_count": 1358,
              "positive_mean": 66.7194,
              "positive_median": 69.2651,
              "negative_mean": 66.1336,
              "mean_delta": 0.5858,
              "cohens_d": 0.0539,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 1963872.5965,
              "positive_median": 3306758.9378,
              "negative_mean": 1734540.5118,
              "mean_delta": 229332.0847,
              "cohens_d": 0.0576,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 20,
              "negative_count": 1085,
              "positive_mean": 0.6918,
              "positive_median": 0.8409,
              "negative_mean": 0.705,
              "mean_delta": -0.0132,
              "cohens_d": -0.0502,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 29,
              "negative_count": 1415,
              "positive_mean": 16.2999,
              "positive_median": 14.8586,
              "negative_mean": 15.9328,
              "mean_delta": 0.3671,
              "cohens_d": 0.1203,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 7.6352,
              "positive_median": -2.1363,
              "negative_mean": 5.6132,
              "mean_delta": 2.022,
              "cohens_d": 0.1011,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 21,
                "up": 20
              },
              "negative_distribution": {
                "up": 1011,
                "down": 989
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4878,
              "negative_up_ratio": 0.5055
            },
            "trend_bias": {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 2,
                "bullish": 39
              },
              "negative_distribution": {
                "bullish": 1856,
                "bearish": 144
              },
              "positive_bullish_ratio": 0.9512,
              "negative_bullish_ratio": 0.928,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 29,
              "negative_count": 1415,
              "positive_mean": 16.2999,
              "positive_median": 14.8586,
              "negative_mean": 15.9328,
              "mean_delta": 0.3671,
              "cohens_d": 0.1203,
              "feature": "atr_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 7.6352,
              "positive_median": -2.1363,
              "negative_mean": 5.6132,
              "mean_delta": 2.022,
              "cohens_d": 0.1011,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 41,
              "negative_count": 2000,
              "positive_mean": 1963872.5965,
              "positive_median": 3306758.9378,
              "negative_mean": 1734540.5118,
              "mean_delta": 229332.0847,
              "cohens_d": 0.0576,
              "feature": "macd_hist"
            }
          ]
        }
      }
    },
    "pullback": {
      "label": "눌림목 (B*)",
      "side": "buy",
      "sample_count": 70,
      "timeframes": {
        "1분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.4191,
              "positive_median": -0.3622,
              "negative_mean": -0.0009,
              "mean_delta": -0.4182,
              "cohens_d": -1.9881,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.0718,
              "positive_median": -0.0626,
              "negative_mean": -0.0004,
              "mean_delta": -0.0715,
              "cohens_d": -1.9745,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 32.9862,
              "positive_median": 34.2138,
              "negative_mean": 49.8635,
              "mean_delta": -16.8774,
              "cohens_d": -1.2994,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -19913.2252,
              "positive_median": -16404.8016,
              "negative_mean": -712.4614,
              "mean_delta": -19200.7638,
              "cohens_d": -0.8462,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.1832,
              "positive_median": 0.188,
              "negative_mean": 0.4972,
              "mean_delta": -0.314,
              "cohens_d": -0.9975,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0983,
              "positive_median": 0.0893,
              "negative_mean": 0.0581,
              "mean_delta": 0.0403,
              "cohens_d": 0.8031,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 4.9128,
              "positive_median": 4.9104,
              "negative_mean": 3.9733,
              "mean_delta": 0.9395,
              "cohens_d": 0.0928,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 69,
                "bullish": 1
              },
              "negative_distribution": {
                "bearish": 1004,
                "bullish": 996
              },
              "positive_bullish_ratio": 0.0143,
              "negative_bullish_ratio": 0.498,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.4191,
              "positive_median": -0.3622,
              "negative_mean": -0.0009,
              "mean_delta": -0.4182,
              "cohens_d": -1.9881,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.0718,
              "positive_median": -0.0626,
              "negative_mean": -0.0004,
              "mean_delta": -0.0715,
              "cohens_d": -1.9745,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 32.9862,
              "positive_median": 34.2138,
              "negative_mean": 49.8635,
              "mean_delta": -16.8774,
              "cohens_d": -1.2994,
              "feature": "rsi14"
            }
          ]
        },
        "3분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.606,
              "positive_median": -0.5058,
              "negative_mean": 0.0067,
              "mean_delta": -0.6127,
              "cohens_d": -1.7009,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.0822,
              "positive_median": -0.0696,
              "negative_mean": 0.0015,
              "mean_delta": -0.0837,
              "cohens_d": -1.3554,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 29.8693,
              "positive_median": 30.7075,
              "negative_mean": 50.0044,
              "mean_delta": -20.1351,
              "cohens_d": -1.6708,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -50819.55,
              "positive_median": -45091.3232,
              "negative_mean": -1253.6888,
              "mean_delta": -49565.8612,
              "cohens_d": -1.274,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0608,
              "positive_median": 0.0713,
              "negative_mean": 0.4955,
              "mean_delta": -0.4347,
              "cohens_d": -1.3831,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.1564,
              "positive_median": 0.1401,
              "negative_mean": 0.1063,
              "mean_delta": 0.0502,
              "cohens_d": 0.6054,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 4.9128,
              "positive_median": 4.9104,
              "negative_mean": 3.9733,
              "mean_delta": 0.9395,
              "cohens_d": 0.0928,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 69,
                "bullish": 1
              },
              "negative_distribution": {
                "bearish": 968,
                "bullish": 1032
              },
              "positive_bullish_ratio": 0.0143,
              "negative_bullish_ratio": 0.516,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.606,
              "positive_median": -0.5058,
              "negative_mean": 0.0067,
              "mean_delta": -0.6127,
              "cohens_d": -1.7009,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 29.8693,
              "positive_median": 30.7075,
              "negative_mean": 50.0044,
              "mean_delta": -20.1351,
              "cohens_d": -1.6708,
              "feature": "rsi14"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0608,
              "positive_median": 0.0713,
              "negative_mean": 0.4955,
              "mean_delta": -0.4347,
              "cohens_d": -1.3831,
              "feature": "bb_position"
            }
          ]
        },
        "5분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.6342,
              "positive_median": -0.5389,
              "negative_mean": 0.0103,
              "mean_delta": -0.6445,
              "cohens_d": -1.3593,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.0728,
              "positive_median": -0.0652,
              "negative_mean": 0.0029,
              "mean_delta": -0.0757,
              "cohens_d": -0.9473,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 30.2127,
              "positive_median": 29.8807,
              "negative_mean": 49.9748,
              "mean_delta": -19.7621,
              "cohens_d": -1.679,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -63476.1025,
              "positive_median": -51720.2845,
              "negative_mean": -891.0456,
              "mean_delta": -62585.0569,
              "cohens_d": -1.2403,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0128,
              "positive_median": 0.0037,
              "negative_mean": 0.4933,
              "mean_delta": -0.4805,
              "cohens_d": -1.497,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.1923,
              "positive_median": 0.1729,
              "negative_mean": 0.1412,
              "mean_delta": 0.0512,
              "cohens_d": 0.4952,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 4.9495,
              "positive_median": 4.8855,
              "negative_mean": 3.9679,
              "mean_delta": 0.9816,
              "cohens_d": 0.0969,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 66,
                "bullish": 4
              },
              "negative_distribution": {
                "bearish": 978,
                "bullish": 1022
              },
              "positive_bullish_ratio": 0.0571,
              "negative_bullish_ratio": 0.511,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 30.2127,
              "positive_median": 29.8807,
              "negative_mean": 49.9748,
              "mean_delta": -19.7621,
              "cohens_d": -1.679,
              "feature": "rsi14"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0128,
              "positive_median": 0.0037,
              "negative_mean": 0.4933,
              "mean_delta": -0.4805,
              "cohens_d": -1.497,
              "feature": "bb_position"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.6342,
              "positive_median": -0.5389,
              "negative_mean": 0.0103,
              "mean_delta": -0.6445,
              "cohens_d": -1.3593,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "10분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.5855,
              "positive_median": -0.5618,
              "negative_mean": 0.0269,
              "mean_delta": -0.6124,
              "cohens_d": -0.894,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.0495,
              "positive_median": -0.0536,
              "negative_mean": 0.0052,
              "mean_delta": -0.0547,
              "cohens_d": -0.4755,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 34.1029,
              "positive_median": 34.1105,
              "negative_mean": 50.3143,
              "mean_delta": -16.2114,
              "cohens_d": -1.4121,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -66360.9736,
              "positive_median": -46968.6596,
              "negative_mean": 408.4106,
              "mean_delta": -66769.3843,
              "cohens_d": -1.0092,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.042,
              "positive_median": 0.0004,
              "negative_mean": 0.503,
              "mean_delta": -0.461,
              "cohens_d": -1.434,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.2672,
              "positive_median": 0.2442,
              "negative_mean": 0.2076,
              "mean_delta": 0.0595,
              "cohens_d": 0.423,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.0354,
              "positive_median": 5.1204,
              "negative_mean": 3.9762,
              "mean_delta": 1.0592,
              "cohens_d": 0.1046,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 62,
                "bullish": 8
              },
              "negative_distribution": {
                "bearish": 989,
                "bullish": 1011
              },
              "positive_bullish_ratio": 0.1143,
              "negative_bullish_ratio": 0.5055,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.042,
              "positive_median": 0.0004,
              "negative_mean": 0.503,
              "mean_delta": -0.461,
              "cohens_d": -1.434,
              "feature": "bb_position"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 34.1029,
              "positive_median": 34.1105,
              "negative_mean": 50.3143,
              "mean_delta": -16.2114,
              "cohens_d": -1.4121,
              "feature": "rsi14"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -66360.9736,
              "positive_median": -46968.6596,
              "negative_mean": 408.4106,
              "mean_delta": -66769.3843,
              "cohens_d": -1.0092,
              "feature": "macd_hist"
            }
          ]
        },
        "15분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.5204,
              "positive_median": -0.4953,
              "negative_mean": 0.0445,
              "mean_delta": -0.5649,
              "cohens_d": -0.6744,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.0311,
              "positive_median": -0.0459,
              "negative_mean": 0.0078,
              "mean_delta": -0.0389,
              "cohens_d": -0.2748,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 36.8752,
              "positive_median": 36.6831,
              "negative_mean": 50.4093,
              "mean_delta": -13.534,
              "cohens_d": -1.2172,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -59843.9548,
              "positive_median": -45708.3053,
              "negative_mean": 772.9345,
              "mean_delta": -60616.8892,
              "cohens_d": -0.7666,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0905,
              "positive_median": 0.0363,
              "negative_mean": 0.5044,
              "mean_delta": -0.4139,
              "cohens_d": -1.3038,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.3277,
              "positive_median": 0.3047,
              "negative_mean": 0.2621,
              "mean_delta": 0.0656,
              "cohens_d": 0.3833,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.0955,
              "positive_median": 5.1204,
              "negative_mean": 3.9739,
              "mean_delta": 1.1216,
              "cohens_d": 0.1107,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 59,
                "bullish": 11
              },
              "negative_distribution": {
                "bearish": 959,
                "bullish": 1041
              },
              "positive_bullish_ratio": 0.1571,
              "negative_bullish_ratio": 0.5205,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0905,
              "positive_median": 0.0363,
              "negative_mean": 0.5044,
              "mean_delta": -0.4139,
              "cohens_d": -1.3038,
              "feature": "bb_position"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 36.8752,
              "positive_median": 36.6831,
              "negative_mean": 50.4093,
              "mean_delta": -13.534,
              "cohens_d": -1.2172,
              "feature": "rsi14"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -59843.9548,
              "positive_median": -45708.3053,
              "negative_mean": 772.9345,
              "mean_delta": -60616.8892,
              "cohens_d": -0.7666,
              "feature": "macd_hist"
            }
          ]
        },
        "30분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -0.2842,
              "positive_median": -0.4115,
              "negative_mean": 0.0877,
              "mean_delta": -0.3719,
              "cohens_d": -0.3046,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0139,
              "positive_median": -0.0143,
              "negative_mean": 0.0144,
              "mean_delta": -0.0006,
              "cohens_d": -0.0028,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 42.0334,
              "positive_median": 42.5138,
              "negative_mean": 50.7359,
              "mean_delta": -8.7025,
              "cohens_d": -0.7664,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -48093.4782,
              "positive_median": -37513.0739,
              "negative_mean": -771.6768,
              "mean_delta": -47321.8014,
              "cohens_d": -0.4189,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.1951,
              "positive_median": 0.1573,
              "negative_mean": 0.5087,
              "mean_delta": -0.3136,
              "cohens_d": -0.9828,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.4723,
              "positive_median": 0.4096,
              "negative_mean": 0.3826,
              "mean_delta": 0.0897,
              "cohens_d": 0.3893,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.2459,
              "positive_median": 5.3356,
              "negative_mean": 3.9624,
              "mean_delta": 1.2835,
              "cohens_d": 0.1264,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 49,
                "bullish": 21
              },
              "negative_distribution": {
                "bearish": 940,
                "bullish": 1060
              },
              "positive_bullish_ratio": 0.3,
              "negative_bullish_ratio": 0.53,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.1951,
              "positive_median": 0.1573,
              "negative_mean": 0.5087,
              "mean_delta": -0.3136,
              "cohens_d": -0.9828,
              "feature": "bb_position"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 42.0334,
              "positive_median": 42.5138,
              "negative_mean": 50.7359,
              "mean_delta": -8.7025,
              "cohens_d": -0.7664,
              "feature": "rsi14"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -48093.4782,
              "positive_median": -37513.0739,
              "negative_mean": -771.6768,
              "mean_delta": -47321.8014,
              "cohens_d": -0.4189,
              "feature": "macd_hist"
            }
          ]
        },
        "60분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0977,
              "positive_median": -0.1741,
              "negative_mean": 0.1723,
              "mean_delta": -0.0746,
              "cohens_d": -0.0436,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.0585,
              "positive_median": 0.0274,
              "negative_mean": 0.0288,
              "mean_delta": 0.0297,
              "cohens_d": 0.1051,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 47.0208,
              "positive_median": 47.0523,
              "negative_mean": 51.0312,
              "mean_delta": -4.0104,
              "cohens_d": -0.3424,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -29887.9797,
              "positive_median": -30738.0883,
              "negative_mean": 1466.0508,
              "mean_delta": -31354.0305,
              "cohens_d": -0.1873,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.3382,
              "positive_median": 0.3302,
              "negative_mean": 0.5165,
              "mean_delta": -0.1783,
              "cohens_d": -0.5552,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.6793,
              "positive_median": 0.6048,
              "negative_mean": 0.5554,
              "mean_delta": 0.1239,
              "cohens_d": 0.4064,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.6112,
              "positive_median": 5.3569,
              "negative_mean": 3.985,
              "mean_delta": 1.6262,
              "cohens_d": 0.1599,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 33,
                "bearish": 37
              },
              "negative_distribution": {
                "bearish": 902,
                "bullish": 1098
              },
              "positive_bullish_ratio": 0.4714,
              "negative_bullish_ratio": 0.549,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.3382,
              "positive_median": 0.3302,
              "negative_mean": 0.5165,
              "mean_delta": -0.1783,
              "cohens_d": -0.5552,
              "feature": "bb_position"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.6793,
              "positive_median": 0.6048,
              "negative_mean": 0.5554,
              "mean_delta": 0.1239,
              "cohens_d": 0.4064,
              "feature": "atr_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 47.0208,
              "positive_median": 47.0523,
              "negative_mean": 51.0312,
              "mean_delta": -4.0104,
              "cohens_d": -0.3424,
              "feature": "rsi14"
            }
          ]
        },
        "240분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.8183,
              "positive_median": 0.6294,
              "negative_mean": 0.6314,
              "mean_delta": 0.1869,
              "cohens_d": 0.0513,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.1588,
              "positive_median": 0.0995,
              "negative_mean": 0.1093,
              "mean_delta": 0.0495,
              "cohens_d": 0.0826,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 51.9623,
              "positive_median": 52.8873,
              "negative_mean": 52.0967,
              "mean_delta": -0.1344,
              "cohens_d": -0.0101,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 70592.4028,
              "positive_median": 42323.5873,
              "negative_mean": 13.7615,
              "mean_delta": 70578.6413,
              "cohens_d": 0.2331,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.5236,
              "positive_median": 0.6033,
              "negative_mean": 0.5272,
              "mean_delta": -0.0036,
              "cohens_d": -0.0109,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 1.4309,
              "positive_median": 1.334,
              "negative_mean": 1.1489,
              "mean_delta": 0.282,
              "cohens_d": 0.5629,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.6571,
              "positive_median": 5.7939,
              "negative_mean": 4.0063,
              "mean_delta": 1.6507,
              "cohens_d": 0.1659,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 59,
                "down": 11
              },
              "negative_distribution": {
                "up": 1242,
                "down": 758
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8429,
              "negative_up_ratio": 0.621
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 43,
                "bearish": 27
              },
              "negative_distribution": {
                "bullish": 1145,
                "bearish": 855
              },
              "positive_bullish_ratio": 0.6143,
              "negative_bullish_ratio": 0.5725,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 1.4309,
              "positive_median": 1.334,
              "negative_mean": 1.1489,
              "mean_delta": 0.282,
              "cohens_d": 0.5629,
              "feature": "atr_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 70592.4028,
              "positive_median": 42323.5873,
              "negative_mean": 13.7615,
              "mean_delta": 70578.6413,
              "cohens_d": 0.2331,
              "feature": "macd_hist"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.6571,
              "positive_median": 5.7939,
              "negative_mean": 4.0063,
              "mean_delta": 1.6507,
              "cohens_d": 0.1659,
              "feature": "zigzag_leg_pct"
            }
          ]
        },
        "일": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 4.2805,
              "positive_median": 3.7333,
              "negative_mean": 3.251,
              "mean_delta": 1.0295,
              "cohens_d": 0.1004,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.6814,
              "positive_median": 0.4781,
              "negative_mean": 0.5586,
              "mean_delta": 0.1229,
              "cohens_d": 0.0716,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 54.4193,
              "positive_median": 56.398,
              "negative_mean": 53.5148,
              "mean_delta": 0.9045,
              "cohens_d": 0.0619,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 22657.6996,
              "positive_median": 104983.6515,
              "negative_mean": 25033.4727,
              "mean_delta": -2375.7731,
              "cohens_d": -0.003,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 0.5853,
              "positive_median": 0.6333,
              "negative_mean": 0.5545,
              "mean_delta": 0.0308,
              "cohens_d": 0.0927,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 3.3866,
              "positive_median": 3.3598,
              "negative_mean": 2.9161,
              "mean_delta": 0.4706,
              "cohens_d": 0.55,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.1443,
              "positive_median": 5.7836,
              "negative_mean": 2.2354,
              "mean_delta": 2.9089,
              "cohens_d": 0.385,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 55,
                "down": 15
              },
              "negative_distribution": {
                "up": 1169,
                "down": 831
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.7857,
              "negative_up_ratio": 0.5845
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 42,
                "bearish": 28
              },
              "negative_distribution": {
                "bullish": 1255,
                "bearish": 745
              },
              "positive_bullish_ratio": 0.6,
              "negative_bullish_ratio": 0.6275,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 3.3866,
              "positive_median": 3.3598,
              "negative_mean": 2.9161,
              "mean_delta": 0.4706,
              "cohens_d": 0.55,
              "feature": "atr_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.1443,
              "positive_median": 5.7836,
              "negative_mean": 2.2354,
              "mean_delta": 2.9089,
              "cohens_d": 0.385,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 4.2805,
              "positive_median": 3.7333,
              "negative_mean": 3.251,
              "mean_delta": 1.0295,
              "cohens_d": 0.1004,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "주": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 29.7935,
              "positive_median": 24.5834,
              "negative_mean": 24.6975,
              "mean_delta": 5.096,
              "cohens_d": 0.1881,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.2049,
              "positive_median": 4.6705,
              "negative_mean": 4.424,
              "mean_delta": 0.781,
              "cohens_d": 0.1684,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 59.8548,
              "positive_median": 59.2598,
              "negative_mean": 58.0555,
              "mean_delta": 1.7993,
              "cohens_d": 0.1179,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": -325818.2945,
              "positive_median": -21090.2289,
              "negative_mean": -218471.5992,
              "mean_delta": -107346.6953,
              "cohens_d": -0.0445,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 69,
              "negative_count": 1972,
              "positive_mean": 0.607,
              "positive_median": 0.6695,
              "negative_mean": 0.5901,
              "mean_delta": 0.0169,
              "cohens_d": 0.0507,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 8.1049,
              "positive_median": 7.9231,
              "negative_mean": 7.9176,
              "mean_delta": 0.1872,
              "cohens_d": 0.1203,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 4.3164,
              "positive_median": 2.5305,
              "negative_mean": 2.4827,
              "mean_delta": 1.8337,
              "cohens_d": 0.1931,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 34,
                "up": 36
              },
              "negative_distribution": {
                "down": 930,
                "up": 1070
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5143,
              "negative_up_ratio": 0.535
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 56,
                "bearish": 14
              },
              "negative_distribution": {
                "bullish": 1644,
                "bearish": 356
              },
              "positive_bullish_ratio": 0.8,
              "negative_bullish_ratio": 0.822,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 4.3164,
              "positive_median": 2.5305,
              "negative_mean": 2.4827,
              "mean_delta": 1.8337,
              "cohens_d": 0.1931,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 29.7935,
              "positive_median": 24.5834,
              "negative_mean": 24.6975,
              "mean_delta": 5.096,
              "cohens_d": 0.1881,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 5.2049,
              "positive_median": 4.6705,
              "negative_mean": 4.424,
              "mean_delta": 0.781,
              "cohens_d": 0.1684,
              "feature": "ema60_slope_5_pct"
            }
          ]
        },
        "월": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 75.2169,
              "positive_median": 87.1588,
              "negative_mean": 70.5741,
              "mean_delta": 4.6428,
              "cohens_d": 0.1034,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 68,
              "negative_count": 1868,
              "positive_mean": 14.1687,
              "positive_median": 16.3104,
              "negative_mean": 13.9134,
              "mean_delta": 0.2553,
              "cohens_d": 0.035,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 48,
              "negative_count": 1358,
              "positive_mean": 66.5201,
              "positive_median": 67.4258,
              "negative_mean": 66.1336,
              "mean_delta": 0.3865,
              "cohens_d": 0.0356,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 2210812.479,
              "positive_median": 2666231.2887,
              "negative_mean": 1734540.5118,
              "mean_delta": 476271.9672,
              "cohens_d": 0.1201,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 37,
              "negative_count": 1085,
              "positive_mean": 0.7016,
              "positive_median": 0.7605,
              "negative_mean": 0.705,
              "mean_delta": -0.0034,
              "cohens_d": -0.0131,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 50,
              "negative_count": 1415,
              "positive_mean": 16.0272,
              "positive_median": 14.7348,
              "negative_mean": 15.9328,
              "mean_delta": 0.0944,
              "cohens_d": 0.031,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 8.4986,
              "positive_median": 4.4741,
              "negative_mean": 5.6132,
              "mean_delta": 2.8854,
              "cohens_d": 0.1433,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 33,
                "up": 37
              },
              "negative_distribution": {
                "up": 1011,
                "down": 989
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.5286,
              "negative_up_ratio": 0.5055
            },
            "trend_bias": {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 3,
                "bullish": 67
              },
              "negative_distribution": {
                "bullish": 1856,
                "bearish": 144
              },
              "positive_bullish_ratio": 0.9571,
              "negative_bullish_ratio": 0.928,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 8.4986,
              "positive_median": 4.4741,
              "negative_mean": 5.6132,
              "mean_delta": 2.8854,
              "cohens_d": 0.1433,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 2210812.479,
              "positive_median": 2666231.2887,
              "negative_mean": 1734540.5118,
              "mean_delta": 476271.9672,
              "cohens_d": 0.1201,
              "feature": "macd_hist"
            },
            {
              "positive_count": 70,
              "negative_count": 2000,
              "positive_mean": 75.2169,
              "positive_median": 87.1588,
              "negative_mean": 70.5741,
              "mean_delta": 4.6428,
              "cohens_d": 0.1034,
              "feature": "close_vs_ema60_pct"
            }
          ]
        }
      }
    },
    "swing_high": {
      "label": "스윙 매도 (S)",
      "side": "sell",
      "sample_count": 96,
      "timeframes": {
        "1분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.7133,
              "positive_median": 0.515,
              "negative_mean": -0.0009,
              "mean_delta": 0.7142,
              "cohens_d": 2.7521,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1378,
              "positive_median": 0.0984,
              "negative_mean": -0.0004,
              "mean_delta": 0.1381,
              "cohens_d": 3.007,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 66.0707,
              "positive_median": 67.5212,
              "negative_mean": 49.8635,
              "mean_delta": 16.2072,
              "cohens_d": 1.2458,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 60464.0396,
              "positive_median": 16304.3419,
              "negative_mean": -712.4614,
              "mean_delta": 61176.5009,
              "cohens_d": 1.2278,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.7331,
              "positive_median": 0.7758,
              "negative_mean": 0.4972,
              "mean_delta": 0.2359,
              "cohens_d": 0.7483,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1829,
              "positive_median": 0.1097,
              "negative_mean": 0.0581,
              "mean_delta": 0.1248,
              "cohens_d": 1.8526,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 12.1447,
              "positive_median": 9.1119,
              "negative_mean": 3.9733,
              "mean_delta": 8.1714,
              "cohens_d": 0.8045,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 96
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 1.0,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 91,
                "bearish": 5
              },
              "negative_distribution": {
                "bearish": 1004,
                "bullish": 996
              },
              "positive_bullish_ratio": 0.9479,
              "negative_bullish_ratio": 0.498,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1378,
              "positive_median": 0.0984,
              "negative_mean": -0.0004,
              "mean_delta": 0.1381,
              "cohens_d": 3.007,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.7133,
              "positive_median": 0.515,
              "negative_mean": -0.0009,
              "mean_delta": 0.7142,
              "cohens_d": 2.7521,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1829,
              "positive_median": 0.1097,
              "negative_mean": 0.0581,
              "mean_delta": 0.1248,
              "cohens_d": 1.8526,
              "feature": "atr_pct"
            }
          ]
        },
        "3분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.1456,
              "positive_median": 0.8983,
              "negative_mean": 0.0067,
              "mean_delta": 1.1389,
              "cohens_d": 2.7548,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1588,
              "positive_median": 0.1349,
              "negative_mean": 0.0015,
              "mean_delta": 0.1573,
              "cohens_d": 2.0397,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 71.1313,
              "positive_median": 71.7741,
              "negative_mean": 50.0044,
              "mean_delta": 21.127,
              "cohens_d": 1.7464,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 82273.5746,
              "positive_median": 51220.3358,
              "negative_mean": -1253.6888,
              "mean_delta": 83527.2634,
              "cohens_d": 1.6509,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.896,
              "positive_median": 0.9181,
              "negative_mean": 0.4955,
              "mean_delta": 0.4005,
              "cohens_d": 1.2691,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2774,
              "positive_median": 0.1898,
              "negative_mean": 0.1063,
              "mean_delta": 0.1712,
              "cohens_d": 1.6501,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 11.8452,
              "positive_median": 8.9541,
              "negative_mean": 3.9733,
              "mean_delta": 7.8719,
              "cohens_d": 0.7748,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 95,
                "down": 1
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.9896,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 91,
                "bearish": 5
              },
              "negative_distribution": {
                "bearish": 968,
                "bullish": 1032
              },
              "positive_bullish_ratio": 0.9479,
              "negative_bullish_ratio": 0.516,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.1456,
              "positive_median": 0.8983,
              "negative_mean": 0.0067,
              "mean_delta": 1.1389,
              "cohens_d": 2.7548,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1588,
              "positive_median": 0.1349,
              "negative_mean": 0.0015,
              "mean_delta": 0.1573,
              "cohens_d": 2.0397,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 71.1313,
              "positive_median": 71.7741,
              "negative_mean": 50.0044,
              "mean_delta": 21.127,
              "cohens_d": 1.7464,
              "feature": "rsi14"
            }
          ]
        },
        "5분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.4283,
              "positive_median": 1.2106,
              "negative_mean": 0.0103,
              "mean_delta": 1.418,
              "cohens_d": 2.5029,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1653,
              "positive_median": 0.1516,
              "negative_mean": 0.0029,
              "mean_delta": 0.1624,
              "cohens_d": 1.6972,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 74.2517,
              "positive_median": 76.4509,
              "negative_mean": 49.9748,
              "mean_delta": 24.2769,
              "cohens_d": 2.0699,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 75973.6438,
              "positive_median": 71042.2931,
              "negative_mean": -891.0456,
              "mean_delta": 76864.6894,
              "cohens_d": 1.129,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.0241,
              "positive_median": 1.024,
              "negative_mean": 0.4933,
              "mean_delta": 0.5308,
              "cohens_d": 1.6571,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.3189,
              "positive_median": 0.2233,
              "negative_mean": 0.1412,
              "mean_delta": 0.1777,
              "cohens_d": 1.4634,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 11.788,
              "positive_median": 9.0592,
              "negative_mean": 3.9679,
              "mean_delta": 7.8201,
              "cohens_d": 0.7679,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 94,
                "down": 2
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.9792,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 94,
                "bearish": 2
              },
              "negative_distribution": {
                "bearish": 978,
                "bullish": 1022
              },
              "positive_bullish_ratio": 0.9792,
              "negative_bullish_ratio": 0.511,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.4283,
              "positive_median": 1.2106,
              "negative_mean": 0.0103,
              "mean_delta": 1.418,
              "cohens_d": 2.5029,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 74.2517,
              "positive_median": 76.4509,
              "negative_mean": 49.9748,
              "mean_delta": 24.2769,
              "cohens_d": 2.0699,
              "feature": "rsi14"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1653,
              "positive_median": 0.1516,
              "negative_mean": 0.0029,
              "mean_delta": 0.1624,
              "cohens_d": 1.6972,
              "feature": "ema60_slope_5_pct"
            }
          ]
        },
        "10분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.4972,
              "positive_median": 1.3435,
              "negative_mean": 0.0269,
              "mean_delta": 1.4703,
              "cohens_d": 1.7802,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1905,
              "positive_median": 0.1666,
              "negative_mean": 0.0052,
              "mean_delta": 0.1853,
              "cohens_d": 1.4691,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 70.8835,
              "positive_median": 73.3679,
              "negative_mean": 50.3143,
              "mean_delta": 20.5692,
              "cohens_d": 1.779,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 77984.5088,
              "positive_median": 66636.4317,
              "negative_mean": 408.4106,
              "mean_delta": 77576.0982,
              "cohens_d": 0.9623,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.9902,
              "positive_median": 1.027,
              "negative_mean": 0.503,
              "mean_delta": 0.4872,
              "cohens_d": 1.5164,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.4103,
              "positive_median": 0.2941,
              "negative_mean": 0.2076,
              "mean_delta": 0.2027,
              "cohens_d": 1.3081,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 10.9054,
              "positive_median": 8.7968,
              "negative_mean": 3.9762,
              "mean_delta": 6.9292,
              "cohens_d": 0.6788,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 91,
                "down": 5
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.9479,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 89,
                "bearish": 7
              },
              "negative_distribution": {
                "bearish": 989,
                "bullish": 1011
              },
              "positive_bullish_ratio": 0.9271,
              "negative_bullish_ratio": 0.5055,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.4972,
              "positive_median": 1.3435,
              "negative_mean": 0.0269,
              "mean_delta": 1.4703,
              "cohens_d": 1.7802,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 70.8835,
              "positive_median": 73.3679,
              "negative_mean": 50.3143,
              "mean_delta": 20.5692,
              "cohens_d": 1.779,
              "feature": "rsi14"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.9902,
              "positive_median": 1.027,
              "negative_mean": 0.503,
              "mean_delta": 0.4872,
              "cohens_d": 1.5164,
              "feature": "bb_position"
            }
          ]
        },
        "15분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.7481,
              "positive_median": 1.5663,
              "negative_mean": 0.0445,
              "mean_delta": 1.7036,
              "cohens_d": 1.7433,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2084,
              "positive_median": 0.186,
              "negative_mean": 0.0078,
              "mean_delta": 0.2006,
              "cohens_d": 1.3118,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 70.1593,
              "positive_median": 71.9595,
              "negative_mean": 50.4093,
              "mean_delta": 19.75,
              "cohens_d": 1.7601,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 91875.8887,
              "positive_median": 80815.6444,
              "negative_mean": 772.9345,
              "mean_delta": 91102.9542,
              "cohens_d": 0.9909,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.9897,
              "positive_median": 1.0156,
              "negative_mean": 0.5044,
              "mean_delta": 0.4853,
              "cohens_d": 1.53,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.5035,
              "positive_median": 0.3788,
              "negative_mean": 0.2621,
              "mean_delta": 0.2414,
              "cohens_d": 1.2968,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 10.8682,
              "positive_median": 8.8756,
              "negative_mean": 3.9739,
              "mean_delta": 6.8943,
              "cohens_d": 0.6745,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 90,
                "down": 6
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.9375,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 90,
                "bearish": 6
              },
              "negative_distribution": {
                "bearish": 959,
                "bullish": 1041
              },
              "positive_bullish_ratio": 0.9375,
              "negative_bullish_ratio": 0.5205,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 70.1593,
              "positive_median": 71.9595,
              "negative_mean": 50.4093,
              "mean_delta": 19.75,
              "cohens_d": 1.7601,
              "feature": "rsi14"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.7481,
              "positive_median": 1.5663,
              "negative_mean": 0.0445,
              "mean_delta": 1.7036,
              "cohens_d": 1.7433,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.9897,
              "positive_median": 1.0156,
              "negative_mean": 0.5044,
              "mean_delta": 0.4853,
              "cohens_d": 1.53,
              "feature": "bb_position"
            }
          ]
        },
        "30분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.7073,
              "positive_median": 1.7448,
              "negative_mean": 0.0877,
              "mean_delta": 1.6195,
              "cohens_d": 1.1596,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2229,
              "positive_median": 0.2132,
              "negative_mean": 0.0144,
              "mean_delta": 0.2084,
              "cohens_d": 0.982,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 66.9553,
              "positive_median": 69.3697,
              "negative_mean": 50.7359,
              "mean_delta": 16.2195,
              "cohens_d": 1.4039,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 107428.7224,
              "positive_median": 83060.0957,
              "negative_mean": -771.6768,
              "mean_delta": 108200.3992,
              "cohens_d": 0.8453,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8939,
              "positive_median": 0.9395,
              "negative_mean": 0.5087,
              "mean_delta": 0.3851,
              "cohens_d": 1.1997,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.6605,
              "positive_median": 0.5109,
              "negative_mean": 0.3826,
              "mean_delta": 0.2779,
              "cohens_d": 1.1527,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 9.9024,
              "positive_median": 8.7471,
              "negative_mean": 3.9624,
              "mean_delta": 5.9399,
              "cohens_d": 0.5779,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 87,
                "down": 9
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.9062,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 84,
                "bearish": 12
              },
              "negative_distribution": {
                "bearish": 940,
                "bullish": 1060
              },
              "positive_bullish_ratio": 0.875,
              "negative_bullish_ratio": 0.53,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 66.9553,
              "positive_median": 69.3697,
              "negative_mean": 50.7359,
              "mean_delta": 16.2195,
              "cohens_d": 1.4039,
              "feature": "rsi14"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8939,
              "positive_median": 0.9395,
              "negative_mean": 0.5087,
              "mean_delta": 0.3851,
              "cohens_d": 1.1997,
              "feature": "bb_position"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.7073,
              "positive_median": 1.7448,
              "negative_mean": 0.0877,
              "mean_delta": 1.6195,
              "cohens_d": 1.1596,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "60분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.7557,
              "positive_median": 2.0783,
              "negative_mean": 0.1723,
              "mean_delta": 1.5834,
              "cohens_d": 0.84,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2323,
              "positive_median": 0.2812,
              "negative_mean": 0.0288,
              "mean_delta": 0.2034,
              "cohens_d": 0.6776,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 64.5029,
              "positive_median": 67.2081,
              "negative_mean": 51.0312,
              "mean_delta": 13.4717,
              "cohens_d": 1.132,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 128281.0776,
              "positive_median": 121110.6516,
              "negative_mean": 1466.0508,
              "mean_delta": 126815.0268,
              "cohens_d": 0.7005,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8352,
              "positive_median": 0.9019,
              "negative_mean": 0.5165,
              "mean_delta": 0.3187,
              "cohens_d": 0.9891,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8924,
              "positive_median": 0.7123,
              "negative_mean": 0.5554,
              "mean_delta": 0.337,
              "cohens_d": 1.0687,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 8.961,
              "positive_median": 7.9893,
              "negative_mean": 3.985,
              "mean_delta": 4.976,
              "cohens_d": 0.4829,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 84,
                "down": 12
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.875,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 78,
                "bearish": 18
              },
              "negative_distribution": {
                "bearish": 902,
                "bullish": 1098
              },
              "positive_bullish_ratio": 0.8125,
              "negative_bullish_ratio": 0.549,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 64.5029,
              "positive_median": 67.2081,
              "negative_mean": 51.0312,
              "mean_delta": 13.4717,
              "cohens_d": 1.132,
              "feature": "rsi14"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8924,
              "positive_median": 0.7123,
              "negative_mean": 0.5554,
              "mean_delta": 0.337,
              "cohens_d": 1.0687,
              "feature": "atr_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8352,
              "positive_median": 0.9019,
              "negative_mean": 0.5165,
              "mean_delta": 0.3187,
              "cohens_d": 0.9891,
              "feature": "bb_position"
            }
          ]
        },
        "240분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 2.2725,
              "positive_median": 2.7682,
              "negative_mean": 0.6314,
              "mean_delta": 1.6411,
              "cohens_d": 0.4327,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2357,
              "positive_median": 0.2516,
              "negative_mean": 0.1093,
              "mean_delta": 0.1264,
              "cohens_d": 0.2038,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 61.4744,
              "positive_median": 63.6199,
              "negative_mean": 52.0967,
              "mean_delta": 9.3777,
              "cohens_d": 0.692,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 171325.0832,
              "positive_median": 170090.5909,
              "negative_mean": 13.7615,
              "mean_delta": 171311.3218,
              "cohens_d": 0.5479,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.7756,
              "positive_median": 0.8505,
              "negative_mean": 0.5272,
              "mean_delta": 0.2484,
              "cohens_d": 0.7482,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.5458,
              "positive_median": 1.3771,
              "negative_mean": 1.1489,
              "mean_delta": 0.3969,
              "cohens_d": 0.781,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 8.3123,
              "positive_median": 6.8983,
              "negative_mean": 4.0063,
              "mean_delta": 4.3059,
              "cohens_d": 0.4293,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 83,
                "down": 13
              },
              "negative_distribution": {
                "up": 1242,
                "down": 758
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.8646,
              "negative_up_ratio": 0.621
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 73,
                "bearish": 23
              },
              "negative_distribution": {
                "bullish": 1145,
                "bearish": 855
              },
              "positive_bullish_ratio": 0.7604,
              "negative_bullish_ratio": 0.5725,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.5458,
              "positive_median": 1.3771,
              "negative_mean": 1.1489,
              "mean_delta": 0.3969,
              "cohens_d": 0.781,
              "feature": "atr_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.7756,
              "positive_median": 0.8505,
              "negative_mean": 0.5272,
              "mean_delta": 0.2484,
              "cohens_d": 0.7482,
              "feature": "bb_position"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 61.4744,
              "positive_median": 63.6199,
              "negative_mean": 52.0967,
              "mean_delta": 9.3777,
              "cohens_d": 0.692,
              "feature": "rsi14"
            }
          ]
        },
        "일": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 5.5965,
              "positive_median": 5.2937,
              "negative_mean": 3.251,
              "mean_delta": 2.3455,
              "cohens_d": 0.2255,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8629,
              "positive_median": 0.6813,
              "negative_mean": 0.5586,
              "mean_delta": 0.3043,
              "cohens_d": 0.1758,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 55.4518,
              "positive_median": 57.9385,
              "negative_mean": 53.5148,
              "mean_delta": 1.937,
              "cohens_d": 0.1309,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -74645.0029,
              "positive_median": 8137.192,
              "negative_mean": 25033.4727,
              "mean_delta": -99678.4756,
              "cohens_d": -0.125,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.5951,
              "positive_median": 0.6633,
              "negative_mean": 0.5545,
              "mean_delta": 0.0406,
              "cohens_d": 0.1209,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 3.3391,
              "positive_median": 3.2886,
              "negative_mean": 2.9161,
              "mean_delta": 0.423,
              "cohens_d": 0.4942,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 4.4019,
              "positive_median": 5.3054,
              "negative_mean": 2.2354,
              "mean_delta": 2.1666,
              "cohens_d": 0.2847,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "up": 64,
                "down": 32
              },
              "negative_distribution": {
                "up": 1169,
                "down": 831
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.6667,
              "negative_up_ratio": 0.5845
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 58,
                "bearish": 38
              },
              "negative_distribution": {
                "bullish": 1255,
                "bearish": 745
              },
              "positive_bullish_ratio": 0.6042,
              "negative_bullish_ratio": 0.6275,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 3.3391,
              "positive_median": 3.2886,
              "negative_mean": 2.9161,
              "mean_delta": 0.423,
              "cohens_d": 0.4942,
              "feature": "atr_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 4.4019,
              "positive_median": 5.3054,
              "negative_mean": 2.2354,
              "mean_delta": 2.1666,
              "cohens_d": 0.2847,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 5.5965,
              "positive_median": 5.2937,
              "negative_mean": 3.251,
              "mean_delta": 2.3455,
              "cohens_d": 0.2255,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "주": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 31.8134,
              "positive_median": 29.7157,
              "negative_mean": 24.6975,
              "mean_delta": 7.1159,
              "cohens_d": 0.2614,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 5.4863,
              "positive_median": 4.6705,
              "negative_mean": 4.424,
              "mean_delta": 1.0623,
              "cohens_d": 0.2287,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 60.9022,
              "positive_median": 60.7695,
              "negative_mean": 58.0555,
              "mean_delta": 2.8467,
              "cohens_d": 0.1857,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 20183.4238,
              "positive_median": 42638.3834,
              "negative_mean": -218471.5992,
              "mean_delta": 238655.0229,
              "cohens_d": 0.0986,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 95,
              "negative_count": 1972,
              "positive_mean": 0.6212,
              "positive_median": 0.6695,
              "negative_mean": 0.5901,
              "mean_delta": 0.0311,
              "cohens_d": 0.0927,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 7.9759,
              "positive_median": 7.8878,
              "negative_mean": 7.9176,
              "mean_delta": 0.0583,
              "cohens_d": 0.0376,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 2.5691,
              "positive_median": -0.3149,
              "negative_mean": 2.4827,
              "mean_delta": 0.0865,
              "cohens_d": 0.0091,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 49,
                "up": 47
              },
              "negative_distribution": {
                "down": 930,
                "up": 1070
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4896,
              "negative_up_ratio": 0.535
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 77,
                "bearish": 19
              },
              "negative_distribution": {
                "bullish": 1644,
                "bearish": 356
              },
              "positive_bullish_ratio": 0.8021,
              "negative_bullish_ratio": 0.822,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 31.8134,
              "positive_median": 29.7157,
              "negative_mean": 24.6975,
              "mean_delta": 7.1159,
              "cohens_d": 0.2614,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 5.4863,
              "positive_median": 4.6705,
              "negative_mean": 4.424,
              "mean_delta": 1.0623,
              "cohens_d": 0.2287,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 60.9022,
              "positive_median": 60.7695,
              "negative_mean": 58.0555,
              "mean_delta": 2.8467,
              "cohens_d": 0.1857,
              "feature": "rsi14"
            }
          ]
        },
        "월": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 78.8733,
              "positive_median": 88.9964,
              "negative_mean": 70.5741,
              "mean_delta": 8.2992,
              "cohens_d": 0.1846,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 93,
              "negative_count": 1868,
              "positive_mean": 14.0546,
              "positive_median": 16.3104,
              "negative_mean": 13.9134,
              "mean_delta": 0.1412,
              "cohens_d": 0.0194,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 65,
              "negative_count": 1358,
              "positive_mean": 67.3422,
              "positive_median": 69.2651,
              "negative_mean": 66.1336,
              "mean_delta": 1.2086,
              "cohens_d": 0.1112,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 2226318.6869,
              "positive_median": 3508435.8149,
              "negative_mean": 1734540.5118,
              "mean_delta": 491778.1751,
              "cohens_d": 0.124,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 52,
              "negative_count": 1085,
              "positive_mean": 0.7297,
              "positive_median": 0.805,
              "negative_mean": 0.705,
              "mean_delta": 0.0246,
              "cohens_d": 0.0935,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 68,
              "negative_count": 1415,
              "positive_mean": 15.6747,
              "positive_median": 14.7348,
              "negative_mean": 15.9328,
              "mean_delta": -0.2581,
              "cohens_d": -0.085,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 9.0646,
              "positive_median": -1.5044,
              "negative_mean": 5.6132,
              "mean_delta": 3.4513,
              "cohens_d": 0.1705,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 50,
                "up": 46
              },
              "negative_distribution": {
                "up": 1011,
                "down": 989
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4792,
              "negative_up_ratio": 0.5055
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 4,
                "bullish": 92
              },
              "negative_distribution": {
                "bullish": 1856,
                "bearish": 144
              },
              "positive_bullish_ratio": 0.9583,
              "negative_bullish_ratio": 0.928,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 78.8733,
              "positive_median": 88.9964,
              "negative_mean": 70.5741,
              "mean_delta": 8.2992,
              "cohens_d": 0.1846,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 9.0646,
              "positive_median": -1.5044,
              "negative_mean": 5.6132,
              "mean_delta": 3.4513,
              "cohens_d": 0.1705,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 2226318.6869,
              "positive_median": 3508435.8149,
              "negative_mean": 1734540.5118,
              "mean_delta": 491778.1751,
              "cohens_d": 0.124,
              "feature": "macd_hist"
            }
          ]
        }
      }
    },
    "swing_low": {
      "label": "스윙 매수 (B)",
      "side": "buy",
      "sample_count": 96,
      "timeframes": {
        "1분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.9547,
              "positive_median": -0.6684,
              "negative_mean": -0.0009,
              "mean_delta": -0.9538,
              "cohens_d": -2.917,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.1875,
              "positive_median": -0.149,
              "negative_mean": -0.0004,
              "mean_delta": -0.1872,
              "cohens_d": -3.2067,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 36.8562,
              "positive_median": 36.3945,
              "negative_mean": 49.8635,
              "mean_delta": -13.0073,
              "cohens_d": -1.0014,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -26645.0525,
              "positive_median": -10880.4575,
              "negative_mean": -712.4614,
              "mean_delta": -25932.5912,
              "cohens_d": -0.4941,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2931,
              "positive_median": 0.2592,
              "negative_mean": 0.4972,
              "mean_delta": -0.2042,
              "cohens_d": -0.6454,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2791,
              "positive_median": 0.1863,
              "negative_mean": 0.0581,
              "mean_delta": 0.221,
              "cohens_d": 2.5933,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -8.623,
              "positive_median": -7.6171,
              "negative_mean": 3.9733,
              "mean_delta": -12.5963,
              "cohens_d": -1.2508,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 93,
                "up": 3
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.0312,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 91,
                "bullish": 5
              },
              "negative_distribution": {
                "bearish": 1004,
                "bullish": 996
              },
              "positive_bullish_ratio": 0.0521,
              "negative_bullish_ratio": 0.498,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.1875,
              "positive_median": -0.149,
              "negative_mean": -0.0004,
              "mean_delta": -0.1872,
              "cohens_d": -3.2067,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.9547,
              "positive_median": -0.6684,
              "negative_mean": -0.0009,
              "mean_delta": -0.9538,
              "cohens_d": -2.917,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.2791,
              "positive_median": 0.1863,
              "negative_mean": 0.0581,
              "mean_delta": 0.221,
              "cohens_d": 2.5933,
              "feature": "atr_pct"
            }
          ]
        },
        "3분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -1.6348,
              "positive_median": -1.3975,
              "negative_mean": 0.0067,
              "mean_delta": -1.6415,
              "cohens_d": -3.4583,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.2577,
              "positive_median": -0.2187,
              "negative_mean": 0.0015,
              "mean_delta": -0.2591,
              "cohens_d": -3.2318,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 30.06,
              "positive_median": 29.9557,
              "negative_mean": 50.0044,
              "mean_delta": -19.9443,
              "cohens_d": -1.6536,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -121963.4092,
              "positive_median": -64643.9438,
              "negative_mean": -1253.6888,
              "mean_delta": -120709.7203,
              "cohens_d": -1.9832,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.117,
              "positive_median": 0.1175,
              "negative_mean": 0.4955,
              "mean_delta": -0.3785,
              "cohens_d": -1.205,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.4029,
              "positive_median": 0.3203,
              "negative_mean": 0.1063,
              "mean_delta": 0.2967,
              "cohens_d": 2.5694,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -8.8934,
              "positive_median": -7.594,
              "negative_mean": 3.9733,
              "mean_delta": -12.8667,
              "cohens_d": -1.2813,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 95,
                "up": 1
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.0104,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 95,
                "bullish": 1
              },
              "negative_distribution": {
                "bearish": 968,
                "bullish": 1032
              },
              "positive_bullish_ratio": 0.0104,
              "negative_bullish_ratio": 0.516,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -1.6348,
              "positive_median": -1.3975,
              "negative_mean": 0.0067,
              "mean_delta": -1.6415,
              "cohens_d": -3.4583,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.2577,
              "positive_median": -0.2187,
              "negative_mean": 0.0015,
              "mean_delta": -0.2591,
              "cohens_d": -3.2318,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.4029,
              "positive_median": 0.3203,
              "negative_mean": 0.1063,
              "mean_delta": 0.2967,
              "cohens_d": 2.5694,
              "feature": "atr_pct"
            }
          ]
        },
        "5분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -2.1584,
              "positive_median": -1.6978,
              "negative_mean": 0.0103,
              "mean_delta": -2.1687,
              "cohens_d": -3.4018,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.2654,
              "positive_median": -0.2497,
              "negative_mean": 0.0029,
              "mean_delta": -0.2683,
              "cohens_d": -2.8938,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 26.9391,
              "positive_median": 26.8186,
              "negative_mean": 49.9748,
              "mean_delta": -23.0358,
              "cohens_d": -1.9641,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -157996.5707,
              "positive_median": -85634.6465,
              "negative_mean": -891.0456,
              "mean_delta": -157105.5251,
              "cohens_d": -2.1006,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.0057,
              "positive_median": 0.0008,
              "negative_mean": 0.4933,
              "mean_delta": -0.4876,
              "cohens_d": -1.5296,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.4484,
              "positive_median": 0.4014,
              "negative_mean": 0.1412,
              "mean_delta": 0.3073,
              "cohens_d": 2.3977,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -8.0367,
              "positive_median": -7.6171,
              "negative_mean": 3.9679,
              "mean_delta": -12.0046,
              "cohens_d": -1.1803,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 90,
                "up": 6
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.0625,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 94,
                "bullish": 2
              },
              "negative_distribution": {
                "bearish": 978,
                "bullish": 1022
              },
              "positive_bullish_ratio": 0.0208,
              "negative_bullish_ratio": 0.511,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -2.1584,
              "positive_median": -1.6978,
              "negative_mean": 0.0103,
              "mean_delta": -2.1687,
              "cohens_d": -3.4018,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.2654,
              "positive_median": -0.2497,
              "negative_mean": 0.0029,
              "mean_delta": -0.2683,
              "cohens_d": -2.8938,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.4484,
              "positive_median": 0.4014,
              "negative_mean": 0.1412,
              "mean_delta": 0.3073,
              "cohens_d": 2.3977,
              "feature": "atr_pct"
            }
          ]
        },
        "10분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -2.5485,
              "positive_median": -2.0805,
              "negative_mean": 0.0269,
              "mean_delta": -2.5754,
              "cohens_d": -3.0444,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.2904,
              "positive_median": -0.2798,
              "negative_mean": 0.0052,
              "mean_delta": -0.2955,
              "cohens_d": -2.3911,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 27.5623,
              "positive_median": 28.0322,
              "negative_mean": 50.3143,
              "mean_delta": -22.752,
              "cohens_d": -1.9824,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -173415.3565,
              "positive_median": -100619.6123,
              "negative_mean": 408.4106,
              "mean_delta": -173823.7672,
              "cohens_d": -2.0674,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.0267,
              "positive_median": -0.0461,
              "negative_mean": 0.503,
              "mean_delta": -0.5297,
              "cohens_d": -1.6585,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.5617,
              "positive_median": 0.5176,
              "negative_mean": 0.2076,
              "mean_delta": 0.3541,
              "cohens_d": 2.24,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -7.5018,
              "positive_median": -7.594,
              "negative_mean": 3.9762,
              "mean_delta": -11.4779,
              "cohens_d": -1.1269,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 87,
                "up": 9
              },
              "negative_distribution": {
                "up": 1237,
                "down": 763
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.0938,
              "negative_up_ratio": 0.6185
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 93,
                "bullish": 3
              },
              "negative_distribution": {
                "bearish": 989,
                "bullish": 1011
              },
              "positive_bullish_ratio": 0.0312,
              "negative_bullish_ratio": 0.5055,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -2.5485,
              "positive_median": -2.0805,
              "negative_mean": 0.0269,
              "mean_delta": -2.5754,
              "cohens_d": -3.0444,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.2904,
              "positive_median": -0.2798,
              "negative_mean": 0.0052,
              "mean_delta": -0.2955,
              "cohens_d": -2.3911,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.5617,
              "positive_median": 0.5176,
              "negative_mean": 0.2076,
              "mean_delta": 0.3541,
              "cohens_d": 2.24,
              "feature": "atr_pct"
            }
          ]
        },
        "15분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -2.7265,
              "positive_median": -2.4081,
              "negative_mean": 0.0445,
              "mean_delta": -2.771,
              "cohens_d": -2.8217,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.3034,
              "positive_median": -0.2759,
              "negative_mean": 0.0078,
              "mean_delta": -0.3112,
              "cohens_d": -2.0822,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 28.3105,
              "positive_median": 28.4928,
              "negative_mean": 50.4093,
              "mean_delta": -22.0987,
              "cohens_d": -1.9881,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -178861.0509,
              "positive_median": -116797.2334,
              "negative_mean": 772.9345,
              "mean_delta": -179633.9854,
              "cohens_d": -1.9374,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.0322,
              "positive_median": -0.0556,
              "negative_mean": 0.5044,
              "mean_delta": -0.5366,
              "cohens_d": -1.7017,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.6562,
              "positive_median": 0.5937,
              "negative_mean": 0.2621,
              "mean_delta": 0.3941,
              "cohens_d": 2.0857,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -6.8886,
              "positive_median": -7.3589,
              "negative_mean": 3.9739,
              "mean_delta": -10.8625,
              "cohens_d": -1.0624,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 85,
                "up": 11
              },
              "negative_distribution": {
                "up": 1236,
                "down": 764
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.1146,
              "negative_up_ratio": 0.618
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 92,
                "bullish": 4
              },
              "negative_distribution": {
                "bearish": 959,
                "bullish": 1041
              },
              "positive_bullish_ratio": 0.0417,
              "negative_bullish_ratio": 0.5205,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -2.7265,
              "positive_median": -2.4081,
              "negative_mean": 0.0445,
              "mean_delta": -2.771,
              "cohens_d": -2.8217,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.6562,
              "positive_median": 0.5937,
              "negative_mean": 0.2621,
              "mean_delta": 0.3941,
              "cohens_d": 2.0857,
              "feature": "atr_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.3034,
              "positive_median": -0.2759,
              "negative_mean": 0.0078,
              "mean_delta": -0.3112,
              "cohens_d": -2.0822,
              "feature": "ema60_slope_5_pct"
            }
          ]
        },
        "30분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -3.0339,
              "positive_median": -2.8386,
              "negative_mean": 0.0877,
              "mean_delta": -3.1217,
              "cohens_d": -2.3061,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.3418,
              "positive_median": -0.33,
              "negative_mean": 0.0144,
              "mean_delta": -0.3562,
              "cohens_d": -1.7002,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 29.9354,
              "positive_median": 28.0522,
              "negative_mean": 50.7359,
              "mean_delta": -20.8005,
              "cohens_d": -1.822,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -197879.1002,
              "positive_median": -133135.7453,
              "negative_mean": -771.6768,
              "mean_delta": -197107.4234,
              "cohens_d": -1.5812,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.0083,
              "positive_median": -0.0059,
              "negative_mean": 0.5087,
              "mean_delta": -0.5004,
              "cohens_d": -1.5718,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8341,
              "positive_median": 0.805,
              "negative_mean": 0.3826,
              "mean_delta": 0.4515,
              "cohens_d": 1.8499,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -6.3737,
              "positive_median": -7.4006,
              "negative_mean": 3.9624,
              "mean_delta": -10.3361,
              "cohens_d": -1.0048,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 83,
                "up": 13
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.1354,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 91,
                "bullish": 5
              },
              "negative_distribution": {
                "bearish": 940,
                "bullish": 1060
              },
              "positive_bullish_ratio": 0.0521,
              "negative_bullish_ratio": 0.53,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -3.0339,
              "positive_median": -2.8386,
              "negative_mean": 0.0877,
              "mean_delta": -3.1217,
              "cohens_d": -2.3061,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.8341,
              "positive_median": 0.805,
              "negative_mean": 0.3826,
              "mean_delta": 0.4515,
              "cohens_d": 1.8499,
              "feature": "atr_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 29.9354,
              "positive_median": 28.0522,
              "negative_mean": 50.7359,
              "mean_delta": -20.8005,
              "cohens_d": -1.822,
              "feature": "rsi14"
            }
          ]
        },
        "60분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -3.3259,
              "positive_median": -2.8706,
              "negative_mean": 0.1723,
              "mean_delta": -3.4982,
              "cohens_d": -1.8663,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.3577,
              "positive_median": -0.3752,
              "negative_mean": 0.0288,
              "mean_delta": -0.3865,
              "cohens_d": -1.2916,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 31.7981,
              "positive_median": 30.4307,
              "negative_mean": 51.0312,
              "mean_delta": -19.2332,
              "cohens_d": -1.6316,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -234127.3324,
              "positive_median": -164630.3987,
              "negative_mean": 1466.0508,
              "mean_delta": -235593.3832,
              "cohens_d": -1.3318,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.0471,
              "positive_median": 0.0347,
              "negative_mean": 0.5165,
              "mean_delta": -0.4694,
              "cohens_d": -1.4698,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.0457,
              "positive_median": 0.9912,
              "negative_mean": 0.5554,
              "mean_delta": 0.4903,
              "cohens_d": 1.5524,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -6.0348,
              "positive_median": -7.0527,
              "negative_mean": 3.985,
              "mean_delta": -10.0197,
              "cohens_d": -0.9738,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 83,
                "up": 13
              },
              "negative_distribution": {
                "up": 1235,
                "down": 765
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.1354,
              "negative_up_ratio": 0.6175
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 87,
                "bullish": 9
              },
              "negative_distribution": {
                "bearish": 902,
                "bullish": 1098
              },
              "positive_bullish_ratio": 0.0938,
              "negative_bullish_ratio": 0.549,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -3.3259,
              "positive_median": -2.8706,
              "negative_mean": 0.1723,
              "mean_delta": -3.4982,
              "cohens_d": -1.8663,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 31.7981,
              "positive_median": 30.4307,
              "negative_mean": 51.0312,
              "mean_delta": -19.2332,
              "cohens_d": -1.6316,
              "feature": "rsi14"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.0457,
              "positive_median": 0.9912,
              "negative_mean": 0.5554,
              "mean_delta": 0.4903,
              "cohens_d": 1.5524,
              "feature": "atr_pct"
            }
          ]
        },
        "240분": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -2.7585,
              "positive_median": -2.9959,
              "negative_mean": 0.6314,
              "mean_delta": -3.3899,
              "cohens_d": -0.8889,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -0.2681,
              "positive_median": -0.3136,
              "negative_mean": 0.1093,
              "mean_delta": -0.3774,
              "cohens_d": -0.6054,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 37.3543,
              "positive_median": 34.7108,
              "negative_mean": 52.0967,
              "mean_delta": -14.7424,
              "cohens_d": -1.0933,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -265386.1295,
              "positive_median": -284855.3276,
              "negative_mean": 13.7615,
              "mean_delta": -265399.8909,
              "cohens_d": -0.8555,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1432,
              "positive_median": 0.0746,
              "negative_mean": 0.5272,
              "mean_delta": -0.384,
              "cohens_d": -1.1633,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.6782,
              "positive_median": 1.5603,
              "negative_mean": 1.1489,
              "mean_delta": 0.5293,
              "cohens_d": 1.038,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -3.6526,
              "positive_median": -5.9579,
              "negative_mean": 4.0063,
              "mean_delta": -7.6589,
              "cohens_d": -0.762,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 72,
                "up": 24
              },
              "negative_distribution": {
                "up": 1242,
                "down": 758
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.25,
              "negative_up_ratio": 0.621
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 78,
                "bullish": 18
              },
              "negative_distribution": {
                "bullish": 1145,
                "bearish": 855
              },
              "positive_bullish_ratio": 0.1875,
              "negative_bullish_ratio": 0.5725,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.1432,
              "positive_median": 0.0746,
              "negative_mean": 0.5272,
              "mean_delta": -0.384,
              "cohens_d": -1.1633,
              "feature": "bb_position"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 37.3543,
              "positive_median": 34.7108,
              "negative_mean": 52.0967,
              "mean_delta": -14.7424,
              "cohens_d": -1.0933,
              "feature": "rsi14"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 1.6782,
              "positive_median": 1.5603,
              "negative_mean": 1.1489,
              "mean_delta": 0.5293,
              "cohens_d": 1.038,
              "feature": "atr_pct"
            }
          ]
        },
        "일": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 2.4169,
              "positive_median": -1.3749,
              "negative_mean": 3.251,
              "mean_delta": -0.8341,
              "cohens_d": -0.08,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.6446,
              "positive_median": 0.0036,
              "negative_mean": 0.5586,
              "mean_delta": 0.086,
              "cohens_d": 0.0497,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 47.8243,
              "positive_median": 45.0076,
              "negative_mean": 53.5148,
              "mean_delta": -5.6905,
              "cohens_d": -0.3838,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -328983.361,
              "positive_median": -353111.2069,
              "negative_mean": 25033.4727,
              "mean_delta": -354016.8337,
              "cohens_d": -0.4443,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.3768,
              "positive_median": 0.2873,
              "negative_mean": 0.5545,
              "mean_delta": -0.1777,
              "cohens_d": -0.5281,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 3.4252,
              "positive_median": 3.3296,
              "negative_mean": 2.9161,
              "mean_delta": 0.5092,
              "cohens_d": 0.5954,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -1.6712,
              "positive_median": -3.7849,
              "negative_mean": 2.2354,
              "mean_delta": -3.9066,
              "cohens_d": -0.5167,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 57,
                "up": 39
              },
              "negative_distribution": {
                "up": 1169,
                "down": 831
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4062,
              "negative_up_ratio": 0.5845
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 51,
                "bullish": 45
              },
              "negative_distribution": {
                "bullish": 1255,
                "bearish": 745
              },
              "positive_bullish_ratio": 0.4688,
              "negative_bullish_ratio": 0.6275,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 3.4252,
              "positive_median": 3.3296,
              "negative_mean": 2.9161,
              "mean_delta": 0.5092,
              "cohens_d": 0.5954,
              "feature": "atr_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.3768,
              "positive_median": 0.2873,
              "negative_mean": 0.5545,
              "mean_delta": -0.1777,
              "cohens_d": -0.5281,
              "feature": "bb_position"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -1.6712,
              "positive_median": -3.7849,
              "negative_mean": 2.2354,
              "mean_delta": -3.9066,
              "cohens_d": -0.5167,
              "feature": "zigzag_leg_pct"
            }
          ]
        },
        "주": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 30.3214,
              "positive_median": 26.9154,
              "negative_mean": 24.6975,
              "mean_delta": 5.6238,
              "cohens_d": 0.2067,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 5.4399,
              "positive_median": 4.6705,
              "negative_mean": 4.424,
              "mean_delta": 1.0159,
              "cohens_d": 0.2188,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 59.6368,
              "positive_median": 59.4265,
              "negative_mean": 58.0555,
              "mean_delta": 1.5813,
              "cohens_d": 0.1032,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": -89987.1018,
              "positive_median": -190840.0367,
              "negative_mean": -218471.5992,
              "mean_delta": 128484.4974,
              "cohens_d": 0.0531,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 95,
              "negative_count": 1972,
              "positive_mean": 0.5911,
              "positive_median": 0.5907,
              "negative_mean": 0.5901,
              "mean_delta": 0.001,
              "cohens_d": 0.0029,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 8.0386,
              "positive_median": 7.8939,
              "negative_mean": 7.9176,
              "mean_delta": 0.1209,
              "cohens_d": 0.0779,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.0566,
              "positive_median": -2.7074,
              "negative_mean": 2.4827,
              "mean_delta": -2.4261,
              "cohens_d": -0.2541,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 59,
                "up": 37
              },
              "negative_distribution": {
                "down": 930,
                "up": 1070
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.3854,
              "negative_up_ratio": 0.535
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bullish": 78,
                "bearish": 18
              },
              "negative_distribution": {
                "bullish": 1644,
                "bearish": 356
              },
              "positive_bullish_ratio": 0.8125,
              "negative_bullish_ratio": 0.822,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 0.0566,
              "positive_median": -2.7074,
              "negative_mean": 2.4827,
              "mean_delta": -2.4261,
              "cohens_d": -0.2541,
              "feature": "zigzag_leg_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 5.4399,
              "positive_median": 4.6705,
              "negative_mean": 4.424,
              "mean_delta": 1.0159,
              "cohens_d": 0.2188,
              "feature": "ema60_slope_5_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 30.3214,
              "positive_median": 26.9154,
              "negative_mean": 24.6975,
              "mean_delta": 5.6238,
              "cohens_d": 0.2067,
              "feature": "close_vs_ema60_pct"
            }
          ]
        },
        "월": {
          "numeric": {
            "close_vs_ema60_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 78.7777,
              "positive_median": 88.9964,
              "negative_mean": 70.5741,
              "mean_delta": 8.2036,
              "cohens_d": 0.1823,
              "feature": "close_vs_ema60_pct"
            },
            "ema60_slope_5_pct": {
              "positive_count": 93,
              "negative_count": 1868,
              "positive_mean": 14.0851,
              "positive_median": 16.3104,
              "negative_mean": 13.9134,
              "mean_delta": 0.1716,
              "cohens_d": 0.0236,
              "feature": "ema60_slope_5_pct"
            },
            "rsi14": {
              "positive_count": 64,
              "negative_count": 1358,
              "positive_mean": 67.5923,
              "positive_median": 69.9246,
              "negative_mean": 66.1336,
              "mean_delta": 1.4587,
              "cohens_d": 0.1342,
              "feature": "rsi14"
            },
            "macd_hist": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 2306193.4203,
              "positive_median": 3508435.8149,
              "negative_mean": 1734540.5118,
              "mean_delta": 571652.9085,
              "cohens_d": 0.1443,
              "feature": "macd_hist"
            },
            "bb_position": {
              "positive_count": 52,
              "negative_count": 1085,
              "positive_mean": 0.7391,
              "positive_median": 0.805,
              "negative_mean": 0.705,
              "mean_delta": 0.034,
              "cohens_d": 0.1293,
              "feature": "bb_position"
            },
            "atr_pct": {
              "positive_count": 68,
              "negative_count": 1415,
              "positive_mean": 15.5724,
              "positive_median": 14.7348,
              "negative_mean": 15.9328,
              "mean_delta": -0.3604,
              "cohens_d": -0.1187,
              "feature": "atr_pct"
            },
            "zigzag_leg_pct": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 7.3356,
              "positive_median": -3.158,
              "negative_mean": 5.6132,
              "mean_delta": 1.7223,
              "cohens_d": 0.0852,
              "feature": "zigzag_leg_pct"
            }
          },
          "categorical": {
            "zigzag_direction": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "down": 53,
                "up": 43
              },
              "negative_distribution": {
                "up": 1011,
                "down": 989
              },
              "positive_bullish_ratio": null,
              "negative_bullish_ratio": null,
              "positive_up_ratio": 0.4479,
              "negative_up_ratio": 0.5055
            },
            "trend_bias": {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_distribution": {
                "bearish": 5,
                "bullish": 91
              },
              "negative_distribution": {
                "bullish": 1856,
                "bearish": 144
              },
              "positive_bullish_ratio": 0.9479,
              "negative_bullish_ratio": 0.928,
              "positive_up_ratio": null,
              "negative_up_ratio": null
            }
          },
          "top_numeric_features": [
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 78.7777,
              "positive_median": 88.9964,
              "negative_mean": 70.5741,
              "mean_delta": 8.2036,
              "cohens_d": 0.1823,
              "feature": "close_vs_ema60_pct"
            },
            {
              "positive_count": 96,
              "negative_count": 2000,
              "positive_mean": 2306193.4203,
              "positive_median": 3508435.8149,
              "negative_mean": 1734540.5118,
              "mean_delta": 571652.9085,
              "cohens_d": 0.1443,
              "feature": "macd_hist"
            },
            {
              "positive_count": 64,
              "negative_count": 1358,
              "positive_mean": 67.5923,
              "positive_median": 69.9246,
              "negative_mean": 66.1336,
              "mean_delta": 1.4587,
              "cohens_d": 0.1342,
              "feature": "rsi14"
            }
          ]
        }
      }
    }
  },
  "global_feature_ranking": [
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -3.4583,
      "abs_cohens_d": 3.4583,
      "positive_mean": -1.6348,
      "negative_mean": 0.0067,
      "mean_delta": -1.6415,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "5분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -3.4018,
      "abs_cohens_d": 3.4018,
      "positive_mean": -2.1584,
      "negative_mean": 0.0103,
      "mean_delta": -2.1687,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": -3.2318,
      "abs_cohens_d": 3.2318,
      "positive_mean": -0.2577,
      "negative_mean": 0.0015,
      "mean_delta": -0.2591,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "1분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": -3.2067,
      "abs_cohens_d": 3.2067,
      "positive_mean": -0.1875,
      "negative_mean": -0.0004,
      "mean_delta": -0.1872,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "10분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -3.0444,
      "abs_cohens_d": 3.0444,
      "positive_mean": -2.5485,
      "negative_mean": 0.0269,
      "mean_delta": -2.5754,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "1분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": 3.007,
      "abs_cohens_d": 3.007,
      "positive_mean": 0.1378,
      "negative_mean": -0.0004,
      "mean_delta": 0.1381,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "1분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -2.917,
      "abs_cohens_d": 2.917,
      "positive_mean": -0.9547,
      "negative_mean": -0.0009,
      "mean_delta": -0.9538,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "5분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": -2.8938,
      "abs_cohens_d": 2.8938,
      "positive_mean": -0.2654,
      "negative_mean": 0.0029,
      "mean_delta": -0.2683,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "15분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -2.8217,
      "abs_cohens_d": 2.8217,
      "positive_mean": -2.7265,
      "negative_mean": 0.0445,
      "mean_delta": -2.771,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "3분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": 2.7548,
      "abs_cohens_d": 2.7548,
      "positive_mean": 1.1456,
      "negative_mean": 0.0067,
      "mean_delta": 1.1389,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "1분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": 2.7521,
      "abs_cohens_d": 2.7521,
      "positive_mean": 0.7133,
      "negative_mean": -0.0009,
      "mean_delta": 0.7142,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "1분",
      "feature": "atr_pct",
      "cohens_d": 2.5933,
      "abs_cohens_d": 2.5933,
      "positive_mean": 0.2791,
      "negative_mean": 0.0581,
      "mean_delta": 0.221,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "atr_pct",
      "cohens_d": 2.5694,
      "abs_cohens_d": 2.5694,
      "positive_mean": 0.4029,
      "negative_mean": 0.1063,
      "mean_delta": 0.2967,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "5분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": 2.5029,
      "abs_cohens_d": 2.5029,
      "positive_mean": 1.4283,
      "negative_mean": 0.0103,
      "mean_delta": 1.418,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "5분",
      "feature": "atr_pct",
      "cohens_d": 2.3977,
      "abs_cohens_d": 2.3977,
      "positive_mean": 0.4484,
      "negative_mean": 0.1412,
      "mean_delta": 0.3073,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "10분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": -2.3911,
      "abs_cohens_d": 2.3911,
      "positive_mean": -0.2904,
      "negative_mean": 0.0052,
      "mean_delta": -0.2955,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "30분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -2.3061,
      "abs_cohens_d": 2.3061,
      "positive_mean": -3.0339,
      "negative_mean": 0.0877,
      "mean_delta": -3.1217,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "10분",
      "feature": "atr_pct",
      "cohens_d": 2.24,
      "abs_cohens_d": 2.24,
      "positive_mean": 0.5617,
      "negative_mean": 0.2076,
      "mean_delta": 0.3541,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "5분",
      "feature": "macd_hist",
      "cohens_d": -2.1006,
      "abs_cohens_d": 2.1006,
      "positive_mean": -157996.5707,
      "negative_mean": -891.0456,
      "mean_delta": -157105.5251,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "15분",
      "feature": "atr_pct",
      "cohens_d": 2.0857,
      "abs_cohens_d": 2.0857,
      "positive_mean": 0.6562,
      "negative_mean": 0.2621,
      "mean_delta": 0.3941,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "15분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": -2.0822,
      "abs_cohens_d": 2.0822,
      "positive_mean": -0.3034,
      "negative_mean": 0.0078,
      "mean_delta": -0.3112,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "5분",
      "feature": "rsi14",
      "cohens_d": 2.0699,
      "abs_cohens_d": 2.0699,
      "positive_mean": 74.2517,
      "negative_mean": 49.9748,
      "mean_delta": 24.2769,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "10분",
      "feature": "macd_hist",
      "cohens_d": -2.0674,
      "abs_cohens_d": 2.0674,
      "positive_mean": -173415.3565,
      "negative_mean": 408.4106,
      "mean_delta": -173823.7672,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "3분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": 2.0397,
      "abs_cohens_d": 2.0397,
      "positive_mean": 0.1588,
      "negative_mean": 0.0015,
      "mean_delta": 0.1573,
      "positive_count": 96
    },
    {
      "signal_type": "pullback",
      "signal_label": "눌림목 (B*)",
      "side": "buy",
      "timeframe": "1분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -1.9881,
      "abs_cohens_d": 1.9881,
      "positive_mean": -0.4191,
      "negative_mean": -0.0009,
      "mean_delta": -0.4182,
      "positive_count": 70
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "15분",
      "feature": "rsi14",
      "cohens_d": -1.9881,
      "abs_cohens_d": 1.9881,
      "positive_mean": 28.3105,
      "negative_mean": 50.4093,
      "mean_delta": -22.0987,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "macd_hist",
      "cohens_d": -1.9832,
      "abs_cohens_d": 1.9832,
      "positive_mean": -121963.4092,
      "negative_mean": -1253.6888,
      "mean_delta": -120709.7203,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "10분",
      "feature": "rsi14",
      "cohens_d": -1.9824,
      "abs_cohens_d": 1.9824,
      "positive_mean": 27.5623,
      "negative_mean": 50.3143,
      "mean_delta": -22.752,
      "positive_count": 96
    },
    {
      "signal_type": "pullback",
      "signal_label": "눌림목 (B*)",
      "side": "buy",
      "timeframe": "1분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": -1.9745,
      "abs_cohens_d": 1.9745,
      "positive_mean": -0.0718,
      "negative_mean": -0.0004,
      "mean_delta": -0.0715,
      "positive_count": 70
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "5분",
      "feature": "rsi14",
      "cohens_d": -1.9641,
      "abs_cohens_d": 1.9641,
      "positive_mean": 26.9391,
      "negative_mean": 49.9748,
      "mean_delta": -23.0358,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "15분",
      "feature": "macd_hist",
      "cohens_d": -1.9374,
      "abs_cohens_d": 1.9374,
      "positive_mean": -178861.0509,
      "negative_mean": 772.9345,
      "mean_delta": -179633.9854,
      "positive_count": 96
    },
    {
      "signal_type": "breakout",
      "signal_label": "돌파 (B^)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "bb_position",
      "cohens_d": 1.9334,
      "abs_cohens_d": 1.9334,
      "positive_mean": 1.108,
      "negative_mean": 0.4955,
      "mean_delta": 0.6125,
      "positive_count": 32
    },
    {
      "signal_type": "breakout",
      "signal_label": "돌파 (B^)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "rsi14",
      "cohens_d": 1.9135,
      "abs_cohens_d": 1.9135,
      "positive_mean": 73.1124,
      "negative_mean": 50.0044,
      "mean_delta": 23.108,
      "positive_count": 32
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "60분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -1.8663,
      "abs_cohens_d": 1.8663,
      "positive_mean": -3.3259,
      "negative_mean": 0.1723,
      "mean_delta": -3.4982,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "1분",
      "feature": "atr_pct",
      "cohens_d": 1.8526,
      "abs_cohens_d": 1.8526,
      "positive_mean": 0.1829,
      "negative_mean": 0.0581,
      "mean_delta": 0.1248,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "30분",
      "feature": "atr_pct",
      "cohens_d": 1.8499,
      "abs_cohens_d": 1.8499,
      "positive_mean": 0.8341,
      "negative_mean": 0.3826,
      "mean_delta": 0.4515,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "30분",
      "feature": "rsi14",
      "cohens_d": -1.822,
      "abs_cohens_d": 1.822,
      "positive_mean": 29.9354,
      "negative_mean": 50.7359,
      "mean_delta": -20.8005,
      "positive_count": 96
    },
    {
      "signal_type": "breakout",
      "signal_label": "돌파 (B^)",
      "side": "buy",
      "timeframe": "1분",
      "feature": "rsi14",
      "cohens_d": 1.8031,
      "abs_cohens_d": 1.8031,
      "positive_mean": 73.3036,
      "negative_mean": 49.8635,
      "mean_delta": 23.4401,
      "positive_count": 32
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "10분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": 1.7802,
      "abs_cohens_d": 1.7802,
      "positive_mean": 1.4972,
      "negative_mean": 0.0269,
      "mean_delta": 1.4703,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "10분",
      "feature": "rsi14",
      "cohens_d": 1.779,
      "abs_cohens_d": 1.779,
      "positive_mean": 70.8835,
      "negative_mean": 50.3143,
      "mean_delta": 20.5692,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "15분",
      "feature": "rsi14",
      "cohens_d": 1.7601,
      "abs_cohens_d": 1.7601,
      "positive_mean": 70.1593,
      "negative_mean": 50.4093,
      "mean_delta": 19.75,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "3분",
      "feature": "rsi14",
      "cohens_d": 1.7464,
      "abs_cohens_d": 1.7464,
      "positive_mean": 71.1313,
      "negative_mean": 50.0044,
      "mean_delta": 21.127,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "15분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": 1.7433,
      "abs_cohens_d": 1.7433,
      "positive_mean": 1.7481,
      "negative_mean": 0.0445,
      "mean_delta": 1.7036,
      "positive_count": 96
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "15분",
      "feature": "bb_position",
      "cohens_d": -1.7017,
      "abs_cohens_d": 1.7017,
      "positive_mean": -0.0322,
      "negative_mean": 0.5044,
      "mean_delta": -0.5366,
      "positive_count": 96
    },
    {
      "signal_type": "pullback",
      "signal_label": "눌림목 (B*)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "close_vs_ema60_pct",
      "cohens_d": -1.7009,
      "abs_cohens_d": 1.7009,
      "positive_mean": -0.606,
      "negative_mean": 0.0067,
      "mean_delta": -0.6127,
      "positive_count": 70
    },
    {
      "signal_type": "swing_low",
      "signal_label": "스윙 매수 (B)",
      "side": "buy",
      "timeframe": "30분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": -1.7002,
      "abs_cohens_d": 1.7002,
      "positive_mean": -0.3418,
      "negative_mean": 0.0144,
      "mean_delta": -0.3562,
      "positive_count": 96
    },
    {
      "signal_type": "swing_high",
      "signal_label": "스윙 매도 (S)",
      "side": "sell",
      "timeframe": "5분",
      "feature": "ema60_slope_5_pct",
      "cohens_d": 1.6972,
      "abs_cohens_d": 1.6972,
      "positive_mean": 0.1653,
      "negative_mean": 0.0029,
      "mean_delta": 0.1624,
      "positive_count": 96
    },
    {
      "signal_type": "pullback",
      "signal_label": "눌림목 (B*)",
      "side": "buy",
      "timeframe": "5분",
      "feature": "rsi14",
      "cohens_d": -1.679,
      "abs_cohens_d": 1.679,
      "positive_mean": 30.2127,
      "negative_mean": 49.9748,
      "mean_delta": -19.7621,
      "positive_count": 70
    },
    {
      "signal_type": "pullback",
      "signal_label": "눌림목 (B*)",
      "side": "buy",
      "timeframe": "3분",
      "feature": "rsi14",
      "cohens_d": -1.6708,
      "abs_cohens_d": 1.6708,
      "positive_mean": 29.8693,
      "negative_mean": 50.0044,
      "mean_delta": -20.1351,
      "positive_count": 70
    },
    {
      "signal_type": "breakout",
      "signal_label": "돌파 (B^)",
      "side": "buy",
      "timeframe": "5분",
      "feature": "bb_position",
      "cohens_d": 1.6638,
      "abs_cohens_d": 1.6638,
      "positive_mean": 1.0303,
      "negative_mean": 0.4933,
      "mean_delta": 0.537,
      "positive_count": 32
    }
  ]
}