Напишу советник бесплатно - страница 146

 
Ivan:
   

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

Присмотритесь внимательно даже на Ваш график. Таких мест, где свечи рядом с почти одинаковой ценой тени, гораздо больше, чем показано стрелками. И это не обязательно экстремумы.

 
Aleksei Stepanenko:

Присмотритесь внимательно даже на Ваш график. Таких мест, где свечи рядом с почти одинаковой ценой тени, гораздо больше, чем показано стрелками. И это не обязательно экстремумы.

стрелки рисовались рандномно, для понимания, к чему Ваш пост? вот что интересно
 
Будет много точек в разных местах. Правила одинаковой цены теней двух-трёх свечей не достаточно. На мой взгляд. 
 

Knock-knock Indicator Ver 1

Индикатор находит соседние свечи с близкими значениями теней. Используются свечи текущего таймфрейма.

Файлы:
 
Aleksei Stepanenko:

Knock-knock Indicator Ver 1

Индикатор находит соседние свечи с близкими значениями теней. Используются свечи текущего таймфрейма.

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

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

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

Файлы:
111.JPG  103 kb
 

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

Я сам не программист, первую функцию написал сам а вот траилинг из разных частей найденных на просторах интернета, но никак не могу прикрутить оставшиеся две функции которые хотелось бы видеть. Помогите пожалуйста. Я думаю что для вас это не будет так сложно как для меня. Если вас не затруднит прикрутите пожалуйста, функцию которая закрывала бы отложенный ордер после того как один из двух отложенных сработал. И вторая функция должна сама увеличивать лот ордера ( "допустим" на каждые 50$ баланса 0,01 лот, по достижении 100$ что б робот сам поднял лот на 0,02). Выставленный мной код работает, то есть (ставит два отложенных ордера и тралит их). Но как я написал до этого не могу никак прикрутить остальные две функции.Заранее спасибо за помощь.

extern int    TakeProfit     = 100.0;
extern bool   AllPositions   = True; // Управлять всеми позициями
extern bool   ProfitTrailing = True;  // Тралить только профит
extern int    TrailingStop   = 50;    // Фиксированный размер трала
extern int    TrailingStep   = 0;     // Шаг трала
extern bool   UseSound       = False;  // Использовать звуковой сигнал
extern string NameFileSound  = "expert.wav";  // Наименование звукового файла


void start() 
{
double TakeProfitLevelB;
double TakeProfitLevelS;
double BuyStart = Ask + 400*_Point;
double SellStart = Bid - 400*_Point;

TakeProfitLevelB = BuyStart + TakeProfit*Point;
TakeProfitLevelS = SellStart - TakeProfit*Point;

if (Open[1]==Close[1]&& OrdersTotal()==0)
{
int BuyTicket = OrderSend(Symbol(),OP_BUYSTOP,0.10,BuyStart,3,0,TakeProfitLevelB,NULL,0,0,Green);
int SellTicket = OrderSend(Symbol(),OP_SELLSTOP,0.10,SellStart,3,0,TakeProfitLevelS,NULL,0,0,Blue);
}
  for (int i=0; i<OrdersTotal(); i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (AllPositions || OrderSymbol()==Symbol()) {
        TrailingPositions();
      }
    }
  }
}

void TrailingPositions() 
{
  double pBid, pAsk, pp;

  pp = MarketInfo(OrderSymbol(), MODE_POINT);
  if (OrderType()==OP_BUY) {
    pBid = MarketInfo(OrderSymbol(), MODE_BID);
    if (!ProfitTrailing || (pBid-OrderOpenPrice())>TrailingStop*pp) {
      if (OrderStopLoss()<pBid-(TrailingStop+TrailingStep-1)*pp) {
        ModifyStopLoss(pBid-TrailingStop*pp);
        return;
      }
    }
  }
  if (OrderType()==OP_SELL) {
    pAsk = MarketInfo(OrderSymbol(), MODE_ASK);
    if (!ProfitTrailing || OrderOpenPrice()-pAsk>TrailingStop*pp) {
      if (OrderStopLoss()>pAsk+(TrailingStop+TrailingStep-1)*pp || OrderStopLoss()==0) {
        ModifyStopLoss(pAsk+TrailingStop*pp);
        return;
      }
    }
  }
}

void ModifyStopLoss(double ldStopLoss) 
{
  bool fm;

  fm=OrderModify(OrderTicket(),OrderOpenPrice(),ldStopLoss,OrderTakeProfit(),0,CLR_NONE);
  if (fm && UseSound) PlaySound(NameFileSound);
}
Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Свойства ордеров - Торговые константы - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

Knock-knock Indicator Ver 2

С алертом. На каждом графике можно устанавливать число Distance отдельно.

Файлы:
 
Aleksei Stepanenko:

Knock-knock Indicator Ver 2

С алертом. На каждом графике можно устанавливать число Distance отдельно.

что то пока не работает, вот алерт вылез, 2 минуты назад

1. пока я на саму пару не зашел, сигнала не было 

2. алерт вылез а свечей то и нет 

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

таймфрейм не случайно выбран h1) об этом позже, надо допилить индюк а там можно и робота думаю потестить

Файлы:
kcdg.JPG  72 kb
 
Aleksei Stepanenko:

Knock-knock Indicator Ver 2

С алертом. На каждом графике можно устанавливать число Distance отдельно.

вот снова, он походу у тебя смотрит другие таймфреймы

если все доработать , то можно и роботу доверить)

ну сначала давай допишем и потестим

Файлы:
555.JPG  84 kb
 
Ivan:

Привет, кто напишет простенький индикатор (возможно такой уже есть, но я не находил)

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

Ведь как то пишут свечные индикаторы, этот будет думаю попроще.


на твоей картинке так называемые "поглощения" ищи по этому слову, но даже на картинке у тебя последняя стрелка входом не туда будет  - мозгом люди неугодные сигналы легко игнорируют если написать такое то входов будет раза в ртри если не в пять больше тк свечи бывают не длинные а короткие и при этом перекрывают друг друга , много ньюансов

Причина обращения: