任何菜鸟问题,为了不给论坛添乱。专业人士,不要路过。没有你就无处可去 - 6. - 页 912

 
drknn:

我在策略测试器中看到一些奇怪的行为。我的EA设置并拖动挂单止损。会发生以下情况。专家顾问将买入止损和卖出止损设置在距离当前价格30点的位置(符号 - GbpUsd. 四位数。 最小水平=3点)。一段时间后,如果他们没有触发,它就会跟随市场把他们拉起来。所以我看到的是。修改成功,修改成功,然后在某个时间点上抨击,错误#1弹出。也就是说,一切都很好,EA也在做同样的动作,突然就出现了这个错误。所有价格都已归一化为位数。一般来说,所有传递给OrderModify()函数输入的 值都是经过规范化处理的!

专家顾问在测试器中的这种行为的原因是什么?

应进行归一化处理,以检查是否有必要进行修改。最好将修改后的价格差异与零进行比较。

if(NormalizeDouble(цена1 - цена2, _Digits) != 0)


根据不同的条件,把<或>零可能更好。

 
Viktorline14:

再次非常感谢您!

现在有一个问题,EA连续开了几个订单,而不是我想要的一个(

int start()



  { S1a = NormalizeDouble(iStochastic(NULL, 0, S1_period, 3, S1_slowing, MODE_SMA, 1, MODE_MAIN, 1), 0);

   S1b = NormalizeDouble(iStochastic(NULL, 0, S1_period, 3, S1_slowing, MODE_SMA, 1, MODE_SIGNAL, 1), 0);

   

   if(MyOrderStateB == 1)Sleep(300000);

    else MyOrderStateB = 0;

   if(MyOrderStateS == 1)Sleep(300000);

    else MyOrderStateS = 0;

    

 

     

   if(S1a == S1b && S1a<20.0000 && S1b<20.0000 )

 

      if(!OrderSend(Symbol(), OP_BUY, OrderValue, NormalizeDouble(Ask, Digits), Slippage, Bid - SL * Point, Ask + TP * Point, NULL, 0, 0,clrBlue))

   Print("Opening Buy error #", GetLastError());  

     else Sleep(2);

   MyOrderStateB = 1;

  

   


      

   if(S1a == S1b && S1a>80.0000 && S1b>80.0000 )


    

    

       if(!OrderSend(Symbol(), OP_SELL, OrderValue, NormalizeDouble(Bid, Digits), Slippage, Ask + SL * Point, Bid - TP * Point , NULL, 0, 0,clrRed))

       Print("Opening Sell error #", GetLastError()); 

       else Sleep(2);

       MyOrderStateS = 1;

       

      

       

       

       

   return(0);}


情况是这样的。

  int start()

     {
      S1a=NormalizeDouble(iStochastic(NULL,0,S1_period,3,S1_slowing,MODE_SMA,1,MODE_MAIN,1),0);
      S1b=NormalizeDouble(iStochastic(NULL,0,S1_period,3,S1_slowing,MODE_SMA,1,MODE_SIGNAL,1),0);

      if(S1a==S1b && S1a<20.0000 && S1b<20.0000 && MyOrderStateB==0)
         (
        if(!OrderSend(Symbol(),OP_BUY,OrderValue,NormalizeDouble(Ask,Digits),Slippage,Bid-SL*Point,Ask+TP*Point,NULL,0,0,clrBlue))
            Print("Opening Buy error #",GetLastError());
          else
            MyOrderStateB=1;
         )

      if(S1a==S1b && S1a>80.0000 && S1b>80.0000 && MyOrderStateS==0)
        {
       if(!OrderSend(Symbol(),OP_SELL,OrderValue,NormalizeDouble(Bid,Digits),Slippage,Ask+SL*Point,Bid-TP*Point,NULL,0,0,clrRed))
            Print("Opening Sell error #",GetLastError());
         else
            MyOrderStateS=1;
        }



      return(0);
     }
 
你好,请你告诉我为什么推送信息有时会有延迟?今天,在打开终端后,半小时后信息就到了我的手机上。网络还可以(手机离我的WIFI很近)。当然,大多数时候,一切都会发生,没有这样的延误。如何使接收推送信息更加稳定?
 
halk2009:
你好,请你告诉我为什么推送信息有时会有延迟?今天,在打开终端后,半小时后信息就到了我的手机上。网络还可以(手机离我的WIFI很近)。当然,大多数时候,一切都会发生,没有这样的延误。如何使接收推送信息更加稳定?
有没有人保证即时通讯?
 
evillive:
有没有人保证即时通讯?
我不知道)这就是我问的原因。大多数时候,信息都是即时到达的,我只是希望它能一直这样!)也许有一些技术方面可以调整,以提高接收推送信息的可靠性。
 
伙计们,这就是垃圾。我把Playsound放在EA中,在信号期间播放声音,但我的音频卡开始抽搐。就是说,有某种短期的声音,抽搐。我关掉终端,一切都很正常。声音正在播放标准.....会是什么呢?
 
drknn:

我在策略测试器中看到一些奇怪的行为。我的EA设置并拖动挂单止损。会发生以下情况。专家顾问将买入止损和卖出止损设置在距离当前价格30点的位置(符号 - GbpUsd. 四位数。 最小水平=3点)。一段时间后,如果他们没有触发,它就会跟随市场把他们拉起来。所以我看到的是。修改成功,修改成功,然后在某个时间点上抨击,错误#1弹出。也就是说,一切都很好,EA也在做同样的动作,突然就出现了这个错误。所有价格都已归一化为位数。一般来说,所有传递给OrderModify()函数输入的值都是经过规范化处理的!

在测试器中,EA的这种行为可能是什么原因?

试图修改一个订单而不改变其任何参数的值。我会注意非严格的比较,使其成为严格的比较。
 

日安!

你能给我一个提示吗?你能不能用公式计算或参考...

欧元兑美元的价格要过多少点才能止损=50%,200的杠杆是经纪人对1手的交易条件。 保证金调用=100%。

谢谢你。

P.S. 我知道你需要一个点价。因此,从这里算起...

 
_Roman:

日安!

你能给我一个提示吗?你能不能用公式计算或参考...

欧元兑美元的价格要过多少点才能止损=50%,200的杠杆是经纪人对1手的交易条件。 保证金调用=100%。

谢谢你。

P.S. 我知道你需要一个点价。因此,从这里算起...


当头寸的权益增加了50%时,计算点数就更容易了!点数的差异将是相同的!;))
 
borilunad:
当头寸的权益增加了50%时,计算点数就更容易了!点数的差异将是相同的!;))

:-)在那里,止损被计算为存款金额的一个百分比...

是的,而且在问题中我忘了说明,比如说,有1000美元的存款。