Результаты опроса:

Голосовавшие
0. Вы ещё не голосовали в этом опросе
  • 0 0%
Форум трейдеров » Торговые роботы, советники, индикаторы » Автотрейдинг. Вопросы новичков
+ Подписаться
Страница 27 из 33 ПерваяПервая ... 172526272829 ... ПоследняяПоследняя
  1. 34
    Комментарии
    0
    Темы
    34
    Репутация Pro
     
    Новичок

    2 Медалей
    Подскажите, можно ли изменить прилагаемые к платформе MT4 советники (например MACD SAMPLE)? ТО есть ввести в программу еще один ин икатор
    и изменить условия открытия и закрытия одеров. Как отеагирует на это процесс компиляции если изменения будут корректны? Или вмешательство в эти программы запрещено и нужно писать отдельную программу?
    Если кто знает наверняка ответьте пожалуйста. А то имею печальный опыт,-
    скачал бесплатный советник и попытался его изменить,-при компеляции дает кучу ошибок, даже int start ему не нравится, хотя не измененный работает.
    Правда со стабильным убытком невзирая ни на какие настройки.
  2. 405
    Комментарии
    2
    Темы
    411
    Репутация Pro
     
    Member

    2 Медалей
    Цитата Сообщение от gals Посмотреть сообщение
    Подскажите, можно ли изменить прилагаемые к платформе MT4 советники (например MACD SAMPLE)? ТО есть ввести в программу еще один ин икатор
    и изменить условия открытия и закрытия одеров. Как отеагирует на это процесс компиляции если изменения будут корректны? Или вмешательство в эти программы запрещено и нужно писать отдельную программу?
    Если кто знает наверняка ответьте пожалуйста. А то имею печальный опыт,-
    скачал бесплатный советник и попытался его изменить,-при компеляции дает кучу ошибок, даже int start ему не нравится, хотя не измененный работает.
    Правда со стабильным убытком невзирая ни на какие настройки.
    Вносить корректные изменения можно, но если компилятор на них ругался, значит они таковыми не были.
  3. 107
    Комментарии
    0
    Темы
    107
    Репутация Pro
    Аватар для religare777  
    В начале пути

    2 Медалей
    Подскажите, как поправить функцию удаления ордеров, не относящихся к открытой валютной паре. Причина ее неработоспособности, скорее всего, в том, что Ask и Bid определяются по текущей валютной паре, а не удаляемой.

    PHP код:
    void DelCloseAllOrderSymbol()
    {
        for (
    int i=1i<=OrdersTotal(); i++)       
         {                                        
          if(
    OrderSelect(i-1,SELECT_BY_POS)==true)
            {                                     
             if(
    OrderSymbol()!=Symbol() && OrderType()<=2)
                  {
                   Print(
    "Закрытие и удаление всех ордеров, не принадлежащие этой валютной паре...");
                   if(
    OrderType()==OP_SELLOrderClose(OrderTicket(),OrderLots(),Ask,Slippage); else
                   if(
    OrderType()==OP_BUYOrderClose(OrderTicket(),OrderLots(),Bid,Slippage); else
                   
    OrderDelete(OrderTicket());
                  }
            }
         }   

    Заранее благодарю!
  4. 177
    Комментарии
    8
    Темы
    159
    Репутация Pro
    Аватар для cmillion  
    В начале пути

    3 Медалей
    Цитата Сообщение от religare777 Посмотреть сообщение
    Подскажите, как поправить функцию удаления ордеров, не относящихся к открытой валютной паре. Причина ее неработоспособности, скорее всего, в том, что Ask и Bid определяются по текущей валютной паре, а не удаляемой.

    PHP код:
    void DelCloseAllOrderSymbol()
    {
        for (
    int i=1i<=OrdersTotal(); i++)       
         {                                        
          if(
    OrderSelect(i-1,SELECT_BY_POS)==true)
            {                                     
             if(
    OrderSymbol()!=Symbol() && OrderType()<=2)
                  {
                   Print(
    "Закрытие и удаление всех ордеров, не принадлежащие этой валютной паре...");
                   if(
    OrderType()==OP_SELLOrderClose(OrderTicket(),OrderLots(),Ask,Slippage); else
                   if(
    OrderType()==OP_BUYOrderClose(OrderTicket(),OrderLots(),Bid,Slippage); else
                   
    OrderDelete(OrderTicket());
                  }
            }
         }   

    Заранее благодарю!
    Ask замените на MarketInfo(OrderSymbol(),MODE_ASK);
    Bid на MarketInfo(OrderSymbol(),MODE_BID);
  5. 107
    Комментарии
    0
    Темы
    107
    Репутация Pro
    Аватар для religare777  
    В начале пути

    2 Медалей
    Цитата Сообщение от cmillion Посмотреть сообщение
    Ask замените на MarketInfo(OrderSymbol(),MODE_ASK);
    Bid на MarketInfo(OrderSymbol(),MODE_BID);
    Супер! Заработало! Спасибо!!!
  6. 405
    Комментарии
    2
    Темы
    411
    Репутация Pro
     
    Member

    2 Медалей
    Цитата Сообщение от religare777 Посмотреть сообщение
    Нашел частично решение проблемы.
    Заменил ArraySort(htm);
    на if(htm[j][0]!=0 && htm[j][1]!=0) ArraySort(htm);
    После этого ошибка сортировки не повторяется.
    Вы на правильном пути, умение понимать mql код даст вам больше, чем все советчики на форуме вместе взятые. Уверен, решение второго вопроса вы сможете найти самостоятельно.
  7. 34
    Комментарии
    0
    Темы
    34
    Репутация Pro
     
    Новичок

    2 Медалей
    Подскажите как ограничить количество открываемых ордеров, например пятью
    и как их отличать в советнике при модификации и закрытии?
  8. 405
    Комментарии
    2
    Темы
    411
    Репутация Pro
     
    Member

    2 Медалей
    Цитата Сообщение от gals Посмотреть сообщение
    Подскажите как ограничить количество открываемых ордеров, например пятью
    и как их отличать в советнике при модификации и закрытии?
    if(OrdersTotal()>5) return; если я правильно понял.

    Ордера можно метить с помощью magic номера, подробнее
    http://articles.mql4.com/ru/105
  9. 34
    Комментарии
    0
    Темы
    34
    Репутация Pro
     
    Новичок

    2 Медалей
    Спасибо, понял. Еще умотало количество модификаций, на 5-ти минутках,например, на 6-7 ордеров 200-300 модификаций. нигде не могу найти как ограничить без ущерба работы эксперта. Сейчас тестируется стабильно прибыльно, опасаюсь запороть. Если есть такой способ, подскажите.
  10. 405
    Комментарии
    2
    Темы
    411
    Репутация Pro
     
    Member

    2 Медалей
    Цитата Сообщение от gals Посмотреть сообщение
    Спасибо, понял. Еще умотало количество модификаций, на 5-ти минутках,например, на 6-7 ордеров 200-300 модификаций. нигде не могу найти как ограничить без ущерба работы эксперта. Сейчас тестируется стабильно прибыльно, опасаюсь запороть. Если есть такой способ, подскажите.
    Похоже, на каждом тике вызывается OrderModify(). Это нехорошо, за это банят. Максимум 5000 обращений к серверу в сутки разрешено. Не зная алгоритма сложно что-то умное сказать, но попробуйте модифицировать ордер только если изменение параметра значительное, скажем, стоплосс передвигается на несколько спредов.
    С наступающим!

Вверх
РегистрацияX

чтобы писать, читать, комментировать