金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 4747|回复: 10

stkindiex变量作参数问题

[复制链接]

14

主题

51

帖子

51

积分

等级: 免费版

注册:
2022-1-8
曾用名:
发表于 2022-8-3 08:40 | 显示全部楼层 |阅读模式
xtpara1:=89;
xtpara2:=10;

s1:=NUMTOSTR(xtpara1,0);
s2:=NUMTOSTR(xtpara2,0);

//duoxt2Szqsdt:=#yyxt.duoxt2Szqs('+s1+','+s2+',1)#,LINETHICK0; //动态找箱体

duoxt2Szqsdt:=stkindiex('','yyxt.duoxt2Szqs('+s1+','+s2+',1)',0,-1,0,0) ; ,LINETHICK0;
在这个里面,我固定了xtpara1,xtpara2作为89  10,结果正常。但如果
xtpara1是类似这样的动态变量:
xtpara1_1:=max(89,sptparazqs);
xtpara1:=min(lgdzqs,xtpara1_1);
输出结果无论xtpara1,xtpara2怎么变化,但duoxt2Szqsdt都不变,是什么情况?


回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-3 08:56 | 显示全部楼层
一般是不能这样使用动态参数进行调用的。每个K参数不一样,这样会造成引用过多的报错的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

14

主题

51

帖子

51

积分

等级: 免费版

注册:
2022-1-8
曾用名:
 楼主| 发表于 2022-8-3 08:59 | 显示全部楼层
没有报错,就是变量就无效。固定为常数就生效。
回复

使用道具 举报

14

主题

51

帖子

51

积分

等级: 免费版

注册:
2022-1-8
曾用名:
 楼主| 发表于 2022-8-3 09:00 | 显示全部楼层
这个方法也是 论坛里面建议的方案。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-3 09:01 | 显示全部楼层
本帖最后由 技术009 于 2022-8-3 09:03 编辑

那你直接输出 这里的xtpara1,lgdzqs,sptparazqs的值看下。是不是你的逻辑导致你参数根本没变过。
xtpara1_1:=max(89,sptparazqs);
xtpara1:=min(lgdzqs,xtpara1_1);
反正我本地随便弄一个就报引用过多错误。你那边没报错,那可能是参数变化不多。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

14

主题

51

帖子

51

积分

等级: 免费版

注册:
2022-1-8
曾用名:
 楼主| 发表于 2022-8-3 09:16 | 显示全部楼层
我转换为字符串,它输出是1000174,正确的应该是177。据说是数据类型问题。我那个是周期数,每个k线都会变化。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-3 09:18 | 显示全部楼层
你最好能给我能复现你这个现象的完整代码我本地调试下。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

14

主题

51

帖子

51

积分

等级: 免费版

注册:
2022-1-8
曾用名:
 楼主| 发表于 2022-8-3 12:45 | 显示全部楼层
aa:=H>ref(hhv(h,89),1);


aazqs:=barslast(aa);

xtpara1:=min(89,aazqs);

xtpara2:
if(aazqs<=89,14,
(if(aazqs>89 and aazqs<=144,20,
(if(aazqs>144 and aazqs<=233,28,
(if(aazqs>233 and aazqs<=377,40,

40))))))),LINETHICK0;

s1:=NUMTOSTR(xtpara1,0);
s2:=NUMTOSTR(xtpara2,0);

//duoxt2Szqsdt:=#yyxt.duoxt2Szqs('+s1+','+s2+',1)#,LINETHICK0; //动态找箱体

duoxt2Szqsdt:=stkindiex('','yyxt.duoxt2Szqs('+s1+','+s2+',1)',0,-1,0,0) ; ,LINETHICK0;





yyxt:
参数s1,s2

duoxt2Szqs:
if(s1<=20 and s2<=14,14,

35),LINETHICK0;
回复

使用道具 举报

14

主题

51

帖子

51

积分

等级: 免费版

注册:
2022-1-8
曾用名:
 楼主| 发表于 2022-8-3 12:46 | 显示全部楼层
我弄了一个示例,你可以看看。改变变量的值,但duoxt2Szqsdt一直不变。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2022-8-3 13:27 | 显示全部楼层
你指标是序列模式的吧? 只有这种情况才满足你描述的情况。

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-7 06:47 , Processed in 0.147630 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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