Вот мой слушатель:
int start() { while(!IsStopped()) { RefreshRates(); //... Sleep(50); } return(0); }
Всем спасибо!
1000 ms EA
//< This is EA : Compile and run in folder "/experts" >
int start()
{
static int iClockPeriod = 1000 ;
static int iTimeStamp ;
static int iRunTime ;
while ( ! IsStopped () )
{
iTimeStamp = GetTickCount () ;
Comment ( TimeToStr ( TimeLocal () , TIME_SECONDS ) ) ;
//< Main Routine >
// ...
//</Main Routine >
iRunTime = GetTickCount () - iTimeStamp ;
Sleep ( iClockPeriod - iRunTime ) ;
}
}
//</This is EA : Compile and run in folder "/experts" >
1000 ms Indicator
//< This is Indicator : Compile and run in folder "/experts/indicators" >
#property indicator_chart_window
int start()
{
static int iClockPeriod = 1000 ;
static int iTimeStamp ;
if ( ( GetTickCount () - iTimeStamp ) < iClockPeriod ) return ;
{
iTimeStamp = GetTickCount () ;
Comment ( TimeToStr ( TimeLocal () , TIME_SECONDS ) ) ;
//< Main Routine >
// ...
//</Main Routine >
}
}
//</This is Indicator : Compile and run in folder "/experts/indicators" >
100 ms EA
//</This is EA : Compile and run in folder "/experts" >
//< Metronome : Content : LOC 35 >
//< 1. Entry Point 2 >
//< 2. Initialization 7 >
//< 3. Main Cycle 25 >
//< 4. Exit Point 1 >
//</Metronome : Content : LOC 35 >
//< 1. Entry Point 2 >
int init ()
{
//</1. Entry Point 2 >
//< 2. Initialization 7 `````````````````````````````>
static int iTimerPeriod = 100 ; // milliseconds
static int iTimeStampTimer = 0 ;
static int iTimeStampLocal = 0 ;
static int iRunTime = 0 ;
static int iRuns = 0 ;
static int iFraction = 0 ;
static string sTimeFraction = "" ;
//</2. Initialization 7 `````````````````````````````>
//< 3. Main Cycle 25 `````````````````````````````````````````````````````````````>
while ( ! IsStopped () )
{
iRuns ++ ;
iTimeStampTimer = GetTickCount () ;
//< Main Routine >
// ...
//</Main Routine >
iRunTime = GetTickCount () - iTimeStampTimer ;
Sleep ( iTimerPeriod - iRunTime ) ;
iRunTime = GetTickCount () - iTimeStampTimer ;
if ( iTimeStampLocal != TimeLocal () )
{
iFraction = 0 ;
sTimeFraction = "000" ;
iTimeStampLocal = TimeLocal () ;
}
else
{
iFraction = iFraction + iRunTime ;
if ( iFraction < 10 ) sTimeFraction = "00" + iFraction ;
else if ( iFraction < 100 ) sTimeFraction = "0" + iFraction ;
else sTimeFraction = iFraction ;
}
Comment ( "Time " , TimeToStr ( TimeLocal () , TIME_SECONDS ) , " " ,
sTimeFraction , "\n" ,
"Runs " , iRuns ) ;
}
//</3. Main Cycle 25 `````````````````````````````````````````````````````````````>
//< 4. Exit Point 1 >
}
//</4. Exit Point 1 >
//</This is EA : Compile and run in folder "/experts" >
с какой целью это делается?
barli:
с какой целью это делается?
с какой целью это делается?
Оградиться от тлетворного влияния тиков.
barli:
с какой целью это делается?
С благородной.
с какой целью это делается?
Roger:
Оградиться от тлетворного влияния тиков.
Оградиться от тлетворного влияния тиков.
Не проще это сделать в процедуре start:
if (!(MathMod (iVolume (Symbol (), PERIOD_H1, 0), 5) == 0)) return (0);
Нупример здесь будет обрабатываться каждый 5 тик.
Bicus:
Нупример здесь будет обрабатываться каждый 5 тик.
Неправда. Утверждение верно только для тестера.
Кроме того возможна обратная ситуация -- прослушка.
Bicus:
Не проще это сделать в процедуре start:
Нупример здесь будет обрабатываться каждый 5 тик.
Что будет делать советник между тиками? Ждать? Не рационально.
У меня в промежутках обрабатывает кучу информации.
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Подскажите, пожалуйста, как создать бесконечный цикл в советнике, чтобы перезапускался каждую секунду. Что-то по поиску ничего не нашла.