Is the advisor suitable for real life? - page 2

 
Well, finally. Money management is a very important component. No less important than the Expert Advisor itself which can trade in profit with a constant lot. And for some reason everyone either multiplies the lot size depending on the deposit size or uses martingale. This article has finally demonstrated the influence of the money management module on profitable trading - not the volume of the deposit, not the martingale, but the money management.

I always use money management in my EAs. In my case, the implementation of the module is much more complex, it controls the risks and prevents the Expert Advisor from losing money without interfering with its earnings. That is, if something goes wrong, I am not worried - the Expert Advisor simply will not earn, but it will not lose money either. Usually it always earns - money management and risk management in any situation pulls the Expert Advisor by the ears :)
 
DC2008 >>:

Тема действительно обладает большим потенциалом и заслуживает особого исследования. Правда..., в ней не всё так однозначно и очевидно.


Только это, всё же, не фильтрация, а скорее - синхронизация функции изменения ММ с кривой баланса или что-то в этом роде. При фильтрации количество сделок сокращается, а здесь оно постоянно.


The number of trades is constant, but only when filtering decreases the number of trades with a lot and increases - with a lot of 0.01. I.e. trading is going on, but not really.
 
zxc >>:
Ну, наконец-то. Управление капиталом очень важная составляющая. Ничуть не менее важная, чем сам эксперт который может торговать в прибыль постоянным лотом. И почему-то все либо умножают лот в зависимости от размера депозита, либо применяют мартингейл. Наконец-то показали, насколько влияет на прибыльную торговлю реализация в советнике модуля управления капиталом - не размер лота от депозита, не мартингейл, а именно управление капиталом.

В своих экспертах обязательно применяю управление капиталом. У меня реализовано по другому, модуль намного сложней, следит за рисками, практически не позволяет советнику слить и при этом не мешает советнику зарабатывать. Т.е. в случае если что-то пойдет не так, я не переживаю - советник просто не заработает, но и не сольет. Обычно всегда зарабатывает - управление капиталом и рисками при любой ситуации вытягивает советника за уши :)


Yes, I am also looking in that direction. I've been reading a book about extra dimension in trading.
It's amazing how much this module is capable of turning G into candy. If an EA has periods when it makes any profit, then this theme can greatly improve its performance. Of course, if it's just losing at the rate of spread, then there's nothing to be done about it.
 
There is little experience of such experiments. Yes, one should take an EA that keeps the balance around zero, but with large swings. I tried to build a different position size control (rather geometric depending on drawdown); it didn't come out very nicely. I can't find my research right now.
It is possible, by the way, to combine the original EA and inverted in the direction of all positions.
The function is interesting, I will see what I can do with it.
 
Dserg >>:


Да, я тоже смотрю в этом направлении. Книжку вот читал, про дополнительное измерение в торговле.
Удивительно, насколько этот модуль способен сделать из Г. конфетку. Если в советнике есть периоды, когда он хоть сколько-нибудь зарабатывает, то эта тема способна сильно улучшить его показатели. Конечно, если просто сливает со скоростью спреда, тут уж ничего не поделаешь.

An interesting development!

A light in this realm. Maybe the developers will jointly make something worthwhile on money management, the idea is the main thing, there is even a function ready).

 
Can you explain in more detail how to use this function? The code has variables external to it, as I understand it. For example curF, LastB, array Bal[]
 
Dezil >>:
А можно подробнее как этой функцией пользоваться? В коде есть переменные внешние по отношению к ней как я понимаю. Например curF, LastB, массив Bal[]


First we declare the variables:
static double curF,LastB,LastdB;
static string strB;
static double Bal[100];
extern int F=100;
extern int Nfast = 10;
extern int Nslow = 50;
extern bool useF = true;
Then we add to the init() function:
    curF=F;
    LastB=0;
    LastdB=0; 
    ArrayInitialize(Bal,0);
Then add to the start() function:
   if (useF) {
      curF=getF();
   } else {
      curF=F;
   }
And finally, when calculating the lot, add:
Lots1 = NormalizeDouble(Lots*curF,2);
????????
PROFIT!!!
 
Dear Dserg!
I express my gratitude to you for something truly new! At least for me personally, the idea is groundbreaking.
 
and the idea is new to me. Thank you. I will try to add my spark of group consciousness (2 cents). How does this filter affect trading systems posted by brokerage companies together with the terminal? Will we get five reliable/stable trading systems at once (the same Williams, and other supplied)? I think so.
 
I've been using a similar balance control system for quite some time, but it's a bit more complicated... Here's an example of how it works:

Initial curve
Reason: