Скачать MetaTrader 5

Как сделать так?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Forex Trader
114283
Forex Trader  
Доброе время суток.
Сталкнулся с проблемой.
Как сделать так чтоб после открытия позиции функцией OrderSend,
на этой свечки больше не открывались сделки кроме срабатывания takeProfita.
Т.е на этой свече могла открыться одна сделка.
Или чтобы следующая сделка открывалась не раньше чем через 5 мин. После закрытия пред идущей.
Желательно с оператором if
Заранее благодарен.
Forex Trader
114283
Forex Trader  
int start()

{//1

if(OrdersTotal()<1)
{//2


//ТЕКСТ СОВЕТНИКА


}//-2
}//-1
Forex Trader
114283
Forex Trader  
Как вы не понимаете что при таком раскладе,позиция закрылась через минуту и сразу открылась следующая.
Спаисибо за ответ.
Но я уже решил эту проблему.
Forex Trader
114283
Forex Trader  
// проверим, есть ли ранее открытые позиции или ордеры?
if(OrdersTotal()<l)
{
// нет ни одного открытого ордера
// на всякий случай проверим, если у нас свободные деньги на счету?
// значение 1000 взято для примера, обычно можно открыть 1 лот
if(AccountFreeMargin()<(1000*Lots))
{
Print("We have no money");
return(O); // денег нет - выходим
}
// проверим, не слишком ли часто пытаемся открыться?
// если последний раз торговали менее чем 5 минут(5*бО=300 сек)
// назад, то выходим
// if((CurTime-LastTradeTime)<300) { Exit }
// проверяем на возможность встать в длинную позицию (BUY)
if(MacdCurrent<0 && MacdCurrent>SignalCurrent &&
MacdPrevious<SignalPrevious &&
MathAbs(MacdCurrent)>(MACDOpenLevel*Points) &&
MaCurrent > Ma Previous)
{
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Points,
Forex Trader
114283
Forex Trader  
Да так можно/
Просто пред идущий код не довал нечего похожего.
Спасибо,мало людей которые готовы помочь.
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий