布林带 Python

此篇文章介绍了Python函数Boll_Band,它用于计算金融市场的布林带,基于调整收盘价的n日移动平均和标准差。该函数适用于数据帧并返回中线、上带、下带和宽度,常用于技术分析和交易策略开发。

def Boll_Band(DF, n=14):
    "function to calculate Bollinger Band"
    df = DF.copy()
    df["MB"] = df["Adj Close"].rolling(n).mean()
    df["UB"] = df["MB"] + 2*df["Adj Close"].rolling(n).std(ddof=0)
    df["LB"] = df["MB"] - 2*df["Adj Close"].rolling(n).std(ddof=0)
    df["BB_Width"] = df["UB"] - df["LB"]
    return df[["MB","UB","LB","BB_Width"]]

这个Python函数`Boll_Band`用于计算布林带(Bollinger Bands)。这是一种在金融交易和技术分析中常用的指标,主要用于量化资产价格的波动性。函数接受一个数据帧(DataFrame)`DF`和一个整数`n`作为输入,其中`DF`应该包含调整后的收盘价("Adj Close")列。

函数执行以下步骤:

1. **复制数据帧**:函数首先通过`df = DF.copy()`创建原数据帧的副本。

2. **计算中线(Middle Band,MB)**:这通常是n天的移动平均。函数通过`df["Adj Close"].rolling(n).mean()`计算这一均值,并将结果存储在新列`df["MB"]`中。

3. **计算上带(Upper Band,UB)和下带(Lower Band,LB)**:
   - 上带是中线加上两倍的标准差:`df["MB"] + 2*df["Adj Close"].rolling(n).std(ddof=0)`
   - 下带是中线减去两倍的标准差:`df["MB"] - 2*df["Adj C

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值