Я думаю, что эту задачу не решить без установления границ - минимальное значение может быть в каждом столбце 0, а максимальное, допустим 50. Однако, в идеале максимум должен быть разным для каждого столбца, но для упрощения пусть будет 50.
Правильным ли будет такое уравнение в грубой форме (A*50+B*50+C*50+D*50+E*50+F*50)*0=1 ? При этом A-F должны иметь между собой зависимость для нивелирования вложенного веса.
k=1/(1+(A+B*50^1+C*50^2....)*x);
x - подобрать по вкусу
раз уж речь зашла о сравнениях и коэфф, напомните метод взвешивания попарных экспертных оценок.
На примере таблицы из топика: делается квадратная таблица A-F/A-F и отдаётся человеку-эксперту, который в ячейках ставит баллы -5..5 указывающие значимость/приоритет/влияние одного параметра перед другим, причём эксперт может не полностью заполнять таблицу и допускать логические нестыковки.
Из воспоминаний, что итоговые коэфф. относительно просто считались, некоторая обработка каждой матрицы и дальше сложение/перемножение матриц.
k=1/(1+(A+B*50^1+C*50^2....)*x);
x - подобрать по вкусу
Спасибо, Дмитрий!
Получилась такая таблица
№ П.П. | Итого: | A | B | C | D | E | F | К | Дельта |
---|---|---|---|---|---|---|---|---|---|
1 | 50 | 50 | 0 | 0 | 0 | 0 | 0 | 1,00000 | 0,00000 |
2 | 50 | 0 | 50 | 0 | 0 | 0 | 0 | 0,99975 | 0,00024 |
3 | 50 | 0 | 0 | 50 | 0 | 0 | 0 | 0,98765 | 0,01210 |
4 | 50 | 0 | 0 | 0 | 50 | 0 | 0 | 0,61538 | 0,37227 |
5 | 50 | 0 | 0 | 0 | 0 | 50 | 0 | 0,03101 | 0,58438 |
6 | 50 | 0 | 0 | 0 | 0 | 0 | 50 | 0,00064 | 0,03037 |
X | Итого: | 50 | 50 | 50 | 50 | 50 | 50 |
Формула такая =1/(1+(D20+E20*СТЕПЕНЬ(50;1)+F20*СТЕПЕНЬ(50;2)+G20*СТЕПЕНЬ(50;3)+H20*СТЕПЕНЬ(50;4)+I20*СТЕПЕНЬ(50;5))*0,0000001)
Как видите, при А=50 получили 1, что не хорошо. Ещё минус в том, что очень неплавная дельта получилось - можно на неё как то влиять?
На таблице ниже дельты изменились, при равномерном изменение значений - разве это нормально?
№ П.П. | Итого: | A | B | C | D | E | F | К | Дельта |
---|---|---|---|---|---|---|---|---|---|
1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 1,00000 | 0,00000 |
2 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 1,00000 | 0,00000 |
3 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | 0,99975 | 0,00024 |
4 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0,98765 | 0,01210 |
5 | 1 | 0 | 0 | 0 | 0 | 1 | 0 | 0,61538 | 0,37227 |
6 | 1 | 0 | 0 | 0 | 0 | 0 | 1 | 0,03101 | 0,58438 |
X | Итого: | 1 | 1 | 1 | 1 | 1 | 1 |
раз уж речь зашла о сравнениях и коэфф, напомните метод взвешивания попарных экспертных оценок.
Как же сильно я не понимал при обучении, что анализ, как наука, мне будет очень нужна в будущем...
На примере таблицы из топика: делается квадратная таблица A-F/A-F и отдаётся человеку-эксперту, который в ячейках ставит баллы -5..5 указывающие значимость/приоритет/влияние одного параметра перед другим, причём эксперт может не полностью заполнять таблицу и допускать логические нестыковки.
Из воспоминаний, что итоговые коэфф. относительно просто считались, некоторая обработка каждой матрицы и дальше сложение/перемножение матриц.
Так, осатлось найти такого эксперта... :) Как то можно этот метод автоматизировать? Тут я уже затронул подобную проблему https://www.mql5.com/ru/forum/171677
Собственно, я бьюсь над решением задачи поставленной сдесь https://www.mql5.com/ru/forum/168963 - уже неделю кручу разные показатели результатов тестированию - пытаюсь выработать и обосновать алгоритм нахождения оптимальных настроек из сета.
По идеи должна быть такая зависимость для плавности
A=B*x
B=C*x
при этом x>1 - как это создать?
Собственно, я бьюсь над решением задачи поставленной сдесь https://www.mql5.com/ru/forum/168963 - уже неделю кручу разные показатели результатов тестированию - пытаюсь выработать и обосновать алгоритм нахождения оптимальных настроек из сета.
А смысл её так решать? Добавление к открытой позиции (и усреднение в том числе) имеет смысл только тогда, когда сигнал по которому осуществляется дополнительный вход имеет потенциал больший, чем предыдущие. Т.е. каждый этот вход нужно оценить отдельно и каждый должен обладать статистическим преимуществом (положительное МО, ПФ и т.д.).
Если сделка добавления позиции не несёт стат.преимущества, то смысл её открывать? Такая сделка не усреднит, а только ухудшит результат. Это как с любой диверсификацией - вы же не будете включать в портфель заведомо убыточную стратегию, чтобы она "усреднила" итоговый результат?
А смысл её так решать? Добавление к открытой позиции (и усреднение в том числе) имеет смысл только тогда, когда сигнал по которому осуществляется дополнительный вход имеет потенциал больший, чем предыдущие. Т.е. каждый этот вход нужно оценить отдельно и каждый должен обладать статистическим преимуществом (положительное МО, ПФ и т.д.).
Если сделка добавления позиции не несёт стат.преимущества, то смысл её открывать? Такая сделка не усреднит, а только ухудшит результат. Это как с любой диверсификацией - вы же не будете включать в портфель заведомо убыточную стратегию, чтобы она "усреднила" итоговый результат?
Так Вы правы - "усреднение" всегда имеет больший потенциал - тренды заканчиваются, а значит чем больше прошло времени с начала тренда, тем ближе его конец - больше вероятность этого события - больше потенциал.
Ну и, про ту глобальную задачу, лучше уж в той ветке писать - а тут подумать над решением конкретной прикладной задачи - по возможности.
...
1. Как видите, при А=50 получили 1, что не хорошо.
2. Ещё минус в том, что очень неплавная дельта получилось - можно на неё как то влиять?
3. На таблице ниже дельты изменились, при равномерном изменение значений - разве это нормально?
Собственные мозги подключайте-то немного, а то царевна Несмеяна какая-та. А мы тут все щах выстроились и сценки танцуем.
1. Сами посмотрите на формулу и увидьте, что она не может в этом случае равняться 1. Или ошибка в формуле, или ошиьа в коде, или какое-то недопонимание и что-то не то с округлением.
2. Хоть бы читали до конца то, что вам тут было написано. "x - подобрать по вкусу"
3. Вы свой вчерашний день не помните? Кто писал про разный вес разных колонок?
Еще результат можно пропустить через какую-нибудь функцию типа нейрона. Еще можно понять смысл того, как создается такая функция...
Собственные мозги подключайте-то немного, а то царевна Несмеяна какая-та. А мы тут все щах выстроились и сценки танцуем.
1. Сами посмотрите на формулу и увидьте, что она не может в этом случае равняться 1. Или ошибка в формуле, или ошиьа в коде, или какое-то недопонимание и что-то не то с округлением.
2. Хоть бы читали до конца то, что вам тут было написано. "x - подобрать по вкусу"
3. Вы свой вчерашний день не помните? Кто писал про разный вес разных колонок?
Еще результат можно пропустить через какую-нибудь функцию типа нейрона. Еще можно понять смысл того, как создается такая функция...
Странно, что в этом посте не объявили меня скудоумным - видимо все ещё впереди...
1. О, Вы, конечно, правы, - дело в коэффициенте - значение действительно разное в строках 1 и 2.
2. Конечно, я прочел, и воспользовался рецептурой, но оказался неприлично глуп - или не внимателен - от того и не верно оценил результат.
3. Конечно, я помню вчерашний день - почему ж нет? Разный вес - это хорошо - правильно, я разве против этого возражаю - нет, я лишь говорю, что такая формула дает очень сильное дифференцирование и задаюсь вопросом, как его сделать более плавным.
Дмитрий, я думал о такой функции, но через деление... ещё раз спасибо, что уделили внимание проблеме.

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Прошу помощи в реализации такой задачи - есть числа, представлены в таблице ниже, каждая строка должна давать коэффициент, с таким условием, если значения все равны нулю, то коэффициент 1, при этом значения в столбцах влияют на коэффициент таким образом - чем больше значений, тем хуже, но при этом влияние от столбика A к столбику F нарастает, таким образом, что наличие хоть одного значения в F делает коэффициент самым плохим (маленьким) по отношению к остальным коэффициентам, в котором F равно нулю, соответственно, если F=2 , то такой коэффициент самый плохой.
Никак не могу понять, как это сделать, желательно так, что б вычисление производилось только внутри строки, так как изначально данные об остальных строках не известны.
В данной таблицы лучшим будет второй вариант.