MM+stoploss

 
Доброго времени суток всем! Подскажите кодом. Нужна функция, которая будет по типу ММ расчитывать уровень стопа в зависимости от депо.
 
berezhnuy:
Доброго времени суток всем! Подскажите кодом. Нужна функция, которая будет по типу ММ расчитывать уровень стопа в зависимости от депо.
Гораздо эффективнее считать размер лота, а не стопа. Размеры стопов зависят от волатильности, а не от ММ.
 
berezhnuy:
Доброго времени суток всем! Подскажите кодом. Нужна функция, которая будет по типу ММ расчитывать уровень стопа в зависимости от депо.

Согласен с Юрием.  Стоп в зависимости от депо - это глупость.

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

 

//считаем гребаный лот
  double GetLot1(double Risk, int SL){
double Free =AccountFreeMargin();
double LotVal =MarketInfo(Symbol(),MODE_TICKVALUE);
double Min_Lot =MarketInfo(Symbol(),MODE_MINLOT);
double Max_Lot =MarketInfo(Symbol(),MODE_MAXLOT);
double Step =MarketInfo(Symbol(),MODE_LOTSTEP);
double Lot =MathFloor((Free*Risk/100)/(SL*LotVal)/Step)*Step;
if(Lot<Min_Lot) Lot=Min_Lot;
if(Lot>Max_Lot) Lot=Max_Lot; 
return(Lot);}
 
Спасибо!
 
berezhnuy:
Спасибо!

Незачто. Простите, поправил функцию.  Там у меня для теста мин.  лот стоял -1 для удобства оценки МО при риск =0. Сейчас нормально.

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

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