Еще одна проблема?

 
Ниже привожу кусок кода. Проблема (если это не мой глюк) возникает при тестировании (оптимизацию не проверял). Идея кода - закрыть ордер, если он просуществовал дольше, чем N дней. В виде, приведенном ниже, он работает. Если же взять TimeSeconds(CurTime()) - получаем нуль. То же с TimeSeconds(OrderOpenTime()).
Получается, что эти две функции возвращают секунды, а не datetime. Я не возражаю, но в хелпе то несоответствие.

Кстати, еще один забавный глюк - посмотрите хелп на TimeDayOfYear:
int TimeDayOfYear( void date)
:)



		for(nCnt = 0; nCnt < OrdersTotal(); nCnt++)
		{
			OrderSelect(nCnt, SELECT_BY_POS, MODE_TRADES);
			if(OrderMagicNumber() == nMagic)
			{
SaveComment("" + (CurTime() - OrderOpenTime()) + " > " + 
	(nDaysToHold * 24 * 60 * 60) + "\r\n");
		
				if(TimeSeconds(Time) - TimeSeconds(OrderOpenTime()) > nDaysToHold * 24 * 60 * 60)
				{
					if(OrderType() == OP_BUY)
					{	
						OrderClose(OrderTicket(), OrderLots(), Bid, nSlip, Aqua);
						nSignal = -1;
						return(0);
					}
					else if(OrderType() == OP_SELL)
					{
						OrderClose(OrderTicket(), OrderLots(), Ask, nSlip, OrangeRed);
						nSignal = -1;
						return(0);
					}
				}
			}
		}
	}

 
у нас время и так хранится в виде количества секунд после 01.01.1970. а функция TimeSeconds возвращает количество секунд в пределах от 0 до 59
 
у нас время и так хранится в виде количества секунд после 01.01.1970. а функция TimeSeconds возвращает количество секунд в пределах от 0 до 59


Понял, спасибо. Может быть, хелп поправить, чтобы понятнее...
 
поправим как только найдём точную и однозначную формулировку