Доброго времени суток господа. Столкнулся с такой проблемой. написал советника вот часть кода:
Сигналы советника долгосрочные, то есть появляется сигнали он сигнализирует многократно, с каждым новым баром. Как добавить, помимо моего ограничения по количеству позиций на одном баре, еще и ограничение по количеству позиций на каждом сигнале?
Заранее благодарен.
ограничение ордеров не помогло, у меян проблемма не в количестве ордеров, а в том что мои сигналы дублируются с каждым новым баром. Если быть точным то тот первый сигнал, он действителен и не ошибочен, просто он дублируется на новых барах, до появления нового сигнала, соответственно открываются по 1й позиции на каждом баре. Нужно чтоб сигналы не дублировались.
Если у вас на каждом баре вырабатывается сигнал бай(серия), а потом серия сигналов селл, то надо сформировать сигнал так, чтобы он выдавался только один раз, когда идёт смена бай на селл. Если между сериями сигналов есть промежутки, когда нет ни сигнала бай ни сигнала селл, то сигнал нужно сформировать используя условие отсутствие сигнала на втором баре и наличие сигнала на первом баре.
суть в том что сигнал существует до тех пор пока не отработает OP_BUYSTOP или OP_SELLSTOP
или пока не пропадет сигнал, но до этого момента ордера штампуются с каждым новым баром, но я то не знаю когда сигнал исчезнет.
Может ктото знает какуюто функцию типа учета ордеров или магик для ордеров?
суть в том что сигнал существует до тех пор пока не отработает OP_BUYSTOP или OP_SELLSTOP
или пока не пропадет сигнал, но до этого момента ордера штампуются с каждым новым баром, но я то не знаю когда сигнал исчезнет.
Может ктото знает какуюто функцию типа учета ордеров или магик для ордеров?
Если нужен только 1 открытый ордер
if (OrdersTotal()!=0) return;
Если нужен только 1 открытый ордер
if (OrdersTotal()!=0) return;
Но только для тестера
суть в том что сигнал существует до тех пор пока не отработает OP_BUYSTOP или OP_SELLSTOP
или пока не пропадет сигнал, но до этого момента ордера штампуются с каждым новым баром, но я то не знаю когда сигнал исчезнет.
Может ктото знает какуюто функцию типа учета ордеров или магик для ордеров?
проблему решил
добавил такую вещь
if ( NumberOfPositions(NULL , OP_SELLSTOP, Magic )<Orders ) { //если открытых позиций менее Orders
ну и для бая соответственно
добавил в каждый блок открытия позиции, и теперь каждая из позиций (сел,бай) контролятся по-своему
Вопрос следующий))
Хочу удалять предыдущий ордер.
if (OrderType() == OP_SELLSTOP) { if(условие) { OrderDelete(OrderTicket()-1); // закрываем позицию // return(0); // выходим } }
Будет ли при таком коде удалять предыдущую позизыю?
Вопрос следующий))
Хочу удалять предыдущий ордер.
Будет ли при таком коде удалять предыдущую позизыю?
Иногда будет, иногда нет
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Доброго времени суток господа. Столкнулся с такой проблемой. написал советника вот часть кода:
Сигналы советника долгосрочные, то есть появляется сигнали он сигнализирует многократно, с каждым новым баром. Как добавить, помимо моего ограничения по количеству позиций на одном баре, еще и ограничение по количеству позиций на каждом сигнале?
Заранее благодарен.