int start() {
int limit; int counted_bars=IndicatorCounted();
//---- проверка на возможные ошибкиif(counted_bars<0) return(-1);
//---- последний посчитанный бар будет пересчитанif(counted_bars>0) counted_bars-=10; limit=Bars-counted_bars;
//---- основной циклfor(int i=0; i<limit; i++) {
Symbol1[i]= N1*
(iMA(Symbol_1,Period(),MA_fast,0,MA_Mode,MA_Price,iBarShift(Symbol_1,0,Time[i],false))-
iMA(Symbol_1,Period(),MA_per,0,MA_Mode,MA_Price,iBarShift(Symbol_1,0,Time[i],false))) ;
.... ....
int start() {
int limit; int counted_bars=IndicatorCounted();
//---- проверка на возможные ошибкиif(counted_bars<0) return(-1);
//---- последний посчитанный бар будет пересчитанif(counted_bars>0) counted_bars-=10;
limit=Bars-counted_bars;
//---- основной циклfor(int i=0; i<limit; i++) {
//РИСУЕМ ЛИНИИ СИМВОЛОВ, ЕСЛИ ИМЕЮТСЯ БАРЫ
Symbol1[i]= N1*
(iMA(Symbol_1,Period(),MA_fast,0,MA_Mode,MA_Price,iBarShift(Symbol_1,0,Time[i],false))-
iMA(Symbol_1,Period(),MA_per,0,MA_Mode,MA_Price,iBarShift(Symbol_1,0,Time[i],false))) ;
Symbol2[i]= N2*
(iMA(Symbol_2,Period(),MA_fast,0,MA_Mode,MA_Price,iBarShift(Symbol_2,0,Time[i],false))-
iMA(Symbol_2,Period(),MA_per,0,MA_Mode,MA_Price,iBarShift(Symbol_2,0,Time[i],false))) ;
Symbol3[i]= N3*
(iMA(Symbol_3,Period(),MA_fast,0,MA_Mode,MA_Price,iBarShift(Symbol_3,0,Time[i],false))-
iMA(Symbol_3,Period(),MA_per,0,MA_Mode,MA_Price,iBarShift(Symbol_3,0,Time[i],false))) ;
Symbol4[i]= N4*
(iMA(Symbol_4,Period(),MA_fast,0,MA_Mode,MA_Price,iBarShift(Symbol_4,0,Time[i],false))-
iMA(Symbol_4,Period(),MA_per,0,MA_Mode,MA_Price,iBarShift(Symbol_4,0,Time[i],false))) ;
}
return (0);
} // конец функции СТАРТ
谢谢你。
大家下午好。
请告知。 该指标显示工具的价格线和
右边有一个文字注释--他们的名字和位置大小。
一切工作都很正常。只要我不把指标放在有5位数报价的工具的图表上。
价格线已经画好。但右边的评论却完全消失了。或者,显示的是零,而不是位置大小。
日志显示零分化 (见Alpari图表)。
- 在EURUSD和GBPUSD上--显示的不是大小的零,而是...
我认为这与位置大小的计算有关。
比率k1=MarketInfo(Symbol_1, MODE_TICKVALUE)..../MarketInfo(Symbol_1, MODE_TICKSIZE)
在5位数时给出 "除以0"。
请告知如何解决这个问题?
请告诉我是否有一个脚本或指标可以显示历史上较早的交易,例如从某某到某某的日期。在我看来,这是非常有用的。
谢谢你。
尤里
大家下午好。
请告诉我如何解决这个问题?
简单地说,尝试用MODE_POINT代替MODE_TICKSIZE。但实际上,你需要重写代码以说明空的MarketInfo()。
请告诉我是否有一个脚本或指标可以显示历史上较早的交易,例如从某某到某某的日期。在我看来,Ochen是个有用的东西。
我认为这将是非常有用的。
尤里
https://www.mql5.com/en/code- 脚本。 你可以在你的终端的历史中设置时间范围。
VisualOrders.mq4 - 指标
下午好。
在mt4 EXNESS中,我的 "多货币 "指标,由于某些原因,只有在连接互联网时才能工作(与其他经纪公司的mt4不同)。
我不使用时出现了错误,我得到了一个负面的反馈。日志给出了一个 "Zerodive"。
当我连接到互联网时,经常要先点击TF才能出现指数线。
能否请您告诉我问题是什么以及如何解决?
当互联网被关闭时。
连接时。
下午好。
在mt4 EXNESS中,我的 "多货币 "指标,由于某些原因,只有在连接互联网时才能工作(与其他经纪公司的mt4不同)。
我不使用时出现了错误,我得到了一个负面的反馈。该日志给出了一个 "zerodividi"。
当我连接到互联网时,经常要先点击TF才能出现指数线。
能否请您告诉我问题出在哪里,如何解决?
当互联网被关闭时。
连接时。
这是一个正常的事情。这种情况经常发生,而且并不总是能够得到处理。虽然除以0 可以固定。问题是更多时候缺乏市场环境。
我不太明白,维克多。
这是一个 "正常的事情 "吗?这显然是一个小故障!
我不明白这个词--"没有市场环境"。
如果我们把除数固定为零--价格线会出现吗?我不这么认为。
指标窗口右角的注释正常显示。也就是说,函数ObjectCreate等 都在正常工作。
同样,在注释中设置了数字的数学计算 也能正常工作。
只保留指标的价格线。那里没有其他东西。
价格线被设置在缓冲区。每条价格线只是两个MA之间的差异。
因此,这就是给出 "零除法 "的部分!但这里根本就没有除法,更没有除以零的情况出现。
因此,这种情况下的错误是由服务器(或平台)从后台返回的?也可能是MT4的开发者没有考虑到这样的故障,设置了 "除零 "的回报,与这种错误的本质并不完全对应。
还有,为什么该指标在MT4中运行良好? 为什么指示器能正常工作?
类似的平台会有什么不同,从而使这个简单的代码在其中的工作方式不同?
除以0 可以处理,但你也需要指标正常工作。这就更难了。
从理论上讲,这段简单的代码(为4行)会有什么问题)。