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

 
Desead:

当然谢谢你,但如果你懒得看问题,那么回答的意义何在?我可以在我的两个函数中改变指标中的水平值、厚度、颜色和风格。我没有机会看到描述。我再问一遍,有人知道答案吗?我不知道我以前是否见过它。

我附上一张图片,显示我需要的东西。


它不是,而且可能永远不会以这种形式出现。
 
yan720:

那么你认为这个功能就不能用了吗?我没有测试过它,但在我看来,它是工作代码的一部分(这个伊兰显然是从充其量是调试过的东西重建的)。还是说它仍然是一个蹩脚的代码?




使用它。

void Modify_orders (double AverPrice, double SLoss, double TProfit){
   double Stoplevel =  MarketInfo(Symbol(),MODE_STOPLEVEL);
   datetime GTCount_1 = 0;
   datetime GTCount_2 = 0;
   int ppos = 0;
   if ((AverPrice != 0) == TRUE){
      for (ppos = OrdersTotal() - 1; ppos >= 0; ppos--){
          if (OrderSelect(ppos, SELECT_BY_POS, MODE_TRADES) == TRUE){
            if ((OrderSymbol() != Symbol() || OrderMagicNumber() != Magic || OrderType() >= 2) == TRUE) continue;
            if ((OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) == TRUE){ 
            if ((OrderType() == 0) == TRUE){ 
               if(Bid - SLoss < Stoplevel * Point){ SLoss = ND(Bid - Stoplevel * Point);}
               if(TProfit - Ask < Stoplevel * Point){ TProfit = ND(Ask + Stoplevel * Point);}
            }else if ((OrderType() == 1) == TRUE){ 
               if(SLoss - Ask < Stoplevel * Point){ SLoss = ND(Ask + Stoplevel * Point);}
               if(Bid - TProfit < Stoplevel * Point){ TProfit = ND(Bid - Stoplevel * Point);}
               }
                  GTCount_1 = GetTickCount();           
                  OrderModify(OrderTicket(), AverPrice, SLoss, TProfit, 0, Yellow);  
                  GTCount_2 = GetTickCount() - GTCount_1;
                   // Print("Modify time(ms):   ", GTCount_2, "   /  Ticket: ", OrderTicket()," /  Time: ", TimeToStr (TimeCurrent(), TIME_SECONDS), " /  Average price: ",AverPrice, " /  SL: ",SLoss, " /  TP: ",TProfit); 
                Sleep(33);                
                }
            }
        } 
    }
}
double ND(double value){
   return(NormalizeDouble(value, Digits));
}
 
digits:


你正在使用。

你的函数没有处理交易服务器错误。OrderModify()函数应该被设计成一个单独的、具有错误处理 和充分的错误响应的完整函数。

再说一遍,为了什么?

if ((OrderSymbol() != Symbol() || OrderMagicNumber() != Magic || OrderType() >= 2) == TRUE) continue;
if ((OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) == TRUE){

油是用来做什么的?

 
digits:


使用。


不,我们不使用这种G。
 

如果以20元的价格购买面包,回家后将购买价格改为5卢布,然后看到钱包里有15卢布的差价,这就很奇怪了......。太棒了...;)

你可以以35卢布的价格转卖面包(15卢布的利润),但经纪人不会给你佣金:=)

 

下午好。几天前开始研究MQL,重新阅读了网站,但找不到答案。(不要评判一个新手)

如果我已经试过了,我就会看到许多订单现在已经关闭。下面是一个简单的代码,当穿越MA(5)和MA(21)时,应该关闭一个订单。

以下是通过穿越MA(5)和MA(21)来关闭订单的代码。 谢谢你。

double ma50;

double ma51;

double ma210;

double ma211;

double ma550;

double Stoh;

int start()

{

//Open Orders--------------------------------------------------------------------------------

{

ma50=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,0);

ma51=iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,1);

ma210=iMA(NULL,0,21,0,MODE_EMA,PRICE_CLOSE,0);

ma211=iMA(NULL,0,21,0,MODE_EMA,PRICE_CLOSE,1);

ma550=iMA(NULL,0,55,0,MODE_EMA,PRICE_CLOSE,0);

Stoh=iStochastic(Symbol(),5,5,3,3,MODE_SMA,1,MODE_MAIN,0);

if(OrdersTotal()==0 && ma50 > ma51 && ma50 > ma210 && ma51 < ma211 && ma210 > ma550 )

OrderSend(Symbol(),OP_BUY,Lots,Ask,0,0,0,"BUY",123,0,Red);

}

//Close Orders--------------------------------------------------------------------------------

{

if(OrdersTotal()==1 && ma50 < ma210 )

if(OrderSelect(10,SELECT_BY_POS)==true)

OrderClose(OrderMagicNumber(),Lots,Bid,1,CLR_NONE);

}

}


 
AlexCY:

下午好。几天前开始研究MQL,重读了网站,但找不到答案。(不要评判一个新手)

如果我已经试过了,我就会看到许多订单现在已经关闭。下面是一个简单的代码,当穿越MA(5)和MA(21)时,应该关闭一个订单。

谢谢你。

代码是否正确,直接取决于你,以及其他任何人,对这个术语的理解。

在这里,你试图打开一个订单,并试图关闭它,这是一个类似的,但稍微不正确的尝试。

我唯一能建议你的是去进一步学习语言,不急于一时,因为基础太小是造成误解的主要原因。

OrderClose 中的参数不正确+ 如果你有一个订单 OrderSelect 的数字是 0。+你确定在接下来的一两个tick之后,"ma50 < ma210 "不会被执行,因为你的价差被吃掉了?

而代码是通过工具栏上的SRC按钮插入的。

 

下午好。

在该指标的代码中,我们需要捕捉图表上出现新趋势的时刻,并获得该趋势的名称。

除了在每次打勾 时跟踪所有对象的列表,固定对象数量变化的时刻,然后翻阅整个列表,希望能找到刚刚应用的对象......是否有其他更便宜的方法?如果是这样,如何才能更容易地实施?

 
satorifx:

下午好。

在该指标的代码中,我们需要捕捉图表上出现新趋势的时刻,并获得该趋势的名称。

除了在每次打勾时跟踪所有对象的列表,固定对象数量变化的时刻,然后翻阅整个列表,希望能找到刚刚应用的对象......是否有其他更便宜的方法?如果是这样,如何才能更容易地实施?


并在直接应用该对象的部分,添加一个链接到具有上述处理的块?
 
ALXIMIKS:

并在直接应用该对象的部分,添加一个链接到具有上述处理的块?
那么我们谈论的是哪一部分呢?我有2种趋势观察方法:用我自己的脚本(是的,我可以在那里添加任何我喜欢的东西)和用MT4工具的标准趋势观察(我不能在这里添加任何东西)。任务是通过任何方法追踪趋势。