[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 170

 
какие 50/50? пробегись по длинной истории не ленясь, подсчитай вероятности и наилучшие тп/сл - и бери с рынка деньги, раз видишь возможность
 
кто знает как можно узнать ibarshift последнего видимого бара на графике?
 
polsvv:

Вопрос такой.

Можно сделать, чтобы во время реальной торговли, на чарте рисовались не только стрелы в точке открытия сделки, но и стрелы на выходе из сделки и линия между входом и выходом, как во время прогона в тестере???


https://www.mql5.com/ru/code/8804
 
eddy:
кто знает как можно узнать ibarshift последнего видимого бара на графике?
он равен нулю, если я правильно понял вопрос.
 
с конца последний) мы ж с конца историю смотрим
 
sealdo:

Эх, иногда (как всегда :), так красиво отбивает от уровня, находящегося перед резким скачком.

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

И в итоге, наверное, опять будут эти неравномерно распределенные 50/50 :(

Кто-нить торгует на таких отбоях?

Может тут чё интересно будет?
 
DhP:

Не поленись пробежаться по всем ДЦ и обнаружишь, что таких очень много.

Google Вам поможет.


Алпари
 

Привет всем! У меня вопрос такой: в этой функции для двух позиций (бай и селл) выставляется стоплосс таким образом что для селла SL=цена открытия бай+18пунктов, и для бая наоборот:

void SimpleLock(string sy="", int mn=-1) {
  double po, pp, ops1=0, ops2=0, opb;
  int    i, k=OrdersTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<=k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy || sy=="") {
        po=MarketInfo(OrderSymbol(), MODE_POINT);
        if (mn<0 || OrderMagicNumber()==mn) {
          if (OrderType()==OP_SELL) {
            opb=OrderStopLoss();
            ops2=NormalizeDouble(OrderPrice(OP_BUY),Digits);
            if (ops2>0 && opb!=0) {
                ModifyOrder(-1, ops2+18*po, -1);
              }
            
          }
          if (OrderType()==OP_BUY) {
            opb=OrderStopLoss();
            ops1=NormalizeDouble(OrderPrice(OP_SELL),Digits);
            if (ops1>0 && opb!=0) {
                ModifyOrder(-1, ops1-18*po, -1);
              }
            
          }
        }
      }
    }
  }
}

цены открытия противоположных поизций получаем из ф-ции:

double OrderPrice(int type) {
   double price;
   int i, k=OrdersTotal();
      
      for (i=0; i<k; i++) {
         if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
            if (OrderType()==type) {
            price=OrderOpenPrice();
            }
         }
      }
   return(price);
}

ну а функции ModifyOrder знаем как стандартную КИМИВ-скую, ею устанавливаем рассчитанные стоплоссы...

Вопрос в том что он советник устанавливает стоплосс только для селла, а для бая не устанавливает??? кто что думает? буду признателен.

 
eddy:
с конца последний) мы ж с конца историю смотрим
WindowFirstVisibleBar( ) делает то, что вам надо.
 
todem:

Вопрос в том что он советник устанавливает стоплосс только для селла, а для бая не устанавливает??? кто что думает? буду признателен.

что в журнале? если есть ошибки, разбирайте. Если нет, ставьте принты в код и смотрите, почем не срабатывает ваше условие.