[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 926

 
gheka:

как ни старался,все переправлял,и все равно ошибка 130,помогите где не так?

я думаю что здесь стоплевел не нужен,ведь тейки и стопы по1000?

пробуй

extern double StopLoss=1000.0;
extern double TakeProfit=1000.0;
extern double Lots=1.0;
extern int total;


int start() {

int dg;
double Price_1,Price_2,min,max,pa,pb,pt;

pt=MarketInfo(Symbol(),MODE_POINT);
dg=MarketInfo(Symbol(),MODE_DIGITS);
pa=MarketInfo(Symbol(),MODE_ASK);
pb=MarketInfo(Symbol(),MODE_BID);
Price_1=pb;
Price_2=pa;
min=iLow(NULL,0,2);
max=iHigh(NULL,0,2);
total=OrdersTotal();

double slB=NormalizeDouble(pa-StopLoss*pt,dg);
double tpB=NormalizeDouble(pa+TakeProfit*pt,dg);
double slS=NormalizeDouble(pb+StopLoss*pt,dg);
double tpS=NormalizeDouble(pb-TakeProfit*pt,dg);

  if(total<1) 
  {
   if(Price_1>max)
      OrderSend(Symbol(),OP_BUY,Lots,pa,2,slB,tpB,"My order#",16384,0,Green);

   if(Price_2<min)
      OrderSend(Symbol(),OP_SELL,Lots,pb,2,slS,tpS,"My order#",16384,0,Green);
  }

}
 
Здравствуйте, у кого нибудь есть такой тестер Exp - Multi Tester for Mt4 ежели не жалко поделитесь пожалуйста!
 
Здравствуйте! Ребята ни как не могу разобраться с mql4(( Хотел написать не большой советник на основе двух ЕМА (скольз.средн.) Которое после пересечение дает звуковой сигнал ? Не подскажете ли мне что-нибудь из этой программы? Заранее благодарю!!!
 

и все таки есть ли такая функция которая возвращает значение закрытия ордера(стоп лосса) ?

например чтобы советник знал что стоп лосс сработал

в документации я не нашел, может там и есть,но за месяц раз десять точно перечитывал,и не помню

чтобы мне такая функция попадалось

 
silmin85:
Здравствуйте! Ребята ни как не могу разобраться с mql4(( Хотел написать не большой советник на основе двух ЕМА (скольз.средн.) Которое после пересечение дает звуковой сигнал ? Не подскажете ли мне что-нибудь из этой программы? Заранее благодарю!!!

Давай в следующий раз только в одном месте писать будешь. Спамить не хорошо.
 
gheka:

и все таки есть ли такая функция которая возвращает значение закрытия ордера(стоп лосса) ?

например чтобы советник знал что стоп лосс сработал

в документации я не нашел, может там и есть,но за месяц раз десять точно перечитывал,и не помню

чтобы мне такая функция попадалось

Поищите ордерочек в истории, если найдёте - сравните цену его закрытия OrderClosePrice() с уровнем его СтопЛосс OrderStopLoss()

Если они равны - значит позиция закрылась по стопу.

 
artmedia70:

Поищите ордерочек в истории, если найдёте - сравните цену его закрытия OrderClosePrice() с уровнем его СтопЛосс OrderStopLoss()

Если они равны - значит позиция закрылась по стопу.

у Кима есть функция, берущая последний закрытый ордер...
 
OlegTs:
у Кима есть функция, берущая последний закрытый ордер...

Знаю. Многие с этих функций начинают учиться. Я тут уже недавно давал ссылку на его ветку, но человек упорно спрашивает. Наверное поискать лень... :)

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.05.2008                                                     |
//|  Описание : Возвращает флаг закрытия последней позиции по стопу.           |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
  datetime t;
  double   ocp, osl;
  int      dg, i, j=-1, k=OrdersHistoryTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (t<OrderCloseTime()) {
                t=OrderCloseTime();
                j=i;
              }
            }
          }
        }
      }
    }
  }
  if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
    dg=MarketInfo(sy, MODE_DIGITS);
    if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
    ocp=NormalizeDouble(OrderClosePrice(), dg);
    osl=NormalizeDouble(OrderStopLoss(), dg);
    if (ocp==osl) return(True);
  }
  return(False);
}
 
Здравствуйте! Ребята, подскажите пожалуйста: slippage - Значение максимального проскальзывания в пунктах. Что это и для чего он служит? Постаянно ставлю ноль. Может есть смысл поменять. И может ли его менять мой ДЦ? Спасибо заранее!
 
RekkeR:

Подскажите пожалуйста, есть несколько индикаторов наложенных друг на друга в одном дополнительном окне, можно удалить расположенную над ними строчку с названиями и параметрами? Достал уже этот телетекст.




Можно, но надо будет удалять в каждом индикаторе. Код редактировать