Помощь в кодировании - страница 676

 

Привет, друзья,

Я пытаюсь сделать советника, который покупает, когда два индикатора показывают (оба должны это делать), и продает, когда те же индикаторы показывают. Если один из двух индикаторов изменяется, а ордер открыт, то ордер должен быть закрыт.
Я пробовал это сделать, но не понимаю:

#define _doNothing 0
#define _doBuy     1
#define _doSell    2
int start()
{
   int doWhat = _doNothing;
      double hull_trend_current  = iCustom(NULL,0,"StepMA of rsi adaptive ema 2.8",PERIOD_CURRENT,RsiType,RsiLength,RsiPrice,Sensitivity,StepSize,Filter,FilterPeriod,FilterOn,10,BarToUse);
      double hull_trend_previous = iCustom(NULL,0,"StepMA of rsi adaptive ema 2.8",PERIOD_CURRENT,RsiType,RsiLength,RsiPrice,Sensitivity,StepSize,Filter,FilterPeriod,FilterOn,10,BarToUse+1);
      double hull_trend_current2  = iCustom(NULL,0,"step one more average 2.3 mtf",PERIOD_CURRENT,11,BarToUse);
      double hull_trend_previous2 = iCustom(NULL,0,"step one more average 2.3 mtf",PERIOD_CURRENT,11,BarToUse+1);
      if (hull_trend_current!=hull_trend_previous && hull_trend_current2!=hull_trend_previous2)
         if (hull_trend_current==1 && hull_trend_current2==1)
               doWhat = _doBuy;
         else  doWhat = _doSell;
         if (doWhat==_doNothing && !DisplayInfo) return(0);
         

Этот советник открывает ордера только тогда, когда оба индикатора делают одно и то же изменение на одном и том же баре.

 
simon_json:

Привет друзья,

Я пытаюсь сделать советника, который покупает, когда два индикатора показывают (оба должны это делать), и продает, когда те же индикаторы показывают. Если один из двух индикаторов меняется, а ордер открыт, он должен быть закрыт.
Я пробовал это, но не понимаю:

Это только открывает ордера, когда оба индикатора делают одинаковые изменения на одном и том же баре.

То, как вы проверяете их, когда одно из условий истинно, тогда у вас есть by или sell (не когда оба условия истинны). Это то, что вы хотели?
 

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

Может ли кто-нибудь помочь с прикрепленным auto fib indi? Я хочу иметь возможность добавлять или удалять уровни fib. Я пытался играть с кодом, но что бы я ни делал, он будет показывать только исходные уровни по умолчанию. Буду признателен за любую помощь.

Спасибо

Файлы:
Fibos.mq4  5 kb
 
speedytina:

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

Может ли кто-нибудь помочь с прикрепленным auto fib indi? Я хочу иметь возможность добавлять или удалять уровни fib. Я пытался играть с кодом, но что бы я ни делал, он будет показывать только исходные уровни по умолчанию. Буду признателен за любую помощь.

Спасибо

Опубликуйте попытку, когда вы пытались добавить уровни, чтобы мы могли помочь вам с кодированием.
 
mladen:
То, как вы проверяете их, когда одно из условий истинно, тогда у вас есть by или sell (не когда оба условия истинны). Это то, что вы хотели?

Спасибо за ответ!
Я хочу покупать, когда оба индикатора показывают (скажем, оба зеленые). Если один из них становится красным (продажа), советник должен выйти из покупки. Если тот же индикатор снова станет зеленым (так что оба зеленые), советник должен снова купить. И то же самое для ордеров на продажу;

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

Таким образом, они как бы отфильтровывают друг друга.

 
simon_json:

Спасибо за ответ!
Я хочу покупать, когда оба индикатора показывают (скажем, оба зеленые). Если один из них становится красным (продажа), советник должен выйти из покупки. Если тот же индикатор снова станет зеленым (так что оба зеленые), советник должен снова купить. И то же самое для ордеров на продажу;

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

Таким образом, они как бы отфильтровывают друг друга.

Саймон

По моим наблюдениям, не закрывайте сделку по противоположным сигналам одного индикатора, это может быть ложный/короткий сигнал, закрывайте сделку по другому или когда все два индикатора поворачиваются в противоположные стороны, или по лимиту тейк-профита.... и, наконец, закройте часть (скажем, 50%) этой сделки, если вы хотите использовать свой первый метод.

 
mladen:
Опубликуйте попытку, когда вы пытались добавить уровни, чтобы мы могли помочь вам с кодированием.

Спасибо Младен.

Я пытаюсь добавить fib level 0.764.

Я изменил строки кода 71 и 88 с fib level 1.618 на 0.764. Он скомпилировался нормально. Однако когда я загружаю измененный код на график, он продолжает показывать уровень 1.618, хотя в коде его больше нет. Уровень 0.764 не отображается, даже если он теперь в коде вместо 1.618.

Я также попытался добавить дополнительную строку кода в дополнение к 5 уровням по умолчанию. Это тоже не сработало. Вместо строк кода "f_1[i] to f_7[i]" я увеличил до "f_1[i] to f_8[i]".

Спасибо за любую помощь

 
speedytina:

Спасибо Младен.

Я пытаюсь добавить fib level 0.764.

Я изменил строки кода 71 и 88 с fib level 1.618 на 0.764. Он скомпилировался нормально. Однако когда я загружаю измененный код на график, он продолжает показывать уровень 1.618, хотя в коде его больше нет. Уровень 0.764 не отображается, даже если он теперь в коде вместо 1.618.

Я также попытался добавить дополнительную строку кода в дополнение к 5 уровням по умолчанию. Это тоже не сработало. Вместо строк кода "f_1[i] to f_7[i]" я увеличил до "f_1[i] to f_8[i]".

Спасибо за любую помощь

Этот индикатор использует буферы только в качестве отвлекающего маневра. Он создает объект "fibo", а затем в этом объекте уровни должны обрабатываться по-разному. Используйте прилагаемый

Файлы:
Fibos.mq4  6 kb
 
mntiwana:

Саймон

по моим наблюдениям, не закрывайте сделку по противоположным сигналам одного индикатора, это может быть ложный/короткий сигнал, закрывайте сделку по чему-то другому, или когда все два сигнала развернутся в противоположные стороны, или по лимиту тейк-профита .... и, наконец, закрывайте часть (скажем, 50%) этой сделки, если вы хотите использовать свой первый метод.

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

Я думаю, что MLADEN и stevenpun помогают вам время от времени, и вы делаете это отлично, хотя и медленно :)

Спасибо обоим.


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