系统交易 게시글

利用移动平均线的交易策略 - MetaTrader 4 的专家顾问

첨부파일
20113.zip (7.08 KB, 다운로드 0회)


移动平均线交易策略

这款专家顾问(EA)旨在研究各种交易和资金管理策略在一个简单系统中的效果,该系统仅使用移动平均线来判断市场趋势。通过这个程序,你可以实现一个自动切换买入和卖出的移动平均线交易系统。同时,你还可以实施加仓策略,选择在价格上涨、下跌时加仓,或者同时进行两者。你也可以禁用基于移动平均线的方向切换,仅将其作为开新仓时的市场偏向。

系统提供了设置止损和获利的选项,当然,如果你愿意也可以选择禁用这些功能。当账户余额增加或减少时,仓位大小会动态调整,用户可以自行设置每笔交易使用的账户余额比例。如果自由权益低于用户定义的百分比,程序将停止下单,或者可以配置为平掉所有未平仓的头寸。通过这些配置选项,可以使用同一程序执行多种不同的交易策略。这款EA不使用魔法编号,因为它旨在管理特定品种的所有交易。

这款EA被设计成不会尝试对冲。如果你在程序反向交易时进行操作,情况可能会变得相当糟糕。在市场出现意外波动时,手动干预或调整投资组合的风险敞口是很有必要的。虽然这款EA是为了快速探索交易管理选项和通过回测来优化而编写的,但在你喜欢的设置下进行交易时,它也非常方便。

需要注意的是,使用此程序并没有利润的承诺,配置不当也可能导致你损失所有资金。决定在真实账户上运行此程序是你的选择,我真心希望你能够先在模拟账户上测试你的假设和交易条件。如果你发现了代码中的错误,请告诉我,我会及时修复。


设置选项

MA Crossover Inputs

  • 允许交易方向:控制机器人是否可以买入、卖出或两者皆可。不会同时进行双向交易。
  • 允许对冲:设置为真以允许双向同时交易(必须得到你的经纪商支持)。
  • 隐藏止盈止损:设置为真以便机器人在达到止盈或止损时平仓,而不实际下达止盈或止损。这在真实账户中可能会很危险,因为可能会有各种原因导致你失去网络连接。
  • 每笔交易的杠杆:随着账户余额的增长,仓位大小会相应增加,该数字表示每1000单位账户余额下买入或卖出多少微型手(0.01手)。设置时别忘了考虑0.01手在你账户货币中的价值。
  • 止损百分比:可选,设置为零可禁用。此设置管理止损,使其在基础货币损失时被设置。如果设置为0.5,则当基础货币损失达到0.5%时,止损将被触发。账户余额的损失百分比将根据账户货币与基础货币的当前汇率有所不同。
  • 跟踪止损百分比:可选,设置为零可禁用。当开启加仓时,此设置会使止损在平均入场价之上移动,以防止基础货币价值超过某个百分比的未实现收益损失。
  • 止盈百分比:可选,设置为零可禁用。此设置管理止盈目标,使其在基础货币盈利时被设置。如果设置为4.5,则在基础货币盈利4.5%时,止盈将被触发。账户余额的盈利百分比将根据账户货币与基础货币的当前汇率有所不同。
  • 滑点:设置订单可接受的滑点范围。
  • 最低自由权益百分比:当自由权益低于指定百分比时,禁用新仓位的开设。设置为10时,若开新仓会导致自由权益低于账户余额的10%,机器人将停止开仓。
  • 达到最低自由权益时平掉所有仓位:若希望在自由权益达到设定最低值时平掉所有仓位,请设置为真。
  • 加仓:设置为真可在价格朝你有利的方向移动时增加仓位。
  • 反向加仓:设置为真可在价格朝你不利的方向移动时增加仓位。
  • 加仓步长百分比:控制使用加仓选项时仓位之间的距离。如果设置为3,则价格需移动3%才会新增仓位。
  • 反向加仓步长倍数:在进行反向加仓时,增加仓位之间的距离。如果加仓步长百分比设置为2,且此设置为3,则价格需移动6%才会在价格逆势时新增仓位。此选项允许在加仓时迅速增加净风险敞口,而在反向加仓时则减少增加速度。
  • 在移动平均线交叉时平掉所有仓位:若希望在移动平均线的市场偏向变化时平掉所有仓位,请设置为真。
  • 慢速移动平均线时间周期:用于慢速移动平均线的时间周期。
  • 快速移动平均线时间周期:用于快速移动平均线的时间周期。
  • 慢速移动平均线周期加:慢速移动平均线的周期为“当前”周期加上此数值。如果当前周期设置为10,而此设置为2,则慢速移动平均线的周期为12。
  • 快速移动平均线周期:快速移动平均线的周期。
  • 慢速移动平均线偏移:应用于慢速移动平均线的偏移。
  • 快速移动平均线偏移:应用于快速移动平均线的偏移。
  • 移动平均线计算方法:用于慢速和快速移动平均线的计算方法。
  • 移动平均线应用价格:用于慢速和快速移动平均线的应用价格。
  • 开始交易日:开始交易的星期几。
  • 结束交易日:停止交易的星期几。
  • 开始交易时间:在开始日开始交易的时间。
  • 结束交易时间:在结束日停止交易的时间。


测试与优化

该程序仅在新K线开始时评估是否需要采取行动。如果你希望它每分钟检查一次,则将其放置在1分钟的图表上。如果你希望它每周检查一次,则将图表时间周期设置为1周。这也意味着在“每个点”上进行回测是没有意义的,因为它只会在K线开始时做出反应。你应该使用仅开放K线的选项,这将加快测试速度。

연관 포스트

댓글 (0)