新人对MQL4和MQL5的任何问题,对算法和代码的帮助和讨论 - 页 1122

 
Alekseu Fedotov:

它不会消失。

阅读

修改后的

if(Bid == PriceLine)

if(NormalizeDouble(Bid,4) == NormalizeDouble(PriceLine,4))

交易仍然没有在交叉路口打开

 
Fib0 RU:

修改后的

交易仍然没有在交叉口打开

点位之间的价格不等于1点,这种平等是罕见的。如果从低于价格,然后抓住价格大于或等于。如果不控制价格的来源.那就更复杂了.比如说是少了,变成多了,或者是平等的,对称的。有两个检查。要么检查线位范围加5点和减5点。

 
是否有可能让库将信息输出到文件中(模拟Print()函数),以检查库函数里面有哪些值,试过用C++手段输出到文件的通常方式没有用,我前面举了例子,谁能给点建议?
 
Valeriy Yastremskiy:

如果从下面的价格,然后捕捉到的价格是大于或等于。如果不控制价格的来源。 它更复杂了。 就像原来更少,变得更多或平等和对称的。有两个检查。要么检查线位范围加5点和减5点。

但在没有指标的情况下,手动设置线路时,交易会被打开,即使不总是如此。顾问没有看到指标线
 
Seric29:
是否可以从库中输出信息到文件(模拟Print()函数),以检查库函数中的值,通过C++的方式尝试输出到文件的通常方式没有帮助,我之前举了例子,谁能提供建议?
std::fstream, CreateFile.你最喜欢什么,都可以。
 
Vladimir Simakov:
std::fstream, CreateFile.我更喜欢什么呢,两个都可以。

你检查了自己的建议吗?

请试一试,没有文件被创建或写入,我手动试了一下,也没有效果。

#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <fstream>
#include <string>


/*using std::cout;
using std::endl;
using std::cin;*/

using namespace std;


#define _DLLAPI extern "C" __declspec(dllexport)

/*_DLLAPI int __stdcall Funkt(int qa){//"C:\\Program Files(x86)\\Forex4you\\MQL4\\Experts\\Moyperviyzapisfiles.txt\\Moyperviyzapisfiles.txt"
        ofstream file;//"C:\\Users\\123\\Documents\\Visual Studio 2012\\Projects\\ConsoleApplication8\\ConsoleApplication8\\Moyperviyzapisfiles.txt"
        //"C:\\Users\\123\\documents\\visual studio 2012\\Projects\\ConsoleApplication8\\Debug\\ConsoleApplication8.dll\\Moyperviyzapisfiles.txt"
        file.open("C:\\Program Files(x86)\\Forex4you\\MQL4\\Experts\\Moyperviyzapisfiles.txt");//,ios::out
        file<<"Moyperviyzapisfiles";//(string)qa
        file.close();   
        return 12;}*/
该函数连接并返回12,但不做任何文件工作。
 

谁能帮助我在哪里出现错误?


/////////////////////////////////////////////////

// 关闭订单,但只有当它处于盈利状态时才关闭 //

/////////////////////////////////////////////////


void CloseIfInProfit(string symb , int index)

{

for (int i = 0;i <= OrdersTotal();i++)

{

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) )

{

如果( OrderSymbol() == symb )

{

双倍利润 = ( OrderProfit() - OrderCommission() - OrderSwap() )。

如果( ( ( OrderType() == OP_BUY || OrderType() == OP_SELL) && ( profit >= 0 ) && ( OrderMagicNumber() == MAGIC) )

{

OrderClose(OrderTicket(),OrderLots(),MarketInfo(symb,MODE_BID),100,Red); // 关闭任何未结订单。

ObjectSetText("Text2"+symb,",TextSize, "Arial"); // 摆脱条目标准信息。

}

如果(OrderType() == OP_BUYSTOP || OrderType() == OP_SELLSTOP)

{

OrderDelete(OrderTicket())。// 删除任何未决订单

ObjectSetText("Text2"+symb,",TextSize, "Arial"); // 摆脱条目标准信息。

}

}

}

}

partial[index] = false。

}


 

大家好!

请帮助我解决一个问题。

我在mql4中写了一个机器人。我想用一些接近mql的语言重写这个机器人,以便能够在交易所工作,如binance、bimex,它们有不同的交易终端

 
Seric29:

你检查了自己的建议吗?

请试一试,没有文件被创建或写入,我手动试了一下,也没有效果。

该函数连接并返回12,但对文件不起作用。
试着创建一个你有访问权限的文件)))
 
Fib0 RU:
但在没有指标的情况下手动设置线路时,交易会打开,即使不总是如此。专家顾问没有看到指标线
if((fabs( round((Bid - PriceLine}/Point))<=10)Print (Bid,"  ",PriceLine);

试着看一下日志,看看它打印了什么。这是四舍五入后的整数差的模数除以点。

原因: