AlexGood
AlexGood личный блог
22 июля 2021, 15:31

Как защитить свой алгоритм поручая программисту написание робота?

Друзья и коллеги, всем привет!
При поручении программисту написать по своему эффективному алгоритму робота он же узнает принципы входа-выхода, мани-риск менеджмент, количественные параметры! Как защитить свой алгоритм от раскрытия перед программистом?
71 Комментарий
  • Laukar
    22 июля 2021, 15:37
    Конечно узнает! Что вообще серьёзно думаете что изобретете что-то новое?
  • Pringles
    22 июля 2021, 15:38
    ликвидировать программиста 
    • Pringles, это будет профессионально. могу рекомендовать
      или этих



    • Glago
      22 июля 2021, 22:18
      Pringles, а я бы взял для ликвидации вот этого чувака)



    • kongo
      02 августа 2021, 17:14
      Pringles, Всех! И торговать руками! 
  • MadQuant
    22 июля 2021, 15:41
    Ну очевидно как — писать самому, какие ещё варианты?
    Ну разве что ещё сформулировать алгоритм максимально обще, с кучей параметров, задаваемых в конфиге (чтобы даже направление сделки параметризировалось, например), чтобы программист не смог понять в чем вообще логика работы. И потом параметрами уже под себя задать конкретную логику.
    Правда, в этом случае уже у вас может быть проблема, что вы не сможете проверить, что программист написал то что надо.
  • StockChart.ru
    22 июля 2021, 15:42
      Еще могу открыть тайну: ваш грааль интересен исключительно вам самим, что бы его «украли» вам придется еще и доплатить. Ну а если он действительно сможет зарабатывать, то вы сможете платить программистам столько, что им не придет в голову что то у вас перенимать
    • StockChart.ru
      22 июля 2021, 15:51
      Noviy_nik, трейдеры в большинстве неадекваты. Еще раз мне в голову не придет что то воровать у шарамыги с улицы который гоняет свои сраные 200 тыс. А в хэджфонде воровать не стал бы что бы не лишиться места + у них мощная команда юристов 
      • Антон Б
        22 июля 2021, 15:58
        StockChart.ru, человек может гонять сраные 200к
        А при реализации же думаешь.
        И отдельные идеи тестируешь отдельно.
        Даже если их в тз нет.
        И они обойдены.
        Торгуется неэффективность и вполне можно в копилку добавить еще одну неэффективность по результатам выполнения ТЗ.
      • StockChart.ru
        23 июля 2021, 09:18
        Noviy_nik, дело не в том что честный. Конечно если я буду уверен в формуле я буду ее использовать, и это не будет воровство даже
           Дело в том, что к таким как вы изначально относятся как городским сумасшедшим и просто даже нет желания проверять что вы там такое выдали. К тому же проверять надо своими живими деньгами, на истории то все подряд работает. Вы как то неуловимый Джо — не ловят потому что никому не интересен
        • StockChart.ru
          23 июля 2021, 16:34
          Noviy_nik, ну я соглашусь что подрабатывают написанием роботов в основном самые низы профессии так как заработать там что то нерально. В основном там работают те же трейдеры с завода, которые научились что то по быстрому кодить на кровне 8-ми классника. В целом это та каша что варится сама в себе и со взрослым миром взаимодействует слабо.
             Что касается ублюдков — а что проблема отдать свои идеи кому-то даром. Честно, не понимаю… почему бы другим не помочь. Ну тут же на голубом глазу предлагают че-то накодить нахаляву. Все это очень забавно — с одной стороны автор просит сделать ему бесплатно, а с другой ищет как бы его гениальные идеи не сперли. Картинка такого заказчика вырисоывается )))
      • asfa
        25 июля 2021, 13:55
        StockChart.ru, 
        + у них мощная команда юристов 

        вот человек поработал внутри, кое-что узнал, потому ушёл на «вольные хлеба». И что, к нему могут докопаться, он будет раскрывать им свой алгоритм? 
        • StockChart.ru
          25 июля 2021, 16:49
          asfa, там затруднительно будет всю инфраструктуру унести… А на счет кое что узнал, так это норм. В любой профессии что то узнаешь получаешь опыт
    • Антон Б
      22 июля 2021, 15:55
      Noviy_nik, В РФ идеи не подлежат защите.
      Так что идеи к которым программист придет занимаясь написанием кода не защищаются.

      А написать код и при этом не понять его идею.
      Наверно можно так сделать ТЗ.
      Кусками.
      Заменить функции регрессии так средним )
      Или в описании и принятии теста не тот тайм фреймйм задать.


      • Антон Б, если программист дотошный, ему будет интересно, что он создал. И вскроет все эти пустяковые приблуды — ТФ, регрессии…
    • Антон Б
      22 июля 2021, 16:21
      Noviy_nik, Вы нанимаете кодера чтобы он закодил.
      И желательно с опытом.
      Логично?

      А опыт это знания и наработки.
      В разработке роботов БОЛЬШЕ 50% времени это выяснение что-же хотел заказчик и за что он платит.

      Иначе заказчик будет не доволен.
      Результата не будет.

      Это исследовательский проект где вы нанимаете исследователя.
      который к тому же умеет кодить.
      как доп функция.

      другие просто не возьмутся так как тема не их.
  • Владимир Гончаров
    22 июля 2021, 15:44
     задайте задание программисту создать алгоритма компьютерной игры, так зашифровав что он нихрена не поймет что ты хотите те этим торговать.  
    • Eridanoy
      22 июля 2021, 23:29
      Владимир Гончаров, главное потом самому не забыть что и как зашифровал )
  • Игорь Яфаркин
    22 июля 2021, 15:48
    Запрограммировать робота самому. Здесь чужими руками жар загребать не выйдет. Либо забудь про роботов, торгуй руками.
  • StockChart.ru
    22 июля 2021, 15:49
      Хорошо давайте на пальцах объясню. Вот тут куча народа публикует свои прогнозы. И что — они кому то интересны кроме автора?! Так они в открытом доступе и их читают тысячи трейдеров
      А кодер будет реализовывать вашу идею один… да и рынок как таковой ему скорее всего не интересен, иначе кодировал бы для себя

      Другой вопрос что с частными трейдерами адекватный кодер работать не  будет. Меня недавно звали в хэдж фонд на 300 000. Не пошел, потому что надо идти в офис. А шарамыги с улицы вообще часто хотят халявы и считают 20 — 30 тыс в робота пипец инвестицией и выпьют за них всю кровь. Ну нафиг
    • Антон Б
      22 июля 2021, 16:03
      StockChart.ru, в этих прогнозах на 90% ничего нет.
      а ТЗ чтобы реализовать нужно понять о чем оно.
      Хотя-бы для того чтобы оценить трудозатраты.
      И в этот момент ты уже собираешь из кусочков.

      Вот это уже  есть.
      Вот эту функцию я писал.

      А вот это интересный поворот — зачем он в тз, и сколько его кодить.
      Может его вообще не закодить.

      Приходится уже на этапе чтения тз понимать как это будет работать.

      С  нуля то же ничего не пишется.
      Это не возможно.
      Так-как это значит что сфера новая и опыта в нем нет.
      Оценить тз на трудозатраты нельзя.
      Время и цен сказать нельзя.

      Я вот например тз от некоторых людей на этом сайте вообще готов бесплатно сделать ).

      • StockChart.ru
        22 июля 2021, 16:05
        Антон Б, у меня было пару таких заказов. Все эти идеи очень наивны. Я даже мягко пытался намекнуть что это не работает по причинам элементарной математики, но авторы обычно уперты и считают что схватили бога за бороду. Что то с родни городских сумасшедших с идеей вечного двигателя из подручных средств
        • Антон Б
          22 июля 2021, 16:10
          StockChart.ru, у меня работают очень! наивные идеи в реале.
          очень простые.
          e=mc^2 это очень простая формула.
          И регрессия очень простая формула.
          И матица очень простая вещь.
          • StockChart.ru
            22 июля 2021, 16:49
            Антон Б, ну правильно потому что вы их своими руками регулируете. для других ваши идеи бесполезны
            • Антон Б
              22 июля 2021, 17:09
              StockChart.ru, это не так.

              торгуются неэффективности.
              алгоритм это метод их фиксации в виде позиции в рынке.

              неэффективность получается из алгоритма можно вытащить и использовать отдельно.
              если она есть.

              а если неэффективность никакая не эксплуатируется то робот будет сливать примерно со скоростью комиссии.

              если вы предполагаете что неэффективностй нет на рынке то из него надо уходить.

              • StockChart.ru
                22 июля 2021, 17:14
                Антон Б, все неэффективности ограничены по времени. и знает понять когда они закончатся может только авто робота
                • Антон Б
                  22 июля 2021, 19:03
                  StockChart.ru, продавай в мае и уходи до сих пор работает.
                  для меня еще одна неэффективность это артефакт.
                  можно ее добавить как фильтр.
                  или фильтр из другой неэффективности..
                  ну например из продавай в мае и уходи.

                  их можно миксовать.

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

    • amigo703
      22 июля 2021, 16:03
      StockChart.ru, а если робот простой? Ну например параметры — тейка, стопа, во сколько заходить, сколько лотов итд. Дорого такая форма ? 
  • Serj90
    22 июля 2021, 16:04
    Бьете свой алгоритм на несколько блоков. Каждый блок отдаете на реализацию разным людям. Основная проблема — «срастить» блоки между собой. На самом деле достаточно просто решается. Можно конечно позвать еще одного программера))) но есть способ менее затратный. Вы должны по каждому блоку выставлять ТЗ так, чтобы у каждого модуля был интерфейс приема входных данных и интерфейс выдачи данных. 
    Модули которые должны общаться друг с другом должны знать спецификацию интерфейсов и типы данных друг от друга.

    Короткий пример. Есть ядро системы и есть подтверждающий индюк. Без их совместной работы ТС является пустышкой. Ваша задача составить ТЗ на написание ядра таким образом, чтобы были четко описаны выходные данные (их типы, объемы, расстановка в переменных и т.п. в простейшем понимании).
    Соответственно в ТЗ на индюк вы пишите, что на вход индюку будут подаваться такие данные (такого-то типа, в таком-то объеме, в такой-то расстановке в переменных и т.д.)

    Если в ходе отладки возникают ошибки, вы сможете локализовать их и обратиться по гарантии именно к тому прогеру, кто ваял проблемный модуль и сказать «я подаю на вход значения 5 и ААА, а он не фурычит. Переделывай» 
    • Антон Б
      22 июля 2021, 16:08
      Serj90, в тз на индюк будет неэффективность.
      и во время теста при сдаче вам придется  тестировать на каких-то данных.
      а значит этот индикатор отдельно.

      а робота по индикатору на md5 (md4) можно за 20 usd купить.
      не считайте что кодер идиот.
      особенно если он в этой нише несколько лет.
      • Serj90
        22 июля 2021, 16:14
        Антон Б, ну слушайте субподряд тоже никто не отменял, это уже внутренняя кухня исполнителя)))))))))))) Просто при вашей схеме на мой взгляд все модули должны быть совместимы с md5, что опять же можно отразить в ТЗ.
    • StockChart.ru
      22 июля 2021, 16:09
      Serj90, млять что бы собрать модули и продумать их взаимодействие надо самому обладать хорошей квалификацией в программировании 
      • Serj90
        22 июля 2021, 16:12
        StockChart.ru, достаточно знать подходы и методики и не знать всех языков. Принципы программирования везде схожи. Автор может не обладать языком Lua, но знать C# (как я например). И если нужен код именно на Lua, то тут 3 пути:
        1. Разбираться с Lua
        2. Писать на С#
        3. Отдать на аутсорс вот с таким вот вопросом от топикстартера

        • StockChart.ru
          22 июля 2021, 17:15
          Serj90, я понял что вы не профессиональный программист
          • Serj90
            22 июля 2021, 18:28
            StockChart.ru, это верно, но я и не позиционировал себя программистом в принципе))
            • StockChart.ru
              22 июля 2021, 20:38
              Serj90, поэтому несете чепуху. взаимодействие модулей продумывает по факту архитектор а кодить модули может и начинающие. все это говно свести в одно как раз делают профи
              • Serj90
                22 июля 2021, 21:19
                StockChart.ru, какой профи? во то прям наука, подать данные в процедуру и обработать выходные из неё. Это делается проще простого если есть понимание как должны взаимодействовать между собой модули, в каком порядке и при каких событиях, для этого достаточно простой блок-схемы накидать. Самое примитивное и костыльное решение знаете какое? Написать все модули как независимые и самостоятельно исполняемые и связать их путем обмена данных через файлы. Сказать разработчику модуля «А» пиши в файл с именем таким-то значения таких то переменных в таком-то порядке. И сказать разработчику модуля «Б» парси из файла с именем таким-то значения в таком то порядке и по таким переменным. Какого уровня профессионализм тут нужен? Мы не говорим о скорости работы и удобства сопровождения. Схема рабочая? факт есть. А если все модули будут написаны в виде функций или процедур, то выигрыш во всём и сразу. Значит к чему мы приходим? к правильно составленному ТЗ на каждый модуль. Ну и где здесь чушь?
                • StockChart.ru
                  22 июля 2021, 23:05
                  Serj90, учите паттерны GOF для начала
                  • Serj90
                    22 июля 2021, 23:11
                    StockChart.ru, спасибо конечно, но с этим я уже сталкивался, проблем с написанием программ для себя у меня нет)
                    • StockChart.ru
                      23 июля 2021, 09:21
                      Serj90, боюсь с распределенным управлением толпой начинающих фрилансеров вы не сталкивались
                      • Serj90
                        23 июля 2021, 10:13
                        StockChart.ru, с ними не работал никогда, хотя бы с той позиции если можешь сам, то зачем кого-то звать, тем более начинающих)) Из трех обозначенных вариантов, если мне нужен робот на lua, я изучу lua. Тут вопрос только в трате времени, а не в способностях. Автору я предложил вариант решения проблемы — модульность. Дальше, я вот уверен на 100%, всё зависит от того как подвешен язык, если человек умеет ясно излагать что он хочет, то не будет большой проблемой свести их совместную работу на уровне интерфейсов и регламента взаимодействия.

                        Да — там могут быть проблемы, когда будут частые передачи (например) из ядра в индюк и обратно по ходу работы всего ПО, хотя и эти обращения можно рассматривать отдельно. Я работаю с программистами, но несколько на другом уровне, и меня удивляет ваше ярое отрицание возможности разбиения задачи на подзадачи, разделение труда и т.п., тем более если вы опытный программист. (насколько я понял вы таковым являетесь).

                        Также я слабо представляю что итоговый листинг с включением всех процедур, функций и модулей в коде (чтобы пример был ярким и показательным скажем что это ОС) собирал один единственный профи))))

                        Знаете сколько приходит таких задач, вот есть черный ящик где-то там и он выплёвывает такие то данные. Окей, дайте спецификацию, опишите как эти данные обрабатывать и в каком регламенте взаимодействие должно осуществляться. Это вопрос метода, подхода к решению задачи. По сути это вариант перевода задачи от написания всего полноценного кода разом, к вопросам интегрирования. Чем не выход? Отладка — да, дело будет сложное, хотя в большинстве случаев просто срок будет растянут, т.к. возникают накладные расходы на координацию команды, но эта задача упрощается если все модули готовы в срок, настроено корректное и полное логирование.

                        Может быть ваше категоричное мнение обусловлено моим примером с ядром и индюком, якобы в такой системе больше ничего нет от того она и простая. Но я привел упрощенный пример, касающийся именно тех частей, где будет зашита интеллектуальная собственность. Понятное дело, что там коннектор нужен, отдельные модули для формирования параметров позиции, ведения позиции, блок анализа сделок, расчет риска (хотя это больше функция ядра) и т.п. Там дохрена подзадач, т.к. робот это полноценная система. Но я и не говорил что написание роботов, да еще и силами других людей — это простая задача. Я говорю что методы могут быть простыми, упрощенными. И банально, скажем так второстепенные задачи и индюка мы можем отдать одному прогеру, а ядро другому. Как еще проще объяснить. Программисту отдаем задачу построения кузова, коробки, подвески, рулевого управления и описываем параметры подкапотного пространства + описание интерфейса взаимодействия с коробкой передач. А движок другому программисту. Если стоит вопрос написания всех модулей робота в одном пространстве имен, то это тоже не великая проблема.

                        • StockChart.ru
                          23 июля 2021, 10:36
                          Serj90, мое категоричное мнение основано на опыте кодирования уже дай бог 28 лет
                            Сложность реализации от масштаба растет экспонентциально, а не линейно. На коленке что то наваять несложно. Поэтом это очень быстро разваливается под своим весом
                          • Serj90
                            23 июля 2021, 10:58
                            StockChart.ru, с этим не поспоришь. Лайк
  • Vlad
    22 июля 2021, 22:13
    никак
  • Glago
    22 июля 2021, 22:25
    1) позвать в качестве программиста своего брата
    2) предложить программисту написать кастомизированный вариант, т. е. будет вариабле, которая потом будет заменяться вручную, он то конкретных чисел не знает, а подбором заниматься муторно, это ведь не перебор вариантов пароля.
    3) взять программиста в долю, размер доли подбирать индивидуально
  • Vovilnik
    22 июля 2021, 23:32
    А в тслабе накидать, не? Или там супер сложный скоростной алгоритм?
      • Vovilnik
        23 июля 2021, 14:39
        AlexGood, я за неделю довольно хорошо освоил, накидал все популярные стратегии, стратегии всяких гур и убедился, что они полный шлак)))
  • wrmngr
    23 июля 2021, 09:13
    Хм, а есть что воровать?
      • wrmngr
        23 июля 2021, 12:23
        AlexGood, так и решайте проблемы по мере их поступления! жизнь коротка!
  • loseynik
    23 июля 2021, 15:07
    просто взять в долю
  • Кирилл Гудков
    23 июля 2021, 15:21

    Написать длинное, подробное ТЗ. Найти самого годного программиста, такого, чтобы мог бы даже написать бинарный поиск без ошибок. Пригласить на обсуждение ТЗ. В момент, когда программист будет обдумывать ваш эффективный алгоритм курвафиттинга и мартингейла, подкрасться сзади и треснуть по башке чем-нибудь тяжелым. Труп расчленить, печень программиста съесть. Только жарить не надо, лучше даже и не варить, если нет аллергии на кристаллический кофеин.

    После этого вы сможете сами реализовать свой замечательный алгоритм. Можно даже сразу перейти к этому пункту, дорогу осилит идущий.

  • Gypsy
    24 июля 2021, 17:30
    Если ты сам не программист, то никак скорее всего…
  • kongo
    02 августа 2021, 17:26
     Тоже думаю что -никак, кроме как самому. Пока разбил систему на 6 скриптов и заказал у 2-х программистов, а дальше тупик 

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

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