金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 1749|回复: 3

如何利用数组和循环表述序列条件值

[复制链接]

9

主题

37

帖子

47

积分

Rank: 2

等级: 标准版

注册:
2022-10-26
曾用名:
发表于 2023-7-20 22:43 | 显示全部楼层 |阅读模式
老师好: 在1分钟周期,想表述:买入前20天的日成交额均小于20亿,用for循环和数组写作都不成功,正确的写法如何?        开多条件KD5中,只写了前10个就占满半屏了……

        YY:=100000000;//亿元单位
        KD5:=CALLSTOCK('',VTAMOUNT,6,-1)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-2)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-3)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-4)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-5)<20*YY AND              
                 CALLSTOCK('',VTAMOUNT,6,-6)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-7)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-8)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-9)<20*YY AND
                 CALLSTOCK('',VTAMOUNT,6,-10)<20*YY;


回复

使用道具 举报

9

主题

37

帖子

47

积分

Rank: 2

等级: 标准版

注册:
2022-10-26
曾用名:
 楼主| 发表于 2023-7-21 07:23 | 显示全部楼层
尝试如下写法,结果不成功:VARIABLE:SS=0;
YY:=100000000;//亿元单位 IF NOT(ISLASTBAR) THEN EXIT;//为了加快运算速度,只有最后一个周期时才循环计算
FOR N=1 TO 30 DO BEGIN
    IF CALLSTOCK('',VTAMOUNT,6,-N)>20*YY THEN
       SS:=SS+1
END;

KD5:= SS<1;
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-7-21 09:11 | 显示全部楼层
你跨周期进行指标调用啊。

新建一个指标A:
YY:=100000000;//亿元单位
R:ALL(AMOUNT<20*YY,30);

1分钟上进行调用:
R:"A.R#DAY";
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

9

主题

37

帖子

47

积分

Rank: 2

等级: 标准版

注册:
2022-10-26
曾用名:
 楼主| 发表于 2023-7-21 09:57 | 显示全部楼层
按老师的做法,搞定! 不过指标中必须前移一位,否则将当前K线也包含了,出不来结果,即: R:ALL(REF(AMOUNT,1)<20*YY,30);  感谢老师!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-16 07:54 , Processed in 0.109684 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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