[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 75

 
Vinin:


谢谢你!它像时钟一样工作。))
 
ZZZEROXXX:

在这一行中

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) { Print("break "+GetLastError()); break;}

订单中断了,但错误代码为0.为什么会发生这种情况?

因为你有一个检查条件,即使用OrderSelect()函数选择的订单不是一个市场订单,打印到日志并中断。

应该反过来做:如果订单是市场,并且订单有一个神奇的数字和一个符号,并且.然后关闭它,不要中断订单的迭代。

https://book.mql4.com/ru/trading/orderclose

 
大家好!是否有以下任务的脚本或指标?我需要在终端画一条水平线,并在一定距离内跟踪价格(像跟踪,但只是图形化)。这个脚本会使MT的负荷增加多少?提前感谢您!
 
globad:
大家好!是否有以下任务的脚本或指标?我需要在终端画一条水平线,并在一定距离内跟踪价格(像跟踪,但只是图形化)。这个脚本会使MT的负荷增加多少?提前感谢您!

一行中的行动 - ObjectSet

 
IgorM:

因为你正在检查使用OrderSelect()函数选择的订单是否不是市场订单,然后将其打印到日志中并中断。

应该反其道而行之:如果该订单是可销售的,并且该订单有一个神奇的数字和一个符号和。然后关闭它,不要中断订单的迭代。

https://book.mql4.com/ru/trading/orderclose

即这一行

if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) { Print("break "+GetLastError()); break;}

改为

如果(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true){这里我们要关闭所有的东西}。

但意义是一样的。

我不太明白为什么OrderSelect可以返回false,而GetLastError()却=0。

 
ZZZEROXXX:

就关闭所有订单的功能提出建议

我将按照相反的顺序来处理这些订单。for(int i=total-1;i>-1;i--)

 

请帮我找到一个错误,我不能把它弄对,然后从文件中读出来

这里是代码。

int处理。

double value,Price,PriceLast,asd;

handle=FileOpen("EURUSD5up.dat",FILE_BIN | FILE_READ |FILE_WRITE)。

如果(handle<1)
{

Print("can't open file error-",GetLastError())。

return(0);

}

asd = (Price - PriceLast);

FileWriteDouble(handle, asd, DOUBLE_VALUE)。

FileSeek(handle, 0, SEEK_SET;)

value=FileReadDouble(handle,DOUBLE_VALUE)。

Print(value)。

FileClose(handle)。

这里是结果: 2011.02.08 10:18:27 2010.12.31 18:47 TEST EURUSD,M5: 0

 
splxgf:

我将按照相反的顺序来处理这些订单。for(int i=total-1;i>-1;i--)


谢谢你!,奇怪的是,这个变体没有出现在样本帮助中。
 

стандартный кодебазовский RSI, являющийся отношением средней положительных изменений к средней отрицательных, не то же самое

即真实的、原始的RSI,它是正面变化之 与负面变化之 的比率。

虽然我已经知道并理解了很多年,但与代码库的那个不同,我不会说我的版本是正确的。

这些是最基本的,我想每个在市场上呆了很久的人都知道,rsi是sumpos/sumneg*100。

顺便说一下,他们也扭曲了MacDi--他们制造了主要的机械轮 EMA

>
 
sergeev:

单行动作--ObjectSet

非常感谢您的答复。不幸的是,我不太擅长编程。你能告诉我它应该是什么样子的吗,比如说一条滞后于价格3便士的线,线的颜色为蓝色。