金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 188|回复: 1

请帮忙看下这个策略怎么修改才能正常运行

[复制链接]

1

主题

1

帖子

1

积分

Rank: 1

等级: 新手上路

注册:
2025-9-27
曾用名:
发表于 2025-9-27 20:01 | 显示全部楼层 |阅读模式

INPUT:
    N1(3,1,100,1),   // BBI参数1
    N2(6,1,100,1),   // BBI参数2  
    N3(12,1,100,1),  // BBI参数3
    N4(24,1,100,1);  // BBI参数4

VARIABLE:
    BBI(0),          // BBI指标值
    TrendFlag(0),    // 趋势标志:1=上升,-1=下降
    LastBBI(0);      // 上一根K线的BBI值

// 计算BBI指标
BBI = (MA(CLOSE,N1) + MA(CLOSE,N2) + MA(CLOSE,N3) + MA(CLOSE,N4)) / 4;

// 判断BBI趋势方向
IF BBI > LastBBI THEN
    TrendFlag = 1    // BBI上升趋势
ELSE IF BBI < LastBBI THEN
    TrendFlag = -1   // BBI下降趋势
ELSE
    TrendFlag = TrendFlag; // 保持原趋势

LastBBI = BBI; // 更新上一根BBI值

// 交易条件判断
IF MarketPosition <> 1 AND TrendFlag = 1 THEN BEGIN
    // BBI上升趋势,只做多
    IF C > BBI THEN BEGIN
        BUY(2,1); // 收盘价高于BBI,买入2手多单
        DEBUG('开多单:价格=',C,' BBI=',BBI);
    END
END

IF MarketPosition = 1 THEN BEGIN
    // 持有多单时的平仓条件
    IF C < BBI THEN BEGIN
        SELL(1,2); // 收盘价跌破BBI,平仓多单
        DEBUG('平多单:价格=',C,' BBI=',BBI);
    END
END

IF MarketPosition <> -1 AND TrendFlag = -1 THEN BEGIN
    // BBI下降趋势,只做空
    IF C < BBI THEN BEGIN
        BUYSHORT(2,1); // 收盘价跌破BBI,卖出2手空单
        DEBUG('开空单:价格=',C,' BBI=',BBI);
    END
END

IF MarketPosition = -1 THEN BEGIN
    // 持有空单时的平仓条件
    IF C > BBI THEN BEGIN
        SELLSHORT(1,2); // 收盘价高于BBI,平仓空单
        DEBUG('平空单:价格=',C,' BBI=',BBI);
    END
END

// 绘制BBI线
DRAWLINE1(BBI,COLORRED);


策略说明:

核心逻辑:

1. 趋势判断:通过比较当前BBI值与上一根K线的BBI值来判断趋势方向
2. 多单规则:BBI上升趋势时,收盘价上穿BBI开多单2手,收盘价跌破BBI平多单
3. 空单规则:BBI下降趋势时,收盘价下穿BBI开空单2手,收盘价上穿BBI平空单

参数设置:

· N1, N2, N3, N4:BBI指标的四个移动平均周期,可调整
· 默认设置为3,6,12,24,适合3分钟周期

功能特点:

· 使用DEBUG函数输出交易信号,便于调试
· 绘制BBI指标线,方便视觉分析
· 严格的趋势过滤,避免逆势交易


回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2025-9-28 09:55 | 显示全部楼层
我没管你的代码了。我仅按照下面的策略文字描述使用ai重新编写。


[PEL] 复制代码
{
策略名称:BBI多空趋势交易策略
功能说明:
1. 通过BBI值变化判断趋势方向
2. 在上升趋势中做多,下降趋势中做空
3. 使用2手固定仓位
}

// BBI指标参数
INPUT:
    m1(3),   // 均线1周期
    m2(6),   // 均线2周期
    m3(12),  // 均线3周期
    m4(24);  // 均线4周期

// 计算BBI指标
BBI:(MA(CLOSE,m1)+MA(CLOSE,m2)+MA(CLOSE,m3)+MA(CLOSE,m4))/4;

// 趋势判断
BBI_趋势 := IF(BBI > REF(BBI,1), 1, IF(BBI < REF(BBI,1), -1, 0));

// 交易信号
上穿BBI := CROSS(CLOSE, BBI);
下穿BBI := CROSS(BBI, CLOSE);

// 多单规则
开多条件 := BBI_趋势 = 1 AND 上穿BBI;
平多条件 := 下穿BBI;

// 空单规则
开空条件 := BBI_趋势 = -1 AND 下穿BBI;
平空条件 := 上穿BBI;

// 执行交易
IF 开多条件 AND HOLDING <= 0 THEN BEGIN
    SELLSHORT(HOLDING < 0, ABS(HOLDING), MARKET);  // 先平空仓
    BUY(HOLDING = 0, 2, MARKET);                   // 开多仓2手
END;

IF 平多条件 AND HOLDING > 0 THEN BEGIN
    SELL(1, HOLDING, MARKET);                      // 平多仓
END;

IF 开空条件 AND HOLDING >= 0 THEN BEGIN
    SELL(HOLDING > 0, HOLDING, MARKET);            // 先平多仓
    BUYSHORT(HOLDING = 0, 2, MARKET);              // 开空仓2手
END;

IF 平空条件 AND HOLDING < 0 THEN BEGIN
    SELLSHORT(1, ABS(HOLDING), MARKET);            // 平空仓
END;

// 图表标注
DRAWICON(开多条件, LOW, 1);
DRAWICON(平多条件, HIGH, 2);
DRAWICON(开空条件, HIGH, 3);
DRAWICON(平空条件, LOW, 4);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-10-8 16:34 , Processed in 0.099323 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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