[Архив]учитесь зарабатывать селяне![Архив] - страница 690

 
OnGoing:
Да, верно. Дело не в мартышках. Просто нужно считать все просады самому, если нужен достоверный результат.

Что-то засомневался, что в тестере неправильно максимальная просадка меряется. Набросал код, проверил: результаты совпали с тестером.

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

double MaxDrawDown;
int deinit() {
 Print("MaxDrawDown=",MaxDrawDown);
   return (0);
} 

start(){ 
  static double MaxEquity;
  static double MinEquity;
         double DrawDown;
  static bool flag;
 
  if(!flag)
    {
     MaxEquity=AccountEquity();
     MinEquity=AccountEquity();
     flag = true;
    } 
  if(AccountEquity()>MaxEquity) 
    {MaxEquity=AccountEquity();MinEquity=AccountEquity();}
  
  if(AccountEquity()<MinEquity) 
    {MinEquity=AccountEquity();}
  
  DrawDown=MaxEquity-MinEquity;
  
  if(DrawDown>MaxDrawDown ) 
    {MaxDrawDown=DrawDown;}
// ............остальной код советника
 
khorosh:

Что-то засомневался, что в тестере неправильно максимальная просадка меряется. Набросал код, проверил: результаты совпали с тестером.

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

Дак Вы неправильно считаете) Причем тут мин. эквити и максимальное. Нужно сравнивать эквити с балансом, это и будет настоящая просадка, которая нас интересует.

А Вы видимо посчитали так, как это делает тестер, потому и совпал результат.

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

 
OnGoing:

Дак Вы неправильно считаете) Причем тут мин. эквити и максимальное. Нужно сравнивать эквити с балансом, это и будет настоящая просадка, которая нас интересует.

А Вы видимо посчитали так, как это делает тестер, потому и совпал результат.

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

Расчет по эквити считаю правильным, забудьте про баланс - он нам не нужен. А флаг это не принципиально.
 
khorosh:
Расчет по эквити считаю правильным, забудьте про баланс - он нам не нужен. А флаг это не принципиально.
Ну тогда и будете дальше называть слухами то, что у людей реально в терминале происходит при демо-тесте) И обольщаться ложными результатами. Дело ваше.
 
OnGoing:
Ну тогда и будете дальше называть слухами то, что у людей реально в терминале происходит при демо-тесте) И обольщаться ложными результатами. Дело ваше.
Эквити это деньги, а баланс это ничто. Вы можете снять баланс со счёта?-нет. Снять можете только эквити.
 
khorosh:
Эквити это деньги, а баланс это ничто. Вы можете снять баланс со счёта?-нет. Снять можете только эквити.
Это все красивые слова. Даже тестер считает многие показатели по балансу. Те же максимальную и относительную просадку. Только делает это не так как хотелось бы.
 

Когда Вы начинаете серию, то стартуете и рассчитываете лот именно от баланса. Т.е. эквити в это время равно балансу.

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

 
Предположим максимум эквити возвышался над балансом, а потом кривая эквити пошла вниз и опустилась ниже баланса. Вы что будете просадку от баланса мерять, а не от максимума эквити?
 
khorosh:
Предположим максимум эквити возвышался над балансом, а потом кривая эквити пошла вниз и опустилась ниже баланса. Вы что будете просадку от баланса мерять, а не от максимума эквити?
То что возвышалось надо было фиксить. А пока не зафиксировали, это бумажная прибыль и ее фактически нет. Потому и считать от нее нет особой пользы.
 
vladds:

я понимаю ваши страсти, а как на счёт этого? ты хотел посмотреть!
Ага, щас гляну.
Причина обращения: