Hi everyone, I am not a programmer but i have a developed a manual system i would like to automate and use it with Dukascopy. My biggest worry is that my Intellectual Property could be stolen during work with programmers. Some would suggest programming myself but it is too unrealistic in my case for the following reasons: 1- time constraints 2- the system need high level of skills because it is a high scalper system the require great deal of quick calculations to work on the smallest time frames. 3- it is my long term goal to learn Java but not right now. So, i make my mind to develop my system with coders. Also, some would say that the solution is to hire a trust-able coder. I believe this is too risky solution . Some would say, use NDA. I do not think it is really that protective. The solution i am trying to figure out is how to use coder or a team of coders and at the same time keep my secret souse safe. The broker i want to work with is Dukascopy via either Jforex API or using Jforex EA or any third party automation solution for Duka. Now, i figured out that through certain steps i could relatively protect my logic such as: 1- Fragmentation.. My system could be divided into a number of logics and each i could give to each coder. They will not know each other. and each piece would be a losing by itself. However, this would add too much effort and time to coordinate among coders. 2- Harboring the calculations inside a professional protected C++ DLL. Or even i am thinking to utilize a fake DLL to hand calls but not doing sound calcuations ( just for testing). Dlls will be done by other programmers. 3- Adding un-necessary logics that could confuse and make it difficult to optimize. While i could turn it off when run for real. Clearly, all these tactics add more complication and cost to the project. My specific concerns: What i could do more in java duka to achieve such satisfactory protection. Some mentioned using JNI and C++ DLL. The system is time sensitive. If you have other ideas, please share. Thanks
Work with a reputable firm located in a credible jurisdiction, and able to demonstrate a verifiable track record of similar projects. And use a well drawn-up Non Disclosure / Non Compete Agreement written in law from a credible jurisdiction, that covers both the firm, and those staff members that work on your project. That ought to be more than enough. The firm doesn't want to damage its excellent reputation. It's directors and staff don't want to go to jail.
i doubt this would work if the system is too much profitable. op can trust the firm, but not the employee in the firm. anyway, if one of the employees steals the code, or the idea and recodes the system in his own way, and trades it in the basement, who can prove or know the system is stolen?
I agree with trend2009. No one will know. What i am trying to do is to hide my logic. and my question was are there any methods to do that on the programming level? except what i have mentioned. Taken into consideration that i am doing it with java.
you have to know at least some level of programming, and outsource hard part of it to other coders. depending on how complex your system is, you may be able to breakdown the system into a lot of small pieces. that way, your system may be safe. but in the end, you need to know the programming to assemble them into a working project. the most difficult part of the trading system is to integrate quotes and data orders, which you do not need to hide. but if you choose to automate your system within tradestation, the project is easier since 1) quote and order are already there; 2) easy-language is for people with no programming background. you may be able to do it yourself.
I decided to learn some level of java. It seems a good plan to handle the hardest parts to coders but assemble it myself. However, going with a proprietary programming language such as easy language .. some are saying is not actually that "easy" language. I like Multicharts and it uses Duka FIX api even with 50k balance. Reviews saying it is a very good piece of language.