Replikant_mih
Replikant_mih личный блог
05 апреля 2019, 16:39

Инъекция ООП в стратегию. Повышаем уровень абстракции в стратегиях.

Немного порассуждаю про уровень абстракции в стратегиях и про ООП как инструмент для этого.

 

Да, чтобы войти на пересечении скользящих и выйти по трейлингу на основе параболика ООП нафиг не нужен. Но я мыслю более реальными, «физическими» категориям. В смысле более живыми. Импульс, консолидация, да тот же тренд. Да, теоретически я могу использовать стандартные индикаторы, но у меня всегда индикатор – всего лишь отражение какого-то физического процесса. Но об этом я частенько упоминал, сейчас не совсем об этом.

 

Когда ты дата-майнишь, рисечишь идеи для стратегий тебе позарез нужно конкурентное преимущество. Перебирать и комбинировать сигналы разных индикаторов – это давно не работает. Конкурентные преимущества бывают разные: преимущества могут быть у бога математики или физики, у бога статистики и аналогичных наук, преимущества могут быть у лютых технарей, которые могут покорить космические скорости вычислений и исполнения.

Сейчас попробую выделить ещё один вид преимущества, ну или вернее ниша, в которой, как мне кажется, пасется не так много народу. Я говорю про нишу высокоуровневых абстракций.

Что я имею в виду, зачем это надо, при чем здесь ООП.

Когда ты оперируешь «живыми» понятиями, сущностями, явлениями, ты можешь повышать уровень абстракции (прямо сейчас вот я подумал, что на самом деле высокий уровень абстракции можно использовать и отдельно от «физических» понятий, но не суть), выше и выше. Реальные закономерности могут быть разного уровня, порядка, затрагивать более или мене глубокие явления и процессы, быть более или мене высокоуровневыми. Когда ты копаешься на низких уровнях абстракции ты можешь намайнить только закономерности простых уровней. Если ты повышаешь уровень абстракции, теоретически тебе открывается пространства закономерностей более высоких порядков. Возможно, не все так красиво как звучит потому что диапазон разнообразия по идее должен расти с повышением уровней абстракции, а следовательно находить закономерности должно быть сложнее, хотя с другой стороны аргументом в пользу легкости будет меньшая конкуренция.

Немного расшифрую что подразумеваю под высоким уровнем абстракции (надо было в начале статьи, конечно, это сделать)) ). Допустим импульс – понятие «физического» мира. Импульс часто возникает в результате пробоя локальной консолидации, пробои бывают ложные. Консолидацией иногда заканчиваются коррекции трендовых движений, и импульс может быть началом возобновления трендового движения. Предположим, перед реальным возобновлением идет раздергивание, ложные пробои. Возможно ложные пробои часто выстраиваются в определенные формации, паттерны перед истинным возобновлением тренда. Можно дальше накручивать всю эту конструкцию, развивать и т.д., но понятно, что чем дальше тем сложнее углубляться в это (не теряя в вопросе диапазона возможностей на каждом уровне абстракции) если ты не работаешь с этими сущностями грамотно. В данном случае грамотно позволяет работать ООП. Красивое выстраивание конструкций нужной сложности, нужного порядка, не теряя контроля над элементами любого уровня. На таких уровнях намного интересней, из-за диапазона возможностей всегда есть направления для рисеча, всегда есть что проверить, куда копнуть.

 

Когда кто-то говорит, что что-то «не работает» в трейдинге, так и хочется сказать: серьезно? – ты прям проверил весь огромнейший диапазон дойдя до высочайших уровней абстракции и ничего не нашел. Уровни не работают. – Серьезно? Каналы не работают – Серьезно? Фигуры не работают – Уверен?

Красивой конструкции Громко заявить – Красиво доказать, конечно, не получилось, было желание скорее громко заявить нежели красиво доказать, доказательством поэтому сильно не заморачивался, сорри :).

25 Комментариев
  • sortarray sortarray
    05 апреля 2019, 16:52
    потому что диапазон разнообразия по идее должен расти с повышением уровней абстракции,

    С чего бы это? Под «высоким уровнем абстракции» понимается обобщение. Общих понятий больше чем частных, тем более конкретных по вашему?
      • sortarray sortarray
        05 апреля 2019, 17:03
        Replikant_mih, на мой взгляд очевидно неверная трактовка, даже с тз «канонического».
        То что Вы заявляете — это уровни сложности, а не уровни абстракции.

        «абстракция» — понятие не совсем удачное, оно порождает путаницу.

        В общем случае, это означает «умозрительное».

        К сожалению, в обиходе, это не всегда означает обобщение, хотя в большинстве случаев это так.

        То что в CS понимается под этим, означает именно обобщение, например тип, класс, множество.

        Я бы предложил тут понятие «универсалия» вместо «абстракция»
          • sortarray sortarray
            05 апреля 2019, 17:09
            Replikant_mih, «сложность» не надо усложнять. Да, в языке оно сейчас размыто, но возвращаясь к корням, сложное — это составное, противоположное атомарному.
              • sortarray sortarray
                05 апреля 2019, 17:19
                Replikant_mih, а идея в чем? В том что нужно конструировать из более простых блоков более сложные? Поддерживаю:) С этим вообще никто не поспорит.
                Это понятие близкое к декомпозиции. Если задача сложная, ее нужно разбивать на подзадачи
                  • sortarray sortarray
                    05 апреля 2019, 17:30
                    Replikant_mih, только я хочу заметить, что надо плясать от задачи. До бесконечности разбивать сложное на более простое тоже не нужно.
                    Без фанатизма.

                    Если нас не интересует внутреннее устройство автомобиля, а интересует только его технические характеристики, не нужно собирать его из частей каждый раз, достаточно порождать автомобили целиком, и декларировать их характеристики. К примеру
                      • sortarray sortarray
                        05 апреля 2019, 17:46
                        Replikant_mih, тут нет общего закона. Это противостоит принципу «абстрагирования от деталей», черному ящику.

                        Оба подхода одинаково полезны в различных ситуациях. Например, иногда нужно просто набросать прототип, и тогда детали излишни.
                        Все зависит от модели, короче говоря.
                        Для водителя важней чувствовать ходовые качества, иметь нужный ему «интерфейс» управления. Хороший автослесарь не становится автоматически хорошим гонщиком.
      • sortarray sortarray
        05 апреля 2019, 17:16
        Replikant_mih, у меня напрашивается именно «уровень сложности», и «уровень обобщенности».

        К примеру, здание состоит из кирпичей. Но кирпич не является подтипом здания.
        Уровень сложности здания выше чем кирпича, но мы имеем дело с разными типами, одного уровня обобщенности, назовем их «здания», где подтипами будет «жилое здание», «административное здание», «культовое сооружение» и «строительный материал», где подтипами будут «кирпич», «доска», «брус», «пеноблок».

        Да, эти 2 понятия часто путают даже «опытные», к сожалению
  • Дмитрий Ш
    05 апреля 2019, 17:08
    Вот лучше бы расшифровал ООП. Организация освобождения Палестины?
    Ну, тогда-да, при чём она тут?..
    • sortarray sortarray
      05 апреля 2019, 17:10
      Дмитрий Ш, объектно-ориентированное программирование.
      Расшифровывать не надо, потому что любой разработчик это знает, а статья для разработчиков.
      • Дмитрий Ш
        05 апреля 2019, 17:12
        sortarray sortarray, Да сразу понял Я тут так… в стороннке, тИхонько))
  • Friendly Deep Space
    05 апреля 2019, 17:59
    Такой абстракционизьм просто обязан заканчиваться картинкой с усладой для глаз, с красивыми зелеными холмиками прибыли на графике, гиде они?
  • Константин
    06 апреля 2019, 05:24
    автор, если вы программист, то зачем изобретаете свой собственный велосипед, в ООП же уже созданы общепринятые патерны проектирования, начните с абстрактной модели, создайте интерфейсы и далее уже более конкретизируя свою задачу, тот же MVC вам в помощь
      • Константин
        08 апреля 2019, 01:01
        Replikant_mih, я тоже не программист, но программирую ))

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн