Всем привет. Имеем 5 последних свечей на D1. Нужно найти наибольшее значение свечи по хайлов. Если не сложно, наведите пример.
- [ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда.
- Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6.
- FOREX - Тенденции, прогнозы и следствия 2015
Nikolay Khrushchev:
int high_bar = iHighest(NULL,PERIOD_D1,MODE_HIGH,5,1);
double high_price = iHigh(NULL,PERIOD_D1, high_bar);
int low_bar = iLowest(NULL,PERIOD_D1,MODE_LOW,5,1);
double low_price = iLow(NULL,PERIOD_D1, low_bar);
int high_bar = iHighest(NULL,PERIOD_D1,MODE_HIGH,5,1);
double high_price = iHigh(NULL,PERIOD_D1, high_bar);
int low_bar = iLowest(NULL,PERIOD_D1,MODE_LOW,5,1);
double low_price = iLow(NULL,PERIOD_D1, low_bar);
Спасибо! Но.. Расчет нужен такой:
(High-Low)/Point и так с 5 свечами. Ии тогда найти макс знач
FLA:
Спасибо! Но.. Расчет нужен такой:
(High-Low)/Point и так с 5 свечами. Ии тогда найти макс знач
int bar_count = 0;
double max_high_low = 0;
for(bar_count = 1; bar_count <=5; bar_count++) {
max_high_low = MathMax( max_high_low, (iHigh(NULL,PERIOD_D1,bar_count) - iLow(NULL,PERIOD_D1,bar_count)) / _Point);
}
если вам для mql5, то там лучше использовать такой вариант, за одно с проверкой наличия истории.
MqlRates rates[]; int copy_d1_rates = CopyRates(NULL,PERIOD_D1,1,5,rates); double max_high_low = 0; if(copy_d1_rates==5) { for(int bar_count = 0; bar_count <5; bar_count++) { max_high_low = MathMax(max_high_low, (rates[bar_count].high - rates[bar_count].low) / _Point); } }else{ Print("History error"); }
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь