文章 "如何将MetaTrader 5中的交易复制到MetaTrader 4" - 页 8

 

我确实觉得自己有点糊涂了,因为从其他人关于 fileopen 函数的程序编码来看,他们确实会像下面这样检查错误 4103:

int start()
{
int Handle, nbre=0;//, sens=2, ticket=3333;
string File_Name="trading.txt", sens=2, ticket=3333;
//-----Lecture-------------------------------------------------------+
Handle=FileOpen(File_Name,FILE_CSV|FILE_READ,";");// 文件打开
if(Handle<0) // 文件打开失败
{
if(GetLastError()==4103)// 如果文件不存在,...
Alert("No file named ",File_Name);//... inform trader
else // 如果出现任何其他错误,...
Alert("Error while opening file ",File_Name);//...this message
PlaySound("Bzrrrr.wav");// 声音伴奏

return; // 退出 start()

实际上,我成功编译了源程序https://c.mql5.com/2/8/copyist_positions.mq4 并添加了一些调试显示,然后将此程序作为脚本运行。 在 Experts 窗口中出现了以下错误:

22:02:25 Copyist_positions EURUSD,M1:打开文件 4103 出错,翻译器 positionsHandle=-1

22:02:30 Copyist_positions EURUSD,M1:Error opening file 4103,Translator positionsHandle=-1

22:02:30 Copyist_positions EURUSD,M1:ArrayInitialize 函数内部错误

整数句柄显然不等于零,文件打开函数失败(尽管 4103 可能不是指此错误的确切错误代码,因为它只是从 getlasterror()?

如果您对上述问题有任何反馈,敬请垂询。

 
我设置了复制器,一切运行正常,但今天在止损平仓卖出后,复制器开始以相同的价格、相同的止损在同一方向开仓,并立即平仓!问题出在哪里? 如何追踪是什么原因导致开仓?
 
maxxttro:
我设置了复制器,一切运行正常,但今天在止损平仓卖出后,复制器开始以相同的价格、相同的止损在同一方向开仓,并立即平仓!问题出在哪里?
显然,MT4 上的止损比 MT5 上的早。这可能与报价不同有关。
 

你好、

能否将主控部分从 MQ5 重写为 MQ4?以便都能在 MT4 平台上使用?您知道如何转换吗?


非常感谢

 
是否有可能在 Mt4 中为开仓 设置固定手数?
 
x5fx:
是否有可能在 Mt4 中为开仓 设置固定手数? 不是系数,而是例如 0.01 手。

可以,我有这样的版本,但只有市场还不能用。

顺便说一下,上一个帖子中的错误也在这里得到了修复。

 
Urain:

可以,我有这个版本,但只有市场还不能用。

顺便说一下,上一个帖子中的错误也已经修复了。

您能把它上传到什么地方吗?
,30 分钟前我已经打开了市场:)
 
maxxttro:
我设置了复制器,一切运行正常,但今天在止损平仓卖出后,复制器开始以相同的价格、相同的止损在同一方向开仓,并立即平仓!问题出在哪里?

既然我提到了这个错误,我就再回答一次。

要解决这个问题,只需延长复制的止损点,这不会影响交易结果,因为 MT4 中的止损点只有在失去连接时才会触发,而且错误也会消失,因为 MT4 中止损点的实现会在 MT5 中止损点之后,所以复制器会复制平仓。

 
x5fx:

30 分钟前我已经开市了:))

据我所知,真正的购买操作还没有开始。

对于那些知道如何操作的人,有一篇气球文章,而那些不知道如何操作的人,请好心付钱。

 
Urain:

据我所知,真正的购买操作还不可行。

对于那些知道如何进行采购的人,我们已经写了一篇气球文章,而那些不知道如何进行采购的人则应该慷慨解囊。

市场就是市场。