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

 
MyTHblu:

如何连接代码....,有一个交易停止...我没有把它插入任何地方,也许它有一个错误,在编译时它说'if'--表达式在全局范围内是不允许的,这似乎意味着错误在if.... 之前,对吗?

在全局范围内不允许使用if条件。把它变成一个机器人,像这样

extern bool UseTrailing = true;
extern int lMinProfit = 30;
extern int sMinProfit = 30;
extern int lTrailingStop = 15;
extern int sTrailingStop = 15;
extern int lTrailingStep = 5;
extern int sTrailingStep = 5;
//--------------------------------------------------------------- 2 --
int start()
  {
   if (UseTrailing) TrailingPositions();     
//--------------------------------------------------------------- 9 --
   return;                                      // Выход из start()
  }
//-------------------------------------------------------------- 10 --
void TrailingPositions() 
{
  int cnt = OrdersTotal();

  for (int i=0; i<cnt; i++) {
        if (!(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))) continue;
        if (OrderSymbol() != Symbol()) continue;                

        if (OrderType() == OP_BUY) {
        if (Bid-OrderOpenPrice() > lMinProfit*Point) {
                if (OrderStopLoss() < Bid-(lTrailingStop+lTrailingStep-1)*Point) {
                OrderModify(OrderTicket(), OrderOpenPrice(), Bid-lTrailingStop*Point, OrderTakeProfit(), 0, Blue);
                }
        }
        }

        if (OrderType() == OP_SELL) {
        if (OrderOpenPrice()-Ask > sMinProfit*Point) {
                if (OrderStopLoss() > Ask+(sTrailingStop+sTrailingStep-1)*Point || OrderStopLoss() == 0) {
                OrderModify(OrderTicket(), OrderOpenPrice(), Ask+sTrailingStop*Point, OrderTakeProfit(), 0, Blue);
                }
        }
        }
  }
  
}
 
MyTHblu:

如何连接代码....,有一个交易停止...我没有把它插入任何地方,也许它有一个错误,在编译时,它说'如果'--表达式不允许在全局范围内使用,这似乎意味着在if.... 之前有一个错误吧?


If(UseTrailing) TrailingPositions();这一行应该插入start()中,当然,它在函数块之外不会起作用。RTFM(如果是翻译的话,请阅读他妈的说明)。
 
MyTHblu:

如何连接代码....,有一个交易停止...我没有把它插入任何地方,也许它有一个错误,在编译时,它说'如果'--表达式不允许在全局范围内使用,这似乎意味着在if.... 之前有一个错误吧?


你需要学习基本知识!你不能从暗示中学习到任何东西!而且你可以在没有任何知识的情况下泄密!如果你不想学习,请在工作中订购!
 

大家好

你能告诉我,你需要为新的编译器修改多少机器人吗?

主要是什么发生了变化?

你是否有关于新的特殊功能的有用链接,我在教程中找不到任何有用的信息。

 
https://forum.mql4.com/ru/60554
 
sssssaaaaaaabbbbb27.02.2014 09:29 |91.122.220.134|ban #
论坛成员你好,不要苛责我,我是一个新手。签署了信号。我有一个交易员买了0.10手,我有0.01手。请告诉我在哪里连接,这样我就得买0.10的。
 
int start()
{
如果(DayOfWeek()==1 && Hour()==1)
{
double hi=iHigh(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//定义 high
double low=iLow(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//定义low。
double op=iOpen(NULL,0,iBarShift(NULL,0,iTime(NULL,PERIOD_D1,0));//定义打开。
Alert("Maximum=",hi, "Minimum=",low, "Opening=",op);
}
return(0);

}

日安,亲爱的!

有没有人知道--为什么不在窗口显示这些价格!?

问候,AlexMikash

 
Ekburg:

大家好

你能告诉我,你需要为新的编译器修改多少机器人吗?

主要是什么发生了变化?

你是否有关于新的特殊功能的有用链接,我在教程中找不到任何有用的信息。

如果它能在新的ME中编译并工作,除了教新的语言功能 外,根本不需要改变代码。最新的教程只有ICL手册,论坛上的教程不会被更新,除非有人写了新的教程。
 
AlexMikash:
...

下午好,亲爱的先生们!

有没有人知道--为什么价格数据窗口不显示!?

真诚的,AlexMikash


那么在启动脚本的时候,时钟显示服务器是什么时间?而今天根本就不是星期一...


我不认为有人需要在每一个刻度 上提醒一整个小时,但如果你需要,那么......。

 

有一个简单的专家顾问脚本,我是为了自己的需要(制作)。但当我在模拟账户上做"策略测试器"时,它不工作,它给出错误数字(我知道的是130,131),但如果我在真实账户上做 "策略测试器",一切都能工作。

问题!

是错误的 "顾问 "或 "错误 "程序。我想知道如果我开始真正用这个EA进行交易,这一切会有什么影响。