介绍
Chart Pattern Helper EA不是一种自动交易机器人。它并未内置可执行的交易策略。这个智能交易的唯一目的是在图表对象上:趋势线、水平线或等距通道,通过挂单执行交易。除简单的执行突破交易外,它还能在您因某些原因错失突破点的情况下执行回调交易。
Chart Pattern Helper 的主要优势是按照放置在外汇图表的图形对象的范围,包括斜坡对象设置并调整挂单的能力。这种能力可以简单的执行流行形态的交易如三角形(上行、下行和对称)、通道、旗形、三角旗形、矩形、头肩形、双顶部/底部形等。
某一水平的突破被定义为简单的触及。Chart Pattern Helper 不会等待价格收于给定线的上方/下方。当价格首次触及设置的水平时,它会放置一个挂单。
有一个参数的输入范围可用于监管该智能交易的工作,但只有当您将其附加到图表并将其添加到适当名称的图表对象后,它才能马上开始工作。之后,可随时移除这个图表对象。该智能交易将继续检测它们的头寸并相应的调整定单参数。该EA 默认将当前的状态输出到图表备注。
因为所有图表对象都以买入价绘制,因此当使用卖出价时,该EA会加上当前的点差来调整进场、止损和止盈水平。这种行为可通过输入参数降低订单发送到交易服务的修正数目而禁用。
Chart Pattern Helper 能够按照一套输入参数,止损水平和账户余额/净值计算头寸大小 — 更像MetaTrader 的头寸大小计算器。您可以关闭这个功能,给该EA设置一个固定的头寸数值。
运算过程
这个EA启动之后将按照以下步骤运行:
通过输入参数按照给定的名称监测对象。
以进场目标+点差(卖出价)的价格放置买单的进场水平。
以进场目标(买入价)的价格放置卖单的进场水平。
买单的止损水平放置在边界目标下方以大多数长度为时段的最近的局部低位。
卖单的止损水平放置在边界目标上方以大多数长度为时段的最近局部高位;并将点差加入到高位内。
如果UseDistantSL设为true,则忽略前两个步骤,并使用相反线的最远点。这仅适用于水平线和趋势线。
买单的止盈水平放置在止盈目标处(买入价)。
卖单的止盈水平放置在止盈目标 + 点差(卖出价)处。
所计算的值会通过图表备注持续显示除非Silent 输入参数设置为true。
挂单则按照这些所计算的值放置。如果没有买或卖进场目标,那么只放置一个订单。当前的图表柱结束时,订单自动到期。在MT4上,最低的到期时间为11分钟;在MT5,是2分钟。
如果当前的价格低于买单进场价并高于卖单进场价,那么使用追单挂单。如果当前的价格低于卖单进场价或高于买单进场价,那么仅能使用一种限价单挂单。
追踪当前的目标值,相应的调整进场、止损和止盈水平。
如果启用头寸数值计算,那么需要的时候订单的数量会进行更新。在这种情况下,使用先前数量的订单就会被删除并创建使用新数量的订单。警告:这个功能可能会导致大量的挂单,而这可能违反您经纪公司的服务条款。如要阻止这种行为,您需要设置UpdatePendingVolume输入参数为false。
到期的订单会以新的数量重新创建(如果需要)并更新进场/止损/止盈水平。
如果触发了一个追单,那么第二个(方向)追单会被删除(除非OneCancelsOther 输入参数设置为false)。所有目标将附加EA的逻辑编号到它们的初始名称重新命名。这会防止新挂单的创建
如果PostEntrySLAdjustment设置为true,当跟随突破的新蜡烛图开盘后会试图更新止损。
按照止盈目标继续更新头寸的止盈水平。
头寸一旦关闭之后将停止活动。
一旦控制图表目标被重新命名返回它们的初始名称进入步骤一。
智能交易系统也可以在趋势线交易模式下运行:
检测上部/下部边界的图表对象。
等待蜡烛图以最小距离收高或收低于趋势线,最小距离通过输入参数 ThresholdSpreads 判定。当此类收盘价出现时,输入交易。
将特定止损对象设为止损价位。
将相应的上部/下部止盈线设为止盈价位。
输入参数
对象
UpperBorderLine (默认 = "UpperBorder") — 对象的名称(水平线或趋势线),用以定义突破形态的上缘边界。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
UpperEntryLine (默认 = "UpperEntry") — 对象的名称(水平线或趋势线),用以定义突破形态的买单进场水平。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
UpperTPLine (默认 = "UpperTP") — 对象的名称(水平线或趋势线),用以定义买单的止盈水平。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
LowerBorderLine (默认 = "LowerBorder") — 对象的名称(水平线或趋势线),用以定义突破形态的下缘边界。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
LowerEntryLine (默认 = "LowerEntry") — 对象的名称(水平线或趋势线),用以定义突破形态的卖单进场水平。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
LowerTPLine (默认 = "LowerTP") — 对象的名称(水平线或趋势线),用以定义卖单的止盈水平。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
BorderChannel (默认 = "Border") — 等距通道对象的名称,用以定义突破形态的上缘和下缘边界。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
EntryChannel (默认 = "Entry") — 等距通道对象的名称,用以定义买和卖进场水平。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
TPChannel (默认 = "TP") — 等距通道对象的名称,用以定义买和卖止盈水平。您可以将该对象命名为该参数的数值或者更改参数以适合当您创建图表对象时使用的名称。
订单管理
OneCancelsOther (默认 = true) — 如果为true,触发的挂单将取消反向挂单。如果为false,反向订单仍然保留而且当第一个头寸触发止损或止盈之后可能会被触发。
UseSpreadAdjustment (默认 = true) — 如果为true,点差会加入买单进场水平和卖单止损/止盈水平。当使用卖出价且所有图表对象以买入价描绘时,它会补偿差价。设置为false将降低订单到经纪公司交易服务器的修复请求流量。
UseExpiration (默认 = true) — 如果为true,挂单将于创建后的当前时段结束时或11分钟(MT4)或2分钟(MT5)内到期 —不管将来怎样。如果经纪公司不支持订单到期,那么可能会被要求设置为false。
DisableBuyOrders (默认 = false) — 如果参数为true,新的买进订单将不被创建,目前的买进订单和仓位将被忽略。
DisableSellOrders (默认 = false) — 如果参数为true,新的卖出订单将不被创建,目前的卖出订单和仓位将被忽略。
UseDistantSL (默认 = false) — 如果为true,EA会将止损位设为相反线的最远点。此功能仅适用于三角形和楔形。
趋势线交易
OpenOnCloseAboveBelowTrendline (默认 = false) - 如果为 true,则当蜡烛图收高/收低于边界趋势线后,将开启交易。
SLLine (默认 = "SL") - 趋势线交易的止损线对象名称。
ThresholdSpreads (默认 = 10)- 开启交易前,边界趋势线上方/下方最小距离的点差数。
头寸大小
CalculatePositionSize (默认 = true) — 如果为true,那么头寸大小将根据给定的风险承受能力、账户大小(余额或净值)、账户货币和交易货币对进行计算。计算过程与头寸大小计算器一样。如果为false,将使用固定的头寸数值。
UpdatePendingVolume (默认 = true) — 如果为true,那么当计算出新的头寸大小后将更新挂单的数量。这可能会导致过高的订单量到交易服务器,因为不能修改订单的数量;反之,它会被删除,然后创建新的数量。如果为false,那么订单的数量在到期和随后的重建之前保持不变。如果CalculatePositionSize = false,那么这个参数可以被忽略。
FixedPositionSize (默认 = 0.01) — 如果CalculatePositionSize = false,那么该EA将使用该参数值作为创建挂单的数量。
Risk (默认 = 1) — 风险承受能力,账户余额/净值的百分比。只有在CalculatePositionSize = true时起作用。如果UseMoneyInsteadOfPercentage设置为true,那么可以忽略这个输入参数。
MoneyRisk (默认 = 0) — 账户货币的风险承受能力。只有在CalculatePositionSize = true时起作用。要求UseMoneyInsteadOfPercentage设置为true。
UseMoneyInsteadOfPercentage (默认 = false) — 如果为true,头寸大小将按照给定账户货币的风险数额(MoneyRisk)进行计算,而不是按照余额/净值的百分比风险(Risk)计算。只有在CalculatePositionSize = true时起作用。
UseEquityInsteadOfBalance (默认 = false) — 如果为true,那么头寸大小将按照账户净值而不是余额进行计算。只有在CalculatePositionSize = true时起作用。
FixedBalance (默认 = 0) — 如果设置为非0值,那么它将代替账户余额/净值计算头寸大小。只有在CalculatePositionSize = true时起作用。
PostEntrySLAdjustment (默认 = false) — 如果为true,该EA将随突破后新蜡烛图的开盘而调整止损。它会检查突破的蜡烛图的高位/低位是否仍适合止损。它可能会打破头寸配置规则但会按照交易策略的离场规则更加精确的确定止损。
杂项
Magic (默认 = 20130116) — 该EA用以区分自身订单(MT4和MT5)和头寸(仅适用MT4)的编号。如果您在运行其它使用相同逻辑编号的EAs或者如果您希望添加两个或多个Chart Pattern Helper 到一个货币对,那么您可能需要更改它。
Slippage (默认 = 30) — 对经纪公司点差的滑点最大容忍值
Silent (默认 = false) — 如果为true,那么将没有状态信息输出到图表备注。如果您使用一些指标或其它EA修改图表备注并想给予他们优先权,那么这个参数就非常有用。
ErrorLogging (默认 = true) — 如果为true,那么该EA将记录所有错误和其它非标准状态到日志文件。它被命名为"CPH-Errors-",可以在MT4 安装文件夹的/experts/files/ 根或MT5安装文件夹的/MQL5/Files/ 根找到(或为您的MetaTrader 5指定的用户程序数据文件夹,如果您使用的是 Vista 或更新的 Windows版本)。
Chart Pattern Helper
标题:Chart Pattern Helper,收录于搜汇网, 本文禁止任何商业性转载、分享,如需转载需联系小编并注明来源,部分内容整理自网络,如有侵权请联系删除。