Блог им. Shara
MC, Multi-Condition Group – управление множественным условиями
MC группа выходит за рамки простой логической И / ИЛИ комбинации правил. Определив MC группу, вы можете указать, что все или только подмножество (одно или более) условий в группе должны быть истинны во время Lookback периода (периода исторического тестирования стратегии).
MC дает возможность для Strategy Builder объединить установки и переключатели для нескольких условий, если не требуется, чтобы они происходили одновременно.
MC — размещение группы множественных условий
сфера действия MC — до: 1) последующего OR разделителя, 2) следующего входа / выхода, или, 3) конца списка условий.
MC связывается по правилу AND с предшествующем ему условием. Однако, если сразу перед MC стоит OR разделитель, MC связывается по правилу OR с предшествующем ему условием. MC, не имеющая условий, игнорируется.
Спасибо.
Все, что идет после MC до 1) OR Divider, 2) следующего Entry/Exit, 3) конца списка условий, принадлежит MC-группе.
Для MC-группы вы можете выставить от 1 до N условий для того, чтобы вся MC-группа приняла значение True
Например
Синяя СС пересекает толстую
MC
Стохастик
в зоне перепроданности
курлы мурлы больше 30
выргх снижается
OR Divider
Для MC-группы Required conditions = 2
В этом случае сигнал появится при условии, что
1) Синяя СС пересекла толстую
ИЛИ
2) Выполняются любые ДВА И БОЛЬШЕ условия из набора [«Стохастик в зоне перепроданности», «курлы мурлы больше 30», «выргх снижается»,]
ИЛИ
3) Мне было видение"
Ну замените курлы мурлы и выргх на любые понятные Вам условия, смысл останется прежним.
Еще раз попробую. MC-группа позволяет объединить несколько условий и указать, сколько из них должны выполниться одновременно для того, чтобы вся группа приняла значение «Истина»
То есть MC-группа из трех условий и required conditions = 2 равнозначна записи ( (1 и 2) или (1 и 3) или (2 и 3) или (1 и 2 и 3) ) и ощутимо короче.
MC-группа по умолчанию связывается «AND» с предыдущим элементом. Если Вам надо, чтобы она была связана «OR» — используйте OR Divider
При чем тут программирование?
Дать Пете в рожу, если
1) Петя вчера бухал
2) Петя хватал Машу за жопу
3) Петя сломал стол
Но дать ему в рожу только в случае, если он совершил не менее двух косяков, за один не бить
В велсе это будет
MC (required conditions = 2, задается справа снизу, когда Вы бросите MC в правое окно при добавлении)
Петя вчера бухал
Петя хватал Машу за жопу
Петя сломал стол
В этом случае Петя получит в рожу, если
1) Он бухал и хватал Машу за жопу
2) Он бухал и сломал стол
3) Он хватал Машу за жопу и сломал стол
4) Все вышеперечилсленное
Петя не получит в рожу, если
1) Он только бухал, но не хватал Машу и не ломал стол
2) Он только хватал Машу, но был трезв и не ломал стол
3) Он только сломал стол, но не приставал к Маше и не бухал
Если и тут непонятно, я сдаюсь, извините.
2) Петя хватал Машу за жопу
3) Петя сломал стол
Но дать ему в рожу только в случае, если он совершил не менее двух косяков, за один не бить
В велсе это будет-
Вы бы просто на примере кубиков объяснили бы, и я бы давно все понял. Просто я закончил школу 38 лет назад. Про формальную логику тогда не учили, а если и учили, то я все забыл.
Еще раз спасибо.
Вы с легкостью можете это проверить самостоятельно, просто создав две стратегии (одна с MC, вторая без них) и сравнив результат.
Вообще, если Вы перестанете кивать на свой возраст, «непрограммизм» и прочее, бояться или лениться банально попытаться подумать и разобраться — дела у Вас резко пойдут в гору, я уверен.