Критерий автоматического отбора результатов оптимизации. - страница 6

 
Figar0 >>:

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

Надо покрутить в голове.

В целом да. Главное чтоб картина сделок была видна максимально. Даже если фильтр пропускает опасные сделки, необходимо их как-то обозначить и видеть каковы были шансы на срабатывание. Если фильтр отодвигает риски на вероятность срабатывания ближе радиуса действия основного сигнала, то в дальнейшем такой фильтр подставит. И плохо если съедает большую долю прибыльных. Легче открывать все что в ближайшем радиусе сигнала на открытие, и пытаться удержать. Главное четко определить радиус.

 

Если ТС хорошо прибыльная, открываются все возможные сделки и картину портит только просадка, то от этой болезни тоже есть лекарство...

Главное чтоб все сделки были на глазах...

 
Вот, кстати говоря, размышления по теме...
 

Почитаем, почитаем...


Забыл сказать, формула которую я дал применима только с пропорционально растущим лотом.

 
ivandurak >>:
А как же распределение результатов сделок . Львиная доля прибыли может быть и в начале исследуемого периода .

Понравилось. Мы торгуем в астрономическом времени, а не в тиковом. Советник, построенный во времени, пропорциональном номеру сделки, может показывать почти идеальную прямую, хотя будет, мягко говоря, "не очень": половина всей прибыли сделана вначале, на первых 100 сделках и за первый год, а вторая половина - на последних 100, но уже за пять лет (тоже прямая, с тем же наклоном, т.к. примерно таких же результативных сделок - столько же). Будем думать о формализации, о чем-то типа зависимости относительной прибыли системы от самого временного промежутка.

Единого критерия оптимизации, конечно, нет и не может быть. Ну формально такой можно составить из пары десятков разнородных критериев, но какой от него толк?

 
Mathemat >>:


Единого критерия, конечно, нет и не может быть. Ну формально такой можно составить из пары десятков разнородных критериев, но какой от него толк?

Mathemat, можно ли узнать, твое мнение - какой порог следует наложить на параметры: количество сделок, матожидание и прибыльность при, скажем, оптимзации за год перед тем, как озаботиться фильтрацией при помощи интегрального показателя? Я, к примеру, после отметания результатов: сделок < 50; матожидание < 50 и прибыльность < 2 не испытываю пробелемы выбора среди тысячи результатов, т.к. остаются либо случайные залетные, либо кластер, но нынче модно говорить облако. Из облака я для себя позволил автомату выбирать у кого больше Прибыль * Прибыльнось / Просадка в %.

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

 

Vita писал(а) >> Я, к примеру, после отметания результатов: сделок < 50; матожидание < 50 и прибыльность < 2 не испытываю пробелемы выбора среди тысячи результатов, т.к. остаются либо случайные залетные, либо кластер, но нынче модно говорить облако. Из облака я для себя позволил автомату выбирать у кого больше Прибыль * Прибыльность / Просадка в %.

Vita, нормально в принципе. Предотсеивание - по числу сделок, м.о. и PF, а окончательное отсеивание - по вполне приличному интегральному критерию вместе с "облачностью". Т.е. фактически вся процедура предполагает фильтрацию примерно по пяти разным критериям.

Сами цифры предотсеивания (м.о., надеюсь, в старых полноценных пунктах, т.е. на четырехзнаке?) вполне логичны. Я бы, наверно, увеличил минимальное количество сделок (скажем, до 200), чтобы увеличить статдостоверность результатов.

 

Вот кстати, занятная статейка. Теория про регрессию понравилась, стоит внедрить...

Прибыль * Прибыльность / Просадка в %. это хорошо, но чтоб период тестирования не влиял на показатель прибыль лучше заменить процентом прибыли в день (для лота, растущего пропорционально балансу), или показателем прибыли в день (для фиксированного лота). Если кто не умеет вычислять процент в день, то подскажу формулу:

Pr - процент в день/со сделки

Days_Sdelki - кол-во дней или сделок (в зависимости от цели просчета, процент со сделки, или процент в день)

Bal_begin - баланс на начало периода

Bal_end - баланс на конец периода

Pr=(MathExp(((1/Days_Sdelki)*(MathLog(Bal_end/Bal_begin))))-1)*100;

 

или вот сразу функция


double Procent(double Days_Sdelki,double Bal_begin,double Bal_end)
{
if(Days_Sdelki>1 && Bal_begin!=0) return((MathExp(((1/Days_Sdelki)*(MathLog(Bal_end/Bal_begin))))-1)*100);
else return(0);
}

 

Внес одну полезную переменную и проверяю новый вариант моей формулы:


PipBar - пипс/бары (сумма пунктов по всем сделкам, деленная на сумму использованных баров при этом)

PF - прибыльность (Profit Factor)

SdDay - кол-во сделок в день

ProcDay - процент прибыли в день (сложная формула с логарифмами)

MD - Максимальная просадка

SrD - Средняя просадка (сумма просадок каждого ордера деленная на кол-во ордеров)


if(PF>3) Vigoda=2*SdDay+(PipBar/10)+(10*(ProcDay/((MD+SrD)/10)));
else Vigoda=(PF-1)*SdDay+(PipBar/10)+(10*(ProcDay/((MD+SrD)/10)));


пока тестовый вариант, но показатели уже радуют...