Пишу советника на основе MACD и Stochastic. Торгуем на 30 минутках. Как получить значения MACD на дневках?
MacdCurrent=iMACD(NULL,PERIOD_D1,15,26,9,PRICE_CLOSE,MODE_MAIN,1);// 1 бар
MacdPrevious=iMACD(NULL,PERIOD_D1,15,26,9,PRICE_CLOSE,MODE_MAIN,2);// 2 бар
SignalCurrent=iMACD(NULL,PERIOD_D1,15,26,9,PRICE_CLOSE,MODE_SIGNAL,1);// 1 бар
SignalPrevious=iMACD(NULL,PERIOD_D1,15,26,9,PRICE_CLOSE,MODE_SIGNAL,2); // 2 бар
Благодарю! Еще так работает:
MacdCurrent=iMACD(NULL,1440,15,26,9,PRICE_CLOSE,MODE_MAIN,1);// 1 бар
MacdPrevious=iMACD(NULL,1440,15,26,9,PRICE_CLOSE,MODE_MAIN,2);// 2 бар
SignalCurrent=iMACD(NULL,1440,15,26,9,PRICE_CLOSE,MODE_SIGNAL,1);// 1 бар
SignalPrevious=iMACD(NULL,1440,15,26,9,PRICE_CLOSE,MODE_SIGNAL,2); // 2 бар
:)) В Code Base выложите???
Люблю классику.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Пишу советника на основе MACD и Stochastic. Торгуем на 30 минутках. Как получить значения MACD на дневках?
Или м.б. по другому тренд определять?
Пробовал так не работает:
MacdCurrent=iMACD(NULL,0,15,26,9,PERIOD_D1,MODE_MAIN,1);// 1 бар
MacdPrevious=iMACD(NULL,0,15,26,9,PERIOD_D1,MODE_MAIN,2);// 0 бар
SignalCurrent=iMACD(NULL,0,15,26,9,PERIOD_D1,MODE_SIGNAL,1);// 1 бар
SignalPrevious=iMACD(NULL,0,15,26,9,PERIOD_D1,MODE_SIGNAL,2); // 0 бар
Только так работает:
// Торговые критерии
M_0 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN, 0);// 0 бар
M_1 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_MAIN, 1);// 1 бар
S_0 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,0);// 0 бар
S_1 = iStochastic(NULL,0,5,3,3,MODE_SMA,0,MODE_SIGNAL,1);// 1 бар
MacdCurrent=iMACD(NULL,0,15,26,9,PRICE_CLOSE,MODE_MAIN,1);// 1 бар
MacdPrevious=iMACD(NULL,0,15,26,9,PRICE_CLOSE,MODE_MAIN,2);// 2 бар
SignalCurrent=iMACD(NULL,0,15,26,9,PRICE_CLOSE,MODE_SIGNAL,1);// 1 бар
SignalPrevious=iMACD(NULL,0,15,26,9,PRICE_CLOSE,MODE_SIGNAL,2); // 2 бар
if (M_1 < S_1 && M_0 >= S_0 && M_0 < 20 &&
MacdCurrent>MacdPrevious)
// Зеленая пересекает красную снизу - "ЛОНГ"
{ // И находится ниже уровня перепроданности 20
// MACD дневной возрастает, тренд ЛОНГ
Opn_B=true; // Критерий откр. Buy
Cls_S=true; // Критерий закр. Sell
}
if (M_1 > S_1 && M_0 <= S_0 && M_0 > 80 &&
MacdCurrent<MacdPrevious)
// Зеленая пересекает красную свеху - "ШОРТ"
{ // И находится выше уровня перекупленности 80
// MACD дневной убывает, тренд ШОРТ
Opn_S=true; // Критерий откр. Sell
Cls_B=true; // Критерий закр. Buy
}