Заработай до
50000$
на приглашении друзей
получить StartUp Bonus
от ИнстаФорекс
Вложений не требуется!
Начни торговлю
без вложений и риска
С новым STARTUP бонусом 1000$
Получи бонус
55%
от ИнстаФорекс
на каждое пополнение
Ответить в теме
Страница 239 из 241
Первая ... 229 238 239 240 Последняя ◄╝

Показаны сообщения: с 4,761 по 4,780 из 4806

Тема: Помогите исправить советник или индикатор

 Перейти в классический вид темы
  1. Линк #4761 Свернуть пост
    Частый гость
    anvin приемлемый уровень репутации Аватар для anvin
    Регистрация:
    11.06.2010
    Сообщений:
    110
    Деньги за посты:
    1045 RUB (Подробнее)
    Поставил(а) лайков:
    5
    Получено лайков:  15
    в 9 сообщениях
    14%

    Последний раз редактировалось Gold; 21.10.2014 в 22:37.

  2. post_thanks Получено лайков: 1

    strit25 (16.09.2018)

     
  3. ТОП сообщений
    2018-08-28   08:56
    Лучший ответ #1
     

    Привет. Тестировал своего советника. с мая дал выдающийся результат с 74 баксов +620 дол. Конечно дал я ему нагрузку лот 0,25. А вот при тестировании с января при лот 0,07 убил депозит. Пришлось подбирать настройки. Нашлись такие и в результате прошел тест. Напомню, о чем я писал раннее: Любой советник, дающий потрясающие результаты при одной рыночной ситуации обязательно даст сбой при ее смене. И если возникла ситуация, когда советник, написанный и оттестированный собственноручно или приобретенный за хорошие деньги по партнерской ссылке, вдруг слил депозит, неизбежно назревает ряд вопросов: а есть ли советники «Святого Грааля»? а почему они вообще сливают счет? а можно ли вообще доверять советникам? При этом мало кому в голову приходит, что советник – вовсе не станок для печатания купюр, а всего лишь торговый алгоритм, созданный людьми. В идеале, советник – это просто помощник грамотному трейдеру. И если в тандеме «советник-трейдер» последний лишь включает торговый терминал и выводит прибыль или вводит средства на рынок, этот путь заведомо приведет к краху. Для успешной торговли трейдеру необходимо постоянно анализировать состояние рынка и определять, насколько благоприятен рыночный фон для работы того или иного советника. А для этого необходимо понимать принципы его торгового алгоритма, а не просто знать, какую кнопку кликать для его запуска. Любой советник – это не панацея, а лишь средство, применяемое в данных конкретных условиях. Исходя из анализа, решение о возможности применения советника и корректировке его работы остается в конечном итоге за человеком.

    2018-10-05   18:29
    Лучший ответ #2

    Давно занимаюсь поиском хороших функций или условия для прибыльного входа в рынок. Действительно, согласен с выводами, что при разных рыночных условий, необходимо корректировать настройки. Универсальных настроек не бывает. Но с другой стороны, если во время "врубился" в рыночные условия, как бы и советник не нужен. В результате многих проб и ошибок, пока как бы мне удалось создать как бы прибыльного советника. Но, у разных брокеров, при одних и тех же условий и настроек, данный советник работает по разному. Так что пока в поисках. До



    И После


    Изображение
    Превью
    2018-06-30   13:44
    Лучший ответ #3
    Накопленные выплаты 81020 RUB

    Бодрого времени ! Интересно MQL5 тоже можно выкладывать ? Нужно в советник добавить возможность установки отложенных ордеров. Т.е после закрытия позиции советник удаляет все отложенные ордера. Это хорошо. Но потом добавить отложку нельзя -советник удаляет. Получается что вход только по рынку. Вот такая задача.... что бы после закрытия удалял отложки и была возможность установки других отложек . Надеюсь понятно объяснил

    Изображение
    Превью
    2018-02-28   19:55
    Лучший ответ #4
    Накопленные выплаты 24246 RUB

    Сегодня весь день наблюдал за индикатором... Он реагирует на появление новых точек и их сдвиги. Ни одной не пропустил. Почему у вас не все сигналы отрабатывает мне сказать сложно. Могу поделиться не большим бонусом. По ссылке yandex.disk именованные озвучки к большинству популярных инструментов на МИН, МАКС.

    2018-09-16   18:06
    Лучший ответ #5
     

    А я потихоньку программирую, но редко я эти советники запускаю на реал. Обычно это в феврале- апреле. Но это не главное, то что я их часто штампую. Дело в том, что все мы прекрасно понимаем, что главное в в алгоритме каждого без исключения советника, это правильный вход, который обычно мы "вставляем" в условиях открытия и закрытия ордеров. Вот в этом и проблема. Сколько я не пытался, так и "догнать" не смог какие же загнать условия "грааля" в этот алгоритм. Вот одно из условий, открытия ордеров, которое я применял в программировании советника. if( Bid>topS && ld_2508>100 && kvs-kv<=ogr && ld_808

    Изображение
    Превью
    2018-03-19   10:05
    Лучший ответ #6
    Накопленные выплаты 27419 RUB

    не сложно, но у Вас лайк не выпросишь добавил в Алерт: период графика, время сигнала и номер бара

    Изображение
    Превью
  • Линк #4768 Свернуть пост
    Специалист
    Ангел
     
    Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Аватар для Alekcey
    Регистрация:
    31.05.2011
    Пол:
    Мужчина
    Сообщений:
    5,095
    Деньги за посты:
    70059 RUB (Подробнее)
    Поставил лайков:
    1,696
    Получено лайков:  1,583
    в 1,045 сообщениях
    31%
    Frog.mq4

    Нужно сюда вписать Вместо

    MQL код:
    {
    b=0, // buy
    s=1, // sell
    };
    input t tip = 1; //тип торговли


    Вписывать чтобы эти 0 и 1 ( Бай / Селл ) - выбирались советником случайно.

    MQL код:
     if (OrderProfit()>0) 
    {
    if (n==0) lot = NormalizeDouble(OrderLots()+OrderLots()/100*P,2);
    n++;
    if (n>N) break;
    }
    else
    {
    if (n==0) lot=Lot;
    break;
    }


    Сейчас после прибыльной сделки лот увеличивается и сбрасывается так :

    1 лот прибыль
    2 лот прибыль
    1 лот прибыль
    1 лот прибыль

    Робот ждёт пока опять откроется убыток. и опять откроется прибыль и только тогда он продолжит увеличивать после прибыли. А нужно чтобы робот не ждал, а просто зациклил увеличение после прибыльной.

    1 лот прибыль
    2 лот прибыль
    1 лот прибыль
    2 лот прибыль.


  • Линк #4769 Свернуть пост
    Специалист
    Ангел
     
    Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Аватар для Alekcey
    Регистрация:
    31.05.2011
    Пол:
    Мужчина
    Сообщений:
    5,095
    Деньги за посты:
    70059 RUB (Подробнее)
    Поставил лайков:
    1,696
    Получено лайков:  1,583
    в 1,045 сообщениях
    31%
    Цитата Сообщение от Alekcey Посмотреть сообщение

    Ещё хотелось бы иметь ОТДЕЛЬНУЮ версию советника где бай и селл выставляются одновременно. Я пробывал делатьс ам. не вышло. Сделки по обе стороны увеличиваются по лоту. А не только после прибыльной.


    Код всего советника.


    MQL код:
    //+------------------------------------------------------------------+
    #property copyright "Copyright © 2019, WhatsApp +79283690333"
    #property link "cmillion@narod.ru"
    #property strict
    #property description "Советник открывает позицию указанную в параметрах"
    #property description "Лот после прибыльной увеличивается N раз на P процентов"
    #property description "Лот после убыточной начинается с начального"
    #property description ""
    enum t
    {
    b=0, // buy
    s=1, // sell
    };
    input t tip = 1; //тип торговли
    extern double Lot = 0.01;
    extern double P = 100; //% увеличения лота
    extern int N = 2; //число увеличений
    extern int Stoploss = 150; //стоплосс
    extern int Takeprofit = 150; //тейкпрофит
    extern int slippage = 30;
    extern int Magic = 0;
    //--------------------------------------------------------------------
    void OnTick()
    {
    int i;
    for (i=0; i {
    if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
    {
    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber())
    {
    Comment("Советник сопровождает позицию ",OrderType()==OP_BUY?"BUY":"SELL"," ",OrderTicket()," ",DoubleToStr(OrderLots(),2)," лот");
    return;
    }
    }
    }
    double lot=Lot;
    int n=0;
    for (i=OrdersHistoryTotal()-1; i>=0; i--)
    {
    if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
    {
    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber() && tip == OrderType())
    {
    if (OrderProfit()>0)
    {
    if (n==0) lot = NormalizeDouble(OrderLots()+OrderLots()/100*P,2);
    n++;
    if (n>N) break;
    }
    else
    {
    if (n==0) lot=Lot;
    break;
    }
    }
    }
    }
    if (n>N && lot>Lot) lot=Lot;

    if (tip==0) if (OrderSend(Symbol(),OP_BUY ,lot,NormalizeDouble(Ask,Digits),slippage,
    NormalizeDouble(Ask - Stoploss*Point,Digits),
    NormalizeDouble(Ask + Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");
    if (tip==1) if (OrderSend(Symbol(),OP_SELL,lot,NormalizeDouble(Bi d,Digits),slippage,
    NormalizeDouble(Bid + Stoploss*Point,Digits),
    NormalizeDouble(Bid - Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");
    }
    //-----------------------------------------------------------------



  • post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  • Линк #4770 Свернуть пост
    Специалист
    Ангел
     
    Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Аватар для Alekcey
    Регистрация:
    31.05.2011
    Пол:
    Мужчина
    Сообщений:
    5,095
    Деньги за посты:
    70059 RUB (Подробнее)
    Поставил лайков:
    1,696
    Получено лайков:  1,583
    в 1,045 сообщениях
    31%
    Ещё никто не ответил, поэтому конкретизирую правки в виде таких пунктов. Эти правки считаются доминирующими.

    Вот что за правки надо внести в робот.

    1. Теперь робот должен одновременно сразу выставлять и Бай и Селл сделки.
    2. Теперь робот увеличивает после прибыльной сделку, лишь когда МАКСимальный баланс НИЖЕ ТЕКУщего баланса.
    3. 30% ( переменная ) всех убыточных сделок не будет учитываться роботом для своих внутренних вычислений. Поэтому параметры Максимального и Текущего Баланса, советник должен для себя делать сам ( виртуально ).

    Сделать надо хотя бы 2 пункта первых. 3 ий не мало важный. Так мы " уберём противную комиссию от Брокера" , ибо в любом случае при увеличении лота после прибыльной мы получим прибыль на порядок больше, потерянных средств. )

    Вложение 3097045


  • post_thanks Получено лайков: 2

    Незарегистрированный (2 пользователя)

  • Линк #4771 Свернуть пост
    Знающий
    Сама доброта
     
    Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Аватар для Sergio Vision
    Регистрация:
    23.11.2012
    Пол:
    Мужчина
    Сообщений:
    4,820
    Деньги за посты:
    133565 RUB (Подробнее)
    Поставил лайков:
    1,223
    Получено лайков:  2,056
    в 1,165 сообщениях
    43%
    Доброго вечера! Господа форумчане, прошу исправить недоделку или ошибку в советнике. У меня пока руки кривые. Сов не мой, автор указан, в коде это видно, ему респект за это, нашел его на другом форуме. По сути - это простой доливатор. Проблема в том, что он стартует и работает только на покупку, а в обе стороны, или только в продажу, ну никак не хочет. Может кто заставит его это делать. Кстати, может еще кому понадобится такая игрушка, если кто ищет в сети нечто подобное, поскольку сам искал подобную штучку и не мог найти. С уважением!
    paperclip Вложения

    Не пытайтесь исправить прошлое. Лучше приложите все усилия, чтобы не испортить будущее. 😊 мой дневничек (вновь открыто)

  • post_thanks Получено лайков: 2

    Незарегистрированный (2 пользователя)

  • Линк #4772 Свернуть пост
    Кандидат форумных наук
    Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Аватар для Leschich
    Регистрация:
    30.11.2012
    Пол:
    Мужчина
    Сообщений:
    1,180
    Деньги за посты:
    19469 RUB (Подробнее)
    Поставил лайков:
    2,339
    Получено лайков:  1,109
    в 563 сообщениях
    94%
    Цитата Сообщение от Sergio Vision Посмотреть сообщение
    Господа форумчане, прошу исправить недоделку или ошибку в советнике. У меня пока руки...
    Проблема в том, что он стартует и работает только на покупку, а в обе стороны, или только в продажу, ну никак не хочет. Может кто заставит его это делать.
    Данный советник работает в трех режимах:
    1. только в бай
    2. только в селл
    3. и в бай и в селл
    Управление режимами следующим параметром
    BuySell = 1; // 1-buy 2-sell 0-both
    Оптимизируйте параметры. Проверил в тестере,- работает. Есть только такой нюанс, при включении третьего режима , когда и в бай и в селл, работает только одно направление. Направление серии зависит от открытия первого ордера согласно сигналам индикатора Parabolic SАR. Индикатор работает только когда нет ордеров в рынке. После закрытия серии,советник выставит первый ордер согласно куда покажет индикатор. Остальные ордера только в ту сторону, что и первый. На скрине с тестера видны и селл серия и бай серия.
    paperclip Миниатюры Нажмите на изображение для увеличения
Название: usdcad-m15-тестер.png
Просмотров: 9
Размер:	73.9 КБ
ID:	3100428  


    Последний раз редактировалось Leschich; 14.10.2019 в 22:33.
    " Мы можем видеть то, что случится в будущем, по событиям прошлого, если знаем, как смотреть". В. Сперандео.
    Мы называем процессы случайными... до тех пор, пока не установим их закономерности.

  • post_thanks Получено лайков: 4

    Sergio Vision (14.10.2019), К.Моржов (19.10.2019), Незарегистрированный (2 пользователя)

  • Линк #4773 Свернуть пост
    Знающий
    Сама доброта
     
    Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Аватар для Sergio Vision
    Регистрация:
    23.11.2012
    Пол:
    Мужчина
    Сообщений:
    4,820
    Деньги за посты:
    133565 RUB (Подробнее)
    Поставил лайков:
    1,223
    Получено лайков:  2,056
    в 1,165 сообщениях
    43%
    Цитата Сообщение от Leschich Посмотреть сообщение
    Данный советник работает в трех режимах:
    1. только в бай
    2. только в селл
    3. и в бай и в селл
    Управление режимами следующим параметром

    Оптимизируйте параметры. Проверил в тестере,- работает. Есть только такой нюанс, при включении третьего режима , когда и в бай и в селл, работает только одно направление. Направление серии зависит от открытия первого ордера согласно сигналам индикатора Parabolic SАR. Индикатор работает только когда нет ордеров в рынке. После закрытия серии,советник выставит первый ордер согласно куда покажет индикатор. Остальные ордера только в ту сторону, что и первый. На скрине с тестера видны и селл серия и бай серия.
    Да, действительно, все оказывается работает, благодарю за пояснение нюансов. Интересно, а если убрать из него этот индикатор, то есть вход по нему в коде, там, где прописано условие открытия первого ордера, будет ли он отрабатывать сопровождающую функцию, к примеру ордеров открытых другим советником, с тем же магиком?

    Не пытайтесь исправить прошлое. Лучше приложите все усилия, чтобы не испортить будущее. 😊 мой дневничек (вновь открыто)

  • Линк #4774 Свернуть пост
    Кандидат форумных наук
    Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Leschich авторитетный пользователь Аватар для Leschich
    Регистрация:
    30.11.2012
    Пол:
    Мужчина
    Сообщений:
    1,180
    Деньги за посты:
    19469 RUB (Подробнее)
    Поставил лайков:
    2,339
    Получено лайков:  1,109
    в 563 сообщениях
    94%
    Цитата Сообщение от Sergio Vision Посмотреть сообщение
    Интересно, а если убрать из него этот индикатор, то есть вход по нему в коде, там, где прописано условие открытия первого ордера, будет ли он отрабатывать сопровождающую функцию, к примеру ордеров открытых другим советником, с тем же магиком?
    Думаю что да.

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

  • post_thanks Получено лайков: 1

    Sergio Vision (15.10.2019)

  • Линк #4775 Свернуть пост
    Специалист
    Ангел
     
    Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Аватар для Alekcey
    Регистрация:
    31.05.2011
    Пол:
    Мужчина
    Сообщений:
    5,095
    Деньги за посты:
    70059 RUB (Подробнее)
    Поставил лайков:
    1,696
    Получено лайков:  1,583
    в 1,045 сообщениях
    31%
    Кое - что сам сделал. Например чтобы зацикливалось увеличение после прибыльной.

    Может кто-то в коде прописать чтобы


    MQL код:
     if (tip==0) if (OrderSend(Symbol(),OP_BUY ,lot,NormalizeDouble(Ask,Digits),slippage,
    NormalizeDouble(Ask - Stoploss*Point,Digits),
    NormalizeDouble(Ask + Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");
    if (tip==1) if (OrderSend(Symbol(),OP_SELL,lot,NormalizeDouble(Bi d,Digits),slippage,
    NormalizeDouble(Bid + Stoploss*Point,Digits),
    NormalizeDouble(Bid - Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");


    Рандомно выбирался.

    Вот код самого советника.

    MQL код:

    //+------------------------------------------------------------------+
    #property copyright "Copyright © 2019, WhatsApp +79283690333"
    #property link "cmillion@narod.ru"
    #property strict
    #property description "Советник открывает позицию указанную в параметрах"
    #property description "Лот после прибыльной увеличивается N раз на P процентов"
    #property description "Лот после убыточной начинается с начального"
    #property description ""
    enum t
    {
    b=0, // buy
    s=1, // sell
    };
    input t tip = 1; //тип торговли
    extern double Lot = 0.01;
    extern double P = 100; //% увеличения лота
    extern int N = 2; //число увеличений
    extern int Stoploss = 150; //стоплосс
    extern int Takeprofit = 150; //тейкпрофит
    extern int slippage = 30;
    extern int Magic = 0;
    //--------------------------------------------------------------------
    void OnTick()
    {
    int i;
    for (i=0; i {
    if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
    {
    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber())
    {
    Comment("Советник сопровождает позицию ",OrderType()==OP_BUY?"BUY":"SELL"," ",OrderTicket()," ",DoubleToStr(OrderLots(),2)," лот");
    return;
    }
    }
    }
    double lot=Lot;
    int n=0;
    for (i=OrdersHistoryTotal()-1; i>=0; i--)
    {
    if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
    {
    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber() && tip == OrderType())
    {
    if (OrderProfit()>0)
    {
    if (n==0) lot = NormalizeDouble(OrderLots()+OrderLots()/100*P,2);
    n++;
    if (n>N) n=0 ;
    }
    else
    {
    if (n==0) lot=Lot;
    break;
    }
    }
    }
    }
    if (n>N && lot>Lot) lot=Lot;

    if (tip==0) if (OrderSend(Symbol(),OP_BUY ,lot,NormalizeDouble(Ask,Digits),slippage,
    NormalizeDouble(Ask - Stoploss*Point,Digits),
    NormalizeDouble(Ask + Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");
    if (tip==1) if (OrderSend(Symbol(),OP_SELL,lot,NormalizeDouble(Bi d,Digits),slippage,
    NormalizeDouble(Bid + Stoploss*Point,Digits),
    NormalizeDouble(Bid - Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");
    }
    //-----------------------------------------------------------------




  • post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  • Линк #4776 Свернуть пост
    Специалист
    Ангел
     
    Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Аватар для Alekcey
    Регистрация:
    31.05.2011
    Пол:
    Мужчина
    Сообщений:
    5,095
    Деньги за посты:
    70059 RUB (Подробнее)
    Поставил лайков:
    1,696
    Получено лайков:  1,583
    в 1,045 сообщениях
    31%
    Или сделать чтобы я в ручную писал эти 001010101 для бай и селл. В совветнике.

    MQL код:
    //+------------------------------------------------------------------+
    #property copyright "Copyright © 2019, WhatsApp +79283690333"
    #property link "cmillion@narod.ru"
    #property strict
    #property description "Советник открывает позицию указанную в параметрах"
    #property description "Лот после прибыльной увеличивается N раз на P процентов"
    #property description "Лот после убыточной начинается с начального"
    #property description ""
    enum t
    {
    b=0, // buy
    s=1, // sell
    };
    input t tip = 1; //тип торговли
    extern double Lot = 0.01;
    extern double P = 100; //% увеличения лота
    extern int N = 2; //число увеличений
    extern int Stoploss = 150; //стоплосс
    extern int Takeprofit = 150; //тейкпрофит
    extern int slippage = 30;
    extern int Magic = 0;
    //--------------------------------------------------------------------
    void OnTick()
    {
    int i;
    for (i=0; i {
    if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
    {
    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber())
    {
    Comment("Советник сопровождает позицию ",OrderType()==OP_BUY?"BUY":"SELL"," ",OrderTicket()," ",DoubleToStr(OrderLots(),2)," лот");
    return;
    }
    }
    }
    double lot=Lot;
    int n=0;
    for (i=OrdersHistoryTotal()-1; i>=0; i--)
    {
    if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
    {
    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber() && tip == OrderType())
    {
    if (OrderProfit()>0)
    {
    if (n==0) lot = NormalizeDouble(OrderLots()+OrderLots()/100*P,2);
    n++;
    if (n>N) break ;
    }
    else
    {
    if (n==0) lot=Lot;
    break;
    }
    }
    }
    }
    if (n>N && lot>Lot) lot=Lot;



    if (tip==0) if (OrderSend(Symbol(),OP_BUY ,lot,NormalizeDouble(Ask,Digits),slippage,
    NormalizeDouble(Ask - Stoploss*Point,Digits),
    NormalizeDouble(Ask + Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");
    if (tip==1) if (OrderSend(Symbol(),OP_SELL,lot,NormalizeDouble(Bi d,Digits),slippage,
    NormalizeDouble(Bid + Stoploss*Point,Digits),
    NormalizeDouble(Bid - Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)
    Print("Error");
    }
    //-----------------------------------------------------------------



    Frog.mq4


  • post_thanks Получено лайков: 2

    Незарегистрированный (2 пользователя)

  • Линк #4777 Свернуть пост
    Кандидат форумных наук
    Ангел
     
    axe44 приемлемый уровень репутации axe44 приемлемый уровень репутации Аватар для axe44
    Регистрация:
    08.07.2012
    Пол:
    Мужчина
    Сообщений:
    1,078
    Деньги за посты:
    7177 RUB (Подробнее)
    Поставил лайков:
    39
    Получено лайков:  160
    в 145 сообщениях
    15%
    Доброго времени форумчане.

    Не могу понять где ошибка в скрипте. Скрипт ищет разницу в движении в определённый день.
    MQL код:
    int Days(int type,int  open, int close)//день,открытие и час закрытия
    {
    double sum=0; double sumb=0; //переменные
    double raz;
    if (close==open || close < open) return(0); // отсеваем не нужное: если цена открытия больше закрытия, если равны
    double op=0;
    double cl=0;


    for(int i=0; i <= YearBars; i++) //перебираем дни в неделях
    {

    op=Open[open];
    cl=Close[close];

    if (TimeDayOfWeek(Time[i])==type) //определяем день недели
    {
    sumb = op-cl;
    sum = sumb;
    }
    }

    return(sum);
    }

    При запуске выдаёт ошибку " array out of range "

    Спасибо.

    Последний раз редактировалось Gold; 17.10.2019 в 02:13.
    Skype axe-441

  • post_thanks Получено лайков: 4

    Незарегистрированный (4 пользователя)

  • Линк #4778 Свернуть пост
    Кандидат форумных наук
    MonyaMaker хорошая репутация MonyaMaker хорошая репутация MonyaMaker хорошая репутация MonyaMaker хорошая репутация MonyaMaker хорошая репутация MonyaMaker хорошая репутация Аватар для MonyaMaker
    Регистрация:
    03.04.2017
    Пол:
    Мужчина
    Сообщений:
    1,448
    Деньги за посты:
    44887 RUB (Подробнее)
    Поставил лайков:
    262
    Получено лайков:  531
    в 483 сообщениях
    37%
    Цитата Сообщение от axe44 Посмотреть сообщение

    В журнале посмотри, там после " array out of range ", указаны строка и колонка, в которой находится код вызвавший ошибку.

    Чисто от непонимания:
    Я не совсем понял логику, что ты изваял в коде и описал буквами, но если ты в цикл посадил определения "op" и "cl", и при этом им что то присваиваешь, так и индекс меняй, а то это просто константы, которые ты передал в параметрах.
    И чего их тогда тыркать на каждой итерации?
    Код:
          op=Open[open];
          cl=Close[close];

    Последний раз редактировалось MonyaMaker; 17.10.2019 в 05:46.

  • post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  • Линк #4779 Свернуть пост
    В начале пути
    zxzxz стараюсь положительно себя зарекомендовать Аватар для zxzxz
    Регистрация:
    27.08.2019
    Сообщений:
    10
    Деньги за посты:
    0 RUB (Подробнее)
    Поставил(а) лайков:
    2
    Получено лайков:  0
    в 0 сообщениях
    0%
    Подскажите пожалуйста! Какую функцию нужно вписать в скрипт,что бы подвальный индикатор был привязан
    к свечам? Функция (#property indicator_chart_window),только переводит его в верхнюю часть экрана. А,он там растягивается почему-то на всю высоту экрана.... Что делать?


  • post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  • Линк #4780 Свернуть пост
    Специалист
    Ангел
     
    Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Аватар для Alekcey
    Регистрация:
    31.05.2011
    Пол:
    Мужчина
    Сообщений:
    5,095
    Деньги за посты:
    70059 RUB (Подробнее)
    Поставил лайков:
    1,696
    Получено лайков:  1,583
    в 1,045 сообщениях
    31%
    MQL код:
    //+------------------------------------------------------------------+

    #property copyright "Copyright © 2019, WhatsApp +79283690333"

    #property link "cmillion@narod.ru"

    #property strict

    #property description "Советник открывает позицию указанную в параметрах"

    #property description "Лот после прибыльной увеличивается N раз на P процентов"

    #property description "Лот после убыточной начинается с начального"

    #property description ""

    enum t

    {

    b=0, // buy

    s=1, // sell

    };

    input t tip = 1; //тип торговли

    extern double Lot = 0.01;

    extern double P = 100; //% увеличения лота

    extern int N = 2; //число увеличений

    extern int Stoploss = 150; //стоплосс

    extern int Takeprofit = 150; //тейкпрофит

    extern int slippage = 30;

    extern int Magic = 0;

    //--------------------------------------------------------------------

    void OnTick()

    {

    int i;

    for (i=0; i
    {

    if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))

    {

    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber())

    {

    Comment("Советник сопровождает позицию ",OrderType()==OP_BUY?"BUY":"SELL"," ",OrderTicket()," ",DoubleToStr(OrderLots(),2)," лот");

    return;

    }

    }

    }

    double lot=Lot;

    int n=0;

    for (i=OrdersHistoryTotal()-1; i>=0; i--)

    {

    if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))

    {

    if (OrderSymbol()==Symbol() && Magic==OrderMagicNumber() && tip == OrderType())

    {

    if (OrderProfit()>0)

    {

    if (n==0) lot = NormalizeDouble(OrderLots()+OrderLots()/100*P,2);

    n++;

    if (n>N) break;

    }

    else

    {

    if (n==0) lot=Lot;

    break;

    }

    }

    }

    }

    if (n>N && lot>Lot) lot=Lot;



    if (tip==0) if (OrderSend(Symbol(),OP_BUY ,lot,NormalizeDouble(Ask,Digits),slippage,

    NormalizeDouble(Ask - Stoploss*Point,Digits),

    NormalizeDouble(Ask + Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)

    Print("Error");

    if (tip==1) if (OrderSend(Symbol(),OP_SELL,lot,NormalizeDouble(Bi d,Digits),slippage,

    NormalizeDouble(Bid + Stoploss*Point,Digits),

    NormalizeDouble(Bid - Takeprofit*Point,Digits),NULL,Magic,clrNONE)==-1)

    Print("Error");

    }

    //-----------------------------------------------------------------


    1. Нужно чтобы после убыточной лот сбрасывался на минимально допустимый в ДЦ. Т.е 0.01 инста лотов. А когда прибыль, то обратно вернулся к базовому лоту и продолжил использовать формулу для подсчёта лота.

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

    3. Чтобы функция после прибыли включалась, лишь при просадке депозита. Когда Текущее знач.депозита ниже Макс.значения депозита.

    Frog.mq4


  • Линк #4781 Свернуть пост
    Специалист
    Ангел
     
    Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Alekcey авторитетный пользователь Аватар для Alekcey
    Регистрация:
    31.05.2011
    Пол:
    Мужчина
    Сообщений:
    5,095
    Деньги за посты:
    70059 RUB (Подробнее)
    Поставил лайков:
    1,696
    Получено лайков:  1,583
    в 1,045 сообщениях
    31%
    Цитата Сообщение от Alekcey Посмотреть сообщение
    1. Нужно чтобы после убыточной лот сбрасывался на минимально допустимый в ДЦ. Т.е 0.01 инста лотов. А когда прибыль, то обратно вернулся к базовому лоту и продолжил использовать формулу для подсчёта лота.
    Хотя бы это сделать, для начала. Я уже перепробывал , но ни выходит с лотами. ) - я не кодер, поэтому методом " тыка" могу лишь пробывать.


  • post_thanks Получено лайков: 2

    Незарегистрированный (2 пользователя)

  • Линк #4782 Свернуть пост
    Знающий
    Сама доброта
     
    Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Sergio Vision авторитетный пользователь Аватар для Sergio Vision
    Регистрация:
    23.11.2012
    Пол:
    Мужчина
    Сообщений:
    4,820
    Деньги за посты:
    133565 RUB (Подробнее)
    Поставил лайков:
    1,223
    Получено лайков:  2,056
    в 1,165 сообщениях
    43%
    Всем доброго вечера! Помогите пожалуйста исправить ошибки в коде, их две. 1) unbalanced parentheses, т.е. несбалансированные скобки, никак не могу понять где, может кто опытный поймет и 2)unexpected end of program, переводчик говорит, что неожиданный конец программы. Может кто может исправить. Я еще зеленый в этом, не могу его добить, чтобы скомпилировался нормально.
    dolivator_Sergio.mq4

    Не пытайтесь исправить прошлое. Лучше приложите все усилия, чтобы не испортить будущее. 😊 мой дневничек (вновь открыто)

  • post_thanks Получено лайков: 1

    Незарегистрированный (1 пользователь)

  • Линк #4783 Свернуть пост
    Специалист
    ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация ir0407 отличная репутация Аватар для ir0407
    Регистрация:
    02.12.2010
    Сообщений:
    6,973
    Деньги за посты:
    155746 RUB (Подробнее)
    Поставил(а) лайков:
    906
    Получено лайков:  7,116
    в 3,382 сообщениях
    102%
    Цитата Сообщение от Sergio Vision Посмотреть сообщение
    Помогите пожалуйста исправить ошибки в коде...
    Пробуйте...
    paperclip Вложения


  • post_thanks Получено лайков: 2

    Alekcey (19.10.2019), Sergio Vision (19.10.2019)