Помогите доработать советник - страница 2

 
Alexandr Saprykin:

В документации есть куча функций для технических индикаторов. Прямо вот здесь

К примеру для moving averadge

А вот ICustom

И MACD

Спасибо большое!!! Кое что очень медленно проясняется. А вот такой вопрос: Есть три индикатора один из них (подвальный) он первый покажет что цена ушла в зону перекупленности или  перепроданности советник это "засекает" и стоит в ожидании до тех пор пока два других индикатора сойдутся в показаниях на одном баре. Т е после закрытия бара советник выставит ордер. Но если первый индикатор выходит из зон перекупленности или  перепроданности ране полученная советником информация от первого индикатора (подвального) обнуляется и советник снова в ожидании сигнала от первого (подвального) индикатора. Т Е последовательность в действиях нужна. Такое возможно  создать в коде советника?

 
KRIKS:

Спасибо большое!!! Кое что очень медленно проясняется. А вот такой вопрос: Есть три индикатора один из них (подвальный) он первый покажет что цена ушла в зону перекупленности или  перепроданности советник это "засекает" и стоит в ожидании до тех пор пока два других индикатора сойдутся в показаниях на одном баре. Т е после закрытия бара советник выставит ордер. Но если первый индикатор выходит из зон перекупленности или  перепроданности ране полученная советником информация от первого индикатора (подвального) обнуляется и советник снова в ожидании сигнала от первого (подвального) индикатора. Т Е последовательность в действиях нужна. Такое возможно  создать в коде советника?

Это называется триггер или защелка
void OnInit()
{
   Флаг=0;    // Результат   Объявленв выше в глобальных переменных программы как int Флаг;   Еще есть глобальные переменные терминала
}
void OnTick()
{
   if(Сигнал>70)Флаг=1;             // Когда сигнал, который надо запомнить, превысит 70: поднимаем флаг вверх и держим: можно продавать
   if(Сигнал<50 && Флаг==1)Флаг=0;  // и только когда сигнал опустится до 50, прижимаем флаг к поясу:  Поезд ушел, ждем следующего
   if(Сигнал<30)Флаг=-1;            // Когда сигнал опустится до 30: опускаем флаг вниз к ноге:                          можно покупать
   if(Сигнал>50 && Флаг==-1 Флаг=0; // и только когда сигнал дойдет до 50, поднимаем флаг к поясу
             // && - это значит логическое И = объединение двух условий = if(Сигнал>50) if(Флаг==-1)   поставьте на && курсор и нажмите F1
 
STARIJ:
Это называется триггер или защелка

If или If-else условный оператор это понятно. Сигнал видимо индикатор. а флаг и && это что? Поясните пожалуйста как работает этот код?

 
KRIKS:  If или If-else условный оператор это понятно. Сигнал видимо индикатор. а флаг и && это что? Поясните пожалуйста как работает этот код?

&& = логическое И,   || = логическое ИЛИ    ! - отрицание     Еще есть сдвиг << и >>   и поразрядные операции. Булева алгебра, алгебра логики...

 
да в справке все это есть. Почаще нажимайте F1
 
STARIJ:
Это называется триггер или защелка

Спасибо !!!

Но только когда (как пример RSI) будет пересечение 70  индикатор "укажет"  что нужно готовится к покупке а два других это подтвердят поочерёдно.
 
Господа повелители программ! Нужна помощь! НЕ ДОРОГО!!!!!!! Есть интересные идеи, вынашиваемые уже много времени, но в программировании не силён.
 
RomchikAutoProfit:
Господа повелители программ! Нужна помощь! НЕ ДОРОГО!!!!!!! Есть интересные идеи, вынашиваемые уже много времени, но в программировании не силён.
Фриланс