Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 735

 
Доброе время суток:

Вопросы по истории (в help не нашел некоторых вещей):

Я ставил ставку на продажу:

1. что такое «buy» при окончании ставки, я же ставил продажу?

2. 0.99946 – это установка take profit я так полагаю?

3. и почему «out» 0.99934 отличается от take profit 0.99946? или это разница равна спреду?

4. «market» - это ручная установка/снятие ордеров?

 

Заранее спасибо за ответ.

 

 

Имеется вот такая функция и работает в советнике/скрипте

double cLot(double Percent, string symbol, ENUM_ORDER_TYPE action=ORDER_TYPE_BUY)
  {
   double One_Lot=0.0;
   double price=0.0;
   double volume=0.0;
   double MinLot=SymbolInfoDouble(symbol,SYMBOL_VOLUME_MIN);
   double Free=AccountInfoDouble(ACCOUNT_FREEMARGIN);
   double Step=SymbolInfoDouble(symbol,SYMBOL_VOLUME_STEP);
   if(action==ORDER_TYPE_BUY)price=SymbolInfoDouble(symbol,SYMBOL_ASK);
   if(action==ORDER_TYPE_SELL)price=SymbolInfoDouble(symbol,SYMBOL_BID);
   if(!OrderCalcMargin(action,symbol,1.0,price,One_Lot))return(MinLot);
   if(One_Lot!=0 && Step!=0)volume = MathFloor(Free*Percent/100.0/One_Lot/Step)*Step;
   if(volume!=0)return(volume);
   return(MinLot);
  }

Вопрос: как получить максимально возможный лот в индикатореOrderCalcMargin почему-то не работает в индикаторе?  В мт4 прекрасно работает "MarketInfo(symbol,MODE_MARGINREQUIRED)", в мт5 её нет, зато есть есть какой-то огрызок OrderCalcMargin который не работает в индикаторе

Спасибо!

 
Vitaly Muzichenko:

Имеется вот такая функция и работает в советнике/скрипте

double cLot(double Percent, string symbol, ENUM_ORDER_TYPE action=ORDER_TYPE_BUY)
  {
   double One_Lot=0.0;
   double price=0.0;
   double volume=0.0;
   double MinLot=SymbolInfoDouble(symbol,SYMBOL_VOLUME_MIN);
   double Free=AccountInfoDouble(ACCOUNT_FREEMARGIN);
   double Step=SymbolInfoDouble(symbol,SYMBOL_VOLUME_STEP);
   if(action==ORDER_TYPE_BUY)price=SymbolInfoDouble(symbol,SYMBOL_ASK);
   if(action==ORDER_TYPE_SELL)price=SymbolInfoDouble(symbol,SYMBOL_BID);
   if(!OrderCalcMargin(action,symbol,1.0,price,One_Lot))return(MinLot);
   if(One_Lot!=0 && Step!=0)volume = MathFloor(Free*Percent/100.0/One_Lot/Step)*Step;
   if(volume!=0)return(volume);
   return(MinLot);
  }

Вопрос: как получить максимально возможный лот в индикатореOrderCalcMargin почему-то не работает в индикаторе?  В мт4 прекрасно работает "MarketInfo(symbol,MODE_MARGINREQUIRED)", в мт5 её нет, зато есть есть какой-то огрызок OrderCalcMargin который не работает в индикаторе

Спасибо!

 

посмотрите в сторону SYMBOL_MARGIN_INITIAL , когда то тоже бился с этим вопросом. 

не помню решил или нет. - можно получить для одного лота. ну а потом уже проверять для нужного.

Есть еще маржа для хеджа.  

 
Vladislav Andruschenko:

посмотрите в сторону SYMBOL_MARGIN_INITIAL , когда то тоже бился с этим вопросом. 

не помню решил или нет. - можно получить для одного лота. ну а потом уже проверять для нужного.

Есть еще маржа для хеджа.  

SymbolInfoDouble(Symbol(),SYMBOL_MARGIN_INITIALДаёт размер ровно "0.0". Думаете Я не пробовал)
 
TraSer:

Здравствуйте!

Торгую на платформе MT5 с брокером Just2Trade.

При прогоне робота в режиме "OHLC на M1" на акциях "Газпром" получаю хорошие результаты. Почти при всех наборах параметров - прибыль. Лучший прогон - прибыль более 25% при просадке порядка 5%.

Включаю режим "каждый тик на основе реальных тиков". Сразу половина результатов убыточна. Лучший результат - прибыль менее 10%.

С чем это может быть связано? Может комиссия во втором случае берётся, а в первом - нет?

Кстати, вход в сделку и выход из сделки у меня по первому тику минуты. 

Есть какие-нибудь мысли у кого-нибудь?
 
TraSer:
Есть какие-нибудь мысли у кого-нибудь?
А Вы запустите тестер в режиме визуализации и посмотрите на свои сделки - может у Вас стратегия - пипсовка или ещё какая сильная зависимость от котировок.
 
TraSer:
Есть какие-нибудь мысли у кого-нибудь?
Асков во всех режимах, кроме реальных тиков, нет.
 

Есть ли способ через MQL узнать содержимое каталога с целью пакетной обработки файлов в нём?

 
-Aleks-:

Есть ли способ через MQL узнать содержимое каталога с целью пакетной обработки файлов в нём?

Чистый MQL: в подпапке MQL5\Files (или каталог_агента_тестирования\MQL5\Files в случае тестирования). Если среди флагов указан FILE_COMMON, то в общей папке всех клиентских терминалов \Terminal\Common\Files.

MQL + WinAPI (поиск в любой папке):

 
Vladimir Karputov:

Чистый MQL: в подпапке MQL5\Files (или каталог_агента_тестирования\MQL5\Files в случае тестирования). Если среди флагов указан FILE_COMMON, то в общей папке всех клиентских терминалов \Terminal\Common\Files.

MQL + WinAPI (поиск в любой папке):

Спасибо.

Причина обращения: