很喜欢!我会在我所有的个人机器人中使用它。
Artem,您的 PSAR 追踪功能不正常。我无法用语言解释,请仔细观察每次收盘。它在错误的时间收盘,而且没有按时收盘。可以在下行 PSAR 时关闭多头,但只应在上行 PSAR 时关闭。可能完全跳过几次 PSAR 切换,尽管在这些切换中存在收盘条件。
代码过于简化 - 它只是获取 PSAR 值并将其用作 SL。我想这应该适用于Muvings。
看看我是如何控制收盘条件的:
if (tick.ask > PSAR_BufClose[0] && PSAR_BufClose[1] < PSAR_BufClose[0]) { buy = PSAR_CloseWeight; return; } if (tick.bid < PSAR_BufClose[0] && PSAR_BufClose[1] > PSAR_BufClose[0]) { sell = PSAR_CloseWeight; return; } if (tick.bid < PSAR_BufClose[0] && tick.ask > PSAR_BufClose[1] && PSAR_BufClose[1] < PSAR_BufClose[0]) { buy = PSAR_CloseWeight; return; } if (tick.bid < PSAR_BufClose[1] && tick.ask > PSAR_BufClose[0] && PSAR_BufClose[1] > PSAR_BufClose[0]) { sell = PSAR_CloseWeight; return; }
这里使用 PSAR 来发出信号,而不是设置移动 SL,但本质是一样的。
大家好,这一切都很有趣,但我无法完成所有步骤,我卡在了第二个构造函数必须是参数化的部分。我无法继续。我试着下载附件中的文件,但发现了很多错误,无法修复。谁能帮帮我?谢谢
JRandomTrader 手动交易 时进行净额结算。
为此,您需要在机器人中保持虚拟仓位。并使用挂单设置止损。
好在我们不是他们中的一员。
新文章 如何开发各种类型的追踪止损并将其加入到EA中已发布:
在本文中,我们将探讨用于便捷创建各种追踪止损的类,并学习如何将追踪止损加入到EA中。
延续 之前文章中提及的追踪止损(Trailing Stop)的话题,这里我们将讨论追踪类,以便于创建各种追踪止损算法。基于所创建的类,我们可以创建任何用于改变止损位置的算法:根据当前价格的止损移动、根据指标、根据指定的止损价格等等。阅读完本文后,我们将能够创建并将任何移动止损算法添加到任意EA上。同时,追踪止损的嵌入和使用将变得方便且清晰。
让我们简要地回顾一下追踪止损操作的算法。让我们定义每个追踪止损可采用以下三个运行条件:
这三个参数可以应用于任何追踪止损策略。在追踪设置中,这些参数可能全部需要。但如果某个参数不需要或已被算法中的某个值替代,那么也可以只需要部分参数。若将止损位置设置在某个指标值处,那么它可以代替“追踪距离”参数。在这种情况下,如果使用该参数,则止损值不会直接使用指标指示的价格,而是根据距离指示价格的点数来设置。
作者:Artyom Trishkin