Rules under Work - page 11

 
pronych:
The original question about the sources. This is a concern.

All this can be solved quite easily (if we're talking about pure MQL5).

A developer who doesn't want to post some source code has all chances (and perfectly legitimate) not to do so. But it becomes possible with some conditions.

First, all the blocks that must be hidden from prying eyes are arranged in separate modules (libraries, scripts, indulators and other software), then all this can be done in a MAGAZINE (you must agree that the requirement for the source code is absurd there). This approach is good that the programmer can theoretically distribute the cost of his work among many customers, which no doubt benefits all.

At the stage of coordinating the order, the programmer can easily refer to the modules available for sale (asking if the customer does not have the previously purchased modules). If the customer already has these modules, the programmer just needs to add the missing code and give it to the customer. Otherwise, as agreed between the parties, the contractor can bill the customer for these modules (by selling them themselves or through the MAGAZINE) or not.

If the work is "unique" it is also possible to package certain code into libraries, while giving the customer the rest of the source code (thus allowing a certain amount of freedom).

Integer:

Yeah, add a checkbox "only ex5 are given to the client", and then a second checkbox, set automatically with the first one "the contractor agrees to provide the client with fresh ex5 for the rest of his life"... for the rest of his cheerful life.

1. The question is easily solved if the contractor commits himself to accompany the results of his work for a certain period of time, with the transfer of a small fee.

Say during the year, with payment upon completion of work or in the form of monthly payments (monthly payments could, for example, make up $ 5-10).

2. Even easier question can be solved if the development will be popular and will be used by many traders (or will be sold through a shop).

Then the developer will be interested to keep all the source code of the project and periodically either independently or at the request of customers (customers and buyers) to make changes in the code.

PS

In this and similar discussions I would better try to open the subject of copyright and other rights.

With this approach, by placing an order you can buy a certain closed code (closed to mere mortals), for an additional fee of course.

But here it is necessary to think through a variant in which the parties will not be able to violate each other's rights (for example the artist can not sell this work through the shop, and if he does it, then pays compensation to the copyright holder).

 
Interesting:

At the ordering stage, a programmer wishing to be a contractor can easily refer to modules available on the market (asking if the customer has any previously purchased modules).

Cool! In fact, we can see the following idea. The Developer builds his working modules for sale, which undergo all sorts of pre-sales checks at the Store and is put on display at the Store. And then tells the customer that he can either buy these working modules with Shop warranty, or purchase these working modules directly from the author at a discount of 10% Shop fee :)
 
Yedelkin:
Cool! In fact, we have the following idea. The Developer generates his working modules for sale, which undergo all sorts of pre-sales checks at the Store and is put on display at the Store. He then tells the Customer that he can either buy these working modules with Store warranty, or buy them directly from the author at a discount of 10% off Store commission :)

Theoretically, under certain conditions, the contractor can even do a 100% discount on a number of files, although without providing the source code (thereby making the work much cheaper for the client).

On the other hand, the customer may already have a certain set of libraries from the executor (whether purchased from the Store or purchased while completing other orders), which will also significantly reduce the cost of the work performed.

 

Curious, has anyone tested EA optimization speed using one compiled(from inludes) file, and a set of connected libraries(import)? Exactly in the same type of comparison.

PS. I've just never used import. If there's no difference in speed, it's some way out. But still not a full-fledged one. It's better to know in advance what the customer wants...

 
I have also abandoned the use of custom indulgences on 4, as they slow down the optimisation very much. Everything was built into the Expert Advisor's code. I also gave up importing for the same reason. I wonder how things are in MT5.
 
pronych:
I have also abandoned the use of custom indulgences on 4, as they slow down the optimisation very much. Everything was built into the Expert Advisor's code. I also gave up importing for the same reason. I wonder how things are in MT5.
Here is a little on the subject (if interesting): Implementation of indicators as classes by the example of Zigzag and ATR
 
pronych:
I have still refused to use custom indulgences in 4 because they are slowing down the optimization very much. Everything has been built into the Expert Advisor's code. I have completely ignored import for the same reason. I wonder how it is in MT5.

All in one EA is certainly good, but there is one problem - it is very difficult to develop large projects (in which 10000 strings or more). I know from my own experience what a nightmare a 50K EA may become. Separation into modules and libraries is a must in this case.

pronych:

I'm curious, has anyone tested speed of optimizing EA using one compiled(from inludes) file, and a set of linked libraries(import)? Exactly in the same type of comparison.

PS. I've just never used import. If there's no difference in speed, it's some way out. But still not a complete solution. It's better to know in advance what the customer wants...

If I understand it correctly, the code located directly in the Expert Advisor will be executed most quickly, the code located in *.mqh will take the second place, the code located in the ex5 libraries will be executed last.

But this is purely an IMHO opinion.

 
Interesting:

If I understand correctly, the code located directly in the Expert Advisor will be executed most quickly, the code located in *.mqh will take the second place, the code located in ex5 libraries will be executed last.

How is the code runtime related to the following rule? :

To import functions during the execution of mql5-program, the early linking is used. This means that the library is loaded while the ex5 program using it is being loaded.

 
Interesting:

1. The issue can easily be resolved if the contractor undertakes to maintain the results of his work for a certain period of time, with a small fee.

Say during the year, with payment upon completion of work or in the form of monthly payments (monthly payments may, for example, make up $ 5-10).

2. Even easier question can be solved if the development will be popular and will be used by many traders (or will be sold through a shop).

Then the developer will be interested to keep all the source code of the project and periodically either independently or at the request of customers (customers and buyers) to make changes in the code.

PS

In this and similar discussions I would better try to open the subject of copyright and other rights.

With this approach, you can buy some closed code (closed to mere mortals), for an additional fee of course.

But here we must consider the option when the parties will not be able to violate each other's rights (for example, the contractor will not be able to sell the work through the shop, and if he does it, he will pay compensation to the copyright owner).

1. With great pleasure, I will commit to 1000 of customers to send them new ex5 at the release of each new build of the terminal for a token fee of $ 5 per month. But I`m unlikely to find such suckers.

2. Let's talk about individual orders.

 
Integer:

1. I will gladly obligate myself to 1000 customers to send them new ex5s at the release of each new build of the terminal for a token fee of 5$/month. But I don't think there will be such suckers.

2. Talking about individual orders.


1. If an average user will need to manage at least $ 1000 in your code, and at the same time he will be able to stably earn at least $ 100 per month, why not?

2. theoretically yes, but one does not prevent the other. some universal library or class can be used for different purposes.