文章 "开发自适应算法 (第二部分): 提高效率" - 页 3 1234567891011 新评论 Maxim Romanov 2020.12.16 09:50 #21 Valeriy Yastremskiy:看看如何选择有意义的设置很有意思。这是一个完整的话题。 有几种关键模式。例如,在每根蜡烛上建仓、跳过建仓或只在卖出仓位的价格上涨或买入仓位的价格下跌时建仓。我运行了这些模式并比较了结果。我们从在每根蜡烛上开仓的模式开始。如果利润大幅下降,但缩水并没有大幅下降,那么该模式就是坏的。例如,利润下降了 2 倍,而缩水下降了 1.1 倍。这种模式不好。但是,如果利润下降了 2 倍,而缩水下降了 1.5 倍,那么我们就要看该系列中的最大交易次数。如果最大交易次数大幅减少,例如也减少了 1.5 倍,则可能会对未来的稳定性产生积极影响。也就是说,目前的模式并不令人印象深刻,但我们知道,大量交易对存款来说更危险。因此,我们要找到最佳模式,并将其保留下来。这些模式同样适用于任何工具,因为它们是算法本身的特征。因此,我将使用跳过蜡烛图模式开仓。所有的操作模式都是如此。我们来看看哪种模式对当前任务更有效。 我通过完整搜索来优化参数。例如,我设置烛台的最小数量为 30,最大数量为 300,并以 2 为单位优化烛台的最小数量,而最大数量保持稳定。此外,我还设置了要分析的样本数。起始值为 1,最大值为 30。我还优化了开仓百分比。优化完成后,我将查看稳定的起始参数。情况是这样的:随着开仓百分比的增加、最小烛台数的增加和样本数的增加,信号的质量会提高,但盈利能力会下降。这就是我为什么要找到最小稳定参数,然后将其添加到储备中的原因。例如,我发现烛台范围 58-300、百分比 58、样本数 7 都是风险/盈利比率足够高的稳定参数。因此,我将蜡烛图的最小数量增加到 68-300,将百分比提高一个百分点,即 59,将样本数增加到 9 个,并检查其稳定性如何,如果我没记错的话,未来价格系列参数的波动是有预留的,这很好,我就不做设置了。 现在我们需要加强盈利能力。获利的 ATR 系数越小,就越稳定。因此,我开始优化这一参数。从 1 开始已经合格,所以我们尝试从 1 到 3,步长为 0.1。我们可以看到,随着数值的增加,利润也在增长,但在某一点上,稳定性消失了。让它稳定到 1.5 值。那么,我们就把这 0.5 根蜡烛留给不断变化的市场特征,让它在值为 1 的情况下工作。 这里还有一点。我们进行蜡烛图交易,每个仓位有 1 根蜡烛图的利润是正常的,尤其是如果我们不是每根蜡烛图都开仓的话。但是有一个价差,我们需要了解它的大小。假设一根蜡烛的大小为 0.0015,平均点差为 0.0001。0.0001/0,0015=0,066.蜡烛图利润的 6.6% 被点差吞噬。因此,最好的盈利不是 1ATR(100%),而是 1-0.066=0.93。我将四舍五入以减少保证金,ATR = 0.9(90%)是一个正常值。 这就是我所写的全部内容,你需要非常了解你正在使用的模式,以便于操作结果。我不使用抽象的指标读数,而是使用相当具体的特征,因为这样可以进行逻辑分析。 Maxim Romanov 2020.12.16 09:58 #22 Edgar Akhmadeev: 在最终完善的产品中,设置应该是最少的。但在实验性产品中,通常会从大量参数开始,逐渐了解相互关系,优化或固定许多参数。在最后一个指标中,我从 4 个参数中选择了 2 个。而在 kodobase 中,这只是用于实验的代码。 这里最重要的是最终产品中的内容。我不卖这个机器人(虽然它可以卖,而且它比市场上的大多数机器人都好),但我明白,买方不会明白这里面有什么,我不抱任何幻想。当你既是开发者又是交易者时,最终产品就会处于不断修改的状态。你做了一个版本,对它进行真正的完善,然后进行交易,在交易的同时,你又做了另一个版本,去掉一些东西,添加一些东西,最后,下一个版本又稳定下来了,但你必须梳理美....。同时,你还需要吸引客户)当你有一个 10 人的团队时,这样做是有意义的,但当你只有一两个人时,最好还是把资源花在开发上。 Valeriy Yastremskiy 2020.12.16 10:41 #23 Maxim Romanov:换句话说,我所写的一切,你都需要非常了解你所使用的模式,这样才能很容易地操作出结果。我不使用抽象的指标读数,而是使用相当具体的特征,因为它们可以通过这种方式进行逻辑分析。 谢谢,你说得很清楚。 这样的手动优化很有意义,有时完全是矫枉过正)。 prostotrader 2020.12.16 21:48 #24 Maxim Romanov:为什么 因为 FOREX.... 顺便说一下,我的 FORTS 智能交易系统中有 48 项设置(以及图表参数) Andrey Khatimlianskii 2020.12.17 20:00 #25 Maxim Romanov: 实际收益率低于计算出的收益率,因为测试是在高估利差的情况下进行的,而算法的工作原理是利差越大,收益率越高。这种情况并非自相矛盾,稳定性会随着利差的增加而降低。 马克西姆,感谢您的文章! 请对突出显示的内容发表评论。我无法想象高价买入、低价卖出会带来更高的收益率(当然,除非我们谈论的是经纪人收益率)。 Maxim Romanov 2020.12.17 21:14 #26 Andrey Khatimlianskii:马克西姆,谢谢你的文章!请评论一下突出显示的那一条。我无法想象在什么情况下高价买入低价卖出会带来更高的收益(当然,除非我们谈论的是经纪人的收益)。 事实证明这是一个悖论)。这是因为利润的控制方式。利润是以从开盘价 到收盘价的点数来控制的。事实证明,如果点差较小,利润水平越过临界值,系列就会结束。但如果价差较大,利润可能不足以触发平仓条件,系列交易继续进行。如果系列继续,就会开立新仓位。由于未结头寸的平均利润受到控制,头寸越多,利润越多。因此,价差越大,头寸越多,利润也就越多。但价差大也会影响稳定性。头寸越多,亏损平仓的风险就越高。 Andrey Khatimlianskii 2020.12.17 21:45 #27 Maxim Romanov: 这是一个悖论)。这是因为利润的控制方式。它是以从开盘价 到收盘价的点数来控制的。事实证明,如果点差较小,利润水平越过临界值,系列就完成了。但如果价差较大,利润可能不足以触发平仓条件,系列继续进行。如果系列继续,则会建立新仓位。由于未结头寸的平均利润受到控制,头寸越多,利润越多。因此,价差越大,头寸越多,利润也就越多。但价差大也会影响稳定性。头寸越多,亏损平仓的风险就越高。 明白了,谢谢。 当然,更符合逻辑的做法是正确制定系列平仓的条件。这样就不会那么依赖于点差。 但我已经意识到,下一步是转用 MT5。我会继续关注的。 prostotrader 2020.12.17 22:23 #28 Andrey Khatimlianskii:明白了,谢谢。当然,更符合逻辑的做法是正确制定关闭系列的条件。这样就不会那么依赖于点差。但我已经意识到,下一步是切换到 MT5。我会继续关注。 MT5 +MOEX Maxim Romanov 2020.12.18 06:29 #29 Andrey Khatimlianskii:明白了,谢谢。当然,更符合逻辑的做法是正确制定关闭系列的条件。这样就不会那么依赖于点差。但我已经意识到,下一步是切换到 MT5。我会留意的。 是的,这是合乎逻辑的)我甚至认为这个问题应该在我交易时就解决,但后来我意识到这个修改太小了,不会有决定性的改变。 Sergey Voytsekhovsky 2020.12.18 22:04 #30 晚上好。 我怀疑在第 256 行 标志 87 中犯了一个错误(一个错字),"-"看起来很像"="。 请确认一下,我会自己改正的,或者可能有什么我不明白的隐藏含义,错误不烧,烧为警告。 if(mas_par[i].Pause>0 && mas_par[i].Series_Close_Time>0) mas_par[i].Pause-iBarShift(mas_symbols[i],mas_inp[i].TF,mas_par[i].Series_Close_Time); 1234567891011 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
看看如何选择有意义的设置很有意思。这是一个完整的话题。
有几种关键模式。例如,在每根蜡烛上建仓、跳过建仓或只在卖出仓位的价格上涨或买入仓位的价格下跌时建仓。我运行了这些模式并比较了结果。我们从在每根蜡烛上开仓的模式开始。如果利润大幅下降,但缩水并没有大幅下降,那么该模式就是坏的。例如,利润下降了 2 倍,而缩水下降了 1.1 倍。这种模式不好。但是,如果利润下降了 2 倍,而缩水下降了 1.5 倍,那么我们就要看该系列中的最大交易次数。如果最大交易次数大幅减少,例如也减少了 1.5 倍,则可能会对未来的稳定性产生积极影响。也就是说,目前的模式并不令人印象深刻,但我们知道,大量交易对存款来说更危险。因此,我们要找到最佳模式,并将其保留下来。这些模式同样适用于任何工具,因为它们是算法本身的特征。因此,我将使用跳过蜡烛图模式开仓。所有的操作模式都是如此。我们来看看哪种模式对当前任务更有效。
我通过完整搜索来优化参数。例如,我设置烛台的最小数量为 30,最大数量为 300,并以 2 为单位优化烛台的最小数量,而最大数量保持稳定。此外,我还设置了要分析的样本数。起始值为 1,最大值为 30。我还优化了开仓百分比。优化完成后,我将查看稳定的起始参数。情况是这样的:随着开仓百分比的增加、最小烛台数的增加和样本数的增加,信号的质量会提高,但盈利能力会下降。这就是我为什么要找到最小稳定参数,然后将其添加到储备中的原因。例如,我发现烛台范围 58-300、百分比 58、样本数 7 都是风险/盈利比率足够高的稳定参数。因此,我将蜡烛图的最小数量增加到 68-300,将百分比提高一个百分点,即 59,将样本数增加到 9 个,并检查其稳定性如何,如果我没记错的话,未来价格系列参数的波动是有预留的,这很好,我就不做设置了。
现在我们需要加强盈利能力。获利的 ATR 系数越小,就越稳定。因此,我开始优化这一参数。从 1 开始已经合格,所以我们尝试从 1 到 3,步长为 0.1。我们可以看到,随着数值的增加,利润也在增长,但在某一点上,稳定性消失了。让它稳定到 1.5 值。那么,我们就把这 0.5 根蜡烛留给不断变化的市场特征,让它在值为 1 的情况下工作。
这里还有一点。我们进行蜡烛图交易,每个仓位有 1 根蜡烛图的利润是正常的,尤其是如果我们不是每根蜡烛图都开仓的话。但是有一个价差,我们需要了解它的大小。假设一根蜡烛的大小为 0.0015,平均点差为 0.0001。0.0001/0,0015=0,066.蜡烛图利润的 6.6% 被点差吞噬。因此,最好的盈利不是 1ATR(100%),而是 1-0.066=0.93。我将四舍五入以减少保证金,ATR = 0.9(90%)是一个正常值。
这就是我所写的全部内容,你需要非常了解你正在使用的模式,以便于操作结果。我不使用抽象的指标读数,而是使用相当具体的特征,因为这样可以进行逻辑分析。
在最终完善的产品中,设置应该是最少的。但在实验性产品中,通常会从大量参数开始,逐渐了解相互关系,优化或固定许多参数。在最后一个指标中,我从 4 个参数中选择了 2 个。而在 kodobase 中,这只是用于实验的代码。
这里最重要的是最终产品中的内容。我不卖这个机器人(虽然它可以卖,而且它比市场上的大多数机器人都好),但我明白,买方不会明白这里面有什么,我不抱任何幻想。当你既是开发者又是交易者时,最终产品就会处于不断修改的状态。你做了一个版本,对它进行真正的完善,然后进行交易,在交易的同时,你又做了另一个版本,去掉一些东西,添加一些东西,最后,下一个版本又稳定下来了,但你必须梳理美....。同时,你还需要吸引客户)当你有一个 10 人的团队时,这样做是有意义的,但当你只有一两个人时,最好还是把资源花在开发上。
换句话说,我所写的一切,你都需要非常了解你所使用的模式,这样才能很容易地操作出结果。我不使用抽象的指标读数,而是使用相当具体的特征,因为它们可以通过这种方式进行逻辑分析。
谢谢,你说得很清楚。
这样的手动优化很有意义,有时完全是矫枉过正)。
为什么
因为 FOREX....
顺便说一下,我的 FORTS 智能交易系统中有 48 项设置(以及图表参数)
实际收益率低于计算出的收益率,因为测试是在高估利差的情况下进行的,而算法的工作原理是利差越大,收益率越高。这种情况并非自相矛盾,稳定性会随着利差的增加而降低。
马克西姆,感谢您的文章!
请对突出显示的内容发表评论。我无法想象高价买入、低价卖出会带来更高的收益率(当然,除非我们谈论的是经纪人收益率)。
马克西姆,谢谢你的文章!
请评论一下突出显示的那一条。我无法想象在什么情况下高价买入低价卖出会带来更高的收益(当然,除非我们谈论的是经纪人的收益)。
这是一个悖论)。这是因为利润的控制方式。它是以从开盘价 到收盘价的点数来控制的。事实证明,如果点差较小,利润水平越过临界值,系列就完成了。但如果价差较大,利润可能不足以触发平仓条件,系列继续进行。如果系列继续,则会建立新仓位。由于未结头寸的平均利润受到控制,头寸越多,利润越多。因此,价差越大,头寸越多,利润也就越多。但价差大也会影响稳定性。头寸越多,亏损平仓的风险就越高。
明白了,谢谢。
当然,更符合逻辑的做法是正确制定系列平仓的条件。这样就不会那么依赖于点差。
但我已经意识到,下一步是转用 MT5。我会继续关注的。
明白了,谢谢。
当然,更符合逻辑的做法是正确制定关闭系列的条件。这样就不会那么依赖于点差。
但我已经意识到,下一步是切换到 MT5。我会继续关注。
MT5 +MOEX
明白了,谢谢。
当然,更符合逻辑的做法是正确制定关闭系列的条件。这样就不会那么依赖于点差。
但我已经意识到,下一步是切换到 MT5。我会留意的。
晚上好。
我怀疑在第 256 行 标志 87 中犯了一个错误(一个错字),"-"看起来很像"="。
请确认一下,我会自己改正的,或者可能有什么我不明白的隐藏含义,错误不烧,烧为警告。