自由职业者: MetaTrader 和 MQL 的定制编程?
重绘指标的信号条数: 信号使用的柱状移位?
自由职业者: MetaTrader 和 MQL 的定制编程?
重绘指标的信号条数: 信号使用的柱状移位?

描述

www.expforex.com,我们提供先进的 专家顾问 (Expert Advisors),配备了多种功能特性和可定制的 参数 (parameters)。每个 专家顾问 使用灵活的 模板 (template) 构建,允许交易者根据他们独特的交易策略进行定制。

主要 功能 (functions) 包括基于 指标 (indicators) 如 移动平均线 (Moving Average) 和 MACD信号 (signals) 自动开仓和平仓。

Shift 这样的参数决定用于信号分析的 柱数 (bars) (Shift) 数量,确保精准的交易决策。

通过设置 止损 (Stop Loss) 和 获利 (Take Profit) 参数,风险管理得以实现,这些参数在达到特定的利润或亏损点时自动关闭仓位。

滑点 (Slippage) 控制执行订单时允许的价格偏差,而 Martingale追踪止损 (Trailing Stop) 则提供动态的交易量管理和利润保护。

一个突出的功能是使用 魔术号码 (Magic Number),它在图表上唯一标识每个 专家顾问 的交易,防止多个顾问同时操作时发生冲突。

这些功能特性和参数使得来自 www.expforex.com/zh专家顾问 成为在外汇市场中成功自动化交易的强大工具。

购买现成专家顾问的优势 vs 编程您的策略

Exp – 模板 MQL 开源:轻量模板或创建专家顾问

EAPadPRO

信息面板 (Information Panel) 用于我们所有的 顾问 (advisors) 和 工具 (utilities) 适用于 MetaTrader (MetaTrader) 终端。
详细说明 (Detailed Instructions) 关于在我们的交易 专家顾问 (Expert Advisors) 中管理和使用 EAPADPRO 面板 (EAPADPRO Panel) 的基础知识。
友好、直观的用户界面 (User Interface) 方便且成功地使用我们的工具。

外汇 MetaTrader 专家顾问功能示意图

参数:获取信号柱

Shift (0,1,2…..) 柱编号 (Bar Number)。

此参数表示您的 指标 (indicators) 将从中获取 信号 (signals) 的 (bars) 数量。在订购 专家顾问 (Expert Advisor) 时,请指定以下 信号检测参数 (signal detection parameters):

  • 信号出现后立即开仓;
  • 等待信号 在已关闭的 (bar) 上形成后,仅在下一 (bar) 开盘时开仓。

一些 指标 (indicators) 由于其算法,明确了哪个 (bar) 触发信号。

考虑到订单执行的准确性和正确性,交易应仅在已关闭的 (bar) 上处理,即 shift=1 参数。

如果需要在当前 (bar) 信号出现时立即开仓 交易 (DEAL/Position),并且 指标 (indicator) 允许这样做,则应将 shift=0 设置。

指标的信号柱编号 (shift)。绘制指标。选择哪个柱作为信号?

功能:策略信号反转

ReverseSignal (true – false) 启用/禁用。

此参数表示从您的 指标 (indicator(s)) 获取的 信号 (signals) 的反转。

如果您的 专家顾问 (Expert Advisor) 基于特定算法或 指标 (indicator) 的明确信号运行,您可以在不重新编程的情况下更改 买入/卖出信号 (BUY/SELL signals)。

例如,ReverseSignal=true

您的 指标 (indicator) 发出 买入 (BUY) 信号,但 专家顾问 (Expert Advisor) 将开立 卖出 (SELL) 交易。

您的 指标 (indicator) 发出 卖出 (SELL) 信号,但 专家顾问 (Expert Advisor) 将开立 买入 (BUY) 交易。

参数:魔术号码

Magic (0….99999) 号码。

此参数表示分配给图表上 专家顾问 (Expert Advisors) 的唯一 号码 (number)。如果您在不同的图表上使用多个 专家顾问 (Expert Advisors),则需要为它们分配唯一的号码以避免混淆和错误。

例如,如果您使用一个具有不同设置的 专家顾问 (Expert Advisor),则应为每个 专家顾问 (Expert Advisor) 实例分配一个唯一的 魔术号码 (magic number)。

此外,此参数应为不同的货币对进行更改,以便使用详细报告并了解每个 专家顾问 (Expert Advisor) 使用的是哪个货币对。

参数:交易止损

StopLoss (0…) 以点为单位。

此参数表示每个仓位的 止损 (Stop Loss)。它定义了在达到多少亏损点时将关闭交易。

0 – 参数被禁用,交易的 止损 (Stop Loss) 将设置为 0。

此参数应设置为不低于服务器允许的最小止损值。

如果参数设置低于服务器允许的最小值,专家顾问 (Expert Advisor) 将显示错误 130。

MetaTrader 错误代码 – 终端中交易专家收到的 MQL 错误代码。解决方案。

参数:交易获利

TakeProfit (0…) 以点为单位。

此参数表示每个仓位的 获利 (Take Profit)。它定义了在达到多少利润点时,服务器将关闭交易。

0 – 参数被禁用,交易的 获利 (Take Profit) 将设置为 0。

此参数应设置为不低于服务器允许的最小值。

如果参数设置低于服务器允许的最小值,专家顾问 (Expert Advisor) 将显示错误 130。

MetaTrader 错误代码 – 终端中交易专家收到的 MQL 错误代码。解决方案。

参数:交易滑点

Slippage (0….) 以点为单位。

此参数调整开仓时的 价格滑点 (price slippage)。

在真实/实盘市场中,价格变动非常快。当向服务器发送订单时,服务器可能会以变动的价格响应,出现重新报价等情况。

为了防止向服务器发送多个订单,您可以设置允许的 滑点 (Slippage) 以开仓交易。

例如:Slippage=10

当发送开仓订单时,价格为 1.1234。但价格变为 1.1238。在这种情况下,交易将在 1.1238 开仓,无需重新报价!

然而,如果 滑点 (Slippage) 设置为 0,交易将不会开仓,服务器将返回重新报价错误 (New prices)。

功能:通过相反信号平仓

ClosePosIfChange (true – false)。

此参数调整在开立新仓位时关闭相反仓位的能力。

如果您的 指标 (indicator) 生成 买入 – 卖出 – 买入 – 卖出 (BUY – SELL – BUY – SELL) 信号,并且此参数已启用,专家顾问 (Expert Advisor) 将在开立新仓位前关闭相反仓位。

参数:每个信号的仓位数量

OnlyOnePosBySignal (true – false) 启用/禁用。

此参数允许您选择单一或多个仓位,启用后可以开立一个或多个仓位。

如果启用此参数,每个 (bar) 上每个信号仅开立一个仓位。

例如,如果您的策略在每个新 (bar) 上生成连续的 买入 (BUY) 信号,并且 OnlyOnePosBySignal=true,则在信号出现时每个 (bar) 上将开立一个 买入 (BUY) 仓位。

如果 OnlyOnePosBySignal=false专家顾问 (Expert Advisor) 只能开立一个 买入 (BUY) 仓位和一个 卖出 (SELL) 仓位,并等待它们被平仓。

参数:固定手数

Lots (0.01 ………) – 为所有交易设置固定手数。

此参数指定开仓交易的手数。手数固定并应用于所有交易。

您应咨询您的经纪商了解开仓交易的最小允许手数。

功能:动态手数

DynamicLot (true – false)  LotBalancePcnt (可用保证金的百分比)。

这些参数根据可用的自由保证金自动调整手数计算。

关于此参数的详细说明,请参阅 Autolot 文章(使用当前余额计算手数)。

我的 Autolot 秘密。动态手数或 Autolot。

参数:Martingale

Martin (1….) – Martingale 比率。

此参数允许您将 Martingale 原则应用于您的策略。

此原则意味着在一个亏损的交易之后,下一笔交易的量将按 Lot * Martin 比率计算。

如果参数设置为 1,则不使用 Martingale。

例如:Lots = 0.01, Martin = 2

  1. 买入 (BUY) 仓位 (0.01) 因亏损或被 止损 (Stop Loss) 平仓。
  2. 下一笔交易将以 0.01 * 2 = 0.02 的手数开立。
  3. 如果前一笔交易被 止损 (Stop Loss) 平仓,则下一笔交易将以 0.04 的手数开立。

如果前一笔交易盈利或被 获利 (Take Profit) 平仓,则下一笔 交易 (DEAL) 将以初始手数 0.01 开立。

功能:专家顾问的工作时间

OpenHour (以小时为单位),OpenMinute (以分钟为单位),CloseHour (以小时为单位),CloseMinute (以分钟为单位)。

这些参数调整 专家顾问 (Expert Advisor) 的 工作时间范围 (working time range),该范围仅适用于开立新仓位。追踪止损 (Trailing Stop) 和 保本 (Break Even) 功能将独立于此范围运行。

例如,如果您希望 专家顾问 (Expert Advisor) 仅在下午 2 点至下午 6:35 交易,则参数设置如下:

OpenHour=14OpenMinute=0CloseHour=18CloseMinute=35

交易将仅在下午 2 点至下午 6:35 开仓,专家顾问 (Expert Advisor) 将忽略此时间范围外的策略信号。

Market Time Pad。适用于 MetaTrader 的带交易时段的指标

功能:经典追踪止损

TrailingStopUSE (true – false),IfProfTrail (true – false),TrailingStop (以点为单位),TrailingStep (以点为单位)。

这些参数启用或禁用通过移动 止损 (Stop Loss) 到盈利区自动跟踪仓位的功能。

TrailingStopUSE – 启用/禁用追踪止损功能。

IfProfTrail – 如果为真,专家顾问 (Expert Advisor) 仅在仓位达到保本后开始修改 止损 (Stop Loss)。如果为假,追踪止损将在开仓后立即开始工作,并随着价格移动进行调整。

TrailingStop – 当前价格与目标 止损 (Stop Loss) 之间的距离(以点为单位)。此参数可以设置为低于服务器允许的最小值。

TrailingStep – 修改 止损 (Stop Loss) 的步长。

例如,当距离当前价格达到 TrailingStop 点时,止损 (Stop Loss) 将每增加一个 TrailingStep 点进行一次修改。

功能:按总利润/亏损平仓

这些参数在达到以下条件之一时,调整按指定工具和魔术号码平仓交易的能力:

  1. TypeofClose=1 – 按利润平仓:1 – 美元,2 – 点,3 – %权益,4 – %余额;
  2. CloseProfit=false – 不在盈利时平仓;
  3. Profit = 10 – 平仓盈利所需的单位数量(取决于 TypeofClose);
  4. CloseLoss=false – 不在亏损时平仓;
  5. Loss = -10 – 平仓亏损所需的单位数量(取决于 TypeofClose);
  6. OFFAllEaAfterClosePROF=false – 在平仓盈利后禁用所有 专家顾问 (Expert Advisors) 和脚本;
  7. OFFAllEaAfterCloseLOSS=false – 在平仓亏损后禁用所有 专家顾问 (Expert Advisors) 和脚本。

例如:

  1. 如果您想在账户盈利 10 美元时平仓多个 交易 (DEALS/positions) (BUY 或 SELL):
    TypeofClose=1CloseProfit=trueProfit=10
  2. 如果您想在账户亏损 200 点时平仓多个 交易 (DEALS/positions) (BUY/SELL):
    TypeofClose=2CloseLoss=trueLoss=200
  3. 如果您想在账户亏损 5% 和盈利 10% 时分别平仓多个 交易 (DEALS/positions) (BUY/SELL):
    TypeofClose=4CloseLoss=trueLoss=5CloseProfit=trueProfit=10

在这种情况下,您可以在平仓后使用 OFFAllEaAfterClosePROF 和/或 OFFAllEaAfterCloseLOSS 功能禁用 专家顾问 (Expert Advisors)。

然后,专家顾问 (Expert Advisor) 将在平仓后禁用所有 专家顾问 (Expert Advisors)。

CLP CloseIfProfitorLoss 结合追踪止损。控制总利润或亏损与利润追踪。利润或亏损垫

功能:将止损移动到保本

MovingInWLUSE (true – false),LevelWLoss (以点为单位),LevelProfit (以点为单位)。

这些参数调整将 止损 (Stop Loss) 尽快移动到保本的能力。

例如:

  1. 您希望在交易盈利 10 点时将 止损 (Stop Loss) 设置为保本:
    MovingInWLUSE=trueLevelWLoss=0LevelProfit=10
  2. 您希望在交易盈利 20 点时将 止损 (Stop Loss) 设置为 +5 点:
    MovingInWLUSE=trueLevelWLoss=5LevelProfit=20

因此,LevelProfitLevelWLoss 之间的差异必须始终大于或等于服务器的最小止损。

有问题吗?

如果您有任何问题,请随时提问。我们不卖猪圈里的猪。

我们每个产品在购买前都可以进行测试。

我们感谢您的反馈和对我们产品的期望,并努力保持高质量标准。

感谢您的支持!

您有问题吗?

ф

This post is also available in: English Українська Portuguese Español Deutsch Chinese Русский Français Italiano Türkçe 日本語 한국어


    Please wait, contacting ...

     

    风险警告:


    过去的交易业绩并不保证未来的结果。

    保证金外汇交易具有高风险,可能不适合所有投资者。

    请注意,使用交易机器人涉及巨大风险,您的损失可能超过初始投资。

    请谨慎行事,仔细评估自己的财务状况,并考虑向合格的专业人士寻求建议。

    免责声明

    本网站使用Cookie以提升您的体验。通过使用本网站,您同意我们的 数据保护政策免责声明
    阅读更多