从专业人员到超级专业人员的任何问题 - 1。 - 页 38

 

这都是坏事。即使有版本。除了用脚本。

这里有一个例子。在那里定义和检索名称到版本是可能的,但这有点棘手。


 
谢谢你。
 
TheXpert:

除非脚本。

想出了一个半成品的方法。

为编译器创建一个新的配置。比如 "Release Main",我在其中写上所需文件的名称。

这不是很自动化,但它使我免于出现重复的输出文件名。

 

MQL4是否有处理十字线的功能?

我需要将价格差异的值以点为单位分配给一个变量。

 
Syzal:

MQL4是否有处理十字线的功能?

我需要将价格差异的值以点为单位分配给一个变量。

那就分配吧,但十字准线是用来做什么的?脚本不以光标为目标;)
 
Syzal:

MQL4是否有处理十字线的功能?

我需要将一个以点为单位的价格差异值分配给一个变量。

不是用十字准星。但有
CHARTEVENT_MOUSE_MOVE

и

CHARTEVENT_CLICK
 

各位程序员。我有一个问题。我正在aforex.ru模拟账户上测试一个EA。当我打开订单138 "新价格 "时,有时会出现错误。我一直不明白为什么。我通过下面的功能开单。我必须找到开放时出错的原因。你有什么想法?

void open_positions(int signal,double lot,double price,double tp,double lev) 
  {
//signal=0 -> сигнал на открытие покупки
//signal=1 -> сигнал на открытие продажи
   int    i=0; //переменная для счётчика цикла
   string symb=Symbol(),com;
   com=DoubleToStr(lev,Digits);
   color col;
   double stop,take;
   int    count=Count_Of_Trade_Try; //количество попыток открытия ордера в случае, если его не удаётся совершить сразу
   int err=0;
   if(signal==OP_BUYLIMIT || signal==OP_BUYSTOP || signal==OP_BUY)
     {
      RefreshRates();
      price=NormalizeDouble(Ask,Digits); //цена открытия для покупок
      col=Green;
     }
   if(signal==OP_SELLLIMIT || signal==OP_SELLSTOP || signal==OP_SELL)
     {
      RefreshRates();
      price=NormalizeDouble(Bid,Digits); //цена открытия для продаж 
      col=Red;
     }
//stop=NormalizeDouble(sl(SL,signal),Digits);

   take=NormalizeDouble(tp,Digits);

   while(i<=count) 
     {
      //сама функия открытия ордера (встроенная). Для удобства восприятия параметры разнесены на разные строки:
      int ticket=OrderSend(symb,//символ
                           signal,        //тип ордера
                           lot,           //объем
                           price,         //цена открытия
                           Slipage,       //уровень допустимого реквота
                           0, //величина Stop Loss
                           0, //величина Take Profit
                           com,//комментарий ордера
                           magic_number,//магическое число
                           0,//срок истечения (используется при отложенных ордерах)
                           CLR_NONE);    //цвет отображаемой стрелки на графике (CLR_NONE - стрелка не рисуется)

      if(ticket!=-1) //если открытие произошло успешно, наносим графический объект и выходим из цикла
        {
         OrderModify(ticket,price,stop,take,0,col);
         break;
        }

      err=GetLastError();
      if(err!=0) Print("Ошибка открытия ("+symb+", "+signal+", "+price+", "+0+", "+take+"): "+Market_Err_To_Str(err));
      i++;
      Sleep(Pause_Of_Trade_Try*100); //в случае ошибки делаем паузу перед новой попыткой
     } //end while(i<=count)
  } //end void open_positions(int signal, double lot, int magic, double price=0.0, string symb="NONE") 
 
Rammik:

各位程序员。我有一个问题。我正在aforex.ru模拟账户上测试一个EA。当我打开订单138 "新价格 "时,有时会出现错误。我一直不明白为什么。我通过下面的功能开单。我必须找到开放时出错的原因。你有什么想法?


我没有向专业人士提出这些问题。你一定是在错误的分支机构。
 
Vinin:
专业人士不会问这样的问题。你一定是在错误的分支机构。
好吧,如果你是这样一个超级专业的人,为什么不告诉我什么是错的?
 
Rammik:
好吧,如果你是这样一个超级专业的人,也许你可以告诉我什么是错的!
我不是一个超级专业人员,但我首先会问自己,什么等于Tp?