Скачать MetaTrader 5

Маржа в тестере не учитывается?

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Делай скриншоты в MetaTrader и управляй ими в галерее!
Vladislav Andruschenko
91973
Vladislav Andruschenko 2014.10.17 11:02 

Приветствую, есть простенький советник, открывающий корзину валют. 

В тестере - вся корзина может открыться без проблем, с задаваемым лотом,

Но если поставить теже значения на тот же счет, с тем же плечем на реал или демо - то сделки не открываются так как недостаточно маржи, что делать?

 

 

Т.е. в тестере все сделки - тестер пропускает нормально и открывает.

На реале же - те сделки для которой не хватает маржи - пропускает, так как собственно нет маржи :-)  

Vladislav Andruschenko
91973
Vladislav Andruschenko 2014.10.17 11:03  

код функции открытия достаточно простая:

void OpenBUY(string symToWork2,int i)
  {
   request.symbol = symToWork2;
   request.volume = GetSizeLot(symToWork2,i);
   request.action=TRADE_ACTION_DEAL; // операция с рынка
   request.type_filling=ORDER_FILLING_FOK; // операция с рынка
   request.tp=0;request.sl=0;

   request.deviation=(ulong)Slippage; // по спреду 
                                      // request.type_filling=ORDER_FILLING_CANCEL;
   request.type=ORDER_TYPE_BUY;
   request.price=SymbolInfoDouble(symToWork2,SYMBOL_ASK);
   double margin=EMPTY_VALUE;

   bool check=OrderCalcMargin(request.type,request.symbol,request.volume,request.price,margin);

   if(margin<AccountInfoDouble(ACCOUNT_FREEMARGIN))OrderSend(request,result);
   if(result.retcode==TRADE_RETCODE_DONE){if(Sounds)PlaySound("ok.wav");} else {if(Sounds)PlaySound("stops.wav");Alert("ERROR OPEN POSITION "+GetLastError()+ErrorDescription(GetLastError()));}
   ResetLastError();
  }
MetaQuotes
Админ
24951
Renat Fatkhullin 2014.10.17 11:18  

А в тестере какой баланс?

Явно не 200, так как видно по объему сделок. Поставьте в тестере тоже 200 и посмотрите.

Торговать в тестере на 10000 депозите, а потом переносить в 200 чревато проблемами с лимитами минимального лота, что легко поднимет маржевые требования.

Vladislav Andruschenko
91973
Vladislav Andruschenko 2014.10.17 11:19  
Renat:

А в тестере какой баланс?

Явно не 200, так как видно по объему сделок. Поставьте в тестере тоже 200 и посмотрите.

Торговать в тестере на 10000 депозите, а потом переносить в 200 чревато проблемами с лимитами минимального лота, что легко поднимет маржевые требования.

согласен. :-) стоит вроде 200 минутку. 

ЗЫ - Это не у меня а у человека с фриланса.  

MetaQuotes
Админ
24951
Renat Fatkhullin 2014.10.17 11:22  
Vladon:

согласен. :-) стоит вроде 200 минутку. 

ЗЫ - Это не у меня а у человека с фриланса.  

Не стоит там 200. Посмотрите на свой скрин - лоты по 7 и 8.

И депозит в тестере никак не 10000, а заведомо больше в разы или десяток раз.

Vladislav Andruschenko
91973
Vladislav Andruschenko 2014.10.17 14:16  

проверил у себя, у меня вроде ок, все работает. Вернее все правильно пишет ошибку, не хватает маржи

 

 

 

MetaQuotes
Админ
24951
Renat Fatkhullin 2014.10.17 14:33  
Vladon:

проверил у себя, у меня вроде ок, все работает. Вернее все правильно пишет ошибку, не хватает маржи

Какого обхема сделка была, что получила отказ?

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

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

Vladislav Andruschenko
91973
Vladislav Andruschenko 2014.10.21 14:33  

:-) то не 360, то 36 и 0 это тип ордера !!!!!
 ПРОШУ ПРОЩЕНИЯ!  

Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий