下载MetaTrader 5

请教各位编程高手:关单和开单的时候价格虚高的问题

要添加评论,请登录注册
检查前几名MetaTrader 5信号。选择最佳信号并订阅它!
belliedmonkey
24
belliedmonkey 2015.03.28 12:44 

EA 中执行交易和关单的时候,关单和开单价格比蜡烛区域要高出很多,不知道为什么,请各位指导一下,谢谢!
buy 单用的是 Ask,close 用 Bid
Sell 单用的是 Bid,close 用的是 Ask

效果:小红箭头表示下 了buy 单,小灰箭头表示关单,小绿箭头表示下了 sell 单

 

 

 

 

 

代码:

 

void goLong()
  {
   Print("golong:  currentMain="+currentMain+" currentSignal="+currentSignal);
// RefreshRates();
   orderTicket=OrderSend(Symbol(),OP_BUY,orderLots,Ask,slippage,0,0,NULL,0,0,clrRed);
   if(orderTicket==-1)
     {
      Alert("go Long error,error=",GetLastError());
     }
   else
     {
      orderType=OP_BUY;
      Print("go Long successful");
     }
  }

 

void goShort()
  {
   Print("goShort:  currentMain="+currentMain+" currentSignal="+currentSignal);
// RefreshRates();
   orderTicket=OrderSend(Symbol(),OP_SELL,orderLots,Bid,slippage,0,0,NULL,0,0,clrGreen);
   if(orderTicket==-1)
     {
      Alert("go Short error,error=",GetLastError());
     }
   else
     {
      orderType=OP_SELL;
      Print("go Short successful");
     }
  }
if(orderType==OP_BUY) 
       {
        isBid = true;
        price=Bid;
       }
     else
       {
        price=Ask;
       }
     Print("try close order, bid="+isBid);
     if(OrderClose(orderTicket,orderLots,price,slippage,clrGray)!=true)
       {
        Print("orderClose error,error=",GetLastError());
        Alert("orderClose error,error=",GetLastError());
        //Print("orderClose error,error=",GetLastError());
       }
     else
       {
        Print("orderClose successful");
        orderTicket=-1;
       }
Xiangdong Guo
3740
Xiangdong Guo 2015.03.28 13:30  

你在图表上看到的轨迹都是 Bid 留下的。

Ask 是 Bid + 点差。

你说的“虚高”那部分就是点差。

belliedmonkey
24
belliedmonkey 2015.03.28 14:14  
tradelife:

你在图表上看到的轨迹都是 Bid 留下的。

Ask 是 Bid + 点差。

你说的“虚高”那部分就是点差。

 

我这是测的历史数据啊。设置了点差就一定有点差吗?  

我理解的点差是为了保证交易尽可能的进行,让服务器端在波动比较大的时候可以在点差范围内交易。而不应该是必须 Bid + 点差值 或者来交易吧?

belliedmonkey
24
belliedmonkey 2015.03.28 14:18  
tradelife:

你在图表上看到的轨迹都是 Bid 留下的。

Ask 是 Bid + 点差。

你说的“虚高”那部分就是点差。

不好意思,请问你说的点差是slippage参数吗?这个参数我设置成0也没用
belliedmonkey
24
belliedmonkey 2015.03.28 14:22  
tradelife:

你在图表上看到的轨迹都是 Bid 留下的。

Ask 是 Bid + 点差。

你说的“虚高”那部分就是点差。

   点差可以设置取消吗?不太懂
belliedmonkey
24
belliedmonkey 2015.03.28 14:33  
tradelife:

你在图表上看到的轨迹都是 Bid 留下的。

Ask 是 Bid + 点差。

你说的“虚高”那部分就是点差。

非常感谢你,我已经搞定了,原来测试历史数据需要设置点差,默认点差太大了,我把它设置成2以后,就正常了。
要添加评论,请登录注册