Logo

Вход

Войти с помощью соц. сетей
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения
ТОП СООБЩЕНИЙ
23.01.2017, 20:56
Лучший ответ
{vb:rawphrase accumulated_last_bonus1 1359 RUB
Сообщение от katrinalove Посмотреть сообщение
Помогите сделать чтобы советник работал на четырехзначных, чтобы можно было во входных параметрах выбирать 4 знака или 5 и чтобы стопы были не по 100 на 4 знаках а по 10, спасибо тому кто поможет))
Добрый вечер! Добавил в советник проверку по 3-х значным и 5-значным котировкам, соответственно по 4-х знаку значения тейкпрофита и стоплосса будут оставаться такими же как и во внешних переменных, а на 3 и 5 они будут умножаться на 10. Проверял как на 4-х значных котировках так и на 5-знаке все работает.
21.01.2017, 02:05
Лучший ответ
{vb:rawphrase accumulated_last_bonus1 30 RUB
21.01.2017, 03:03
Лучший ответ
{vb:rawphrase accumulated_last_bonus1 24584 RUB
Сообщение от katrinalove Посмотреть сообщение
во входных параметрах выбирать 4 знака или 5
Абсолютно не обязательно выбирать 4-знак или 5-знак. В mql имеется встроенная переменная Digits, которая как раз таки показывает количество цифр после десятичной точки в цене текущего инструмента. Можно проверить ее значение в функции OnInit (которая почему-то напрочь отсутствует в вашем коде) и скорректировать требуемые параметры. Вставьте в код такое (можно хоть в конце файла).
MQL код:
void OnInit() {
if (Digits==4) {
sl /= 10;
tp /= 10;
}
}
21.01.2017, 16:44
Лучший ответ
{vb:rawphrase accumulated_last_bonus1 30 RUB
Вставила, но все равно даже в тестере не делает, рынки то закрыты так не проверю(
вот так вставила
21.01.2017, 17:41
Лучший ответ
{vb:rawphrase accumulated_last_bonus1 24584 RUB
Сообщение от katrinalove Посмотреть сообщение
Вставила, но все равно даже в тестере не делает
Поспешил.. Исправьте на это:
MQL код:

int OnInit() {
Print(sl," ",tp);
if (Digits==4) {
sl /= 10;
tp /= 10;
}
Print(sl," ",tp);
return(INIT_SUCCEEDED);
}

Странно, почему-то во встроенной справке мета-редактора функция OnInit приведена именно как void, т.е. без возвращения результата выполнения. Похоже void OnInit() и int OnInit() для mql4 - разные функции. Проверьте Print-ы должны вывести во вкладку экспертов значения sl,tp до и после изменения. Проверьте, после Print-ы удалите или закоментируйте.
21.01.2017, 17:55
Лучший ответ
{vb:rawphrase accumulated_last_bonus1 30 RUB
вставила и не вывелись значения, все так же как и было((
  • #1 Свернуть

    Помогите сделать чтобы советник торговал на 4 знаках

    Помогите сделать чтобы советник работал на четырехзначных, чтобы можно было во входных параметрах выбирать 4 знака или 5 и чтобы стопы были не по 100 на 4 знаках а по 10, спасибо тому кто поможет))
  • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
  • #2 Свернуть

    Сообщение от katrinalove Посмотреть сообщение
    во входных параметрах выбирать 4 знака или 5
    Абсолютно не обязательно выбирать 4-знак или 5-знак. В mql имеется встроенная переменная Digits, которая как раз таки показывает количество цифр после десятичной точки в цене текущего инструмента. Можно проверить ее значение в функции OnInit (которая почему-то напрочь отсутствует в вашем коде) и скорректировать требуемые параметры. Вставьте в код такое (можно хоть в конце файла).
    MQL код:
    void OnInit() {
    if (Digits==4) {
    sl /= 10;
    tp /= 10;
    }
    }
    Реализую за ваши деньги ваши идеи на MQL - mql@fx-prog.ru

    Комментарий

    • #3 Свернуть

      Вставила, но все равно даже в тестере не делает, рынки то закрыты так не проверю(
      вот так вставила

      Комментарий

      • #4 Свернуть

        Сообщение от katrinalove Посмотреть сообщение
        Вставила, но все равно даже в тестере не делает
        Поспешил.. Исправьте на это:
        MQL код:

        int OnInit() {
        Print(sl," ",tp);
        if (Digits==4) {
        sl /= 10;
        tp /= 10;
        }
        Print(sl," ",tp);
        return(INIT_SUCCEEDED);
        }

        Странно, почему-то во встроенной справке мета-редактора функция OnInit приведена именно как void, т.е. без возвращения результата выполнения. Похоже void OnInit() и int OnInit() для mql4 - разные функции. Проверьте Print-ы должны вывести во вкладку экспертов значения sl,tp до и после изменения. Проверьте, после Print-ы удалите или закоментируйте.
        Реализую за ваши деньги ваши идеи на MQL - mql@fx-prog.ru

        Комментарий

        • #5 Свернуть

          вставила и не вывелись значения, все так же как и было((

          Комментарий

          • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
          • #6 Свернуть

            Сообщение от katrinalove Посмотреть сообщение
            Помогите сделать чтобы советник работал на четырехзначных, чтобы можно было во входных параметрах выбирать 4 знака или 5 и чтобы стопы были не по 100 на 4 знаках а по 10, спасибо тому кто поможет))
            Добрый вечер! Добавил в советник проверку по 3-х значным и 5-значным котировкам, соответственно по 4-х знаку значения тейкпрофита и стоплосса будут оставаться такими же как и во внешних переменных, а на 3 и 5 они будут умножаться на 10. Проверял как на 4-х значных котировках так и на 5-знаке все работает.

            Комментарий

            X