[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 791

 
granit77:

Где Вы раньше были? Ваша правда. Добавил, работает.


Огромное спасибо и от меня тоже! Я с этим вопросом "пристаю" тут на разных ветках - вот, наконец, одна "заплодоносила":)) !

И еще вопросец - из другой оперы: если я прописываю открытие ордера по Open[0] после пересечения МА, то в 40% случаях позиция не открывается - игнор полный (вернее 40% :))), а если прописываю открытие по Ask или Bid - открывает много "лишних" позиций, которые не должны открываться. В особенности это актуально на валютах с большими спредами, типа EURNZD, например.

Можно ли с этим бороться? Если при Open[0] открытии проскальзывание ставлю величиной со спрэд, то ведет себя как по Ask открытию - одним словом, замкнутый круг получается..:(

//+------------------------------------------------------------------+
//| Check for open order conditions                                  |
//+------------------------------------------------------------------+
void CheckForOpen()
  {
   double ma;
   int    res;
    
//---- go trading only for first tiks of new bar
   if(Volume[0]>1) return;
//---- get Moving Average 
   ma=iMA(NULL,0,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0);
//---- sell conditions
   if(Open[1]>ma && Close[1]<ma)  
     {
      res=OrderSend(Symbol(),OP_SELL,Lots,Bid,30,Bid+Stoploss*Point,Bid-Takeprofit*Point,"",MAGICMA,0,Red);
      return;
     }
//---- buy conditions
   if(Open[1]<ma && Close[1]>ma)  
     {
      res=OrderSend(Symbol(),OP_BUY,Lots,Ask,30,Ask-Stoploss*Point,Ask+Takeprofit*Point,"",MAGICMA,0,Blue);
      return;
     }
//----
  }

	          
 
obla4ko:

Огромное спасибо и от меня тоже! Я с этим вопросом "пристаю" тут на разных ветках - вот, наконец, одна "заплодоносила":)) !

И еще вопросец - из другой оперы: если я прописываю открытие ордера по Open[0] после пересечения МА, то в 40% случаях позиция не открывается - игнор полный (вернее 40% :))), а если прописываю открытие по Ask или Bid - открывает много "лишних" позиций, которые не должны открываться. В особенности это актуально на валютах с большими спредами, типа EURNZD, например.

Можно ли с этим бороться? Если при Open[0] открытии проскальзывание ставлю величиной со спрэд, то ведет себя как по Ask открытию - одним словом, замкнутый круг получается..:(


А контроль количества открытых позиций не пробовали добавлять?
 
artmedia70:
Молодец, Виктор!
А обла4ко молчит-с ... :))
не молчу :)) .. просто не там ответила - :))
 
Vinin:

А контроль количества открытых позиций не пробовали добавлять?
Есть. Активна только одна позиция по одному инструменту.
 
obla4ko:

Огромное спасибо и от меня тоже! Я с этим вопросом "пристаю" тут на разных ветках - вот, наконец, одна "заплодоносила":)) !

И еще вопросец - из другой оперы: если я прописываю открытие ордера по Open[0] после пересечения МА, то в 40% случаях позиция не открывается - игнор полный (вернее 40% :))), а если прописываю открытие по Ask или Bid - открывает много "лишних" позиций, которые не должны открываться. В особенности это актуально на валютах с большими спредами, типа EURNZD, например.

Можно ли с этим бороться? Если при Open[0] открытии проскальзывание ставлю величиной со спрэд, то ведет себя как по Ask открытию - одним словом, замкнутый круг получается..:(

Открывать позицию на покупку надо по цене Ask, а на продажу по Bid.

Надо проверять результат, возвращаемый функцией OrderSend(). Если открытите состоялось, то надо учитывать, что сигнал на покупку/продажу отработан и не повторять запросы на открытие, а ждать следующего сигнала.

 
PapaYozh:

Открывать позицию на покупку надо по цене Ask, а на продажу по Bid.

Надо проверять результат, возвращаемый функцией OrderSend(). Если открытите состоялось, то надо учитывать, что сигнал на покупку/продажу отработан и не повторять запросы на открытие, а ждать следующего сигнала.

Да! Собственно, я не могу правильно прописать следующее :

- если на данном баре позиция закрылась по СтопЛоссу, и он по параметрам подходит для открытия новой позиции, то на нем НИ В КОЕМ СЛУЧАЕ НЕ ОТКРЫВАТЬ! Иными словами -

СтопЛосс - (1)

OPEN - (0) для текущего бара.

Тогда получается оптимальная работа советника - минимум "лишних" поз.

А у меня вечно какая-то абракадабра получается..:((

 
obla4ko:

Да! Собственно, я не могу правильно прописать следующее :

- если на данном баре позиция закрылась по СтопЛоссу, и он по параметрам подходит для открытия новой позиции, то на нем НИ В КОЕМ СЛУЧАЕ НЕ ОТКРЫВАТЬ! Иными словами -

СтопЛосс - (1)

OPEN - (0) для текущего бара.

Тогда получается оптимальная работа советника - минимум "лишних" поз.

А у меня вечно какая-то абракадабра получается..:((

я же говорил, установите таймер не открывать на 4 бара после срабатывания стопа
 
Techno:
я же говорил, установите таймер не открывать на 4 бара после срабатывания стопа

я помню :), Ваш совет хорош, но тут" все дело в нюансах", как выражается PapaYozh!

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

 
можно на 1 или 2 бара запрет ставить. тоньше уже некуда
[Удален]  

Доброго времени суток всем форумянам!

Не смог найти ответы на следующие вопросы.

1. Два терминала работают на разных машинах(первая на работе, вторая дома), на одном и том же реальном счете.

Если на этих терминалах, на одной и той же валютной паре работает один и тот же советник,

эквивалентно ли это работе одного и того же советника на одной и той же паре в разных окнах одного терминала?

2. Если на одном из этих терминалов запретить работать советникам(с помощью соответствующей кнопки), то как это

отразиться на другом терминале?

Заранее, спасибо!)