Как работать с программистом, чтобы тот не утащил твои разработки.
Всем привет. Наверняка многие сталкивались с необходимостью превратить свои идеи в некую программу. Так вот — как же это правильно делать? У меня пока есть два предположения — ищем программиста в интернете и платим ему… а что собственно платим? Он же тоже участвует в разработке, тоесть похорошему он тоже заинтересован.
Второй вариант — посадить пару программистов в офис и платить зп… допустим 5 тысяч в месяц на человека вполне норм, можно взять программиста в США и офис там же снять. Подписать договор о конфеденциальности...
Кто писал хороших роботов может делал тоже самое, но раскидывая работу между разными программистами.
Так вот вопрос — как правильно делать в конечном итоге? И чтобы они потом разработанное ПО не продавали куда захотят и т.д. и т.п.
Платить/платить+доля/доля и куда сажаем офис/удаленка или по частям индусам на разработку?)
По предварительным ТЗ можно говорить о сумме разработок от 20 до 100 тыс $.
Li, в 90-х проще было. покажешь такому кренделю своих знакомых крепких ребят определенной специализации.ну и пусть прикинет что с ним будет при несоблюдении условий. а сейчас беспредел. полный
Li, у меня перли. Только не по акциям, другой бизнес. Человек со мной 5 лет работал, в доле был, семью его знал и пр. Очень хороший был… А потом оказалось, что он сделал такой же бизнес на свое имя, конкурентый, кинул нас. У нас же хостился, часть сотрудников уже на него работала за наш счет и пр. А все считали его мега честным. Когда факт вскрылся — никто не верил… Человек перед уходом удалил 3 (три) бэкапа, чтобы все испортить.
Time To Invest, значит ему было нужнее, поэтому не заморачивайся! если сделал 1, то и сделаешь еще с десяток, поэтому не злись и приступай к работе нового и еще более лучшего продукта.
У Решпекта дельный совет еще в том смысле, что если у вас нет программера, которому вы доверяете, вам при любой оптимизации опять же придется связываться со специалистом.
owner, Хорошо, здесь более менее понятно. Давайте решим какой специалист лучше — с заморских краев или наш, родной. Мне все же кажется, что зарубежные ребята ответственнее и умеют то, чему наши только учатся (по опыту скажу, хотя может я и невнимательно искал народ в наших краях).
«Как работать с программистом», Так, чтобы он делал настраиваемый инструмент, платформу, а не реализацию с подбором параметров. Тестировать, подбирать самому.
Советую вообще не париться по этому поводу. Вам ведь нужно решить свою проблему — вот ее и решайте. Если будете думать о том что кто-то что-то упрет, так и не сдвинетесь с мертвой точки.
Если человек(программист) толковый, то он и без ваших алгоритмов пробьет головой эту стену и добьется успеха. А если бестолковый, то алгоритм ему не поможет. Грааль он ведь не в кодере, а в постановщике задач. Поэтому просто не думайте о последствиях и смело ставьте свои задачи. В конце концов у вас получится найти человека, которому будет не только выгодно, но и интересно решать ваши задачи. Так и родится идеальное партнерство.
Redline, вопрос не в том, что встать можно с решением вопроса, а в том, что перебрав несколько десяток резюме я встал в ступор от квалификации программиста. У одного нелады с одним, у другого с другим..., а денег хотят… ну как это… крутой айтишник в столице российской… это и заставляет думать о сажании народа в офис на оклад.
Li,
в офисе оно, несомненно, сподручней будет.
Опять же советую исходить из того какие задачи будете решать.
Если это будут обычные стратегии на свечках, то там квалификация нужна одна, а если HFT или идейные стратегии, то там нужна иная квалификация.
в идеале это партнерство с человеком в ком уверены или есть отзывы от близких, опять же смотря что за система если тейк это сотни пунктов на ри и си то там да можете уже мешать друг другу при паре лямов рублей, если это 1000 и выше пунктов тейки, то в целом проблем не вижу ну начнет по вашей системе работать ну капитал у него небольшой если он наемный менегер, вам не помешает, если он инвесторов найдет то да сложнее. вообще чем маштабируемей страта тем лучше, если большие тейки стопы то и движи большие и без норм денег там делать нечего такие движения редки, и мелким депо их брать смысла нет. прогера если постороннего то лучше америкоса напугать бумажка про конфидециальность на деле не поможет но вдруг поверит, бывают наивные, если с нашим то просто ищете человека не из этой среды, так меньше шансов что вьедет в тему и поймет
Александр Смольский, Добрый смех, хорошее чувство юмора является показателем духовного здоровья человека. Умение смеяться над всевозможными эгоистическими проявлениями в себе — это необходимый элемент развития на всем протяжении духовного пути человека. (Михаэль Лайтман)
Не забывайте еще о том, что алгоритм могут получить люди которые предоставляют Вам программу по написанию роботов.
Например я писал роботов два года назад.
И при анализе сетевой статистики это программа пересылала-принимала данные на несколько ip адресов:
1- это обновление
2,3- это котировки с биржи
а вот 4,5 — про них нигде указано в описании не было
и что туда отсылалось остается только гадать.
1. гарантий даже по америке нет, банально сложно отследить, что юзают твою стратегию. тем более что при изменении 35% это уже другая программа.
2. самый надежный вариант если нужно именно отдельная программа, если сами мыслите, то да прогер кодит общие мозги, а вы допиливаете алгоритм.
2.5 Если не частотка, можно заказывать блоки в тслаб или другой робото конструктор, и в нем уже дособирать.
П.С. Если обращаться к человеку который мыслит в роботописании, то понятное дело он заюзает возможность.
тут главное договориться, что б не продавал еще комунить.
Я делаю так; излагаю идею на бумаге и получаю авторское свидетельство. После этого заключаю договор с программистом, указываю, что действия выполняемые им направленны на алгоритмизацию тех. задания для реализации указного в свидетельстве об авторском праве и перечисляешь, что там. И как будите делить результаты алгоритмизации. Так же его вознаграждение, и обязанность если это нужно о не разглашении.
Тема ни о чём.
Что воровать-то? Грааль или программный код? Любой толковый программист разработает любую платформу и без ваших ТЗ, если захочет и если она будет ему нужна. И ничего воровать не придётся. Так что скрывать тут нечего.
Если не хотите палить грааль, то не пишите по нему тех.задание. Сделайте тех.задание так, чтобы платформа умела строить какие-то индикаторы, отслеживать какие-то данные, принимать необходимые параметры, отправлять заявки при соблюдении каких-то условий. А дальше свой грааль будете вводить уже в готовом продукте сами без программистов. Сами будете в платформе создавать необходимые индикаторы и выставлять нужные параметры, о которых никто не будет знать.
Прогера надо брать в долю, чтобы он принимал участие в тестировании, + должен соображать сферу, т.е. любой по объявлению не подойдет.
По хорошему, программисту тоже сложно, если рыночная ситуация поменяется и надо вносить коррективы в софт, тут он может облажаться :)
Я сам программист. Имею свой грааль, который работает далеко не на каждом таймфрейме, не на каждом инструменте и индикаторы далеко не с любыми параметрами. Если бы я писал ТЗ, то заказал бы программисту с десяток разных индикаторов (среди которых граальными будут только 1-3 и то только при определённой комбинации), возможность выбора любого таймфрейма и инструмента, описал бы как-то условия покупок и продаж. И хрен кто бы догадался о граале, который будет на этой системе потом работать. Тем более в 99,9999%, этот программист понятия не будет иметь о том, что такое биржа и чем отличается EMA от MACD.
Все предложенные Вами варианты так или иначе имеют ненулевую вероятность не сработать, т.е. Ваша идея все равно может быть украдена.
Попробуйте взглянуть на это с другой стороны. Если у вас одна единственная стратегия, то ищите наименее затратный вариант ее реализации. Степень адекватности любого уровня защиты всегда оценивается по соотношению затрат на реализацию системы защиты к стоимости защищаемой информации.
Необходимо также понимать, что большинство алгоритмических стратегий работают лишь некоторое время, после чего они или перестают приносить удовлетворительный доход, и необходима новая стратегия. Либо стратегия начинает нуждаться в перенастройке.
Что касается моего личного взгляда на данную проблему, то я склоняюсь к варианту взаимовыгодного партнерства, когда оба участника — это одна команда.
Также, если судить по моему собственному опыту (сам пишу роботов, но при этом программистом себя не считаю), то умный человек даже заполучив вашу стратегию с большой вероятностью будет использовать ИДЕЮ (если она покажется ему интересной), доработав ее под себя. Что автоматически приведет к существованию двух РАЗНЫХ стратегий, с разными уровнями эффективности. А это, в свою очередь, говорит в пользу сотрудничества, т.к. в процессе работы может получиться так, что не только Вы будете вносить интересные идеи в торговые системы, но и ваш партнер.
есть такая штука — DSL (domain specific language), это специализированный мини язык на котором описывается алгоритм. Этот DSL работает над техническим блоком, который реализует базовые технические операции по управлению ордерами. Таким образом, нужно продумать свой DSL и поставить две задачи:
— разработать техническую часть (управление ордерами, чтение котировок)
— разработать DSL
Таким образом Вы не раскрываете своего алгоритма, т.к. будете задавать его сами на этом самом DSL.
Есть предположение что автор статьи вообще никогда не занимался управлением софтверной разработкой и не представляет себе что это за геморрой и что геморрой этот надолго и всерьез.
Я бы в такой ситуации, прежде чем ввалить деньги в команду программистов, нанял бы на временный договор одного, сел бы с ним рядом в офисе и попробовал бы реализовать какой-то относительно быстро и малозатратно-реализуемый кусок своей программной мечты, а потом по ощущениям сориентировался бы надо оно мне или нет и в каком виде.
любой не лох спер бы. а взялся бы за такую работу (с целью не спереть) только лох или говенный программер. а оно вам надо? с двоешником дело иметь. получается, что хороший порядочный программер всеравно сопрет. т.е тут зависимость уже вас от него + вы за это платите. думаю, что лучший выход — взять его в команду. и лучше никакой удаленки. должен быть физический контакт так сказать :)
Работа с индусами кстати отдельная песня я один раз пытался. С первого захода они мне выдали такой говнокодище что яйца сводит. Ни развивать, ни поддерживать его было просто невозможно.
Надо отдать им должное, стоило это весьма недорого. Однако пришлось все переделать, за дополнительные деньги. Так вот чтобы переделка тоже не оказалась деньгами на ветер, пришлось заблаговременно написать около сотни модульных тестов и выдать им в виде ТЗ. Такое задание они приемлемо выполнили, но понятное дело что на разработку тестов понадобился не один день и архитектура все равно получилась неидеальной ибо писать надо итеративно, тест-код, тест-код, а не так чтобы сразу сотня тестов, потом куча кода под них. При любом раскладе куча работы и проблем. И если при этом нихрена в программировании не понимаешь, то шансы на успех сокращаются вчетверо.
>>> Второй вариант — посадить пару программистов в офис и платить зп… допустим 5 тысяч в месяц на человека вполне норм, можно взять программиста в США и офис там же снять.
Где Вы видели программистов, которые работают за 5 тысяч в месяц и это «вполне норм», да еще и в США? :) А, или имелось ввиду 5 тыс долларов в месяц, тогда ок :)
И есть еще один момент. Если мы берем кодера «с улицы», то первым делом возникает опасение не «сопрет, не сопрет», а «поймет он меня или не поймет».
Как показывает практика, не так уж много на рынке программистов, понимающих предметную область биржевой торговли, а в идеале имеющих и собственный опыт ручной или автоматической торговли. При обычном раскладе, если мы нанимаем неспециализированного человека, то первый месяц он у нас вообще в основном сидит и читает книжки «а-ля» «Технический анализ для чайников» (или квантовые финансы для чайников, в зависимости от того, на что мы в своих алгоритмах опираемся), «Фьючерсные рынки и производные инструменты» и так далее и тому подобное.
Ну а если нанимать человека «в теме», то естественно, когда вы с ним расстанетесь (если у вас нет в планах что эта ваша затея всерьез и надолго), он так или иначе будет использовать полученные при общении с вами знания и опыт. Такова природа человеческая. Любой, самый честный, заполнивший кучу NDA договоров, так или иначе на новом рабочем месте автоматически скопирует какие-то куски кода или шаблоны или подходы, которые он вывел для себя во время взаимодействия с вами.
Народ, у вас мания величия. Никому не нужны чужие идеи в реале. За всю историю ни разу не видел спертого рабочего алгоритма. Под десяток лет на рынке половину из них занимаюсь разработкой как для себя так и под заказ. Чаще всего даже не вникаешь что автор ТЗ хочет от рынка — тупо делаешь робота по алгоритму. Изредка заказанные ТЗ наводят на какие -то свои интересные мысли. А чаще всего даже полностью описанное ТЗ не позволяет использовать чужого робота самому ибо видение автором рынка не возможно стырить вместе с роботом а без него робот бесполезный набор команд на бай/селл.
Как построить дом, чтобы строители не могли потом построить такой же?
Как нанять директора чтобы он потом не мог руководить таким же предприятием?
Как седалть так чтобы жена после развода не могла варить те же супы себе?
any_to_real, без глубокого изучения ответ: нет. И самоподдерживающийся процесс термоядерного синтеза на базе золота невозможен. Мгновенная потеря энергии.
P.S. Могу путать, но по-моему предел тер...
Интересный уровень коррекции по fibo
при max=3522 и min=1775
38.1 2442.29
а для расширения при трех точках 3522 3032 3226, тоже интересный уровень.
161.8 2433.17
Дык а во что тут верить, VK всё просрал и не справляется даже чисто технически. Вечерами, вон, лежит целыми подсетями.
Если Яндекс хотя бы скам включил как в 2000 (подписки без согласия, инсталлы), ...
вамсат вамирекс, вашу знакомую зовут Эльвира Н. ?
А… тогда вообще все понятно.
Эльвира Н. — слушает звезды,
Владимир П. — слушает на спиритических сеансах Петра Первого...
:)
Если человек(программист) толковый, то он и без ваших алгоритмов пробьет головой эту стену и добьется успеха. А если бестолковый, то алгоритм ему не поможет. Грааль он ведь не в кодере, а в постановщике задач. Поэтому просто не думайте о последствиях и смело ставьте свои задачи. В конце концов у вас получится найти человека, которому будет не только выгодно, но и интересно решать ваши задачи. Так и родится идеальное партнерство.
в офисе оно, несомненно, сподручней будет.
Опять же советую исходить из того какие задачи будете решать.
Если это будут обычные стратегии на свечках, то там квалификация нужна одна, а если HFT или идейные стратегии, то там нужна иная квалификация.
Например я писал роботов два года назад.
И при анализе сетевой статистики это программа пересылала-принимала данные на несколько ip адресов:
1- это обновление
2,3- это котировки с биржи
а вот 4,5 — про них нигде указано в описании не было
и что туда отсылалось остается только гадать.
2. самый надежный вариант если нужно именно отдельная программа, если сами мыслите, то да прогер кодит общие мозги, а вы допиливаете алгоритм.
2.5 Если не частотка, можно заказывать блоки в тслаб или другой робото конструктор, и в нем уже дособирать.
П.С. Если обращаться к человеку который мыслит в роботописании, то понятное дело он заюзает возможность.
тут главное договориться, что б не продавал еще комунить.
Никак
Что воровать-то? Грааль или программный код? Любой толковый программист разработает любую платформу и без ваших ТЗ, если захочет и если она будет ему нужна. И ничего воровать не придётся. Так что скрывать тут нечего.
Если не хотите палить грааль, то не пишите по нему тех.задание. Сделайте тех.задание так, чтобы платформа умела строить какие-то индикаторы, отслеживать какие-то данные, принимать необходимые параметры, отправлять заявки при соблюдении каких-то условий. А дальше свой грааль будете вводить уже в готовом продукте сами без программистов. Сами будете в платформе создавать необходимые индикаторы и выставлять нужные параметры, о которых никто не будет знать.
По хорошему, программисту тоже сложно, если рыночная ситуация поменяется и надо вносить коррективы в софт, тут он может облажаться :)
Попробуйте взглянуть на это с другой стороны. Если у вас одна единственная стратегия, то ищите наименее затратный вариант ее реализации. Степень адекватности любого уровня защиты всегда оценивается по соотношению затрат на реализацию системы защиты к стоимости защищаемой информации.
Необходимо также понимать, что большинство алгоритмических стратегий работают лишь некоторое время, после чего они или перестают приносить удовлетворительный доход, и необходима новая стратегия. Либо стратегия начинает нуждаться в перенастройке.
Что касается моего личного взгляда на данную проблему, то я склоняюсь к варианту взаимовыгодного партнерства, когда оба участника — это одна команда.
Также, если судить по моему собственному опыту (сам пишу роботов, но при этом программистом себя не считаю), то умный человек даже заполучив вашу стратегию с большой вероятностью будет использовать ИДЕЮ (если она покажется ему интересной), доработав ее под себя. Что автоматически приведет к существованию двух РАЗНЫХ стратегий, с разными уровнями эффективности. А это, в свою очередь, говорит в пользу сотрудничества, т.к. в процессе работы может получиться так, что не только Вы будете вносить интересные идеи в торговые системы, но и ваш партнер.
— разработать техническую часть (управление ордерами, чтение котировок)
— разработать DSL
Таким образом Вы не раскрываете своего алгоритма, т.к. будете задавать его сами на этом самом DSL.
P.S: посмотрите на jboss drools
Я бы в такой ситуации, прежде чем ввалить деньги в команду программистов, нанял бы на временный договор одного, сел бы с ним рядом в офисе и попробовал бы реализовать какой-то относительно быстро и малозатратно-реализуемый кусок своей программной мечты, а потом по ощущениям сориентировался бы надо оно мне или нет и в каком виде.
Надо отдать им должное, стоило это весьма недорого. Однако пришлось все переделать, за дополнительные деньги. Так вот чтобы переделка тоже не оказалась деньгами на ветер, пришлось заблаговременно написать около сотни модульных тестов и выдать им в виде ТЗ. Такое задание они приемлемо выполнили, но понятное дело что на разработку тестов понадобился не один день и архитектура все равно получилась неидеальной ибо писать надо итеративно, тест-код, тест-код, а не так чтобы сразу сотня тестов, потом куча кода под них. При любом раскладе куча работы и проблем. И если при этом нихрена в программировании не понимаешь, то шансы на успех сокращаются вчетверо.
Где Вы видели программистов, которые работают за 5 тысяч в месяц и это «вполне норм», да еще и в США? :) А, или имелось ввиду 5 тыс долларов в месяц, тогда ок :)
Как показывает практика, не так уж много на рынке программистов, понимающих предметную область биржевой торговли, а в идеале имеющих и собственный опыт ручной или автоматической торговли. При обычном раскладе, если мы нанимаем неспециализированного человека, то первый месяц он у нас вообще в основном сидит и читает книжки «а-ля» «Технический анализ для чайников» (или квантовые финансы для чайников, в зависимости от того, на что мы в своих алгоритмах опираемся), «Фьючерсные рынки и производные инструменты» и так далее и тому подобное.
Ну а если нанимать человека «в теме», то естественно, когда вы с ним расстанетесь (если у вас нет в планах что эта ваша затея всерьез и надолго), он так или иначе будет использовать полученные при общении с вами знания и опыт. Такова природа человеческая. Любой, самый честный, заполнивший кучу NDA договоров, так или иначе на новом рабочем месте автоматически скопирует какие-то куски кода или шаблоны или подходы, которые он вывел для себя во время взаимодействия с вами.
Как нанять директора чтобы он потом не мог руководить таким же предприятием?
Как седалть так чтобы жена после развода не могла варить те же супы себе?