Ошибки, баги, вопросы - страница 375

 
Interesting:

А что тут думать то? К этой относятся ПЕРЕВОРОТ и ОБРЕЗКА. Что касается ПЕРЕВОРОТА то тут проще, по логике неттинга в МТ5 это закрытие позиции по профиту или стопу с последующим открытием противоположной позиции на разницу объемов.

Что касается МТ4 то там обычно переворот реализуется через лок.

Нет, Вы не поняли. Я имел ввиду копировать обратные сделки. Т.е. на МТ5 советник покупает, а на МТ4 копируется продажа.

А стратегия расчитана не на разворот, а на простое взятие TP. Просто, как мне кажется, если держать до открытия позиции в другую сторону получается лучше... лучше сливать.

 
Dimmish:

Нет, Вы не поняли. Я имел ввиду копировать обратные сделки. Т.е. на МТ5 советник покупает, а на МТ4 копируется продажа.

А стратегия расчитана не на разворот, а на простое взятие TP. Просто, как мне кажется, если держать до открытия позиции в другую сторону получается лучше... лучше сливать.

1.

В принципе наверно можно и это реализовать, из МТ4 в МТ4 же копируют.

Но и МТ4 при таком раскладе должен жить по законам МТ5 (хотя не обязан конечно).

2.

Переворот в МТ5 (из-за особенностей неттинга) уж настолько непростое дело что стоит подумать над тем чтобы постоянно им пользоваться.

Порой лучше в БУ поставить и повторно войти ниже/выше...

 

проблемы с сайтом?


 
Interesting:

1.

В принципе наверно можно и это реализовать, из МТ4 в МТ4 же копируют.

Но и МТ4 при таком раскладе должен жить по законам МТ5 (хотя не обязан конечно).

2.

Переворот в МТ5 (из-за особенностей неттинга) уж настолько непростое дело что стоит подумать над тем чтобы постоянно им пользоваться.

Порой лучше в БУ поставить и повторно войти ниже/выше...

1. Здесь копирование из МТ5 в МТ4 https://www.mql5.com/ru/articles/189. Завтра попробую поковырять, вдруг получится задуманное.

2. Ну надо подумать как лучше сделать. Может повторно зайти, может еще что-нибудь.

AlexSTAL:

проблемы с сайтом?



Какие проблемы? 

Копирование торговли из MetaTrader 5 в MetaTrader 4
Копирование торговли из MetaTrader 5 в MetaTrader 4
  • 2010.10.29
  • Nikolay Demko
  • www.mql5.com
Можно ли в MetaTrader 5 торговать на реале уже сегодня? Как организовать такую торговлю? Приводится теория этих вопросов и рабочие коды, при помощи которых реализуется копирование сделок из терминала MetaTrader 5 в MetaTrader 4. Статья будет полезна как разработчикам советников, так и практикующим трейдерам.
 
Dimmish 2011.04.25 10:35 2011.04.25 10:35:06 2011.04.25 10:35| 213.138.86.27

Доброе время суток. Я сгенерировал советник с помощью mql5. К работе претензий нет. Только никак не могу понять, как изменить его чтобы вместо покупки была продажа и наоборот. Совсем немного знаком с mql4, а с mql5 еще хуже.

Подскажите если не затруднит.

Господа, не нужно "править" класс. Нужно наследоваться.

Как-то так:

//+------------------------------------------------------------------+
//| Global expert object                                             |
//+------------------------------------------------------------------+
class CMyExpert : public CExpert
  {
protected:
   //--- trade open positions processing
   virtual bool      OpenLong(double price,double sl,double tp)   { price=0.0; sl=0.0; tp=0.0; return(CExpert::OpenShort(price,sl,tp)); }
   virtual bool      OpenShort(double price,double sl,double tp)  { price=0.0; sl=0.0; tp=0.0; return(CExpert::OpenLong(price,sl,tp));  }
  };
CMyExpert ExtExpert;

price=0.0;   // по текущей цене

sl=0.0;        // без стопа

tp=0.0;        // без тейка

 
uncleVic:

Господа, не нужно "править" класс. Нужно наследоваться.

Как-то так:

price=0.0;   // по текущей цене

sl=0.0;        // без стопа

tp=0.0;        // без тейка


Спасибо. Сделки переворачивает. Только продажу не осуществляет. Покупка есть, а продажи нет.

 

Покапался в sl и tp. Если писать:

virtual bool      OpenLong(double price,double sl,double tp)   { price=0.0; sl=0.0; tp=0.0; return(CExpert::OpenShort(price,sl,tp)); }
virtual bool      OpenShort(double price,double sl,double tp)  { price=0.0; sl=100.0; tp=0.0; return(CExpert::OpenLong(price,sl,tp));  }

 То советник только продает. А если как Вы написали и так:

virtual bool      OpenLong(double price,double sl,double tp)   { price=0.0; sl=100.0; tp=0.0; return(CExpert::OpenShort(price,sl,tp)); }
virtual bool      OpenShort(double price,double sl,double tp)  { price=0.0; sl=0.0; tp=0.0; return(CExpert::OpenLong(price,sl,tp));  }

То он только покупает.

Если Global expert object вставить в советник построенный на МА, то все хорошо переворачивается, сделки открываются в обе стороны. 

 
AlexSTAL:

проблемы с сайтом?

Еще вчера заметил что счетчик сбросило, сегодня уж хотел отписать в виде заявки...
 
Dimmish:

Спасибо. Сделки переворачивает. Только продажу не осуществляет. Покупка есть, а продажи нет.

 

Покапался в sl и tp. Если писать:

 То советник только продает. А если как Вы написали и так:

То он только покупает.

Если Global expert object вставить в советник построенный на МА, то все хорошо переворачивается, сделки открываются в обе стороны. 

sl не количество пунктов.

double stop_level=100.0;  // уровень стопа в 4-хзнаковых пунктах
//--- для покупки
sl=m_symbol.NormalizePrice(m_symbol.Ask()-stop_level*m_adjusted_point);
//--- для продажи
sl=m_symbol.NormalizePrice(m_symbol.Bid()+stop_level*m_adjusted_point);
 
uncleVic:

sl не количество пунктов.

Ну я его менял просто, ради интереса. 

Если вводить через double stop_level=100.0; , то открывается и на продажу и на покупку. Но, если открыта позиция на покупку, то продать он не может. Он может только купить, закрыть предыдущую покупку и купить еще раз. А продать может только тогда, когда позиция на покупку закрыта по SL. Та же ситуация и с покупкой после продажи.

 

Dimmish:

Если вводить через double stop_level=100.0; , то открывается и на продажу и на покупку. Но, если открыта позиция на покупку, то продать он не может. Он может только купить, закрыть предыдущую покупку и купить еще раз. А продать может только тогда, когда позиция на покупку закрыта по SL. Та же ситуация и с покупкой после продажи.

Неттинг рулит, посему и намекнул что на проверке при помощи МТ4 заморачиваться не стоит.
Причина обращения: