错误、漏洞、问题 - 页 1921 1...191419151916191719181919192019211922192319241925192619271928...3184 新评论 A100 2017.07.02 22:11 #19201 编译错误template<typename T1, typename T2> void f( T2 t ) { Print( typename( T1 ), ":", typename( T2 ), ":", t ); } void OnStart() { char ch = 5; f<int>( ch ); //(1) //error: 'f' - wrong template parameters count }编制了一份记录 f<int,char>( ch ); //(2) 其中包含多余的信息,而且如果ch不是char,就会产生歧义。此外,在宏中,关于ch类型的信息一般是不可用的(取决于上下文)。 TheXpert 2017.07.03 11:00 #19202 A100:编译时出错有可能在专业领域做到这一点吗? A100 2017.07.03 12:17 #19203 Комбинатор:是否允许加号? C++可以编译两种变体,但(1)似乎更正确和直观。在(2)中,我们也必须记住类型,这是不方便的,我们得到的不是简化,而是过度的复杂化,这在<>有几个类型名的情况下可以清楚地看到。 Vladimir Pastushak 2017.07.03 13:15 #19204 没有警报消失,尝试了一切,阅读了一切,在μl网站上没有警报,只有在终端......。 Andrey Khatimlianskii 2017.07.03 14:11 #19205 Vladimir Pastushak:警报不会消失,我已经尝试了一切,我已经阅读了一切,在μl网站上没有警报,只有在终端......这种情况从一开始就存在。这里有一个主题,发现了要删除哪个文件才能使它们勾选为已读。但后来 "幽灵 "还是出现了。 flh 2017.07.05 08:12 #19206 你好。你能告诉我为什么演示中的黄金报价 越来越少吗? A100 2017.07.05 18:05 #19207 .日志文件%AppData%\MetaQuotes\Terminal\...\MQL5\Logs\YYYYMMDD.log没有及时更新。更新只发生在:重启终端或选择查看菜单后。如果你不重新启动或点击预览,相应的文件将是空的。以前一切都正常(甚至在MetaEditor中打开的YYYYMMDD.log文件在专家标签中显示行后,也会在几秒钟内更新),而且不需要执行额外的非明显的操作。 ponochka 2017.07.05 22:14 #19208 晚安!我的专家顾问有RSI和STO,但我不能让买入或卖出信号在新的蜡烛上 打开,而不是在当前的蜡烛 上打开!为什么?代码是这样的。 空白的OnTick(){ for (int i=0; i<OrdersTotal(); i++) 如果(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) 如果(OrderSymbol()==Symbol() && Magic==OrderMagicNumber() 返回。 double RSI0 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, 0); double RSI1 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, 1); double STO0=iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_MAIN, 0)。 double STO1=iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_MAIN, 1)。 double STO2 = iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_SIGNAL, 0)。 double STO3 = iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_SIGNAL, 1)。 双SL=0,TP=0。 如果(RSI1 < RSIDownLevel && RSIDownLevel < RSI0 && STO2 < STO0){ 如果(takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits)。 如果(stoploss!=0) SL = NormalizeDouble(Ask - stoploss* Point,Digits); 如果(OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slipage,SL,TP,NUL L,Magic)==-) Print(GetLastError())} 如果(RSI1 > RSIUpLevel && RSIUpLevel > RSI0 && STO3 > STO1){ 如果(takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits)。 如果(stoploss!=0) SL = NormalizeDouble(Bid + stoploss* Point,Digits)。 如果(OrderSend(Symbol(),OP_SELL,Lot,NormalizeDouble(Bi d,Digits),slipage,SL,TP,NULL,Magic)==-) Print(GetLastError())} return(0);}我必须再次重复,我的订单是通过在当前蜡烛上开仓来触发的,而我需要订单在下一个蜡烛上开仓!"。请帮助我!!!。 Errors, bugs, questions 初学者的问题 MQL4 MT4 MetaTrader [存档!]我将免费撰写任何专家或指标。 Vladimir Pastushak 2017.07.05 23:21 #19209 sviter-pro:晚安!我的专家顾问有RSI和STO,但我不能让它在买入或卖出信号发出后在新的蜡烛 上打开,而不是在当前的蜡烛上打开!我的专家顾问有RSI和STO。同样,我的订单在当前的蜡烛上被触发,但我需要订单在下一个蜡烛上打开!!。//+------------------------------------------------------------------+ void OnTick() { for(int i=0; i<OrdersTotal(); i++) if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) if(OrderSymbol()==Symbol() && Magic==OrderMagicNumber()) return; double RSI0 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, 0); double RSI1 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, 1); double STO0=iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_MAIN, 0); double STO1=iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_MAIN, 1); double STO2 = iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_SIGNAL, 0); double STO3 = iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_SIGNAL, 1); double SL=0,TP=0; if(NewBar()) { if(RSI1<RSIDownLevel && RSIDownLevel<RSI0 && STO2<STO0) { if(takeprofit!=0) TP=NormalizeDouble(Ask+takeprofit*Point,Digits); if(stoploss!=0) SL=NormalizeDouble(Ask-stoploss *Point,Digits); if(OrderSend(Symbol(),OP_BUY,Lot,NormalizeDouble(Ask,Digits),slippage,SL,TP,NUL L,Magic)==-1) Print(GetLastError()); } if(RSI1>RSIUpLevel && RSIUpLevel>RSI0 && STO3>STO1) { if(takeprofit!=0) TP=NormalizeDouble(Bid-takeprofit*Point,Digits); if(stoploss!=0) SL=NormalizeDouble(Bid+stoploss *Point,Digits); if(OrderSend(Symbol(),OP_SELL,Lot,NormalizeDouble(Bi d,Digits),slippage,SL,TP,NULL,Magic)==-1) Print(GetLastError()); } } return(0); } //+------------------------------------------------------------------+ bool NewBar() { static datetime time=0; if(time==0) { time=Time[0]; return false; } if(time!=Time[0]) { time=Time[0]; return true; } return false; } //+------------------------------------------------------------------+ Artyom Trishkin 2017.07.05 23:50 #19210 sviter-pro:晚安!我的专家顾问有RSI和STO,但我不能让它在买入或卖出信号被触发时,在新的蜡烛上 打开,而不是在当前的蜡烛 上!我的专家顾问有RSI和STO。代码是这样的。我必须再次重复,我的订单是通过在当前蜡烛上开盘来触发的,而我需要订单在下一个蜡烛上开盘!"。请帮助我!!。你从第0条和第1条中获取指标值。 取代0和1,分别取1和2的值。 1...191419151916191719181919192019211922192319241925192619271928...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
编译错误
编制了一份记录
编译时出错
有可能在专业领域做到这一点吗?
是否允许加号?
没有警报消失,尝试了一切,阅读了一切,在μl网站上没有警报,只有在终端......。
警报不会消失,我已经尝试了一切,我已经阅读了一切,在μl网站上没有警报,只有在终端......
这种情况从一开始就存在。
这里有一个主题,发现了要删除哪个文件才能使它们勾选为已读。但后来 "幽灵 "还是出现了。
.日志文件%AppData%\MetaQuotes\Terminal\...\MQL5\Logs\YYYYMMDD.log没有及时更新。
更新只发生在:重启终端或选择查看菜单后。如果你不重新启动或点击预览,相应的文件将是空的。
以前一切都正常(甚至在MetaEditor中打开的YYYYMMDD.log文件在专家标签中显示行后,也会在几秒钟内更新),而且不需要执行额外的非明显的操作。
晚安!我的专家顾问有RSI和STO,但我不能让买入或卖出信号在新的蜡烛上 打开,而不是在当前的蜡烛 上打开!为什么?
代码是这样的。
for (int i=0; i<OrdersTotal(); i++)
如果(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
如果(OrderSymbol()==Symbol() && Magic==OrderMagicNumber()
返回。
double RSI0 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, 0);
double RSI1 = iRSI(NULL, 0, RSIPeriod, PRICE_CLOSE, 1);
double STO0=iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_MAIN, 0)。
double STO1=iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_MAIN, 1)。
double STO2 = iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_SIGNAL, 0)。
double STO3 = iStochastic(NULL, 0, KPeriod, DPeriod, Slowing, MODE_SMA, STO_LOWHIGH, MODE_SIGNAL, 1)。
双SL=0,TP=0。
如果(RSI1 < RSIDownLevel && RSIDownLevel < RSI0 && STO2 < STO0){
如果(takeprofit!=0) TP = NormalizeDouble(Ask + takeprofit*Point,Digits)。
如果(stoploss!=0) SL = NormalizeDouble(Ask - stoploss* Point,Digits);
如果(OrderSend(Symbol(),OP_BUY, Lot,NormalizeDouble(Ask,Digits),slipage,SL,TP,NUL L,Magic)==-) Print(GetLastError())
}
如果(RSI1 > RSIUpLevel && RSIUpLevel > RSI0 && STO3 > STO1){
如果(takeprofit!=0) TP = NormalizeDouble(Bid - takeprofit*Point,Digits)。
如果(stoploss!=0) SL = NormalizeDouble(Bid + stoploss* Point,Digits)。
如果(OrderSend(Symbol(),OP_SELL,Lot,NormalizeDouble(Bi d,Digits),slipage,SL,TP,NULL,Magic)==-) Print(GetLastError())
}
return(0);
}
我必须再次重复,我的订单是通过在当前蜡烛上开仓来触发的,而我需要订单在下一个蜡烛上开仓!"。请帮助我!!!。
晚安!我的专家顾问有RSI和STO,但我不能让它在买入或卖出信号发出后在新的蜡烛 上打开,而不是在当前的蜡烛上打开!我的专家顾问有RSI和STO。
同样,我的订单在当前的蜡烛上被触发,但我需要订单在下一个蜡烛上打开!!。
晚安!我的专家顾问有RSI和STO,但我不能让它在买入或卖出信号被触发时,在新的蜡烛上 打开,而不是在当前的蜡烛 上!我的专家顾问有RSI和STO。
代码是这样的。
我必须再次重复,我的订单是通过在当前蜡烛上开盘来触发的,而我需要订单在下一个蜡烛上开盘!"。请帮助我!!。
你从第0条和第1条中获取指标值。
取代0和1,分别取1和2的值。