Можно примерно так:
bool CheckBuy()
{
int bar_no = 1; // номер бара (1 - предыдущий)
bool condition_2 = (sma_arr[ bar_no] > sma_arr[ bar_no + 1]); // 1 условие - sma ростет
bool condition_1 = (rates_arr[ bar_no].low > sma_arr[ bar_no] && rates_arr[ bar_no ].close > rates_arr[ bar_no ].open); // 2 условие - предыдущий бар бычий и выше sma
return(condition_1 && condition_2); // если оба условия истинны, то функция возвращает true, т.е. сигнал на покупку
}
Для Sell обратные условия. И, конечно же Вам нужно будет определить массив MqlRates rates_arr[] для доступа к
информации о ценах, объемах и спреде.
Надеюсь, что помог.
- www.mql5.com
Можно примерно так:
bool CheckBuy()
{
int bar_no = 1; // номер бара (1 - предыдущий)
bool condition_2 = (sma_arr[ bar_no] > sma_arr[ bar_no + 1]); // 1 условие - sma ростет
bool condition_1 = (rates_arr[ bar_no].low > sma_arr[ bar_no] && rates_arr[ bar_no ].close > rates_arr[ bar_no ].open); // 2 условие - предыдущий бар бычий и выше sma
return(condition_1 && condition_2); // если оба условия истинны, то функция возвращает true, т.е. сигнал на покупку
}
Для Sell обратные условия. И, конечно же Вам нужно будет определить массив MqlRates rates_arr[] для доступа к
информации о ценах, объемах и спреде.
Надеюсь, что помог.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Я пытаюсь самостоятельно обучиться написанию программ на MQL5. На данном этапе у меня программа содержит 4 индикатора, но ничего не меняет.
Мне нужно из этих 4 индикаторов оставить один - Simple Moving Average 20 periods и задать ему простое поведение: продавать, когда цена падает и покупать, когда растет.
Очень и очень желательно сделать 2 функции: check_buy() и check_sell() и вынести их в отдельный файл.
Извините, если эта тема уже обсуждалась (ссылки приветствуются).
Заранее спасибо всем откликнувшимся.