[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 317

 
kon12 писал(а)>>

朋友们,给知道的人一个忠告。假设我在主图上画了一个自定义指标。然后我使用另一个自定义指标,通过iCustom函数涉及第一个指标。我们能否将它们连接起来,使图表中第一个指标的参数在第二个自定义指标中自动改变?

我不太理解这个任务,但也许这个可以。

MT分析帮助 - 技术指标

-例如,你可以从Awesome Oscillator创建Moving Average指标,从而在AO之外得到一条信号线为此,你应该先画出AO指标,然后使用拖放技术将MA强加在AO上,并在其设置中的 "应用于 "区域选择 "前一个指标数据"(将指标强加在前一个指标的数据上)。如果你选择 "第一个指标数据",那么MA将被创建,基于第一个指标的数据,这不一定是AO。

 
kon12 >> :

朋友们,给知道的人一个忠告。假设我在主图上画了一个自定义指标。然后我使用另一个自定义指标,通过iCustom函数涉及第一个指标。我能否将它们连接起来,使图表中第一个指标的参数在第二个自定义指标中自动改变?

如果你通过iCustom调用源指标,你会把它保存在某个地方,所以把它标记为指标缓冲区,把源指标和转换后的指标作为一个指标的两个缓冲区输出,运行和改变参数会更方便。如果你想胡闹,你可以使用globolvariables。

 
Urain >> :

你不必删除它,你可以通过ObjectSet改变参数。

ps 但一般来说,你的情况需要逐案查看。

谢谢你!

 
kon12 >> :

朋友们,给知道的人一个忠告。假设我在主图上画了一个自定义指标。然后我使用另一个自定义指标,通过iCustom函数涉及第一个指标。我们能否将它们连接起来,以便当第一个指标的参数在图表上发生变化时,第二个自定义指标中的参数将自动改变?

我的理解是,你想在终端手动改变指标的输入参数值,其他指标将对这一变化作出反应?

那么答案就很清楚了--使用iCustom是行不通的。这个函数的工作方式如下 - 带有你指定的参数的指标在程序内存中被 "创建"(而不是在图表上)("好像",我的意思是,它不被绘制),在第一次调用时,它被使用init()和start()函数处理,即如果有一个 "标准 "周期,如for(i=limit;i>=0;i--),所有必要的条形被计算。那么在下一次调用iCustom时,就不会进行重新计算(如果在指标主体中没有明确指定的话)。在MQL中没有为这类指标分配单独的缓冲区,所以如果你需要存储这些值,把它们复制到一个单独的缓冲区是合理的。在MQL中也没有直接访问图表的功能(但它将是有用的IMHO)。

 

谢谢你的回答,我可能没有准确地表述我的想法。让我解释一下:我在主图上使用了一个ZigZag指标。此外,我还使用我自己的指标,显示人字形所显示的波长。该指标通过iCustom访问Zigzag。但在改变 "之 "字形的参数时,我应该进入第二个指标并在那里设置相同的参数。如何只改变 "之 "字形的参数。在Metastocke中,我只是将第二个指标叠加在第一个指标上,就这样了。

 
由于我似乎已经正确理解了这个问题,我将再次回答:使用Metatrader和MQL--不可能
 
alsu >> :
由于我似乎已经正确理解了这个问题,我再次回答:使用Metatrader和MQL,不可能。

不,为什么。你可以通过全局变量、图形对象传递参数。你只需要一个勾就可以重画,但你知道这件事。

当然,最好是将这些指数统一起来。

 
Svinozavr >> :

不,为什么。你可以通过全局变量、图形对象传递参数。你只需要打个勾就可以重画,但你可以做到,你知道。

当然,最好是将这些指数统一起来。

好吧,为了使它 "那个",它不是一个初学者的水平... 总的来说,我想了很久,是不是有一个通用的环境,让每个指标在一个共享的地址空间中注册其真正的缓冲区(好吧,那些 "实际 "存储数据的地方),或者在最坏的情况下,作为全局变量。那么就有可能直接从MQL而不是iCustom来处理图表。我仍然没有去做这件事。

 
alsu >> :

好吧,要使它成为 "那个",它有点超出了初学者的水平...... 总的来说,我想了很久,如果不做一个通用的环境,让每个指标在一个共享的地址空间里注册它的真正的缓冲区(你知道,那些 "真正的 "数据被存储的地方),或者,最坏的情况下,以全局变量的形式。那么就有可能直接从MQL而不是iCustom中应用到图表上。我仍然没有去做这件事。

这将是很酷的。非常有局限性的是无法正常同步指标。我必须在写作时将它们同步化,或者将它们合并。

但是,除了从一个指标中提取不同的子曲线外,使用标准手段无法解决绘图问题。而且可能,即使是用内部手段也不行。如果我们能够像gr.object一样将缓冲区与窗口号绑定,甚至从指标中生成这样一个窗口,那么......嗯,这只是离题。

===

但环境的想法是非常实际的。你对这个问题有什么想法吗?

 
也许可以另起炉灶?
原因: