Доработка ботов (советников, индикаторов) vol. 2

MakarFX

Элитный участник
Здравствуйте уважаемые программисты. Прошу дополнить настройки индикатора, чтоб можно было его строить по хаям и лоу. Указать в настройках эту возможность.
 

Вложения

juror

Гуру форума
Здравия знатокам и страждущим! Страдаю из-за то, что индикатора не оставляет следов на истории. Если это возможно исправить буду ооочень признателен.
 

Вложения

  • bandicam 2023-10-27 11-46-40-624.jpg
    bandicam 2023-10-27 11-46-40-624.jpg
    303,3 КБ · Просмотры: 242
  • Ind_BMV 1.mq4
    Ind_BMV 1.mq4
    4,2 КБ · Просмотры: 46

Tankk

*********
Здравия знатокам и страждущим! Страдаю из-за то, что индикатора не оставляет следов на истории. Если это возможно исправить буду ооочень признателен.
Ind_BMV 1 AutoDelete 🤔

За ID отдельное спасибо. Только я имел в виду немного другое.
ТФ Н1, расчёт 8 баров (сессия), отображение количество баров на истории. Если такое возможно.
При переключении ТФ надо менять расчёт. ТФ М5, расчёт 12 баров(1 час)
MTF!? здесь сделать проблематично.. это нестандартный индюк.
и по идее, M_bars = это количество последних свечей для расчёта: для поиска зон Поддержки/Сопротивления...
поставь 2-3 индюка с разными UniqueID, для каждого/нужного ТФ.. и в каждом индюке выставь нужное количество M_bars....
и думаю, например если сделать кратное умножение для M_bars [нерисующий MTF], то будет путаница при построении зон..
Ни как не могу сформулировать свою хотелку.
МТФ не нужен, надо чтоб построенные зоны оставались на графике.
но эту функцию я уже вроде добавил: ставь AutoDelete=false; и меняй M_bars ... зоны все должны остаться, и даже при переключении ТФ и при перезагрузке терминала...
протестируй на открытом рынке.. или на биткоине [если сейчас идут торги]....
Спасибо попробую. Тестере инди удаляет зоны после каково то периода времени. В прикреплённом файле реализована эта функция в независимости закрыт ли рынок, но расчёт идёт от медианы.
попробуй такой вариант... сейчас по идее, он не должен удалять.. я привязал время стартовой свечи к уник.имени граф.объекта...
P.S. у VolumeByLastDayMedian другая логика.. это как бы зоны по вертикальному объёму [но не знаю как точно объяснить].
 

Вложения

  • Ind_BMV 1 AutoDelete_27-10-2023.png
    Ind_BMV 1 AutoDelete_27-10-2023.png
    85,4 КБ · Просмотры: 232
  • Ind_BMV 1 AutoDelete_27-10-2023_auto.png
    Ind_BMV 1 AutoDelete_27-10-2023_auto.png
    84,5 КБ · Просмотры: 233
  • Ind_BMV 1 AutoDelete.mq4
    Ind_BMV 1 AutoDelete.mq4
    8,1 КБ · Просмотры: 40
  • Ind_BMV 1 AutoDelete_28-10-2023_tester.png
    Ind_BMV 1 AutoDelete_28-10-2023_tester.png
    63,4 КБ · Просмотры: 197

juror

Гуру форума
За ID отдельное спасибо. Только я имел в виду немного другое.
ТФ Н1, расчёт 8 баров (сессия), отображение количество баров на истории.
Если такое возможно.
При переключении ТФ надо менять расчёт.
ТФ М5, расчёт 12 баров(1 час)

MTF!? здесь сделать проблематично.. это нестандартный индюк.
Ни как не могу сформулировать свою хотелку.
МТФ не нужен, надо чтоб построенные зоны оставались на графике.

но эту функцию я уже вроде добавил: ставь AutoDelete=false; и меняй M_bars ... зоны все должны остаться,
Спасибо попробую. Тестере инди удаляет зоны после каково то периода времени. В прикреплённом файле реализована эта функция в независимости закрыт ли рынок, но расчёт идёт от медианы.
Прости за назойливость.
 

Вложения

ИванМН

Местный знаток
Уважаемые специалисты, в данном индикаторе имеет место разница в построении линий при набросе индикатора непосредственно на график и при прогоне при прочих равных в тестере (см. скрншот, проблемный участок выделен прямоугольником, также в Окне Данных видно, что значения на одном и том же баре совершенно разные). Можно ли избавиться от этого? Заранее благодарен.
 

Вложения

Tankk

*********
Уважаемые специалисты, в данном индикаторе имеет место разница в построении линий при набросе индикатора непосредственно на график и при прогоне при прочих равных в тестере (см. скрншот, проблемный участок выделен прямоугольником, также в Окне Данных видно, что значения на одном и том же баре совершенно разные). Можно ли избавиться от этого? Заранее благодарен.
этот индюк рисует, т.к. заглядывает в будущее на 9 свечей.. конечно, можно убрать рисовку....
EATA RePaints
EATA NoRePaints
 

Вложения

  • EATA RePaints.mq4
    EATA RePaints.mq4
    16,8 КБ · Просмотры: 25
  • EATA NoRePaints_19-09-2022.png
    EATA NoRePaints_19-09-2022.png
    75,5 КБ · Просмотры: 260
  • EATA NoRePaints.mq4
    EATA NoRePaints.mq4
    16,8 КБ · Просмотры: 67

juror

Гуру форума
MTF!? здесь сделать проблематично.. это нестандартный индюк.
Делать с ним ничего не надо, просто для мебели. В сундуке нашёл.

здесь не правильно сделан MTF :unsure:
Если честно я всегда с недоверием отношусь к МТФ. По мне лучше 2 графика с разными ТФ. С уважением.

просто надо использовать MTF от проверенных производителей
Ещё раз спасибо, а то приходилось в ручную обрисовывать.
Да кстати, ты заметил что это максимальные тиковые объёмы.

да это вроде минимальные тик.объёмы [который ты выложил]...
Я плагиатом не занимаюсь, просто заменил знак <>или наоборот не помню.
Зато красота. Остался вопрос, при выключении терема расчёт пойдёт с новым его включением или останется прежним.
 

Вложения

  • MTF_MinV.mq4
    MTF_MinV.mq4
    4,1 КБ · Просмотры: 42
  • XAUUSD.mm 2023.10.28 сб. 17.41.19.png
    XAUUSD.mm 2023.10.28 сб. 17.41.19.png
    54,5 КБ · Просмотры: 168

Tankk

*********
Делать с ним ничего не надо, просто для мебели. В сундуке нашёл.
здесь не правильно сделан MTF :unsure: нет.. но так-то его тоже можно использовать для ориентира....
Если честно я всегда с недоверием отношусь к МТФ. По мне лучше 2 графика с разными ТФ. С уважением.
просто надо использовать MTF от проверенных производителей :unsure: .... :ROFLMAO::ROFLMAO:
Да кстати, ты заметил что это максимальные тиковые объёмы.
да это вроде минимальные тик.объёмы [который ты выложил]...
вот прикрепляю по максимальным = тоже не совпадает с оригиналом.
Остался вопрос, при выключении терема расчёт пойдёт с новым его включением или останется прежним.
MTF_MinV и MTF_MaxV перерисовывают сами себя... здесь ползущий цикл 😁 да и в оригинале тоже ползущий, но там есть AutoDelete=false...
 

Вложения

  • MTF_MaxV_28-10-2023.png
    MTF_MaxV_28-10-2023.png
    76,7 КБ · Просмотры: 183
  • MTF_MaxV.mq4
    MTF_MaxV.mq4
    4,1 КБ · Просмотры: 40
  • MTF_MinV_28-10-2023.png
    MTF_MinV_28-10-2023.png
    70,4 КБ · Просмотры: 181
  • MTF_MinV.mq4
    MTF_MinV.mq4
    4,1 КБ · Просмотры: 36

Alchu

Местный знаток
кнопку можно прикрутить, но тогда придётся выбросить функцию AutoDelete=false :unsure: а от этой функции больше пользы, чем от кнопки....
поэтому, могу прикрутить кнопку только к старой версии!? или не надо? :unsure: если что, завтра-послезавтра.. сегодня уже некогда.. ухожу...
У меня вот такая версия. Если сможете прикрутить, то огромная благодарность вам...

Если уж так, то может и тут кнопку сделаете. Эти 2 индикатора уровней у меня в паре стоят.
 

Вложения

Последнее редактирование модератором:

1_Lexa

Активный участник
Код:
//+------------------------------------------------------------------+
//| expert start function                                            |
//+------------------------------------------------------------------+
int start()
  {
//----
if(OrdersTotal() < 3)//количество открытых ордеров
   {
  if(Open[1]<Close[0])
     {
    if(DistMarketAndPos(NULL,OP_BUY,Magic)>10)   //  Дистанция > 10 пунктов
       {
      OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-SL*Point,Bid+TP*Point,"Trend Long",Magic,0,Blue);
       }
    }
 }
//----
   return(0);
  }
//+------------------------------------------------------------------+
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Возвращает расстояние в пунктах между рынком и ближайшей       |
//|             позицей                                                        |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   ("" или NULL - текущий символ)          |
//|    op - торговая операция          (    -1      - любая позиция)           |
//|    mn - MagicNumber                (    -1      - любой магик)             |
//+----------------------------------------------------------------------------+
int DistMarketAndPos(string sy="", int op=-1, int mn=-1) {
  double d, p;
  int i, k=OrdersTotal(), r=1000000;

  if (sy=="" || sy=="0") sy=Symbol();
  p=MarketInfo(sy, MODE_POINT);
  if (p==0) if (StringFind(sy, "JPY")<0) p=0.0001; else p=0.01;
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if ((OrderSymbol()==sy) && (op<0 || OrderType()==op)) {
        if (mn<0 || OrderMagicNumber()==mn) {
          if (OrderType()==OP_BUY) {
            d=MathAbs(MarketInfo(sy, MODE_ASK)-OrderOpenPrice())/p;
            if (r>d) r=NormalizeDouble(d, 0);
          }
          if (OrderType()==OP_SELL) {
            d=MathAbs(OrderOpenPrice()-MarketInfo(sy, MODE_BID))/p;
            if (r>d) r=NormalizeDouble(d, 0);
          }
        }
      }
    }
  }
  return(r);
}
Есть такой интересный код для контроля открытия ордеров. Есть советники торгующие по сигналу индикатора, иногда открывают слишком много ордеров. Этот код может помочь ограничить жадность
 

1_Lexa

Активный участник
Контролирует эта строка, но абсолютно все ордера и открытые, и отложенные, и не свои.
Сюда добавил этот код, убрал стоплос и закрытие по убытку. есть ошибки, но они не мешают торговли советника
 

Вложения

  • EA 818.mq4
    EA 818.mq4
    133,3 КБ · Просмотры: 109

RAZDERBAN

Интересующийся
Привет! Помогите пожалуйста перенести код в mq4.


Input:
iAltFib1(38),
iAltFib2(61.8),
iShowHigh(False),
iShowMidHigh(True),
iShowMid(True),
iShowMidLow(True),
iSowLow(False),
iShowAltFib1(true),
iShowAltFib2(true);

variable:
HOD(0),
LOD(0),
Mid(0),
MidHigh(0),
MidLow(0),
AltFib1(0),
AltFib2(0);


HOD = highD(0);
LOD = lowD(0);
Mid = (HOD+LOD)/2;
MidHigh = (HOD+Mid)/2;
MidLow = (LOD+Mid)/2;
AltFib1 = ((HOD-LOD)/100)* iAltFib1 + LOD;
AltFib2 = ((HOD-LOD)/100)* iAltFib2 + LOD;

If iShowHigh = True then
Plot1(HOD, "High");

If iShowMidHigh = True then
Plot2(MidHigh, "MidHigh");

If iShowMid = True then
Plot3(Mid, "Mid");

If iShowMidLow = True then
Plot4(MidLow, "MidLow");

If iSowLow = True then
Plot5(LOD, "Low");


If iShowAltFib1 = True then
Plot6(AltFib1, "AltFib1");

If iShowAltFib2 = True then
Plot7(ALtFib2, "AltFib2");
 

Посмотрели (736) Посмотреть

Отслеживают (1809) Посмотреть

Верх