金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 319|回复: 1

帮忙优化代码,跨周期函数定义代码设置,谢谢

[复制链接]

3

主题

22

帖子

22

积分

Rank: 1

等级: 新手上路

注册:
2024-3-26
曾用名:
发表于 2025-5-27 14:03 | 显示全部楼层 |阅读模式
// 新增:跨周期参数(可关闭验证)
INPUT:EnableMultiTimeframe(1,0,1,1){是否启用跨周期验证(1=启用,0=关闭)};
INPUT:RequiredPeriods(2,1,4,1){需同步的周期数(1-4)}; // 需多少个周期方向一致才开仓

VAR WEEK_DIFF:EMA(DATA("WEEK",CLOSE),MACD短周期) - EMA(DATA("WEEK",CLOSE),MACD长周期); // 周线DIFF
VAR DAY_DIFF:EMA(DATA("Day",CLOSE),MACD短周期) - EMA(DATA("Day",CLOSE),MACD长周期); // 日线DIFF
VAR HOUR_DIFF:EMA(DATA("60",CLOSE),MACD短周期) - EMA(DATA("60",CLOSE),MACD长周期); // 小时线DIFF
VAR MIN30_DIFF:EMA(DATA("30",CLOSE),MACD短周期) - EMA(DATA("30",CLOSE),MACD长周期); // 30分钟DIFF

// 新增:各周期方向一致性判断(1=多头,-1=空头,0=无信号)
VAR CurrentDir:IF(DIFF>DEA,1,IF(DIFF<DEA,-1,0)); // 当前周期方向
VAR WeekDir:IF(WEEK_DIFF>REF(WEEK_DIFF,1),1,IF(WEEK_DIFF<REF(WEEK_DIFF,1),-1,0)); // 周线方向(用DIFF趋势代替交叉)
VAR DayDir:IF(DAY_DIFF>REF(DAY_DIFF,1),1,IF(DAY_DIFF<REF(DAY_DIFF,1),-1,0)); // 日线方向
VAR HourDir:IF(HOUR_DIFF>REF(HOUR_DIFF,1),1,IF(HOUR_DIFF<REF(HOUR_DIFF,1),-1,0)); // 小时线方向
VAR Min30Dir:IF(MIN30_DIFF>REF(MIN30_DIFF,1),1,IF(MIN30_DIFF<REF(MIN30_DIFF,1),-1,0)); // 30分钟线方向

// 新增:跨周期方向一致性统计
VAR BullishCount:0; // 多头方向周期数
VAR BearishCount:0; // 空头方向周期数
IF CurrentDir>0 THEN BullishCount:=BullishCount+1;
IF CurrentDir<0 THEN BearishCount:=BearishCount+1;
IF WeekDir>0 THEN BullishCount:=BullishCount+1;
IF WeekDir<0 THEN BearishCount:=BearishCount+1;
IF DayDir>0 THEN BullishCount:=BullishCount+1;
IF DayDir<0 THEN BearishCount:=BearishCount+1;
IF HourDir>0 THEN BullishCount:=BullishCount+1;
IF HourDir<0 THEN BearishCount:=BearishCount+1;
IF Min30Dir>0 THEN BullishCount:=BullishCount+1;
IF Min30Dir<0 THEN BearishCount:=BearishCount+1;

// 新增:跨周期验证条件(需至少`RequiredPeriods`个周期方向一致)
VAR MultiLong:EnableMultiTimeframe=1 AND BullishCount>=RequiredPeriods; // 多头跨周期确认
VAR MultiShort:EnableMultiTimeframe=1 AND BearishCount>=RequiredPeriods; // 空头跨周期确认

// 原开仓条件增加跨周期验证
longCondition:=Svalue<CLOSE AND DIFF>DEA AND (EnableMultiTimeframe=0 OR MultiLong); // 关闭验证时直接用原条件
shortCondition:=Svalue>CLOSE AND DIFF<DEA AND (EnableMultiTimeframe=0 OR MultiShort);

回复

使用道具 举报

44

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-5-27 14:05 | 显示全部楼层
跨周期韩式使用stkindi这个,看下该函数说明都有例子的
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-6 04:19 , Processed in 0.091705 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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