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

 
Vladislav Andruschenko:

помогло такое решение 

Если прочитать справку внимательнее, то увидите, что не обрабатывается случай, когда доступны оба режима - значение SymbolInfoInteger будет (SYMBOL_FILLING_FOK | SYMBOL_FILLING_IOC).
 

А проверить можно на сервере "RoboForex-MetaTrader 5" вот таким кодом:

//+------------------------------------------------------------------+
//|                                                 Info_FILLING.mq5 |
//|                        Copyright 2015, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2015, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property strict
#property description "Варианты исполнения ордера по объему"
#include<Trade\Trade.mqh>
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
// Все/Ничего     SYMBOL_FILLING_FOK   1
// Все/Частично   SYMBOL_FILLING_IOC   2
// Вернуть        Идентификатор отсутствует
   Print("Все/Ничего: ",IsFillingTypeAllowed(Symbol(),SYMBOL_FILLING_FOK));
   Print("Все/Частично: ",IsFillingTypeAllowed(Symbol(),SYMBOL_FILLING_IOC));
   Print("Вернуть: ",IsFillingTypeAllowed(Symbol(),NULL));

   CTrade oTrade;
   switch((int)SymbolInfoInteger(Symbol(),SYMBOL_FILLING_MODE))
     {
      case SYMBOL_FILLING_FOK:
         Print("ORDER_FILLING_FOK");
         break;
      case SYMBOL_FILLING_IOC:
         Print("ORDER_FILLING_IOC");
         break;
      default:
         Print("ORDER_FILLING_RETURN");
     }
  }
//+------------------------------------------------------------------+ 
//| проверяет разрешенность указанного режима заполнения             | 
//+------------------------------------------------------------------+ 
bool IsFillingTypeAllowed(string symbol,int fill_type)
  {
//--- получим значение свойства, описывающего режим заполнения 
   int filling=(int)SymbolInfoInteger(symbol,SYMBOL_FILLING_MODE);
//--- вернем true, если режим fill_type разрешен 
   return((filling&fill_type)==fill_type);
  }
//+------------------------------------------------------------------+

И результат распринтовки:

2015.12.22 18:13:09.946 Info_FILLING (AUDCAD.m,D1)      Все/Ничего: true
2015.12.22 18:13:09.946 Info_FILLING (AUDCAD.m,D1)      Все/Частично: true
2015.12.22 18:13:09.946 Info_FILLING (AUDCAD.m,D1)      Вернуть: true
2015.12.22 18:13:09.946 Info_FILLING (AUDCAD.m,D1)      ORDER_FILLING_RETURN


Видно, что вариант со switch сообщает нам неправду. А вот пример из документации даёт полную картину.

 

Что за траблы с 

MarketInfo(Symbol(),MODE_MARGININIT) и SymbolInfoDouble(Symbol(),SYMBOL_MARGIN_INITIAL)

Почему они возвращают нули ????? 

 
Vladimir Pastushak:

Что за траблы с 

MarketInfo(Symbol(),MODE_MARGININIT) и SymbolInfoDouble(Symbol(),SYMBOL_MARGIN_INITIAL)

Почему они возвращают нули ????? 

Пол года висит заявка в сервис деск по проблеме расчета залоговых средств, информация в справке не совпадает с информацией на сайте информация в справке и на сайте не совпадает с реальной, разработчики пожалуйста сделайте правильное описание

Расчет залоговых средств

Ошибки, MetaTrader 5 MQL5, Открыта, Начата: 2015.07.13 16:23, #1259415 

 

Вот пример из справки MQL5 : 

SYMBOL_CALC_MODE_FOREX

Forex mode – расчет прибыли и маржи для Форекс

Margin:  Lots*Contract_Size/Leverage

Это  формула расчета прямой котировки, для обратной будет по другому а для кросса по третьему. На сайте такая же ошибка. 

и так какой тип рынка не возьми везде формулы весьма сомнительные.. 

А сегодня выяснилось что MarketInfo(Symbol(),MODE_MARGININIT) и SymbolInfoDouble(Symbol(),SYMBOL_MARGIN_INITIAL)   возвращают нули. 

А вот на этом ресурсе то же странные сочинения, https://metaquotes5.wordpress.com/2012/08/  насколько я понимаю это блог MetaQuotes.

What are Expert Magic Numbers?
  • 2012.08.11
  • skebanga
  • metaquotes5.wordpress.com
Expert magic numbers are ids given to a particular expert advisor. Care should be taken to ensure the ids are unique. This is because the magic number is used by the MetaTrader back end to know which expert advisor to send information to. For example, when a trade notification is...
 
Кругом враги. Мы никому не нужны, кроме наших женщин в день зарплаты. 
 
Алексей Тарабанов:
Кругом враги. Мы никому не нужны, кроме наших женщин в день зарплаты. 

Алексей приветствую 

Если можешь переписать индикатор  iPulsar на МТ5 ,перепиши пожалуйста  - да в кода базу 

Спасибо  


 

Здравствуйте коллеги!

Прошу прощения, намусорил на главной, пока эту ветку не увидел. 

Подскажите как решить проблему: советник МТ5 на ФОРТСе при установке ордера BAY_STOP или SELL_STOP постоянно выдает ошибку 10022: "Неверная дата истечения ордера в запросе".

Дата истечения мне не важна, но не могу подобрать параметры, при которых ордер просто установится. На форексе такой проблемы не возникает. Брокер ОТКРЫТИЕ. Ошибка возникает в тестере. 


[Удален]  
Nikita Solodko:

Здравствуйте коллеги!

Прошу прощения, намусорил на главной, пока эту ветку не увидел. 

Подскажите как решить проблему: советник МТ5 на ФОРТСе при установке ордера BAY_STOP или SELL_STOP постоянно выдает ошибку 10022: "Неверная дата истечения ордера в запросе".

Дата истечения мне не важна, но не могу подобрать параметры, при которых ордер просто установится. На форексе такой проблемы не возникает. Брокер ОТКРЫТИЕ. Ошибка возникает в тестере. 


Допустимы флаги ORDER_TIME_DAY ( ORDER_TIME_SPECIFIED_DAY, вроде, тоже ). А вообще, можете проверить. Для этого есть спец. функции. И пользуйтесь поиском. Тема не раз обсуждалась.
 
Vladimir Pastushak:

Что за траблы с 

MarketInfo(Symbol(),MODE_MARGININIT) и SymbolInfoDouble(Symbol(),SYMBOL_MARGIN_INITIAL)

Почему они возвращают нули ????? 

Они работают для фьючерсов, где это штатные параметры.
[Удален]  
Aliaksandr Kryvanos:

В отчёте тестера и вкладки "результаты" в тестере билд 940 не совпадают цены



https://c.mql5.com/3/84/er002.png

https://c.mql5.com/3/84/er1.png


Сегодня заметил в Результатах Тестера стратегий Цена = 1.2 и SL = 1

6    2006.02.03 00:00    s/l    1    0.01    1.2   1   0.00000    0.52    10000.52