Отправлено 25 September 2012 - 20:15
Здравствуйте, Василий. Помогите доработать советник exp unlimited for fx genaral forum with ind v2.mq4. Надо сделать функцию расчета лотов по проценту риска и наличию свободных средств. Далее, надо предусмотреть возможность уменьшения объема ордера после первой отрицательной сделке в 2 раза. Если сделка снова отрицательная, снова уменьшение в 2 раза. Уменьшать лоты можно только до минимального лота по терминалу и не более. Если сделка положительная, то следующая сделка открывается по расчетному нормальному лоту. Пример расчета лота можно взять этот вариант (я не программист, поэтому за правильнось программы не ручаюсь, я взял ее из своего советника 2008 года, который по моему проекту написал знакомый программист):
double LOT (string CSymbol, double risk, int ord=1)
//CSymbol - имя текущего финансового инструмента
//risk - процент риска
//ord - во сколько раз уменьшить количество лотов (например, количество неудачных попыток)
{
if (Lots!=0) return(Lots);
double MINLOT = MarketInfo(CSymbol,MODE_MINLOT);
double LOT = AccountFreeMargin()*risk/100/MarketInfo(CSymbol,MODE_MARGINREQUIRED)/ord;
if (LOT>MarketInfo(CSymbol,MODE_MAXLOT)) LOT = MarketInfo(CSymbol,MODE_MAXLOT);
if (LOT>Lotmax) LOT = Lotmax;
if (LOT<MINLOT) LOT = MINLOT;
if (MINLOT<0.1) LOT = NormalizeDouble(LOT,2); else LOT = NormalizeDouble(LOT,1);
return(LOT);
}
Функция должна включаться в советнике при Lot=0, параметр risk измеряется в процентах (%). При риске 20% и депозите 1500$ на паре EURUSD лот должен быть около 0.21-0.22лота. Это возможно, Please.