以文本方式查看主题 - 金字塔客服中心 - 专业程序化交易软件提供商 (http://222.73.7.161/bbs/index.asp) -- 公式模型编写问题提交 (http://222.73.7.161/bbs/list.asp?boardid=4) ---- [求助]循环画线的方法 (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=172313) |
-- 作者:tjtgl -- 发布时间:2019/10/8 14:27:19 -- [求助]循环画线的方法 你好 有以下问题,请协助,谢谢 计划通过循环显示10条粉线,但实际仅显示最后一个循环的粉线,其他不显示,不知道什么原因 代码如下: FX1:= 4000 ;//例:4000
FX0:= 3000 ;//例:3000
FFD := FX1 - FX0;
variable:ratio[10] = 0;
ratio[1] := 0;
ratio[2] := 0.1;
ratio[3] := 0.2;
ratio[4] := 0.3;
ratio[5] := 0.4;
ratio[6] := 0.5;
ratio[7] := 0.6;
ratio[8] := 0.7;
ratio[9] := 0.8;
ratio[10] := 0.9; variable:ratio[10] = 0;
for i = 1 to 10 do
begin
r := ratio[i]; fx[i] := FX0 + (FFD * r);
drawsl( islastbar, fx[i], 0, 35, 1, COLORMAGENTA, LINETHICK2); end;
|
-- 作者:FireScript -- 发布时间:2019/10/8 14:39:44 -- 循环无法使得画线函数多次执行画线的。一条画线语句一条线,你这里其实只相当于一语句。 [此贴子已经被作者于2019/10/8 14:39:54编辑过]
|
-- 作者:FireScript -- 发布时间:2019/10/8 14:41:52 -- 理论上来说需要十条语句才能输出这10条线的。 |
-- 作者:tjtgl -- 发布时间:2019/10/8 14:42:26 -- 明白了,也猜到了,就是想知道,如果画50条线,就是只能重复50行代码,是否有其他办法?谢谢 |
-- 作者:FireScript -- 发布时间:2019/10/8 14:51:52 -- 有个粗略思路,就是让画线函数在历史K上符合条件,避免只在一个K上符合条件,比如限制在倒数10个K上符合条件。只不过最后画出来的效果可能有偏差。具体到代码 就是判断当前K是倒数第几个K,然后和I进行比较,作为画线函数的条件。 你这里画线的一些值都是定值,这个思路应该可以,如果是变量的话,那可能就不符合需求了。 |
-- 作者:tjtgl -- 发布时间:2019/10/8 15:00:03 -- 好主意,需要琢磨和尝试,但估计费劲,因为只要画线就是一组画线代码,无法重复利用画线代码 |