EA: 组合套利

 

组合套利:

这个交易机器人在EURGBP和它的组合报价之间进行套利(三角套利)。


作者: Maxim Dmitrievsky

 

我注意到,在智能交易系统中使用图形对象 的做法很流行。

原因何在?我自己从未使用过。

 
fxsaber:

我注意到,在智能交易系统中使用图形对象 的做法很流行。

原因何在?我自己从未使用过。


我不知道,我想我是个视觉主义者,喜欢将一切视觉化。

在这种情况下......上帝保佑(机器人已经过时了,但也许在其他地方可以赚钱),用眼睛实时观察合成和货币对之间的延迟很有趣。

在发布之前,我对它进行了一些修改,因为在测试器中可以获得毫秒级的刻度时间(在我返回秒级之前)。

 
Maxim Dmitrievsky:

我不知道,我想我是一个视觉主义者,我喜欢把一切都视觉化。

在这种情况下......上帝保佑(这个机器人已经过时了, 但也许你还能在某个地方赚到钱),用我的眼睛实时观察合成和配对之间的延迟很有意思。

在发布之前,我对它做了一些修改,因为在测试器中可以将刻度时间调到毫秒级(在它返回到秒级之前)。

MT4?

 
fxsaber:

MT4?


不,是 MT5,是一年多以前的事了,当时许多经纪商刚刚开始引入 MT5,他们的报价并不完美,有可能出现波动。

在我的记忆中,mt5 测试仪直到半年前(或更早)才将刻度时间恢复到毫秒级。

 
DiffMax, DiffMin, EurDiffMax, EurDiffMin, GbpDiffMax, GbpDiffMin;

奇怪的是,编译器跳过了没有初始化而没有发出警告。事实上,它们被初始化为空是一个巧合。当然,这是一个错误。

 

你知道如何计算 A 和 B 之间的平均值!为什么?

MedianEURUSD=NormalizeDouble(tickEUR.ask-(tickEUR.ask-tickEUR.bid)/2,_Digits);
 
fxsaber:

奇怪的是,编译器跳过了没有初始化而没有发出警告。事实上,它们被初始化为空是一个巧合。当然,这是一个错误。


是的,没错,我想这就是我没有注意到一切正常的原因。

 
显然没有必要
         if(m_Position.PositionType()==POSITION_TYPE_SELL && m_Position.Profit()+m_Position.Commission()>0) m_Trade.PositionClose(symbol);
 
fxsaber:

你知道如何计算 A 和 B 之间的平均值!为什么?


我不记得当时我在想什么了,这并不重要。

 
fxsaber:
显然没有必要。

利润+佣金,我不明白为什么没有括号:)