这个python案例如何看这次三线距离保持?

wen python案例 4

三线距离保持"问题的分析

你说的"三线距离保持"在不同场景下含义不同,我需要先明确一下你的具体语境,常见的有两种:

这个python案例如何看这次三线距离保持?

布林带三线(上轨/中轨/下轨)

如果是布林带(Bollinger Bands),三线距离反映的是波动率

import pandas as pd
import numpy as np
# 假设已有 close 价格数据
def bollinger(close, n=20, k=2):
    mid = close.rolling(n).mean()
    std = close.rolling(n).std()
    upper = mid + k * std
    lower = mid - k * std
    return mid, upper, lower
def band_width_metrics(close, n=20, k=2):
    mid, upper, lower = bollinger(close, n, k)
    # 1. 带宽(上轨-下轨)/中轨 —— 衡量距离"松紧"
    bandwidth = (upper - lower) / mid
    # 2. 上轨距离 / 下轨距离
    up_dist = (upper - close) / close
    dn_dist = (close - lower) / close
    # 3. 对称性(三线是否居中)
    skew = (up_dist - dn_dist) / bandwidth
    df = pd.DataFrame({
        'bandwidth': bandwidth,     # 越小越"缩口"
        'up_dist': up_dist,
        'dn_dist': dn_dist,
        'skew': skew                # 0 附近=对称,正=偏上,负=偏下
    })
    return df
# 用法
metrics = band_width_metrics(df['close'])
print(metrics.tail(20))

如何看保持情况: | 指标 | 含义 | 观察点 | |------|------|--------| | bandwidth 持续小 | 三线收窄,即将变盘 | 找历史百分位<10% | | bandwidth 持续大 | 趋势/高波动 | 突破后跟随 | | skew 接近0 | 价居中轨,均衡 | 震荡特征 | | skew 偏离大 | 价贴某一边轨 | 趋势特征 |


均线三线(如 5/10/20 或 MA 多头排列)

如果是均线保持距离,重点关注间距稳定性

def ma_gap(close, periods=(5, 10, 20)):
    mas = {p: close.rolling(p).mean() for p in periods}
    a, b, c = [mas[p] for p in periods]
    # 相邻均线间距
    d1 = a - b   # 短期-中期
    d2 = b - c   # 中期-长期
    # 间距是否稳定(标准差小 = 稳定发散/收敛)
    stability = pd.DataFrame({
        'd1': d1, 'd2': d2,
        'd1_std': d1.rolling(20).std(),
        'd2_std': d2.rolling(20).std(),
    })
    return stability

判断标准:

  • d1d2 同步放大且稳定 → 多头/空头健康
  • d1 快速接近 d2=0 → 均线黏合,方向未定
  • 间距突然收缩 → 趋势可能衰竭

我需要你补充的点

因为"三线"具体指哪三条、判断"保持"的标准,直接决定代码怎么写,请告诉我:

  1. 三线是什么?(布林带?均线?MACD的DIF/DEA/柱?KDJ?还是自定义的三条线)
  2. "距离保持"的目标:是横向稳定不收敛?还是等距发散?还是回到某个阈值?
  3. 数据频率(日线/分钟)和是否已有 DataFrame 列名?

把这段代码贴出来,我直接帮你写"看保持情况"的判定函数和可视化。

上一篇python案例统计伤病停赛影响数据对比?

下一篇当前分类已是最新一篇

抱歉,评论功能暂时关闭!