Общий вопрос по архитектуре языка.

 

Есть код:
int start()
{
double .... //всякие там штучки...


if( TimeDayOfWeek(CurTime())==1 || 2 || 3 ||4 ||5 ) //Работаем тока с пон. по пятницу
{

if ( Условие 1)
{

return; //вот тут обьясните плз, мы уходим дальше по программе или ждем пока условие 1 выполница, вот это мне не понятно!!!!!!
}
// траляля.. выполнилось типа, едем дальше...

//Открываем ордера

if(OrdersTotal()==0 )
{
OrderSend(Symbol(), OP_BUY, lots, Ask, 3,0, 0,"BUY", 16384, 0, Green);

}

if(OrdersTotal()==0 )
{
OrderSend(Symbol(), OP_SELL, lots, Bid, 300, 0,"SELL", 16384, 0,Violet);

}
//Ордера открыты...

//далее...

if ( Условие 2)
{
if ( Условие 3...4,5....n) //Много кароче))
{

}

//Вот тут надо сделать так, чтобы пока условие 2= True, чтоб в начало всего кода не двигались, создать замкнутый круг тут надо, пока условие 2= Истина.
Вот я не соображу какие мне тут, и где return'ы ставить и с каким параметром, если он нужен...
}




return(0);
}
return(0);
}



Посмотрите, мож я тут и так накуралесил с Ретурнами этими ... Заранее спасибо.

 
1) return означает полный выход из функции. В данном случае работа эксперта досрочно прерывается до прихода следующего ценового тика.

2) Видимо хотите цикл с ожиданием сделать. Но это плохой вариант. Лучше выйти из эксперта, чтобы на следующем тике снова стандартным образом зайти в start, пройтись по всем условиям (перепроверив их) и сделать свое дело.

Загляните в раздел Статьи, пожалуйста.
 
А чем тогда отличается return от return(0)?
 
мне не цикл с ожиданием нужен а постоянная проверка на каждом тике условия 2, и выход только тогда когда оно выполнится...
 
просто у меня так работает программа что открытие ордера возникает только после того, как предыдущий был закрыт по стоп-лоссу, тоесть когда идет проверка условия 2 , терминал находится в состоянии 1 открытого ордера(до него был по стоп-лоссу закрыт), вот мне его закрыть надо только по условию 2, и никак подругому, а получается, что он все равно закрывается по условию 1. Вот я и сижу голову ломаю, непойму как так сделать...
 
Похоже, что Вам надо начинать с документации и статей по экспертам.
Особенно хорошо подойдут базовые статьи Роша по MQL4: http://www.alpari-idc.ru/ru/experts/articles/