金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 397|回复: 11

赋值语句无效。请优化

[复制链接]

107

主题

325

帖子

325

积分

等级: 免费版

注册:
2021-6-11
曾用名:
发表于 2025-2-13 09:05 | 显示全部楼层 |阅读模式
// 金字塔PEL代码:逐K线模式计算im00/if00/ic00上一分钟KK最大值Variable:     Array_prev_KK(0),    // 存储上一根K线的KK值   im00_KK(0), if00_KK(0), ic00_KK(0);  // 当前K线的KK值// 初始化数组(首根K线时执行)If CurrentBar = 1 ThenBegin    Array_prev_KK = Array_New(3);    // 初始化为首根K线的KK值(假设首根无前值,使用当前值填充)    im00_KK = (Data1.High + Data1.Low)/2;  // im00当前KK值(示例逻辑)    if00_KK = (Data2.High + Data2.Low)/2;  // if00当前KK值    ic00_KK = (Data3.High + Data3.Low)/2;  // ic00当前KK值    Array_Set(Array_prev_KK, 0, im00_KK);  // 存储供下根K线使用    Array_Set(Array_prev_KK, 1, if00_KK);    Array_Set(Array_prev_KK, 2, ic00_KK);    // 首根K线无前值,最大值按需处理(此处直接赋当前值)    Max_KK = MaxList(im00_KK, if00_KK, ic00_KK);EndElseBegin    // ============================================    // 主逻辑:非首根K线时执行    // ============================================        // 1. 获取上一根K线的KK值(来自数组)    Prev_im00 = Array_Get(Array_prev_KK, 0);    Prev_if00 = Array_Get(Array_prev_KK, 1);    Prev_ic00 = Array_Get(Array_prev_KK, 2);        // 2. 计算上一根K线三个品种的最大值    Max_KK = MaxList(Prev_im00, Prev_if00, Prev_ic00);        // 3. 计算当前K线各品种的KK值(用于更新数组)    im00_KK = (Data1.High + Data1.Low)/2;  // im00当前KK值    if00_KK = (Data2.High + Data2.Low)/2;  // if00当前KK值    ic00_KK = (Data3.High + Data3.Low)/2;  // ic00当前KK值        // 4. 更新数组,存储当前值供下根K线使用    Array_Set(Array_prev_KK, 0, im00_KK);    Array_Set(Array_prev_KK, 1, if00_KK);    Array_Set(Array_prev_KK, 2, ic00_KK);End;// 输出结果(可选)Plot1(Max_KK, "上一分钟KK最大值");  
回复

使用道具 举报

107

主题

325

帖子

325

积分

等级: 免费版

注册:
2021-6-11
曾用名:
 楼主| 发表于 2025-2-13 09:08 | 显示全部楼层
因为在自定义数据里面,有时会刷不到数据,以及效率问题,我想尝试在公式里面建立数组方式来求三个品种的某指标最大值
回复

使用道具 举报

38

主题

9396

帖子

9406

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-2-13 09:08 | 显示全部楼层
建议重新发下,这样堆在一起工组人员不好查看
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

107

主题

325

帖子

325

积分

等级: 免费版

注册:
2021-6-11
曾用名:
 楼主| 发表于 2025-2-13 13:02 | 显示全部楼层
环牛:
[图片]

环牛:
[图片]

环牛:
// 金字塔PEL代码:逐K线模式计算im00/if00/ic00上一分钟KK最大值
Variable:
    Array_prev_KK(0),    // 存储上一根K线的KK值
    im00_KK(0), if00_KK(0), ic00_KK(0);  // 当前K线的KK值

// 初始化数组(首根K线时执行)
If CurrentBar = 1 Then
Begin
    Array_prev_KK = Array_New(3);
    // 初始化为首根K线的KK值(假设首根无前值,使用当前值填充)
    im00_KK = (Data1.High + Data1.Low)/2;  // im00当前KK值(示例逻辑)
    if00_KK = (Data2.High + Data2.Low)/2;  // if00当前KK值
    ic00_KK = (Data3.High + Data3.Low)/2;  // ic00当前KK值
    Array_Set(Array_prev_KK, 0, im00_KK);  // 存储供下根K线使用
    Array_Set(Array_prev_KK, 1, if00_KK);
    Array_Set(Array_prev_KK, 2, ic00_KK);
    // 首根K线无前值,最大值按需处理(此处直接赋当前值)
    Max_KK = MaxList(im00_KK, if00_KK, ic00_KK);
End
Else
Begin
    // ============================================
    // 主逻辑:非首根K线时执行
    // ============================================
   
    // 1. 获取上一根K线的KK值(来自数组)
    Prev_im00 = Array_Get(Array_prev_KK, 0);
    Prev_if00 = Array_Get(Array_prev_KK, 1);
    Prev_ic00 = Array_Get(Array_prev_KK, 2);
   
    // 2. 计算上一根K线三个品种的最大值
    Max_KK = MaxList(Prev_im00, Prev_if00, Prev_ic00);
   
    // 3. 计算当前K线各品种的KK值(用于更新数组)
    im00_KK = (Data1.High + Data1.Low)/2;  // im00当前KK值
    if00_KK = (Data2.High + Data2.Low)/2;  // if00当前KK值
    ic00_KK = (Data3.High + Data3.Low)/2;  // ic00当前KK值
   
    // 4. 更新数组,存储当前值供下根K线使用
    Array_Set(Array_prev_KK, 0, im00_KK);
    Array_Set(Array_prev_KK, 1, if00_KK);
    Array_Set(Array_prev_KK, 2, ic00_KK);
End;

// 输出结果(可选)
Plot1(Max_KK, "上一分钟KK最大值");
回复

使用道具 举报

107

主题

325

帖子

325

积分

等级: 免费版

注册:
2021-6-11
曾用名:
 楼主| 发表于 2025-2-13 13:07 | 显示全部楼层
我是想在1分钟周期逐k,用数组在公式内求某指标的三个品种的最大值(类似自定义数据的最大值)
回复

使用道具 举报

38

主题

9396

帖子

9406

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-2-13 13:15 | 显示全部楼层
你这不是金字塔的代码
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

107

主题

325

帖子

325

积分

等级: 免费版

注册:
2021-6-11
曾用名:
 楼主| 发表于 2025-2-13 14:08 | 显示全部楼层
金字塔怎么写?
回复

使用道具 举报

38

主题

9396

帖子

9406

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-2-13 14:15 | 显示全部楼层
本帖最后由 技术008 于 2025-2-13 14:18 编辑

variable:f[3]=0;f[1]:=某个品种值
f[2]:=某个品种值
f[3]:=某个品种值
max_:LARGE(f,3,1);



金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

107

主题

325

帖子

325

积分

等级: 免费版

注册:
2021-6-11
曾用名:
 楼主| 发表于 2025-2-13 15:13 | 显示全部楼层
某个品种值,请写个事例(比如螺纹连续的最高价)
回复

使用道具 举报

38

主题

9396

帖子

9406

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2025-2-13 15:16 | 显示全部楼层
callstock('rb00',vthigh,6,0)
用callstock去引用品种价格,具体看函数说明
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-3-14 05:13 , Processed in 0.196100 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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