金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 577|回复: 3

求助改写指标

[复制链接]

13

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2024-12-9
曾用名:
发表于 2025-3-25 12:37 | 显示全部楼层 |阅读模式
import pandas as pd
import numpy as np
def bollinger_bands_strategy(data, window=20, std_dev=2):
    # 计算布林带
    data['MA20'] = data['Close'].rolling(window=window).mean()
    data['Std'] = data['Close'].rolling(window=window).std()
    data['Upper'] = data['MA20'] + std_dev * data['Std']
    data['Lower'] = data['MA20'] - std_dev * data['Std']
   
    # 计算开口宽度(带宽)
    data['Bandwidth'] = (data['Upper'] - data['Lower']) / data['MA20']
   
    # 生成信号
    data['Signal'] = 0  # 0:无信号, 1:做多, -1:做空
   
    # 开口扩大条件(带宽连续3日上升)
    bandwidth_increasing = data['Bandwidth'].diff() > 0
    data['Bandwidth_Up'] = bandwidth_increasing.rolling(3).sum() == 3
   
    # 开口缩小条件(带宽连续2日下降)
    bandwidth_decreasing = data['Bandwidth'].diff() < 0
    data['Bandwidth_Down'] = bandwidth_decreasing.rolling(2).sum() == 2
   
    # 做多信号:开口扩大 + 收盘价突破上轨 + 成交量放大
    data.loc[
        (data['Bandwidth_Up']) &
        (data['Close'] > data['Upper']) &
        (data['Volume'] > data['Volume'].rolling(5).mean()),
        'Signal'
    ] = 1
   
    # 做空信号:开口扩大 + 收盘价跌破下轨 + 成交量放大
    data.loc[
        (data['Bandwidth_Up']) &
        (data['Close'] < data['Lower']) &
        (data['Volume'] > data['Volume'].rolling(5).mean()),
        'Signal'
    ] = -1
   
    # 平仓信号:开口缩小
    data.loc[data['Bandwidth_Down'], 'Signal'] = 0
   
    return data
# 示例调用
data = pd.read_csv('futures_data.csv')  # 输入OHLCV数据
result = bollinger_bands_strategy(data)
print(result[['Date', 'Close', 'Upper', 'Lower', 'Bandwidth', 'Signal']])


补充内容 (2025-3-25 12:38):
          开口扩大(波动率上升)             开口缩小(波动率下降)
          ↗                         ↘
价格突破上轨 → 做多信号 → 持有           → 平仓
价格突破下轨 → 做空信号 → 持有           → 平仓
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-3-25 13:13 | 显示全部楼层
请给出具体条件描述,不要用ai生成的代码直接提出来
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

13

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2024-12-9
曾用名:
 楼主| 发表于 2025-3-26 18:04 | 显示全部楼层
求横盘整理后布林轨开口放大或者缩小寻找起爆点指标,# 做多信号:开口扩大 + 收盘价突破上轨 + 成交量放大
做空信号:开口扩大 + 收盘价跌破下轨 + 成交量放大
回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-3-27 08:47 | 显示全部楼层
请给出具体定义,扩大怎么定义
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2025-7-14 03:33 , Processed in 0.102882 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表