指标: MACD 与零轴交叉 (彩色蜡烛)

 

MACD 与零轴交叉 (彩色蜡烛):

显示 MACD 指标穿越零轴区域的彩色蜡烛条。

MACD 与零轴交叉信号 (彩色蜡烛)

作者: Vladimir Karputov

 

我知道这是一个不应该这样做的例子.....。

标准iMACD() 指标 有什么问题?为什么要使用两个指标?

//--- 获取 MA 句柄
   ExtFastMaHandle=iMA(NULL,0,InpFastEMA,0,MODE_EMA,InpAppliedPrice);
   ExtSlowMaHandle=iMA(NULL,0,InpSlowEMA,0,MODE_EMA,InpAppliedPrice);


现在是时候阅读文档了,而不是

//---
   int limit;
   if(prev_calculated==0)
      limit=0;
   else limit=prev_calculated-1;

写更短的文字,但又不失可读性和可操作性。

//---
   int limit = prev_calculated == 0 ? 0 : prev_calculated-1;


然后,我们等待柱状图形式的指标,然后是线状图形式的指标。我们可以根据图表类型来做吗?指标应显示我们切换到的图表。

使用这些按钮进行切换


 
Alexey Viktorov:

我知道这是一个不应该这样做的例子.....。

标准iMACD() 指标 有什么问题?为什么要使用两个指标?


现在是时候阅读文档了,而不是

写更简短的文字,但又不失可读性和可操作性。


然后,我们等待柱状图形式的指标,然后是线状图形式的指标。你能根据图表类型来做吗?指标应显示我们切换到的图表。

使用这些按钮进行切换


至少有两种方法可以编写指标:1.修改指标的父代码;2.访问指标句柄,然后从指标缓冲区复制信息。
我选择了方案 1。
 
Vladimir Karputov:
指标的编写至少有两种方法:1.修改指标的父代码;2.访问指标句柄,然后从指标缓冲区复制信息。
我选择了方案 1。

即通过读取 iMA 指标缓冲区来更改父代码。

CopyBuffer(ExtFastMaHandle,0,0,to_copy,ExtFastMaBuffer)
CopyBuffer(ExtSlowMaHandle,0,0,to_copy,ExtSlowMaBuffer)

那么是选择第一种方法还是第二种方法?修改父代码还是读取缓冲区????

 
Alexey Viktorov:

这就是通过读取 iMA 指标缓冲区来修改父代码的方法。

那么是第一个选项还是第二个选项?修改父代码或读取缓冲区????


MACD 指标代码:MACD

 

那么,用切换图表视图的按钮切换指标的视图,指标的通用性如何?

交易、自动交易系统和交易策略测试论坛。

指标:MACD 穿过零位(彩色蜡烛图)

Alexey Viktorov, 2017.10.26 10:29 AM


接下来我们等待柱状形式的指标,然后是线状形式的指标。是否可以根据图表类型进行切换?切换到哪种图表,指标就应该显示在哪种图表上。

用这些按钮切换


 

这个指标很棒,但仅有顾问还不够:)有人能用这个指标编写一个机器人 吗?

 
Krivets:

伟大的指标,仅有顾问是不够的:)有人能用这个指标编写机器人 吗?


我可以:) 。

 
Vladimir Karputov:

嗯,我可以:)。


如果我懂编程,自己写也不错。

 
Krivets:

很好的指标,但缺少一个顾问:)有人能用这个指标写一个机器人 吗?


这是一个普通的终端 MACD 指标,只是渲染方式不同而已。它有一个现成的 Expert Advisor,是终端自带的。

 
Andrey F. Zelinsky:

这是一个普通的终端 MACD 指标,只是呈现方式不同而已。它有一个现成的 Expert Advisor,是终端自带的。


在终端中,Expert Advisor 的工作原理不同,在这种情况下,我感兴趣的是指标本身的零线交叉。