[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 1079

 

有些东西似乎没有发挥作用。请帮助。

这个想法是这样的:如果烛光大于某个值,那么就禁止进一步交易。

bool Trade=true。

//---------- start()

{.......

如果(CalculateCurrentOrders(Symbol())==0 && CheckVolume()==1) CheckForOpen(); //--------open order if (no order is open) AND (candlestick is not bigger than)

if(CalculateCurrentOrders(Symbol())==0 && CheckVolume()==-1) Trade=false; //--------- 设置Trade false,前提是(没有未结订单)和(蜡烛图大于)。

......}

//------- 贸易在CheckForOpen()函数中使用。

void CheckForOpen() //------------------- 检查条件和打开订单

{pos(191;

if( Trade && A()==-1 && B()==-1) //------- 检查开放条件

{ res=OrderSend(Symbol(),OP_SELL,Lot,Bid,2,Ask+SL*Point,Bid-TP*Point,"",MAGICMA,0,Red); //--------- 如果条件得到满足,订单被打开。

trade=false; }//--------Trade被分配了一个贸易禁令值。而在这里,它是有效的。如果订单在接单时关闭,那么它就会等待新的确定条件的到来,尽管旧的条件仍然有效(之前,顾问连续打开订单)。

.........}

//-------------------------- 检查蜡烛的高度

int CheckVolume()

{ double volume=High[1]-Low[1]; //-------measuring candlestick height.

if (volume <= CandleVolume*Point) return (1); //---------- if candle is lower than

if (volume > CandleVolume*Point) return (-1);//------------ if the candle is more than

return(0);}

也试过版本,但没有效果。

空白启动()。

{ .....

如果(CalculateCurrentOrders(Symbol())==0 && CheckVolume()==1) CheckForOpen();

.....}

.....

int CheckVolume()

{ double volume=High[1]-Low[1]; //-------,测量蜡烛的高度。

if (volume <= CandleVolume*Point) return (1); //---------- if candle is lower than

if (volume > CandleVolume*Point) {Trade=false; return (-1);}//------------ if candle is higher than

return(0);}

 
dzhini:

这是不可能的事。


也许我们应该先做一个指标
 
Vinin:

也许我们应该先做一个指标
而没有办法做到这一点?
 

帮帮我吧!我怎样才能使打印出现一次,但在每一次打勾 时都有打印下降。



while(OrdersTotal() != 0 && OrderSelect(index, SELECT_BY_POS, MODE_TRADES)){
    if(OrderType() == OP_BUY)
     {
       Print ("-------   ",OrderSymbol()," "," BUY ",OrderLots()," trade was opened at ", OrderOpenPrice(),"; Stop loss:", OrderStopLoss(),
          "; Take profit:", OrderTakeProfit(), "; Ticket:", OrderTicket(),"; Open time:", OrderOpenTime());
                       return(0);
                }
    if(OrderType() == OP_SELL)
      {
       Print ("-------   ",OrderSymbol()," "," SELL ",OrderLots()," trade was opened at ", OrderOpenPrice(),"; Stop loss:", OrderStopLoss(),
          "; Take profit:", OrderTakeProfit(), "; Ticket:", OrderTicket(),"; Open time:", OrderOpenTime());
                      
       }
index++;
 
itum:

帮帮我吧!我怎样才能使打印出现一次,但每次打勾时都会有打印掉落。


在开单的时候输出这个打印。
 
sergeev:
当订单被打开时,输出此打印。


我需要输出 已经被手动或其他EA打开的订单信息

 
itum:


我需要显示已经被手动或其他EA打开的现有订单的信息。

然后在屏幕上的评论中显示它们。评论
 

这个错误是什么?如果我从终端发送一个测试邮件,我得到一个错误

- 2010.12.28 18:23:55 邮件:530 5.7.0 必须先发出STARTTLS命令。 y1sm3265289fak.15

 
dzhini:
而没有办法做到这一点?

当然,你可以,但该指标使你很容易直观地检查该算法
 
itum:


我需要显示已经被手动或其他EA打开的现有订单的信息。


另外,我们也可以做一个印刷品的计数器。我们声明一个整数变量。然后我们检查是否没有订单,我们将其设置为零。然后我们检查该变量是否等于零,市场上是否有订单,然后我们打印订单数据,并将该变量增加1。一旦订单被关闭,该变量将再次被设置为零。这意味着代码将等待至少一个订单的出现,并在日志中显示有关信息。

原因: