График эквити и баланса - страница 26

 
FOXXXi писал(а) >>

Очень оперативно.Всё работает,благодарю!Только я не понял как индикатор RF считает,и с ММ непонятно,ведь позиция у нас как бы одна,как пересчёт идёт?Поделил значение прибыли от начального баланса до максимальной точки эквити(и от нач.баланса до текущего эквити) на максимальную просадку,с RF индикатора не сходится.

RF = Текущее эквити / Максимальная просадка. Эта формула используется в индикаторе.

RF = (Текущее эквити - Начальный баланс) / Максимальная просадка. Вы считаете по этой.

Какая из них верная?

Позиций может быть несколько по разным инструментам и открытых в разное время. При включенном ММ лот будет расчитываться от текущего эквити. Не совсем верно, т.к. нет учёта свободных средств. Для одной позиции расчёт лота ведётся от начального баланса.

 
Xupypr >>:

RF = Текущее эквити / Максимальная просадка. Эта формула используется в индикаторе.

RF = (Текущее эквити - Начальный баланс) / Максимальная просадка. Вы считаете по этой.

Какая из них верная?

Позиций может быть несколько по разным инструментам и открытых в разное время. При включенном ММ лот будет расчитываться от текущего эквити. Не совсем верно, т.к. нет учёта свободных средств. Для одной позиции расчёт лота ведётся от начального баланса.

Теперь понятно почему RF в индикаторе получается большой.Правильная формула: RF = (Текущее эквити - Начальный баланс) / Максимальная просадка.

Я имел в виду одну мультипозицию с разными лотами открытую в одно время.

 

Исправлю и обновлю в Code Base.

В таком случае при включенном ММ лоты пересчитываются как часть от начального баланса.

Функция ММ в индикаторе опытная и к ней нужно относиться осторожно.

 
Xupypr >>:

Функция ММ в индикаторе опытная и к ней нужно относиться осторожно.

так она корректно сейчас работает или..?

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

а, ну это я помню.. учитываю сей момент :)

просто подумал грешным делом, что вообще какие-то проблемки с функцией этой..

 

Есть вопрос по формуле расчета эквити, используемой в индикаторе и скриптах. В оригинале используются цены Open (в версии v7 - Close), т.е. так:

     if (Type[j]==OP_BUY) profitloss+=Commission[j]+CurSwap[j]+(iClose(Instrument[j],0,bar)-OpenPrice[j])*Lots[j]*lotsize;
     else
     {
      spread=MarketInfo(Instrument[j],MODE_POINT)*MarketInfo(Instrument[j],MODE_SPREAD);
      profitloss+=Commission[j]+CurSwap[j]+(OpenPrice[j]-iClose(Instrument[j],0,bar)-spread)*Lots[j]*lotsize;
     }

При таком алгоритме выяснено (путем тестирования, т.е. сопоставления показателей), что величина эквити индикатора не совпадает с тем, что дает тестер МТ4. Если же заменить цены на High (для покупки) и Low (для продажи), показатели отлично сходятся. Код для примера:

         if(Type[j]==OP_BUY)
         {
           profitloss += Commission[j] + Swap[j] + (iHigh(Instrument[j],0,bar) - OpenPrice[j]) * LotsArray[j] * lotsize;
         }
         else
         {
           spread = MarketInfo(Instrument[j],MODE_POINT) * MarketInfo(Instrument[j],MODE_SPREAD);
           profitloss += Commission[j] + Swap[j] + (OpenPrice[j] - iLow(Instrument[j],0,bar) - spread) * LotsArray[j] * lotsize;
         }
Судя по тому, что такой алгоритм использует тестер МТ4, можно полагать, что аналогично будет считать просадку и сервер. Отсюда вопрос - не имеет ли смысл подкорректировать индикатор и скрипты?
 

Если Вам так больше нравиться - подкорректируйте.

Может тестер и использует такой алгоритм, но он не является мультивалютным. Поэтому такой расчёт будет справедлив только для одного инструмента (без локов).

Использование цен закрытия даёт хоть какую-то синхронизацию между инструментами. Что не скажешь про High и Low.

 
Не догоняю, чем Open и Close лучше в плане синхронизации разных инструментов. Если уж на то пошло, как раз экстремумы больше могут претендовать на ориентиры для синхронизации, нежели искуственно вводимые Open/Close, получившиеся в результате нарезки потока цен по барам.
 

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