Советники: MA Trend

 

MA Trend:

Торговая система по индикатору iMA (Moving Average, MA).

MA Trend

Автор: Vladimir Karputov

 

Здравствуйте Владимир.

А можно добавить в этот советник кнопки только Бай и только Селл.

Спасибо.

 
Shara1:

Здравствуйте Владимир.

А можно добавить в этот советник кнопки только Бай и только Селл.

Спасибо.

Конечно Вы можете изменять код по своему усмотрению и добавлять любые элементы управления на базе класса создания панелей диалога CDialog

 
Vladimir Karputov:

Конечно Вы можете изменять код по своему усмотрению и добавлять любые элементы управления на базе класса создания панелей диалога CDialog

Спасибо. Для меня это темный лес. Я в программировании полный ноль.

 
Shara1:

Здравствуйте Владимир.

А можно добавить в этот советник кнопки только Бай и только Селл.

Спасибо.

Ловите вторую версию MA Trend 2:

... добавлен параметр ограничения торговли Type traiding:

  • Only BUY - разрешено открывать только BUY
  • Only SELL - разрешено открывать только SELL
  • BUY and SELL - разрешено открывать и BUY и SELL

...

 

С наступающим Новым Годом.Не подскажете,подойдёт ли данный советник под Forts.Интересуют настройки под 1 лот и тд.

 
Константин:

С наступающим Новым Годом.Не подскажете,подойдёт ли данный советник под Forts.Интересуют настройки под 1 лот и тд.

Кто такой "Forts"? Forex знаю, Биржа - знаю, Forts - такого зверя не знаю :)

 
Icarus :


Спасибо, что поделились, я нахожу вашу кодировку элегантной.

Однако советник показывает некоторые раздражающие ошибки. Когда я тестирую советник на годовом периоде, он работает только в январе и в определенные дни недели, в паре EURUSD. Я не менял ваш код.

Извините, я не понял вашу мысль.

 

привет

Спасибо, что поделились .... Мне нужно кодировать самому, есть ли какие-нибудь рекомендации или книги, которые я могу прочитать, или учебные материалы?

Спасибо еще раз.

 
themasterx7 :

*** Мне нужно закодировать себя, какие-нибудь рекомендации или книги, которые я могу прочитать, или учебные материалы?***

Я вас не понимаю.

 
Здравствуйте Владимир Карпутов, мне нравится ваш вклад в сообщество, но есть одна вещь, которую я подозреваю, что есть ошибка в одной из ваших функций, которую вы используете довольно часто: OpenBuy,

в разделе ниже: где m_trade.ResultDeal()!=0, что означает возврат тикета сделки, что означает завершение ордера, почему вы до сих пор используете условие
.
   if(m_trade.ResultRetcode()==10009)
     {
      m_waiting_transaction=true; // "true" -> торговать запрещено, мы ожидаем транзакцию
      m_waiting_order_ticket=m_trade.ResultOrder();// текущий порядок обработки
     }
Разве мы не должны строго установить m_waiting_transaction = false?

____________________________________________________________________________________ Ниже приведена часть кода


   if(m_trade.Buy(long_lot,m_symbol.Name(),m_symbol.Ask(),sl,tp))
      // CTrade::Buy -> "true"
      //если открытый ордер на покупку успешно размещен
     {
      if(m_trade.ResultDeal()==0)//если ни одна закрытая сделка не возвращается - позиция еще не открыта
        {
         if(m_trade.ResultRetcode()==10009) // торговый ордер поступил на биржу | Запрос выполнен
           {
            m_waiting_transaction=true; // "true" -> торговать запрещено, мы ожидаем транзакцию
            m_waiting_order_ticket=m_trade.ResultOrder();//запись текущего заказа на обработку для подтверждения
           }
         else
            m_waiting_transaction=false;// новая торговля разрешена
         if(InpPrintLog)
            Print("#1 Buy -> false. Result Retcode: ",m_trade.ResultRetcode(),
                  ", description of result: ",m_trade.ResultRetcodeDescription());
         if(InpPrintLog)
            PrintResultTrade(m_trade,m_symbol);
        }
      else
        {
         if(m_trade.ResultRetcode()==10009)
           {
            m_waiting_transaction=true; // "true" -> торговать запрещено, мы ожидаем транзакцию
            m_waiting_order_ticket=m_trade.ResultOrder();// текущий порядок обработки
           }
         else
            m_waiting_transaction=false;// новая торговля разрешена
         if(InpPrintLog)
            Print("#2 Buy -> true. Result Retcode: ",m_trade.ResultRetcode(),
                  ", description of result: ",m_trade.ResultRetcodeDescription());
         if(InpPrintLog)
            PrintResultTrade(m_trade,m_symbol);
        }
     }
Documentation on MQL5: Constants, Enumerations and Structures / Trade Constants / Trade Operation Types
Documentation on MQL5: Constants, Enumerations and Structures / Trade Constants / Trade Operation Types
  • www.mql5.com
Trading is done by sending orders to open positions using the OrderSend() function, as well as to place, modify or delete pending orders. Each trade order refers to the type of the requested operation. Trading operations are described in the ENUM_TRADE_REQUEST_ACTIONS enumeration...