- Как определить между какими ценами находится цена
- Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6.
- BrainSystem: Разработка торговых систем и торговля
Доброй ночи! Изучаю MQL5..., столкнулся с проблемой...не могу разобраться по учебнику как использовать (взять значение главной и сигнальной линии Стохастика) чтобы определить наличие сигнала на покупку в между уровнями High и Low.
доброе утро. за мкадом тоже есть жизнь.
вообще не понятно что за вопрос у вас, понять принцип работы стохастика или как им торговать
Доброй ночи! Изучаю MQL5..., столкнулся с проблемой...не могу разобраться по учебнику как использовать (взять значение главной и сигнальной линии Стохастика) чтобы определить наличие сигнала на покупку в между уровнями High и Low.
Доброго времени!
Вы хоть приложите выдержку из учебника чтобы понимать о чем речь.
В книге написан такой код. Но я так, подозреваю, что для решения моей задачи он не совсем подходит. За пределы массива выходит работа алгоритма
В книге написан такой код. Но я так, подозреваю, что для решения моей задачи он не совсем подходит. За пределы массива выходит работа алгоритма
Адресное пространство команд маненько попадает в область адресного пространства данных.
Любая версия С даже не поймёт, а Вы уже ОСОЗНАЛИ !!!
В книге написан такой код. Но я так, подозреваю, что для решения моей задачи он не совсем подходит. За пределы массива выходит работа алгоритма
Почему не подходит? Это как раз тот способ, которым получают значения индикатора. Только вы хотите стохастик использовать, а привели пример для МА. Покажите свой вариант кода для стохастика, вам укажут на проблему.
struct SignalTwoBars { double prev, last; }; void getSTOCH(SignalTwoBars &result[], datetime time) { ArrayResize(result, 2); result[0].last = 0; result[0].prev = 0; result[1].last = 0; result[1].prev = 0; double buffer[]; int calculated = BarsCalculated(stoch_handle); if (calculated <= 1) { DebugBreak(); for(int i=0; i<100; i++) { Print("TRY: getSTOCH.calculated <= 1"); Sleep(50); calculated = BarsCalculated(stoch_handle); if (calculated > 1) break; } } if (calculated <= 1) { Print("ERROR: getSTOCH.calculated <= 1"); return; } // Номера буферов: 0 - MAIN_LINE, 1 - SIGNAL_LINE. // start_pos 0 - плавающий бар // start_pos 1 - последний закрытый бар CopyBuffer(stoch_handle, MAIN_LINE, time, 2, buffer); // %K синяя линия, ранняя result[0].last = buffer[1]; result[0].prev = buffer[0]; CopyBuffer(stoch_handle, SIGNAL_LINE, time, 2, buffer); // %D красная линия, поздняя (в jForex жёлтая) result[1].last = buffer[1]; result[1].prev = buffer[0]; }
использование:
SignalTwoBars stochs[2]; getSTOCH(stochs, time); prevFastStoch = stochs[0].prev; // SLOW %K curFastStoch = stochs[0].last; // SLOW %K prevSlowStoch = stochs[1].prev; // SLOW %D curSlowStoch = stochs[1].last; // SLOW %D
- 2022.12.06
- www.mql5.com
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования