我的外汇策略 - PipMachine。 - 页 3

 

你好,穆克。

你是指我在大约30分钟前发的帖子,说它不是100%完美,需要调整吗?如果是的话,我在那条线上提到了你所问的。

至于你的另一个问题,不,我没有做任何性能报告。主要是因为我认为没有必要。

 
de04:
嗨,FXGuy2000 我刚刚尝试了你的系统,为我赚了一些点。谢谢你的伟大系统。

非常欢迎你。我希望它真的对你有好处。

我相信你是先在模拟账户 上进行测试?如果没有,请做,而且至少做3-6个月,以了解出现的所有不同模式。

祝您好运。

 
Maji:
请尝试所附的EA,并让我知道它是否遵循了系统的规则。 Maji

我试图调整手数和风险大小,结果出现了这个错误。

编译'MA CrossOver with Filters.mq4'...

函数"BreakEvens "没有被引用,将从exp-file中删除。

函数 "TrailingAlls "没有被引用,将从文件中删除。

0个错误,2个警告

 
Maji:
请尝试所附的EA,并让我知道它是否遵循了系统的规则。 Maji

哇,你绝对有天赋,马吉,第一次尝试,做得很好。

我在策略测试器上 试了一下,得到了一些不错的结果。

然而,不,不是 "但是"。 ,而是 "但是"。它需要进行调整。

在这个EA中,有一些情况下,它的行为是不应该的。

我将为你创建一个图片,以说明我的意思。

我希望这张图有助于解释它。我试着为自动化的目的简化它,因为它是在没有人类互动的情况下工作的,所以我试图尽量减少任何不一致的情况,如果是手动操作的话,通常会出现这种情况。

无论如何,我希望这有帮助......

不错的工作。

附加的文件:
 

FXGuy,

请给我完整的规则。然而,为了编程的目的,当价格在一个通道内时不要买入这样的规则是不行的。这些规则需要在数学上进行定义。如果你能从数学上定义一个通道,我可以试着把它转换成计算机代码。

另外,在你的图表上,有一个地方你说它买得太晚了,是黄色的(在左边)。它实际上是在卖出它早先买入的头寸。事实上,我认为进场是在你在图表上标记进场之前的几个小节,当时程序检测到进场条件已经满足。像往常一样,我只是想实现规则,所以规则定义得越精确,就越容易。

谢谢你的分享。

马吉

 
Maji:
FXGuy,请给我完整的规则。不过,为了编程的目的,当价格在一个通道内时不要买入这样的规则是不行的。

heehee.... 是的,我知道这个...我想,你也许能分辨出哪些是属于频道的......

挂个勾,让我再看看这个频道,看看数字范围是多少.... .... .... ... 我会说当ADX,+DI和-DI在0-20范围内。然而,我认为如果能改变这个变量就好了,这样它就可以由用户来配置,Macd的范围也可以改变EMA的。

好吧,让我们看看这是否可以...

ADX规则。

========

不对ADX采取行动的条件。

---------------------------

所以,如果(ADX)&(+DI)&(-DI)在0-20的范围内,不要做多,也不要做空。

买入的条件。

-----------------

如果,(ADX)&&(+DI)或(ADX)&&(-DI)或(ADX)&&(+DI)&&(-DI)在25+的范围内,根据这个条件开始购买交易触发。ADX = 25+ && (+DI) > (-DI) 或等于或大于 (==>) =买入

条件为卖出。

-----------------

如果,(ADX)&&(+DI)或(ADX)&&(-DI)或(ADX)&&(+DI)&&(-DI)在25+的范围内开始购买交易触发,如果此条件为真。ADX = 25+ && (-DI) > (+DI) 或等于或大于 (==>) = 卖出

条件是关闭多头,或关闭空头。

---------------------------------

如果最近一次计数的ADX指数下降了10以上。即在上图中紫色线所在的位置,ADX绿色实线达到59,是其最后已知的ADX高点,如果这个数字下降了10或更多,则关闭多头或空头。

====================================

EMA的规则。

===========

买入条件。

--------------

如果ADX买入条件为真,那么。

如果 EMAFast > EMASlow 买入/做多。

卖出条件。

-------------

如果ADX卖出条件为真,那么。

如果EMAFast小于EMASlow,卖出/做空。

关闭条件。

---------------

如果 "任何 "条件都为真,那么。

收盘做多=IF EMAFast < EMASlow 只有当

ADX<10或更多,从其最后已知的最高条件。或者Macd = -0.00

收盘做空=如果EMAFast>EMASlow,只有在以下情况下才会做空

ADX与最后已知的最高状态相比,<10或更多。或Macd = 0.00以上

Macd买入条件。

============

如果一个或两个或所有条件都成立,则进行买入交易。

如果Macd信号线 位于0.00+,而EMAFast的条件>EMASlow,或者如果(ADX买入条件为真),则做多/买入。

Macd卖出条件。

-------------------

卖出交易,如果一个或两个或所有条件都为真。

如果Macd信号线位于-0.00,而EMAFast的条件< EMASlow,或者如果(ADX卖出条件为真),则进行空头/卖出。

Macd收盘条件。

--------------------

如果任何条件为真,则关闭空头交易。

如果macd是+0.00,而EMAFast>EMASlow,或者ADX && +DI && -DI在0-20的范围内。关闭交易。

如果任何条件为真,则关闭多头交易。

如果macd是-0.00, WHILE, EMAFast < EMASlow and or ADX && +DI && -DI is in the range of 0 - 20.关闭交易

马吉。
这些规则需要从数学上进行定义。如果你能从数学上定义一个通道,我可以试着把它转换成计算机代码。

我希望以上内容对你有帮助......花了一些时间来研究如何打出它......lol

我希望你能理解它?

马吉。

另外,在你的图表中,有一个地方你说它买得太晚了,是黄色的(在左边)。它实际上是在卖出它早先买入的头寸。事实上,我认为进场是在你在图表上标记进场前的几个小节,当时程序检测到进场条件已经满足。像往常一样,我只是想实现规则,所以规则定义得越精确,就越容易。

谢谢你的分享。

Maji

我明白了,好吧,我真的对你设法捕捉到的大部分内容印象深刻。 干得好。

 

谢谢你,FXguy,但我更困惑了。

我本来以为会有这样的规则。

如果条件1和条件2以及(非条件3)等......则买入。

你把这些拆开,让我的脑子都乱了,这不是太难做到的。

顺便说一下,最好的买入 或卖出来自ADX的低值,看看图表你就知道了。我认为太多的过滤器会破坏系统,就像太多的厨师会破坏汤一样。如果基本的系统是强大的,那么为什么要对它进行修补。你可以尝试,你会有损失。为什么要担心它们呢?就我而言,我无法处理太多的过滤器,任何有超过3或4条规则的系统都会超出我短暂的注意力范围。

再次感谢。

马吉

 

你好。

对此我很抱歉。

该系统的设计是只捕捉大动作,而不是小动作。

所以我不确定你是否可以根据ADX=25时的情况来管理,等等。

 

或者这样说吧,WorkAround4:它比其他所有的都更简单。

LONG.

如果adx & +di > 20 == long

如果LONG和(+DI<20)关闭LONG交易。

短线。

如果adx & -di > 20 == 空头

如果是空头并且(-DI < 20) 关闭空头交易。

WorkAround5:

长线。

如果+DI和-DI相等(交叉),等待(+DI和ADX)>20

如果长线和(+DI < 20) 关闭长线交易。

空头

如果(+DI和-DI)相等(交叉),等待(-DI和ADX)>20

如果做空并且(-DI < 20)关闭做空交易。

 

我一直在思考,看看是否有办法简化事情......这里有几件事可能会有帮助。

简而言之,ADX需要在20以上并且上升,以确认当前的趋势是强势的(不管价格是上升还是下降),+DI和-DI需要已经交叉,并且与趋势方向相关的哪一个(+DI=上升趋势,-DI+下降趋势)必须上升并且高于20本身。

WorkAround1:

长线

====

如果+DI和-DI已经交叉的情况下,检查ADX和+DI的条件是20或以上。如果是这样,买入。(当+DI和-DI交叉时,ADX和+DI可能没有达到20,但在买入前要等待条件)

卖出

====

如果+DI和-DI已经交叉的情况下,检查ADX和-DI的条件是20或以上。如果是这样,卖出。(当+DI和-DI交叉时,ADX和-DI可能没有达到20,但在卖出前要等待条件)

关闭多头。

=========

要关闭一个多头头寸,检查EMAFast是否大于EMASlow。

关闭空头。

==========

要关闭空头头寸,检查EMAFast是否小于EMASlow。

---------------------------------

下面是另一种方法。

WorkAround2:

长线。

=====

如果+DI和-DI交叉,检查ADX和+DI的条件是20或更多,如果货币对 价格高于EMA1(EMAFast)。如果是这样,买入。

空头。

======

如果+DI和-DI交叉的情况下,检查ADX和-DI的条件是20或更多,如果货币对的价格低于EMA1(EMAFast)。如果是,卖出。

平仓做多。

=========

要关闭一个多头头寸,检查EMAFast是否大于EMASlow。

关闭空头。

==========

要关闭空头头寸,检查EMAFast是否小于EMASlow。

WorkAround3。

这个方法只使用ADX而不使用其他。这是一个S-A-R。(Stop And Reverse)。与WorkAround1相似,但它使用相反的信号来关闭和重新打开另一种方式。

====

如果+DI和-DI交叉的情况下,检查ADX和+DI的情况是20或以上。如果是这样,买入。

卖出

====

如果+DI和-DI交叉的条件,检查ADX和-DI的条件是20或更多。如果是这样,卖出。

关闭多头。

=========

如果+DI和-DI已经交叉,检查ADX和-DI的条件是20或更多。平仓做多。

平仓卖出。

========

如果+DI和-DI交叉的情况下,检查ADX和+DI的情况是20或更多。平仓做空。

============

我不知道这是否会使事情更加混乱。这是我能缩小范围的最简单的方法。

原因: