MT5EA下不了单求助
MqlTradeRequest request={0};
MqlTradeResult result={0};
//--- 请求的参数
request.action =TRADE_ACTION_DEAL; // 交易操作类型
request.symbol =Symbol(); // 交易品种
request.volume =1; // 0.1手交易量
request.type =ORDER_TYPE_BUY; // 订单类型
request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); // 持仓价格
request.deviation=5; // 允许价格偏差
// request.magic =EXPERT_MAGIC; // 订单幻数
//--- 发送请求
if(!OrderSend(request,result))
PrintFormat("OrderSend error %d",GetLastError()); // 如果不能发送请求,输出错误代码
//--- 操作信息
PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order);
上面的源码价格有问题.这个是正确的.
滑点也改过了.应该不是滑点的问题
还有一个栏位没有正确填充: request.type_filling = ???
如果要正确填充,可以参考这篇贴子里面的方法:
还有一个栏位没有正确填充: request.type_filling = ???
如果要正确填充,可以参考这篇贴子里面的方法:
谢谢版主,加了一句代码后可以执行了.
request.type_filling =ORDER_FILLING_IOC;
帮助文件讲的不详细,我再研究一下.谢谢你.
谢谢版主,加了一句代码后可以执行了.
request.type_filling =ORDER_FILLING_IOC;
帮助文件讲的不详细,我再研究一下.谢谢你.
不客气 :) 那个帮助里面的例子程序写的确实不好,问题解决就好了 :)
MqlTradeRequest request={0};
MqlTradeResult result={0};
//--- 请求的参数
request.action =TRADE_ACTION_DEAL; // 交易操作类型
request.symbol =Symbol(); // 交易品种
request.volume =1; // 0.1手交易量
request.type =ORDER_TYPE_BUY; // 订单类型
request.price =SymbolInfoDouble(Symbol(),SYMBOL_ASK); // 持仓价格
request.deviation=5; // 允许价格偏差
// request.magic =EXPERT_MAGIC; // 订单幻数
//--- 发送请求
if(!OrderSend(request,result))
PrintFormat("OrderSend error %d",GetLastError()); // 如果不能发送请求,输出错误代码
//--- 操作信息
PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order);
上面的源码价格有问题.这个是正确的.
PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order);
帮助文件的源码,也无法下单.
也无法下单:提示
2017.09.07 16:01:32.894 cheshi (XAUUSD,H1) OrderSend error 4756
2017.09.07 16:01:32.894 cheshi (XAUUSD,H1) retcode=10030 deal=0 order=0
日志:
2017.09.07 16:01:33.050 Trades '52964751': failed market buy 1.00 XAUUSD [Unsupported filling mode]
是什么原因,新人学习,卡在这里一天了.