StepMA_Stoch_v1 EA。 简单而令人满意 - 页 3 1234 新评论 jorgka 2006.04.14 00:20 #21 对不起,昨晚太晚了,发错了该死的专家。糟糕 在这里,它是再次 附加的文件: stepstochcross.mq4 7 kb jorgka 2006.04.14 00:25 #22 斯佩斯特克罗斯 只是一个快速的回溯测试 附加的文件: testergraph_1.gif 7 kb iGoR 2006.04.17 11:39 #23 jorgka: 只是一个快速回测 你好,Jorgka。 谢谢你的努力和这个EA。 但是我没有看到任何可以优化参数 的设置。它的标准参数是1.0,但在大多数情况下,可以看到这不是理想的参数。在30分钟的图表中,经验告诉我们,+/-1.4-1.6会做得更好。因此,是否有可能增加steppmatoc的参数,以便对其进行优化? TNX很多都是提前...iGoR iGoR 2006.04.17 18:13 #24 嗨,Jorgka。 我不认为该EA的工作是正确的。当我们尝试在没有任何止损的30分钟电缆上回测 你的默认设置时,它只给出15笔交易。应该有数百次交易。如果你看一下2年内的指标,有100多个交叉点。 问候iGoR huhenyo 2006.04.17 18:33 #25 设置 大家好。 很抱歉,自从我开始这个话题以来,我没有给它添加很多东西,但是我建议Jorgka回顾一下我在这个话题开始时解释的参数。如果你使用1.0,该EA将不会盈利,但如果使用1.9,该EA将非常有利可图。会有亏损,但收益是巨大的。EA所要做的就是一旦电缆、美元/瑞士法郎、美元/日元和欧元/日元的30分钟图表上确认出现交叉,就买入或卖出。如果你能对EA进行编程,卖出或买入两倍于当前仓位的股票,这将使一个仓位关闭,同时以相同的金额开设下一个仓位,但方向相反。 该EA的好处是,你不需要止损,因为总会有另一个十字星来结束当前的头寸。相信我,有了这个EA,你就不需要止损 了。现在,在编制上面解释的平仓/开仓程序时要小心,因为在卖出或买入两倍于开仓金额的头寸时,有可能前一个头寸没有关闭。我见过这样的情况,它只是开了一个全新的头寸,金额是之前头寸的两倍,而没有关闭之前的头寸。例如,假设你有一个1标准手的多头头寸。下一个十字星来了,所以EA卖出了2个标准手。这应该卖出所有的第一个标准手,关闭该头寸。剩下的1手空头,就是相反方向的新头寸。这是最理想的。我见过这样的情况:你可能仍然有1个多头头寸和2个空头头寸,而不是最后只剩下1个空头头寸。这就是我们想要避免的情况。 另一个必须处理的问题是,确保EA只在线条完全交叉时执行,而不是在它们交叉时执行,因为在它交叉时你会得到大量的开仓和平仓。该EA真的不需要比我在这里所说的更复杂。唯一需要增加的功能是,随着账户的增长,可以增加手数,但是一旦这个功能被加入,并且EA被正确编程,它真的不需要再复杂了。如果编程正确,它就会工作。就像我之前说的,我已经手动回测了这个策略,结果很好。我认为关键是要确保EA完全按照我们的要求来做。 谢谢你的帮助。 Huhenyo jorgka 2006.04.18 05:40 #26 EA的细节 我将尝试回答一些问题,并带来一些清晰的信息。 double diCustom0=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 0, 0); double diCustom1=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 1, 0) 。 double diCustom2=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 0, 1); double diCustom3=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 1, 1); OK 正如你所看到的,有4个double dicustom命令。 dicustom1, dicustom2, dicustom3 & dicustom4。 我尽可能简单地给你们分解一下。 其中NULL,30,这是时间框架的值。比如30=30分钟,或者如果你把它改成NULL,15,这将调用一个15的时间框架。 "StepMA_Stoch_v1 "是专家从MT指标集中调用的指标。 值,10,1.8,10这些是StepMA_Stoch_v1的输入参数,必须按顺序排列。因此,如果伊戈尔愿意,他可以将这些值从 "StepMA_Stoch_v1"、10、1.4、0中改变。 最后剩下的两个专家中的所有数值指的是数值。其中值0是黄线,值1是蓝线。为什么你会问值0(黄色)不是值1,蓝色(值1)不是值2,这是因为在StepStoch指标中,它将值0定义为黄色,值1定义为蓝色。 最后一个字段是值0代表当前栏,值1代表1栏后。 好了,这就是指标设置。 现在是买入卖出的参数 lFlagBuyOpen = (diCustom3>=diCustom2) && (diCustom0>diCustom1); lFlagSellOpen = (diCustom2>=diCustom3) && (diCustom1>diCustom0); lFlagBuyClose = (diCustom2>=diCustom3) && (diCustom1>diCustom0); lFlagSellClose = (diCustom3>=diCustom2) && (diCustom0>diCustom1); 买入(做多)Dicustom3必须小于或等于dicustom2 衡量一个条形图,黄线必须小于或等于蓝线 & Dicustom0必须大于Dicustom1 如果在IFlagBuyOpen字符串中,所有这些线都是向上的,那么我们就有一笔交易可以做多。 你会注意到Iflagsellclose和Iflagbuyopen是一样的,因为在做空一个货币(卖出)时,我们希望退出交易,就像我们要买入一样,因此Iflagsellopen和iflagbuyclose也有同样的参数。 我知道这对某些人来说听起来很困惑,而对其他人来说则不是问题,但这就是你如何识别一个交叉点,根据指标的交叉点进行买入和卖出交易。 伊戈尔。 不要依赖MT4的回测。 另外,如果你需要改变参数,打开EA和Dicustom1到4,数值1.8,然后把它改为1.4或1.6,只要适合你。 Huhenyo 正如我所告诉你的,EA将在交叉买入和卖出时打开和关闭,使用第一个帖子中给出的参数。 我将根据账户的百分比添加资金经理,默认为2%。 当你们满意时,我将发布更新。 谢谢 Jorgka StepMA_Stoch_v1 EA. Simple yet iGoR 2006.04.18 16:30 #27 jorgka: 我将尝试在这里回答一些问题并带来一些澄清。其中NULL,30,这是时间框架的值。比如30=30分钟,或者如果你把它改成NULL,15,这将调用一个15的时间框架。 "StepMA_Stoch_v1 "是专家从MT指标集中调用的指标。 值,10,1.8,10这些是StepMA_Stoch_v1的输入参数,必须按顺序排列。因此,如果伊戈尔愿意,他可以从 "StepMA_Stoch_v1"、10、1.4、0改变这些参数。 嗨,Jorgka。 这一点我已经弄明白了。我在30分钟的图表上做了测试,我做了多次回测,每次都把数值从1.1改到了1.8。但是就像我说的,在两年的时间里,每次测试的交易量不超过15次......所以回测确实不可靠,就像我在其他简单策略中发现的那样。 问候...iGoR huhenyo 2006.04.20 19:34 #28 回溯测试 iGoR。 我发现,如果你在回溯测试中使用每一个刻度的 选项,你会得到更多的交易。 在一个月的回测中,大约有15笔美元/日元和美元/瑞士法郎的交易。 Jorgka, 嘿,在大多数情况下,EA都能准确地进行交易。 指标的第二个设置需要是1.9而不是1.8。 这有很大的区别。 我回头检查了EA做的交易,大部分都是正确的,但有一个交易是假的,指标甚至没有接近交叉。 你知道可能发生了什么吗? 我附上一张截图,你可以看到。 我还说,有一个交叉点没有被交易。 你是否在代码中加入了在30点移动后不进行交叉交易的内容? 如果是这样的话,我认为真的没有必要在里面放这个代码。 谢谢你到目前为止的工作。 我真的认为这个EA有潜力。 附加的文件: badtrade.jpg 192 kb huhenyo 2006.04.20 21:32 #29 结果和虚假交易 好吧,我只是稍微改变了一下设置,使PeriodWATR为20,Kwatr为1.9。 我使用评估每个tick 的设置来运行测试器,图表是英镑/美元。 然后我回去重新评估了每一笔交易。 EA做了所有正确的事情,直到它来到交易#24-#28(见图)。 我不知道为什么它会做出这样的错误交易。 我还附上了刚过一个月的英镑/美元的交易结果;只要我们能弄清楚如何避免虚假交易,它们就很有希望。 如果没有这两笔虚假交易,该EA在一个月内的单手交易中会产生大约60%的回报。 不错,是吧? 谢谢大家的关心和帮助。 Huhenyo. 附加的文件: false_trades.jpg 235 kb results.jpg 185 kb jorgka 2006.04.21 06:13 #30 看来当前条形信号的移动足以触发一些错误的信号,谢谢你指出来。 我将做一些改变,在当前条形图的收盘时进行,这将解决虚假交易。 我正在测试这个EA,并将在下周公布结果。 我很快会有一个更新 乔尔格卡 1234 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
对不起,昨晚太晚了,发错了该死的专家。糟糕
在这里,它是再次
斯佩斯特克罗斯
只是一个快速的回溯测试
只是一个快速回测
你好,Jorgka。
谢谢你的努力和这个EA。
但是我没有看到任何可以优化参数 的设置。它的标准参数是1.0,但在大多数情况下,可以看到这不是理想的参数。在30分钟的图表中,经验告诉我们,+/-1.4-1.6会做得更好。因此,是否有可能增加steppmatoc的参数,以便对其进行优化?
TNX很多都是提前...iGoR
嗨,Jorgka。
我不认为该EA的工作是正确的。当我们尝试在没有任何止损的30分钟电缆上回测 你的默认设置时,它只给出15笔交易。应该有数百次交易。如果你看一下2年内的指标,有100多个交叉点。
问候iGoR
设置
大家好。
很抱歉,自从我开始这个话题以来,我没有给它添加很多东西,但是我建议Jorgka回顾一下我在这个话题开始时解释的参数。如果你使用1.0,该EA将不会盈利,但如果使用1.9,该EA将非常有利可图。会有亏损,但收益是巨大的。EA所要做的就是一旦电缆、美元/瑞士法郎、美元/日元和欧元/日元的30分钟图表上确认出现交叉,就买入或卖出。如果你能对EA进行编程,卖出或买入两倍于当前仓位的股票,这将使一个仓位关闭,同时以相同的金额开设下一个仓位,但方向相反。
该EA的好处是,你不需要止损,因为总会有另一个十字星来结束当前的头寸。相信我,有了这个EA,你就不需要止损 了。现在,在编制上面解释的平仓/开仓程序时要小心,因为在卖出或买入两倍于开仓金额的头寸时,有可能前一个头寸没有关闭。我见过这样的情况,它只是开了一个全新的头寸,金额是之前头寸的两倍,而没有关闭之前的头寸。例如,假设你有一个1标准手的多头头寸。下一个十字星来了,所以EA卖出了2个标准手。这应该卖出所有的第一个标准手,关闭该头寸。剩下的1手空头,就是相反方向的新头寸。这是最理想的。我见过这样的情况:你可能仍然有1个多头头寸和2个空头头寸,而不是最后只剩下1个空头头寸。这就是我们想要避免的情况。
另一个必须处理的问题是,确保EA只在线条完全交叉时执行,而不是在它们交叉时执行,因为在它交叉时你会得到大量的开仓和平仓。该EA真的不需要比我在这里所说的更复杂。唯一需要增加的功能是,随着账户的增长,可以增加手数,但是一旦这个功能被加入,并且EA被正确编程,它真的不需要再复杂了。如果编程正确,它就会工作。就像我之前说的,我已经手动回测了这个策略,结果很好。我认为关键是要确保EA完全按照我们的要求来做。
谢谢你的帮助。
Huhenyo
EA的细节
我将尝试回答一些问题,并带来一些清晰的信息。
double diCustom0=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 0, 0); double diCustom1=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 1, 0) 。
double diCustom2=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 0, 1);
double diCustom3=iCustom(NULL, 30, "StepMA_Stoch_v1", 10, 1.8, 0, 1, 1);
OK 正如你所看到的,有4个double dicustom命令。
dicustom1, dicustom2, dicustom3 & dicustom4。
我尽可能简单地给你们分解一下。
其中NULL,30,这是时间框架的值。比如30=30分钟,或者如果你把它改成NULL,15,这将调用一个15的时间框架。
"StepMA_Stoch_v1 "是专家从MT指标集中调用的指标。
值,10,1.8,10这些是StepMA_Stoch_v1的输入参数,必须按顺序排列。因此,如果伊戈尔愿意,他可以将这些值从 "StepMA_Stoch_v1"、10、1.4、0中改变。
最后剩下的两个专家中的所有数值指的是数值。其中值0是黄线,值1是蓝线。为什么你会问值0(黄色)不是值1,蓝色(值1)不是值2,这是因为在StepStoch指标中,它将值0定义为黄色,值1定义为蓝色。 最后一个字段是值0代表当前栏,值1代表1栏后。
好了,这就是指标设置。
现在是买入卖出的参数
lFlagBuyOpen = (diCustom3>=diCustom2) && (diCustom0>diCustom1);
lFlagSellOpen = (diCustom2>=diCustom3) && (diCustom1>diCustom0);
lFlagBuyClose = (diCustom2>=diCustom3) && (diCustom1>diCustom0);
lFlagSellClose = (diCustom3>=diCustom2) && (diCustom0>diCustom1);
买入(做多)Dicustom3必须小于或等于dicustom2
衡量一个条形图,黄线必须小于或等于蓝线
&
Dicustom0必须大于Dicustom1
如果在IFlagBuyOpen字符串中,所有这些线都是向上的,那么我们就有一笔交易可以做多。
你会注意到Iflagsellclose和Iflagbuyopen是一样的,因为在做空一个货币(卖出)时,我们希望退出交易,就像我们要买入一样,因此Iflagsellopen和iflagbuyclose也有同样的参数。
我知道这对某些人来说听起来很困惑,而对其他人来说则不是问题,但这就是你如何识别一个交叉点,根据指标的交叉点进行买入和卖出交易。
伊戈尔。
不要依赖MT4的回测。
另外,如果你需要改变参数,打开EA和Dicustom1到4,数值1.8,然后把它改为1.4或1.6,只要适合你。
Huhenyo
正如我所告诉你的,EA将在交叉买入和卖出时打开和关闭,使用第一个帖子中给出的参数。
我将根据账户的百分比添加资金经理,默认为2%。
当你们满意时,我将发布更新。
谢谢
Jorgka
我将尝试在这里回答一些问题并带来一些澄清。
其中NULL,30,这是时间框架的值。比如30=30分钟,或者如果你把它改成NULL,15,这将调用一个15的时间框架。
"StepMA_Stoch_v1 "是专家从MT指标集中调用的指标。
值,10,1.8,10这些是StepMA_Stoch_v1的输入参数,必须按顺序排列。因此,如果伊戈尔愿意,他可以从 "StepMA_Stoch_v1"、10、1.4、0改变这些参数。
嗨,Jorgka。
这一点我已经弄明白了。我在30分钟的图表上做了测试,我做了多次回测,每次都把数值从1.1改到了1.8。但是就像我说的,在两年的时间里,每次测试的交易量不超过15次......所以回测确实不可靠,就像我在其他简单策略中发现的那样。
问候...iGoR
回溯测试
iGoR。
我发现,如果你在回溯测试中使用每一个刻度的 选项,你会得到更多的交易。 在一个月的回测中,大约有15笔美元/日元和美元/瑞士法郎的交易。
Jorgka,
嘿,在大多数情况下,EA都能准确地进行交易。 指标的第二个设置需要是1.9而不是1.8。 这有很大的区别。 我回头检查了EA做的交易,大部分都是正确的,但有一个交易是假的,指标甚至没有接近交叉。 你知道可能发生了什么吗? 我附上一张截图,你可以看到。 我还说,有一个交叉点没有被交易。 你是否在代码中加入了在30点移动后不进行交叉交易的内容? 如果是这样的话,我认为真的没有必要在里面放这个代码。
谢谢你到目前为止的工作。 我真的认为这个EA有潜力。
结果和虚假交易
好吧,我只是稍微改变了一下设置,使PeriodWATR为20,Kwatr为1.9。 我使用评估每个tick 的设置来运行测试器,图表是英镑/美元。 然后我回去重新评估了每一笔交易。 EA做了所有正确的事情,直到它来到交易#24-#28(见图)。 我不知道为什么它会做出这样的错误交易。 我还附上了刚过一个月的英镑/美元的交易结果;只要我们能弄清楚如何避免虚假交易,它们就很有希望。 如果没有这两笔虚假交易,该EA在一个月内的单手交易中会产生大约60%的回报。 不错,是吧?
谢谢大家的关心和帮助。
Huhenyo.
看来当前条形信号的移动足以触发一些错误的信号,谢谢你指出来。
我将做一些改变,在当前条形图的收盘时进行,这将解决虚假交易。
我正在测试这个EA,并将在下周公布结果。
我很快会有一个更新
乔尔格卡