Logo

Вход

Войти с помощью соц. сетей
Пока нет объявлений.
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения
  • #1 Свернуть

    Советник Импульс

    Идея воплотить в жизнь возникла совсем случайно. И я решил его сделать, так как алгоритм простой. Думал пользы будет немного, но прибыль всё же есть. Советник с простым алгоритмом. Если прошлая цена медвежья, то продаём и наоборот. Есть возможность тейк профита в процентах от цены, а также множество трейлинг стопов и безубыток.
    Выкладываю настройки для GBPUSD для часового графика и графит тестирования за 16 месяцев с динамическим лотом.
    Нажмите на изображение для увеличения.

Название:	TesterGraph.gif
Просмотров:	1
Размер:	15.3 Кб
ID:	29927303
    Также выкладываю базовые параметры.
    MQL код:

    extern bool b_obratni_expert=false; //Сделать все сделки обратными
    extern bool tolko_ceni_otcritia=false; //Советник работает только по ценам открытия, что позволяет тестировать по
    //ценам открытия и результат будет такой же, если тестировать по тикам с включённой
    //этой настройкой.
    extern bool vramja_raboti=false; //Активировать работу советника в определённое время
    extern int chas_nachala=2; //Час начала работы
    extern int chas_konca=20; //Час конца работы
    extern double min_razmer=0.001; //Минимальный размер свечи
    extern double max_razmer=1; //Максимальный размер свечи
    extern int ogranichenie_ubitka=1; //Как ограничивать убытки 1 стоп лосс 2 трейлинг стоп
    extern int type_treilingstop=1; //Тип трейлинг стопа 1 по пунктам. 2 по фракталам (не работает). 3 по максимумам/минимумам прошлых свечей.
    //4 по скользящей средней 5 по индикатору Parabolic SAR
    extern double treilingstop=0.001; //Количество пунктов для трейлинг стопа с фиксированным шагом
    extern double step_dlia_funkcii_to=0.0001; //Шаг передвижения трейлинг стопа по пунктам
    extern bool b_min_profit_dlia_nachala_dlia_funkcii_to=false; //Активация минимального количества пунктов, на которое цена должна уйти в прибыль,чтобы
    //работал трейлинг стоп по пунктам
    extern double min_profit_dlia_nachala_dlia_funkcii_to=0.0001; //Минимальное количество пунктов, на которое должна уйти цена в прибыль, чтобы
    //работал трейлинг стоп по пунктам
    extern double kolichestvo_fractalov_dlia_poiska_dlia_funkcii_to= 30; //Количество баров, среди которых идёт поиск фрактала
    extern int period_grafica_dlia_fractal_dlia_funkcii_to=0; //Период графика для трейлинг стопа по фракталам
    extern double probitie_ceni_type_trailingstop_2_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к фракталу,
    //для подтверждения его пробития
    extern int type_fractal_dlia_funkcii_to=1; //1 ставить стоп лосс на ближайший фрактал
    //2 на один из двух ближайших, который дальше от цены
    extern double probitie_ceni_type_trailingstop_3_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к максимуму/минимуму прошлой свечи,
    //для подтверждения его пробития
    extern int timeframe_ma_dlia_funkcii_to=0; //Временной интервал скользящей средней для трейлинг стопа по скользящей средней
    extern int period_ma_dlia_funkcii_to=20; //Период скользящей средней для трейлинг стопа по скользящей средней
    extern int shift_ma_dlia_funkcii_to=0; //Сдвиг скользящей средней для трейлинг стопа по скользящей средней
    extern int method_ma_dlia_funkcii_to=0; //Метод скользящей средней для трейлинг стопа по скользящей средней
    extern int applied_price_ma_dlia_funkcii_to=0; //Цена для скользящей средней для трейлинг стопа по скользящей средней
    extern int shift_ma_nazad_dlia_funkcii_to=1; //Индекс получаемого значения скользящей средней
    //из индикаторного буфера (сдвиг относительно текущего бара
    //на указанное количество периодов назад).
    extern int timeframe_sar_dlia_funkcii_to=0; //Временной интервал индикатора Parabolic SAR
    extern double step_sar_dlia_funkcii_to=0.2; //Шаг индикатора Parabolic SAR
    extern double maximum_sar_dlia_funkcii_to=0.2; //Максимум индикатора Parabolic SAR
    extern int shift_sar_dlia_funkcii_to=0; //Индекс получаемого значения Parabolic SAR
    //из индикаторного буфера (сдвиг относительно текущего бара
    //на указанное количество периодов назад).
    extern bool b_bezubitok=false; //Активация безубытка
    extern double punktov_do_bezubitka=0.001; //Количество пунктов до безубытка
    extern double stoploss=0.001; //Стоп лосс
    extern int type_takeprofit=1; //1 обычный тейк профит 2 тейк профит в процентах от свечи
    extern double procent_ot_svechi=100; //Сколько процентов от свечи, если тейк профит в процентах от свечи
    extern double takeprofit=0.001; //Тейк профит
    extern double lot=0.1; //Лот
    extern bool b_risk=false; //Активация динамического лота в процентах от депозита
    extern double risk=0.1; //Процент от депозита
    extern int slippage=0; //Проскальзывание
    extern string comment="SE"; //Комментарий
    extern int magic=1111; //Магическое число ордера
    extern bool b_martingeil=false; //Активация мартингейла
    extern double koefficient_martingeil=2; //Коэффициент мартингейла
    extern bool b_ogranichenie_max_lota=true; //Активация ограничения максимального лота для мартингейла
    extern int max_lot=5; //Максимальный лот, если он ограничен
  • <a href="https://www.instaforex.org/ru/?x=ruforum">InstaForex</a>
  • #2 Свернуть

    Извиняюсь, но я забыл добавить возможность времени торговли, только вынес это в переменную. Сейчас исправил.
     

    Комментарий

    • #3 Свернуть

      Сообщение от -Gosha- Посмотреть сообщение
      Извиняюсь, но я забыл добавить возможность времени торговли, только вынес это в переменную. Сейчас исправил.
      А какой минимальный депозит д ля этого советника нужен и для какого счета. Если есть результаты тестового прогона выложите пожалуйста и если есть определенный настройки то не помешали бы. Я так понимаю что этот советник новый и пока мало кто с ним работал.

      Комментарий

      • #4 Свернуть

        Сообщение от trofik71 Посмотреть сообщение
        А какой минимальный депозит д ля этого советника нужен и для какого счета. Если есть результаты тестового прогона выложите пожалуйста и если есть определенный настройки то не помешали бы. Я так понимаю что этот советник новый и пока мало кто с ним работал.
        Я же в 1 сообщении выкладывал архив тест советника и настройки, которые тоже в архиве. Депозит желательно не меньше 200 (можно центов), хотя при тестировании с минимальным лотом (0.01) можно и 100. Советую вам также протестировать советник для нужной вам валютной пары. Это быстро, так как советник тестируется по ценам открытия.
           

        Комментарий

        • #5 Свернуть

          Привет, -Gosha-. Есть предложение.
          Не могли бы вы в задаваемых параметрах указать диапазон изменения параметров.
          Это существенно ускорило бы тестирование советника. А то хрен его знает, как их менять.
           
          Разыскивается программист, желающий принять участие в написание нестандартного советника.
          ТС находится ТУТ

          Комментарий

          • #6 Свернуть

            Сообщение от Anrian Посмотреть сообщение
            Не могли бы вы в задаваемых параметрах указать диапазон изменения параметров.
            Вот в скобках показал диапазон, если есть. Но лучше каждый трейлинг стоп тестировать отдельно, иначе генетический алгоритм запутается. Без трейлинг стопа можно тестировать по ценам открытия, с ним лучше не стоит.
            MQL код:

            extern bool b_obratni_expert=false; //Сделать все сделки обратными
            extern bool tolko_ceni_otcritia=false; //Советник работает только по ценам открытия, что позволяет тестировать по
            //ценам открытия и результат будет такой же, если тестировать по тикам с включённой
            //этой настройкой.
            extern bool vramja_raboti=false; //Активировать работу советника в определённое время
            extern int chas_nachala=2; //(0-24)Час начала работы
            extern int chas_konca=20; //(0-24)Час конца работы
            extern double min_razmer=0.001; //Минимальный размер свечи
            extern double max_razmer=1; //Максимальный размер свечи
            extern int ogranichenie_ubitka=1; //(1-2)Как ограничивать убытки 1 стоп лосс 2 трейлинг стоп
            extern int type_treilingstop=1; //(1, 3, 4, 5)Тип трейлинг стопа 1 по пунктам. 2 по фракталам (не работает). 3 по максимумам/минимумам прошлых свечей.
            //4 по скользящей средней 5 по индикатору Parabolic SAR
            extern double treilingstop=0.001; //Количество пунктов для трейлинг стопа с фиксированным шагом
            extern double step_dlia_funkcii_to=0.0001; //Шаг передвижения трейлинг стопа по пунктам
            extern bool b_min_profit_dlia_nachala_dlia_funkcii_to=false; //Активация минимального количества пунктов, на которое цена должна уйти в прибыль,чтобы
            //работал трейлинг стоп по пунктам
            extern double min_profit_dlia_nachala_dlia_funkcii_to=0.0001; //Минимальное количество пунктов, на которое должна уйти цена в прибыль, чтобы
            //работал трейлинг стоп по пунктам
            extern double kolichestvo_fractalov_dlia_poiska_dlia_funkcii_to= 30; //Количество баров, среди которых идёт поиск фрактала
            extern int period_grafica_dlia_fractal_dlia_funkcii_to=0; //Период графика для трейлинг стопа по фракталам
            extern double probitie_ceni_type_trailingstop_2_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к фракталу,
            //для подтверждения его пробития
            extern int type_fractal_dlia_funkcii_to=1; //(1-2)1 ставить стоп лосс на ближайший фрактал
            //2 на один из двух ближайших, который дальше от цены
            extern double probitie_ceni_type_trailingstop_3_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к максимуму/минимуму прошлой свечи,
            //для подтверждения его пробития
            extern int timeframe_ma_dlia_funkcii_to=0; //Временной интервал скользящей средней для трейлинг стопа по скользящей средней
            extern int period_ma_dlia_funkcii_to=20; //Период скользящей средней для трейлинг стопа по скользящей средней
            extern int shift_ma_dlia_funkcii_to=0; //Сдвиг скользящей средней для трейлинг стопа по скользящей средней
            extern int method_ma_dlia_funkcii_to=0; //Метод скользящей средней для трейлинг стопа по скользящей средней
            extern int applied_price_ma_dlia_funkcii_to=0; //Цена для скользящей средней для трейлинг стопа по скользящей средней
            extern int shift_ma_nazad_dlia_funkcii_to=1; //Индекс получаемого значения скользящей средней
            //из индикаторного буфера (сдвиг относительно текущего бара
            //на указанное количество периодов назад).
            extern int timeframe_sar_dlia_funkcii_to=0; //Временной интервал индикатора Parabolic SAR
            extern double step_sar_dlia_funkcii_to=0.2; //Шаг индикатора Parabolic SAR
            extern double maximum_sar_dlia_funkcii_to=0.2; //Максимум индикатора Parabolic SAR
            extern int shift_sar_dlia_funkcii_to=0; //Индекс получаемого значения Parabolic SAR
            //из индикаторного буфера (сдвиг относительно текущего бара
            //на указанное количество периодов назад).
            extern bool b_bezubitok=false; //Активация безубытка
            extern double punktov_do_bezubitka=0.001; //Количество пунктов до безубытка
            extern double stoploss=0.001; //Стоп лосс
            extern int type_takeprofit=1; //(1-2)1 обычный тейк профит 2 тейк профит в процентах от свечи
            extern double procent_ot_svechi=100; //Сколько процентов от свечи, если тейк профит в процентах от свечи
            extern double takeprofit=0.001; //Тейк профит
            extern double lot=0.1; //Лот
            extern bool b_risk=false; //Активация динамического лота в процентах от депозита
            extern double risk=0.1; //Процент от депозита
            extern int slippage=0; //Проскальзывание
            extern string comment="SE"; //Комментарий
            extern int magic=1111; //Магическое число ордера
            extern bool b_martingeil=false; //Активация мартингейла
            extern double koefficient_martingeil=2; //Коэффициент мартингейла
            extern bool b_ogranichenie_max_lota=true; //Активация ограничения максимального лота для мартингейла
            extern int max_lot=5; //Максимальный лот, если он ограничен
               

            Комментарий

            • #7 Свернуть

              Сообщение от -Gosha- Посмотреть сообщение
              Вот в скобках показал диапазон, если есть. Но лучше каждый трейлинг стоп тестировать отдельно, иначе генетический алгоритм запутается. Без трейлинг стопа можно тестировать по ценам открытия, с ним лучше не стоит.
              MQL код:

              extern bool b_obratni_expert=false; //Сделать все сделки обратными
              extern bool tolko_ceni_otcritia=false; //Советник работает только по ценам открытия, что позволяет тестировать по
              //ценам открытия и результат будет такой же, если тестировать по тикам с включённой
              //этой настройкой.
              extern bool vramja_raboti=false; //Активировать работу советника в определённое время
              extern int chas_nachala=2; //(0-24)Час начала работы
              extern int chas_konca=20; //(0-24)Час конца работы
              extern double min_razmer=0.001; //Минимальный размер свечи
              extern double max_razmer=1; //Максимальный размер свечи
              extern int ogranichenie_ubitka=1; //(1-2)Как ограничивать убытки 1 стоп лосс 2 трейлинг стоп
              extern int type_treilingstop=1; //(1, 3, 4, 5)Тип трейлинг стопа 1 по пунктам. 2 по фракталам (не работает). 3 по максимумам/минимумам прошлых свечей.
              //4 по скользящей средней 5 по индикатору Parabolic SAR
              extern double treilingstop=0.001; //Количество пунктов для трейлинг стопа с фиксированным шагом
              extern double step_dlia_funkcii_to=0.0001; //Шаг передвижения трейлинг стопа по пунктам
              extern bool b_min_profit_dlia_nachala_dlia_funkcii_to=false; //Активация минимального количества пунктов, на которое цена должна уйти в прибыль,чтобы
              //работал трейлинг стоп по пунктам
              extern double min_profit_dlia_nachala_dlia_funkcii_to=0.0001; //Минимальное количество пунктов, на которое должна уйти цена в прибыль, чтобы
              //работал трейлинг стоп по пунктам
              extern double kolichestvo_fractalov_dlia_poiska_dlia_funkcii_to= 30; //Количество баров, среди которых идёт поиск фрактала
              extern int period_grafica_dlia_fractal_dlia_funkcii_to=0; //Период графика для трейлинг стопа по фракталам
              extern double probitie_ceni_type_trailingstop_2_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к фракталу,
              //для подтверждения его пробития
              extern int type_fractal_dlia_funkcii_to=1; //(1-2)1 ставить стоп лосс на ближайший фрактал
              //2 на один из двух ближайших, который дальше от цены
              extern double probitie_ceni_type_trailingstop_3_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к максимуму/минимуму прошлой свечи,
              //для подтверждения его пробития
              extern int timeframe_ma_dlia_funkcii_to=0; //Временной интервал скользящей средней для трейлинг стопа по скользящей средней
              extern int period_ma_dlia_funkcii_to=20; //Период скользящей средней для трейлинг стопа по скользящей средней
              extern int shift_ma_dlia_funkcii_to=0; //Сдвиг скользящей средней для трейлинг стопа по скользящей средней
              extern int method_ma_dlia_funkcii_to=0; //Метод скользящей средней для трейлинг стопа по скользящей средней
              extern int applied_price_ma_dlia_funkcii_to=0; //Цена для скользящей средней для трейлинг стопа по скользящей средней
              extern int shift_ma_nazad_dlia_funkcii_to=1; //Индекс получаемого значения скользящей средней
              //из индикаторного буфера (сдвиг относительно текущего бара
              //на указанное количество периодов назад).
              extern int timeframe_sar_dlia_funkcii_to=0; //Временной интервал индикатора Parabolic SAR
              extern double step_sar_dlia_funkcii_to=0.2; //Шаг индикатора Parabolic SAR
              extern double maximum_sar_dlia_funkcii_to=0.2; //Максимум индикатора Parabolic SAR
              extern int shift_sar_dlia_funkcii_to=0; //Индекс получаемого значения Parabolic SAR
              //из индикаторного буфера (сдвиг относительно текущего бара
              //на указанное количество периодов назад).
              extern bool b_bezubitok=false; //Активация безубытка
              extern double punktov_do_bezubitka=0.001; //Количество пунктов до безубытка
              extern double stoploss=0.001; //Стоп лосс
              extern int type_takeprofit=1; //(1-2)1 обычный тейк профит 2 тейк профит в процентах от свечи
              extern double procent_ot_svechi=100; //Сколько процентов от свечи, если тейк профит в процентах от свечи
              extern double takeprofit=0.001; //Тейк профит
              extern double lot=0.1; //Лот
              extern bool b_risk=false; //Активация динамического лота в процентах от депозита
              extern double risk=0.1; //Процент от депозита
              extern int slippage=0; //Проскальзывание
              extern string comment="SE"; //Комментарий
              extern int magic=1111; //Магическое число ордера
              extern bool b_martingeil=false; //Активация мартингейла
              extern double koefficient_martingeil=2; //Коэффициент мартингейла
              extern bool b_ogranichenie_max_lota=true; //Активация ограничения максимального лота для мартингейла
              extern int max_lot=5; //Максимальный лот, если он ограничен
              Это хорошо, что вы присутствуете в своей ветке и сразу отвечаете на предложения.
              Но я однако имел ввиду не конкретно трейлингстоп, а вообще все параметры советника, которые имеют диапазон изменения и шаг.
              Ведь вы, как автор, я думаю, лучше дрцгиз разбираетесь в том, какие параметры стоит изменять и в каком диапазоне.
               
              Разыскивается программист, желающий принять участие в написание нестандартного советника.
              ТС находится ТУТ

              Комментарий

              • #8 Свернуть

                Сообщение от Anrian Посмотреть сообщение
                Это хорошо, что вы присутствуете в своей ветке и сразу отвечаете на предложения.
                Но я однако имел ввиду не конкретно трейлингстоп, а вообще все параметры советника, которые имеют диапазон изменения и шаг.
                Ведь вы, как автор, я думаю, лучше дрцгиз разбираетесь в том, какие параметры стоит изменять и в каком диапазоне.
                Большинство параметров можно менять по своему усмотрению - от нуля до бесконечности. У переменных типа int минимальный шаг 1, у double практически не ограничен. Вот описал. ++ это означает бесконечность.
                MQL код:

                extern bool b_obratni_expert=false; //Сделать все сделки обратными
                extern bool tolko_ceni_otcritia=false; //Советник работает только по ценам открытия, что позволяет тестировать по
                //ценам открытия и результат будет такой же, если тестировать по тикам с включённой
                //этой настройкой.
                extern bool vramja_raboti=false; //Активировать работу советника в определённое время
                extern int chas_nachala=2; //(0-24)Час начала работы
                extern int chas_konca=20; //(0-24)Час конца работы
                extern double min_razmer=0.001; //(0.00001 - ++)Минимальный размер свечи
                extern double max_razmer=1; //(0.00001 - ++)Максимальный размер свечи
                extern int ogranichenie_ubitka=1; //(1-2)Как ограничивать убытки 1 стоп лосс 2 трейлинг стоп
                extern int type_treilingstop=1; //(1, 3, 4, 5)Тип трейлинг стопа 1 по пунктам. 2 по фракталам (не работает). 3 по максимумам/минимумам прошлых свечей.
                //4 по скользящей средней 5 по индикатору Parabolic SAR
                extern double treilingstop=0.001; //(0.00001 - ++)Количество пунктов для трейлинг стопа с фиксированным шагом
                extern double step_dlia_funkcii_to=0.0001; //(0.00001 - ++)Шаг передвижения трейлинг стопа по пунктам
                extern bool b_min_profit_dlia_nachala_dlia_funkcii_to=false; //Активация минимального количества пунктов, на которое цена должна уйти в прибыль,чтобы
                //работал трейлинг стоп по пунктам
                extern double min_profit_dlia_nachala_dlia_funkcii_to=0.0001; //(0.00001 - ++)Минимальное количество пунктов, на которое должна уйти цена в прибыль, чтобы
                //работал трейлинг стоп по пунктам
                extern double kolichestvo_fractalov_dlia_poiska_dlia_funkcii_to= 30; //(3 - ++)Количество баров, среди которых идёт поиск фрактала
                extern int period_grafica_dlia_fractal_dlia_funkcii_to=0; //Период графика для трейлинг стопа по фракталам
                extern double probitie_ceni_type_trailingstop_2_dlia_funkcii_to= 0.0001; //(0.00001 - ++)Дополнительное количество пунктов, которое прибавляется к фракталу,
                //для подтверждения его пробития
                extern int type_fractal_dlia_funkcii_to=1; //(1-2)1 ставить стоп лосс на ближайший фрактал
                //2 на один из двух ближайших, который дальше от цены
                extern double probitie_ceni_type_trailingstop_3_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к максимуму/минимуму прошлой свечи,
                //для подтверждения его пробития
                extern int timeframe_ma_dlia_funkcii_to=0; //(в минутах, например, час - 60, 5 мин - 5 и т.д.)Временной интервал скользящей средней для трейлинг стопа по скользящей //средней
                extern int period_ma_dlia_funkcii_to=20; //(1 - ++)Период скользящей средней для трейлинг стопа по скользящей средней
                extern int shift_ma_dlia_funkcii_to=0; //(0 - ++)Сдвиг скользящей средней для трейлинг стопа по скользящей средней
                extern int method_ma_dlia_funkcii_to=0; //(0 - 3)Метод скользящей средней для трейлинг стопа по скользящей средней
                extern int applied_price_ma_dlia_funkcii_to=0; //(0 - 6)Цена для скользящей средней для трейлинг стопа по скользящей средней
                extern int shift_ma_nazad_dlia_funkcii_to=1; //(0 - ++)Индекс получаемого значения скользящей средней
                //из индикаторного буфера (сдвиг относительно текущего бара
                //на указанное количество периодов назад).
                extern int timeframe_sar_dlia_funkcii_to=0; //(в минутах, например, час - 60, 5 мин - 5 и т.д.)Временной интервал индикатора Parabolic SAR
                extern double step_sar_dlia_funkcii_to=0.2; //(0.001 - ++)Шаг индикатора Parabolic SAR
                extern double maximum_sar_dlia_funkcii_to=0.2; //(0.001 - ++)Максимум индикатора Parabolic SAR
                extern int shift_sar_dlia_funkcii_to=0; //(0 - ++)Индекс получаемого значения Parabolic SAR
                //из индикаторного буфера (сдвиг относительно текущего бара
                //на указанное количество периодов назад).
                extern bool b_bezubitok=false; //Активация безубытка
                extern double punktov_do_bezubitka=0.001; //(0.00001 - ++)Количество пунктов до безубытка
                extern double stoploss=0.001; //(0.00001 - ++)Стоп лосс
                extern int type_takeprofit=1; //(1-2)1 обычный тейк профит 2 тейк профит в процентах от свечи
                extern double procent_ot_svechi=100; //(0.1 ++)Сколько процентов от свечи, если тейк профит в процентах от свечи
                extern double takeprofit=0.001; //(0.00001 - ++)Тейк профит
                extern double lot=0.1; //(0.01 - ++)Лот
                extern bool b_risk=false; //Активация динамического лота в процентах от депозита
                extern double risk=0.1; //(0.001 - ++)Процент от депозита
                extern int slippage=0; //(0 - ++)Проскальзывание
                extern string comment="SE"; //Комментарий
                extern int magic=1111; //(1 - ++)Магическое число ордера
                extern bool b_martingeil=false; //Активация мартингейла
                extern double koefficient_martingeil=2; //(0 - ++)Коэффициент мартингейла
                extern bool b_ogranichenie_max_lota=true; //Активация ограничения максимального лота для мартингейла
                extern int max_lot=5; //(0 - ++)Максимальный лот, если он ограничен
                   
                Последний раз редактировалось -Georg-; 14.06.2015, 22:06.

                Комментарий

                • #9 Свернуть

                  Сообщение от -Gosha- Посмотреть сообщение
                  Идея воплотить в жизнь возникла совсем случайно. И я решил его сделать, так как алгоритм простой. Думал пользы будет немного, но прибыль всё же есть. Советник с простым алгоритмом. Если прошлая цена медвежья, то продаём и наоборот. Есть возможность тейк профита в процентах от цены, а также множество трейлинг стопов и безубыток.
                  Выкладываю настройки для GBPUSD для часового графика и графит тестирования за 16 месяцев с динамическим лотом.
                  [ATTACH]986068[/ATTACH]
                  Также выкладываю базовые параметры.
                  MQL код:

                  extern bool b_obratni_expert=false; //Сделать все сделки обратными
                  extern bool tolko_ceni_otcritia=false; //Советник работает только по ценам открытия, что позволяет тестировать по
                  //ценам открытия и результат будет такой же, если тестировать по тикам с включённой
                  //этой настройкой.
                  extern bool vramja_raboti=false; //Активировать работу советника в определённое время
                  extern int chas_nachala=2; //Час начала работы
                  extern int chas_konca=20; //Час конца работы
                  extern double min_razmer=0.001; //Минимальный размер свечи
                  extern double max_razmer=1; //Максимальный размер свечи
                  extern int ogranichenie_ubitka=1; //Как ограничивать убытки 1 стоп лосс 2 трейлинг стоп
                  extern int type_treilingstop=1; //Тип трейлинг стопа 1 по пунктам. 2 по фракталам (не работает). 3 по максимумам/минимумам прошлых свечей.
                  //4 по скользящей средней 5 по индикатору Parabolic SAR
                  extern double treilingstop=0.001; //Количество пунктов для трейлинг стопа с фиксированным шагом
                  extern double step_dlia_funkcii_to=0.0001; //Шаг передвижения трейлинг стопа по пунктам
                  extern bool b_min_profit_dlia_nachala_dlia_funkcii_to=false; //Активация минимального количества пунктов, на которое цена должна уйти в прибыль,чтобы
                  //работал трейлинг стоп по пунктам
                  extern double min_profit_dlia_nachala_dlia_funkcii_to=0.0001; //Минимальное количество пунктов, на которое должна уйти цена в прибыль, чтобы
                  //работал трейлинг стоп по пунктам
                  extern double kolichestvo_fractalov_dlia_poiska_dlia_funkcii_to= 30; //Количество баров, среди которых идёт поиск фрактала
                  extern int period_grafica_dlia_fractal_dlia_funkcii_to=0; //Период графика для трейлинг стопа по фракталам
                  extern double probitie_ceni_type_trailingstop_2_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к фракталу,
                  //для подтверждения его пробития
                  extern int type_fractal_dlia_funkcii_to=1; //1 ставить стоп лосс на ближайший фрактал
                  //2 на один из двух ближайших, который дальше от цены
                  extern double probitie_ceni_type_trailingstop_3_dlia_funkcii_to= 0.0001; //Дополнительное количество пунктов, которое прибавляется к максимуму/минимуму прошлой свечи,
                  //для подтверждения его пробития
                  extern int timeframe_ma_dlia_funkcii_to=0; //Временной интервал скользящей средней для трейлинг стопа по скользящей средней
                  extern int period_ma_dlia_funkcii_to=20; //Период скользящей средней для трейлинг стопа по скользящей средней
                  extern int shift_ma_dlia_funkcii_to=0; //Сдвиг скользящей средней для трейлинг стопа по скользящей средней
                  extern int method_ma_dlia_funkcii_to=0; //Метод скользящей средней для трейлинг стопа по скользящей средней
                  extern int applied_price_ma_dlia_funkcii_to=0; //Цена для скользящей средней для трейлинг стопа по скользящей средней
                  extern int shift_ma_nazad_dlia_funkcii_to=1; //Индекс получаемого значения скользящей средней
                  //из индикаторного буфера (сдвиг относительно текущего бара
                  //на указанное количество периодов назад).
                  extern int timeframe_sar_dlia_funkcii_to=0; //Временной интервал индикатора Parabolic SAR
                  extern double step_sar_dlia_funkcii_to=0.2; //Шаг индикатора Parabolic SAR
                  extern double maximum_sar_dlia_funkcii_to=0.2; //Максимум индикатора Parabolic SAR
                  extern int shift_sar_dlia_funkcii_to=0; //Индекс получаемого значения Parabolic SAR
                  //из индикаторного буфера (сдвиг относительно текущего бара
                  //на указанное количество периодов назад).
                  extern bool b_bezubitok=false; //Активация безубытка
                  extern double punktov_do_bezubitka=0.001; //Количество пунктов до безубытка
                  extern double stoploss=0.001; //Стоп лосс
                  extern int type_takeprofit=1; //1 обычный тейк профит 2 тейк профит в процентах от свечи
                  extern double procent_ot_svechi=100; //Сколько процентов от свечи, если тейк профит в процентах от свечи
                  extern double takeprofit=0.001; //Тейк профит
                  extern double lot=0.1; //Лот
                  extern bool b_risk=false; //Активация динамического лота в процентах от депозита
                  extern double risk=0.1; //Процент от депозита
                  extern int slippage=0; //Проскальзывание
                  extern string comment="SE"; //Комментарий
                  extern int magic=1111; //Магическое число ордера
                  extern bool b_martingeil=false; //Активация мартингейла
                  extern double koefficient_martingeil=2; //Коэффициент мартингейла
                  extern bool b_ogranichenie_max_lota=true; //Активация ограничения максимального лота для мартингейла
                  extern int max_lot=5; //Максимальный лот, если он ограничен
                  Погонял в тестере, вроде не плохо, только сделок мало. Понял вот что...время работы не работает, из тралов только стандарт, остальные не работают
                   

                  Комментарий

                  • #10 Свернуть

                    Сообщение от anatoliy2025 Посмотреть сообщение
                    Погонял в тестере, вроде не плохо, только сделок мало. Понял вот что...время работы не работает, из тралов только стандарт, остальные не работают
                    У меня и время работает и трейлинг стоп, за исключением по фракталам, но я об этом уже писал вот настойки, которые у меня работают. Попробуйте, например, на AUDUSD или GBPUSD. Чтобы увеличить количество сделок можно тестировать на 15 мин или меньше, поставив небольшой минимальный размер свечи.
                       

                    Комментарий

                    • #11 Свернуть

                      Сообщение от -Gosha- Посмотреть сообщение
                      У меня и время работает и трейлинг стоп, за исключением по фракталам, но я об этом уже писал вот настойки, которые у меня работают. Попробуйте, например, на AUDUSD или GBPUSD. Чтобы увеличить количество сделок можно тестировать на 15 мин или меньше, поставив небольшой минимальный размер свечи.
                      Я на М5, евро бакс
                         

                      Комментарий

                      • #12 Свернуть

                        Сообщение от anatoliy2025 Посмотреть сообщение
                        Я на М5, евро бакс
                        Работают ли мои настройки, которые я недавно выложил в архиве?
                           
                        Последний раз редактировалось -Georg-; 16.06.2015, 22:29.

                        Комментарий

                        • #13 Свернуть

                          Гоша, а есть примерный сет? Спасибо.
                           

                          Комментарий

                          • #14 Свернуть

                            Сообщение от -Gosha- Посмотреть сообщение
                            Работают ли мои настройки, которые я недавно выложил в архиве?
                            Да, работают. Но я решил оптимизировать все равно
                               

                            Комментарий

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

                              Сообщение от gvitall Посмотреть сообщение
                              Гоша, а есть примерный сет? Спасибо.
                              В начале темы есть архив настройки.
                                 

                              Комментарий

                              Сейчас онлайн

                              working...
                              X