Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Вы можете использовать оператор switch.
{
case 0:
// Do Something...
break;
case 1:
// Do Something...
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 5:
break;
case 6:
break;
// etc...
}
Или использовать простой двойной оператор if:
{
// Do Something...
}
Если время часа выше > 0, но также && ниже < 22 и т.д.
Или вы можете использовать:
{
// Do Something...
}
If time hour is above > or == equal to 0 but also && below < or == equal to 22 etc.
Это немного отличается, потому что включает час, когда он равен, тогда как предыдущий пример >0 исключает сам 0, потому что он равен, а не выше.
Линии #Month - Закрыты для меня.
Я тестировал с помощью 'Strategy Tester' и в реальном времени пока работает идеально.
Я узнал много нового из ваших комментариев, и я сделал мой индикатор настолько хорошим, большое спасибо @Marcovd Heijden
Особая благодарность г-ну Марко и г-ну Уильяму.
Приведенный ниже код работает хорошо, но иногда он занимает много времени (1250).
// which is good?
EventSetTimer( 1 );
Дополнительно, могу ли я использовать функцию'Switch' для этого?
//--- 2-й раз редактировалось
Я не хочу использовать функцию start(). На самом деле мне нужно установить как показано ниже.
EventSetMillisecondTimer( 250 ); // 2nd will read in 250
EventSetMillisecondTimer( 1250 ); // 3rd will read in 1250
Но мне нужна помощь, пожалуйста.
//--- 3-й раз редактировалось
{
case 1 : EventSetMillisecondTimer( 100 );
case 2 : EventSetMillisecondTimer( 250 );
case 3 : EventSetMillisecondTimer( 1250 );
default : EventSetMillisecondTimer( 10 ); break;
} //---switch Close
Это не работает, как я хочу.
Если кто-то понял мою проблему, пожалуйста, дайте мне совет или помогите.
Заранее спасибо.
Я не хочу использовать функцию start(). На самом деле мне нужно установить, как показано ниже.
EventSetMillisecondTimer( 250 ); // 2nd will read in 250
EventSetMillisecondTimer( 1250 ); // 3rd will read in 1250
Но мне нужна помощь, пожалуйста.
Это не работает, как я хочу.
Если кто-то понимает мою проблему, пожалуйста, дайте мне совет или помогите.
Заранее спасибо.
Нет, так не работает, вы используете один таймер и только один таймер.
но вы можете разделить или разделить временной интервал, используя простой счетчик.
{
clock++;
switch(clock)
{
case 500:
//Do something...
break;
case 1000:
//Do something...
clock=0; // reset counter if need be.
break;
// Etc...
}
}
Вы дважды упомянули "Event Handling Functions", и я прочитал несколько раз (возможно, я не совсем понял всю эту страницу - также я использую функцию "OnTimer" ), но я беспокоюсь об этой странице, которая потянет меня в другую сторону - но мой этот индикатор почти закончен.
Но я вижу, что просто 'EventSetMillisecondTimer( 1250 );' иногда занимает "нерелевантное" время.
но вы можете разделить или разделить временной интервал, используя простой счетчик.
Правильный ли это код?
{
//---
_clock++;
//---
switch ( _clock )
{
case 500 :
if ( // will be same thing in here? ) )
{
...
_CreateLines_M5();
} //---if Close
break;
case 1000:
if ( // will be same thing in here? ) )
{
...
_CreateLines_M5();
} //---if Close
_clock = 0;
break;
} //---switch Close
}
Но он не работает для меня.
Спасибо.
{
//---
_clock++;
//---
switch ( _clock )
{
case 500 :
if ( // will be same thing in here? ) )
{
...
_CreateLines_M5();
} //---if Close
break;
case 1000:
if ( // will be same thing in here? ) )
{
...
_CreateLines_M5();
} //---if Close
_clock = 0;
break;
} //---switch Close
}
Но у меня это не работает.
{
if(++_clock % 500 == 0)_CreateLines_M5();
}
{
if(++_clock % 500 == 0)_CreateLines_M5();
}
Большое спасибо!
Я попробовал, он постоянно обновляется в течение минуты, даже если я выбираю PERIOD_M5.
Также я хотел бы знать, нужно ли мне использовать PERIOD_M1 и PERIOD_M5, могу ли я использовать как показано ниже?
if(++_clock % 500 == 0)_CreateLines_M5();
Также, пожалуйста, является ли приведенный ниже метод правильным?
{
_dt_Prd_M5 = iTime( Symbol(), _prd_M5, 0 );
_CreateLines_M5();
}
Всего наилучшего.
Большое спасибо!
Я попробовал, он постоянно обновляется в течение минуты, даже если я выбираю PERIOD_M5.
Также я хотел бы знать, нужно ли мне использовать PERIOD_M1 и PERIOD_M5, могу ли я использовать как показано ниже?
if(++_clock % 500 == 0)_CreateLines_M5();
Также, пожалуйста, является ли приведенный ниже метод правильным?
{
_dt_Prd_M5 = iTime( Symbol(), _prd_M5, 0 );
_CreateLines_M5();
}
Всего наилучшего.