Помогите написать Эксперта - страница 12

 

здравствуйте всем.

я совсем новичек в делах форекса и хотел бы спросить а можно как нибудь добавить в последний вылаженый эксперт trailinstop? если да, буду очень признателен вашей подсказке. спасибо зарание!

 

Люди дорогие!

у меня целых три вопроса:)

1) эксперт закрывает позицию по профиту или лоссу. Иногда бар, на которой закрывается позиция по лосю по параметрам соответствует открытию новой позиции, что мне СОВЕРШЕННО НЕ НАДО! Как и где надо оформить приказ, чтобы если поймали лося на данной свече, то чтоб не открывал на ней!

2) Moving Shift=6 в заявленных переменных - Это сдвиг средней по горизонтали (по времени) на 6 баров ?

3) Возможно ли технически следующее действие и как его правильно прописать в коде эксперта?

- должны использоваться индикаторы (1)ROC(14) -EURUSD(М15) и (2)ROC(14)- GBPUSD(М15) в теле одного эксперта

- эксперт должен работать только на кроссе EURGBP(М15)

- условия входа (1)>(2)open_buy; (1)<(2)open_sell

- над close пока думаю..:))

Пока ВСЁ! :)

Счас жарко и особенно заморачиваться нет охоты ни у кого, но если хотя бы "пошлете" в правильном направлении - буду благодарна! :))

Если есть у кого хорошие индикаторы по ROC, моментум, другим скоростям и ускорениям - скиньте ссылочки, плз!

 
obla4ko:

Люди дорогие!

у меня целых три вопроса:)

1) эксперт закрывает позицию по профиту или лоссу. Иногда бар, на которой закрывается позиция по лосю по параметрам соответствует открытию новой позиции, что мне СОВЕРШЕННО НЕ НАДО! Как и где надо оформить приказ, чтобы если поймали лося на данной свече, то чтоб не открывал на ней!

 

if (buy  && oldtrend !=1 ) {oldtrend = 1; price = Bid;}
if (sell && oldtrend !=-1) {oldtrend = -1;price = Bid;}
if (buy){
       if (virtualTrail(price,trailing_price,+1)>price)
            OpenBuyOrder();
    }
   
   if (sell){
        if (virtualTrail(price,trailing_price,-1)<price)
         OpenSellOrder();
    }
//............
//.............
double virtualTrail(double pr,double tr_price, int com=0)
{
    if (com==1)
         if (Bid - pr > tr_price*Point) return (Bid);
    if (com==-1)
         if (pr -Bid > tr_price*Point) return (Bid);
return(pr);
}


в коде выставления ордера price = Bid; int oldtrend;

логика: если переключение сигнала с buy на sell то запоминаем цену и ждем пока цена отойдет на trailing_price пунктов

возможно код не совсем корректный -только  тестирую у себя в советнике

 
IgorM:


в коде выставления ордера price = Bid; int oldtrend;

логика: если переключение сигнала с buy на sell то запоминаем цену и ждем пока цена отойдет на trailing_price пунктов

возможно код не совсем корректный -только тестирую у себя в советнике

то есть, использовать вашу логику, подставляя свои переменные?
 
TONY_TRADER:

Здравствуйте

Дико извиняюсь что пишу не по теме....но в ветку которая мне нужна писать нет смысла так как туда неделю никто не заходит...прошу вашей помощи....Я В MQL4 пока мисть не разбираюсь...но очень хочу начать....подскажите пожалуйста можно ли в каком то редакторе попрактиковаться в написании более простых программок...скажем математических задач к примеру...так как сразу переходить на профильное программирование вряд ли выйдет...если кто знает подскажите)))

и ещё вопрос как можно проверить нет ли ошибки в коде...и работает ли программа))))


спасибо)))) ещё раз извиняюсь


Я уже в одной ответил. Этот пост удаляю
 
obla4ko:

Люди дорогие!

у меня целых три вопроса:)


1) Скачайте библиотеку Кима - http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=63

там есть функция isCloseLastPosByStop - Флаг закрытия последней позиции по стопу.

Перед открытием нового ордера проверьте этот флаг.

2)Да

3)Возможно 

 
Roger:

1) Скачайте библиотеку Кима - http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=fileinfo&id=63

там есть функция isCloseLastPosByStop - Флаг закрытия последней позиции по стопу.

Перед открытием нового ордера проверьте этот флаг.

2)Да

3)Возможно

Какой Вы молодец!

Краткость - сестра таланта, а скорее, мать!!! Все поняла -ОГРОМНОЕ СПАСИБО!!