文章 "MQL5 初学者:EA 交易技术指标使用指南"

 

新文章 MQL5 初学者:EA 交易技术指标使用指南已发布:

为在EA 交易中获得内置或自定义指标的值,首先应使用相应函数创建指标的处理函数。本文中的示例说明了在创建自己的程序时如何使用技术指标。在本文中说明的指标使用 MQL5 语言构建。本文的目标受众是那些在交易策略开发上不具备太多经验的读者,并旨在通过使用提供的函数库提供简单明了的指标使用方式。

很少有“EA 交易”或指标未在代码中使用标准技术指标。无论是对交易策略的初学者还是高级开发人员,这些标准技术指标的使用都十分普遍。指标创建的各种细节并不难理解;本文的目的即是帮助理解。我们将考虑使用内置标准技术指标的函数的使用。

作者:Sergey Pavlov

 
:) 等待贸易操作 示例。
 

技术指标介绍 (基于Dailyfx 文章)

趋势跟踪

创建趋势跟踪指标是为了帮助交易者交易趋势向上或向下的货币对。我们都听说过 "趋势是你的朋友 "这句话。这些指标可以帮助指出趋势的方向,并告诉我们趋势是否真的存在。

移动平均线

移动平均线(简称 MA)是一种技术工具,它将货币对在一段时间内的价格平均化。它对图表产生的平滑效果有助于更清晰地显示货币对的移动方向......向上、向下或横向。有多种移动平均线可供选择。简单移动平均线和指数移动平均线是目前最流行的。

Ichimoku

Ichimoku 是一个看起来很复杂的趋势助手,但事实证明它比最初看起来要简单得多。这个日文指标是一个独立的指标,可以显示当前趋势、支撑/阻力位,并指示趋势何时可能反转。Ichimoku 粗略翻译为 "一目了然",因为它是一种快速查看图表上价格走势的方法。

ADX

平均方向指数采用不同的方法分析趋势。它不会告诉你价格的趋势是向上还是向下,但会告诉你价格是趋势还是区间。这使它成为区间或趋势策略的完美过滤器,确保你根据当前的市场条件进行交易。

震荡指标

震荡指标让交易者了解特定货币对的动能发展情况。当价格走高时,震荡指标会走高。当价格下跌时,震荡指标会走低。每当震荡指标达到极端水平时,可能就是寻找价格掉头回到均值的时候了。不过,震荡指标达到 "超买 "或 "超卖 "水平并不意味着我们应该试图判断顶部或底部。震荡指标可能会在极端水平停留很长时间,因此我们需要在交易前等待一个有效的信号。

RSI

相对强弱指数可以说是目前最流行的震荡指标。其公式的一个重要组成部分是过去 14 个周期的平均收益和平均损失之间的比率。RSI 介于 0-100 之间,高于 70 视为超买,低于 30 视为超卖。交易者通常会在 70 以上时卖出,在 30 以下时买入。

随机指标

随机指标为交易者提供了一种计算价格震荡的不同方法,即跟踪当前价格与过去 X 个周期的最低点之间的距离。然后用这个距离除以相同周期内最高价和最低价之间的差值。然后,利用所创建的 %K 线创建移动平均线 %D,并将其直接置于 %K 的上方。结果是两条线在 0-100 之间移动,超买和超卖水平分别为 80 和 20。交易者可以在超买或超卖区域等待这两条线交叉,也可以在下单交易前寻找随机指标与实际价格之间的背离。

CCI

商品通道指数与许多震荡指标不同,它没有高低限制。它以 0 为中心线,超买和超卖水平分别从 +100 和 -100 开始。交易者在低于 +100 时卖出,在高于 -100 时买入。要查看 CCI 的一些实际应用案例,请访问

MACD。

移动平均线趋同/背离跟踪两条 EMA 线(12 EMA 和 26 EMA)之间的差值。两个 EMA 之间的差值被绘制在一个子图表上(称为 MACD 线),9 EMA 直接绘制在其上方(称为信号线)。当 MACD 线在信号线上方交叉时,交易者就会买入;当 MACD 线在信号线下方交叉时,交易者就会卖出。也有机会交易 MACD 与价格之间的背离。

波动率

波动率衡量特定货币对的涨跌幅度。当一种货币的价格上下波动剧烈时,就被称为高波动率。而波动幅度不大的货币对则被称为低波动率。重要的是,在开仓前要注意货币对的波动性,这样我们在选择交易规模、止损和限价水平时就能将其考虑在内。

布林线®

布林线直接在价格图表上方打印三条线。中间 "带 "是 20 期简单移动平均线,上 "带 "和下 "带 "在 20 期简单移动平均线上下 2 个标准差之间。这意味着货币对的波动性越大,外带就会越宽,从而使布林线能够普遍用于各种货币对,无论它们的表现如何。布林线越宽,货币对的波动性就越大。布林线最常见的用途是尝试交易触及上、下布林线的双顶/双底,或顺着整体趋势的方向交易外围布林线的反弹。
布林线® 是约翰-布林的注册商标。

ATR

平均真实范围告诉我们在过去 X 个条形图(通常为 14 个)中最高价和最低价之间的平均距离。该指标以点为单位,ATR 越高,货币对的波动性越大,反之亦然。这使其成为衡量波动性的完美工具,在选择止损点时也有很大帮助。

支撑位/阻力位

支点

支点作为较早的技术指标之一,是包括股票、商品和外汇在内的所有市场中使用最广泛的指标之一。枢轴点是由前一段时间的最高价、最低价和收盘价组成的一个公式。有一条中心支点线和围绕它的后续支撑线和阻力线。交易者将这些线作为潜在的支撑位和阻力位,即价格可能难以突破的水平。

Donchian Channels

价格通道或 Donchian Channels 是最近价格走势的上下两条线,它们显示了一段较长时期内的最高价和最低价。如果价格再次接触到这些线,它们就会成为支撑位或阻力位。唐氏通道的一个常用方法是在突破某条线时顺着整体趋势的方向进行交易。理查德-丹尼斯(Richard Dennis)的《海龟交易者》(Turtle Traders)一书让这一策略声名鹊起,丹尼斯在这本书中教导普通人如何根据价格通道进行期货交易。

Introduction to Technical Indicators
Introduction to Technical Indicators
  • Rob Pasche
  • www.dailyfx.com
The first time I opened a charting package and viewed all the available indicators, I felt completely overwhelmed. It looked like an endless list of terms written in a different language. Attempting to learn what all of them did seemed like a near impossible task, but over time, I did learn how many indicators can be helpful with my trading...
 
您好!这里还有一个问题要问:如何在您的智能交易系统中获取技术指标 Heiken Ashi 或 ZigZagColor 的值?有这样的例子吗?
 
Aslanbiy Botashev:
您好!还有一个问题要问:如何在您的智能交易系统中获取技术指标 Heiken Ashi 或 ZigZagColor 的值?有这样的例子吗?
例如,搜索有关此主题的文章 -基于 Heiken-Ashi 指标的交易系统示例
 
Rashid Umarov:
例如,搜索有关此主题的文章 -基于 Heiken-Ashi 指标的交易系统示例

谢谢!是的,我之前下载了这个示例并进行了解析。 我发现了缓冲区复制的简化变体。

我提供了代码变体:

         double ExtColorBuffer[2];         
         if (CopyBuffer(hHeiken_Ashi,4, 0, 2, ExtColorBuffer)<0) return;


         if (ExtColorBuffer[0]==0.0);  // DodgerBlue

         if (ExtColorBuffer[1]==1.0);  // 红色
只剩下寻找平仓指令的代码了。我甚至不好意思经常问。:-D
 

你好,谢尔盖、

我习惯使用 MT4,现在开始接触 MT5。

您关于https://www.mql5.com/en/articles/31 的文章是为数不多的结构清晰的文章之一,非常值得赞赏。

我部分复制了您的代码,想在 EA 中查看/检查自定义指标值

这种对内置指标的变体效果很好:

OnInit 部分:MA_handle=iMA(NULL,0,21,0,MODE_EMA,PRICE_CLOSE);

OnTick 部分:CopyBuffer(MA_handle,0,0,100,MA);ArraySetAsSeries(MA,true);Comment(MA[0]);注释显示当前 MA 值

---

现在,当使用/替换 iMA 时,MA_handle=iCustom(NULL,0, "ParabolicSAR", 0.04, 0.5 );

或我自己的指标时,我得到的结果是"-1",因此即使是内置的抛物线也没有得到正确处理!

如果有人能告诉我如何解决这个问题,我将不胜感激。

---

顺便说一下:我想在下一步检查的自定义指标有 5 个输入(A-E)和 3 个缓冲区。

OnInit 部分可能应该是MA_handle=iCustom(NULL,0, "指标名称",A,B,C,D,E);

MQL5 for Newbies: Guide to Using Technical Indicators in Expert Advisors
MQL5 for Newbies: Guide to Using Technical Indicators in Expert Advisors
  • 2010.03.18
  • Sergey Pavlov
  • www.mql5.com
In order to obtain values of a built-in or custom indicator in an Expert Advisor, first its handle should be created using the corresponding function. Examples in the article show how to use this or that technical indicator while creating your own programs. The article describes indicators that are built n the MQL5 language. It is intended for those who don't have much experience in the development of trading strategies and offers simple and clear ways of working with indicators using the offered library of functions.
 

出色的参考文章。对我帮助很大!:)

 
我对 Ontick() 中的 ArraySetAsSeries() 感到非常恼火。设置一次就够了,不是吗?
 
亲爱的朋友,作为一名 "新手",我要感谢您的精彩文章。
 
多周期应该怎么写呢?如果初始化那里每个周期都写很麻烦。