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

 
Nikita Chernyshov #:

Тут какой-то трэш. нет в MQL5 таких стандартных функций. В MQL4 - да, но и то... написанное вами вызывает много вопросов.

Есть идеи как нормально написать?

 
Nikita Chernyshov #:

Тут какой-то трэш. нет в MQL5 таких стандартных функций. В MQL4 - да, но и то... написанное вами вызывает много вопросов.

Можете мне помочь с трейлинг стопом?
 
Vitalin #:

ошибки при компиляции

'TimeDayOfWeek' - undeclared identifier

'currentTime' - some operator expected

'DAY_OF_WEEK_MONDAY' - undeclared identifier

'TimeHour' - undeclared identifier




В мт4 есть похожие функции и пишутся по другому .

bool AY_OF_WEEK_MONDAY = True
или 
bool AY_OF_WEEK_MONDAY =(DAYWIKE()==3) ? True:False

Hour() >= 1
 
tradingstrategy #:
Вы знаете mql4?

Да но не так что бы очень

 
Aliaksei Karalkou #:

Да но не так что бы очень

Можете помочь мне с трейлинг стопом, у меня тп 110 сл 10 пунктов если установить трейлинг стоп то можно уменьшить число потерь, я никак не могу сделать это. Логику я понимаю, да и код не выдает ошибки но трейл не работает 
 
tradingstrategy #:
Можете помочь мне с трейлинг стопом, у меня тп 110 сл 10 пунктов если установить трейлинг стоп то можно уменьшить число потерь, я никак не могу сделать это. Логику я понимаю, да и код не выдает ошибки но трейл не работает 

Свои параметры только подставьте )

      //---------------------------------------------------------------------------------------------------------------------------
      //Трал
      //---------------------------------------------------------------------------------------------------------------------------

      if(TrailWhileMinus == true)
        {
         for(int k=OrdersTotal()-1; k>=0; k--)
           {
            if(OrderSelect(k, SELECT_BY_POS)==True)                                //выбираем ордер
              {
               if(OrderMagicNumber() == MagicNumber)
                 {
                  double price_step = MarketInfo(Symbol(),MODE_TICKSIZE);
                  if(OrderType() == OP_BUY)

                     if((OrderStopLoss() < levDN && price_step<MathAbs(OrderStopLoss() - levDN)) || OrderStopLoss()==0)
                       {
                        o = OrderModify(OrderTicket(), 0, levDN, OrderTakeProfit(), 0);
                       }

                  if(OrderType() == OP_SELL)
                     if((OrderStopLoss()>levUP && price_step<MathAbs(OrderStopLoss() - levUP)) || OrderStopLoss()==0)  //
                       {
                        o = OrderModify(OrderTicket(), 0, levUP, OrderTakeProfit(), 0);
                       }
                 }
              }
           }
        }
      //==============================================================================================================================//
 
 
Aliaksei Karalkou #:

Свои параметры только подставьте )

Благодарствую, хороший код, все ясно и четко, даже изучая mql4 недавно смог разобраться и поставить в советник. Работает штатно
 

Добрый день уважаемые читатели ветки. 

Просьба к тем кто владеет программированием. Нужно написать простого советника ( а если такой имеется то может кто подскажет)

Советник мартингейл обычный. С изменениями, множителя, колена, тейк профита, треилинг стопа. Вобщем обычный мартингейл. Единственное нужно чтобы он открывал сделки по отношению к трендовой линии ( трендовая линия прописывается вручную). Выше трендовой линии сделки только на продажу. Ниже трендовой линии только на покупку. Расстояние открытия 1 ордера от трендовой линии ( по умолчанию 30 пунктов по 4х знаку с возможностью изменить) Ну вроде все. Спасибо.

 

кто подскажет как правильно сделать мультитаймфреймность!

даже подойдет и такой вариант (на первое время) - в таком случаи правильный доступ к хэндлу. //файл прикреплен

с учетом использования iCustom.

Файлы:
 

Логика следующая.


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

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


Если нет открытых ордеров, открывает ордер по тренду.

Тейкпрофит не используется.

Стоплосс вычисляется как процент от планируемого по тренду изменения цены. Или вручную.

Срабатывание стоплосса приводит к открытию ордера замка в противоположном направлении с удвоением суммы. Стоплосс замка - указывается вручную.

Срабатывание стоплосса замка приводит к закрытию ордера.

Снова ордер по тренду.

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