Pricing
Every project cycle is unique. We split projects into agile-like version increments with delivery countdowns of 2-3 days and leaner quotes.
Pricing Example: Indicator
Scenario: Sarah has clear steps that she uses to decide in real time if a candle that just closed is of interest to her for further action. She calls this her Candle of Interest
.
Being a disciplined trader, she's written down these steps very systematically so that when trading she can always execute these steps objectively without her emotions interfering. These are her steps:
When a candle has just closed, it is a Candle of Interest
if:
- It is bullish, and
- Its close price is above the 14-period moving average, and
- It has a body that is at least twice the size of the body of the candle before it.
Sarah is pretty tired of staring at the chart all day just to be there when this type of candle happens. She'd like to automate and just be notified. A Signaler Indicator is ideal for this purpose.
Since Sarah has very clear steps, and very clear expectations, we quote USD$38 to automate her workflow, delivering a Signaler Indicator that displays an Arrow on every Candle of Interest
. The Signaler Indicator alerts with a popup, email or push notification when a new Candle of Interest
is found. We provide additional value by modularly providing a fully configurable moving average indicator in the algorithm with controls for its period, method and applied price, and abstract Rule 2 so that it works with any MA setting. We also abstract Rule 3 and provide a multiplier input so that she can use other values than just twice
. Apart from this, there are a few additional niceness adjustment settings for the arrow. Sarah has now received more combinatorial strategy value than she requested to be automated, and she can also spend time at the pool instead of eyeballing the chart and only act when necessary.
Sarah finds that the Signaler Indicator signals whenever any candle follows after a flat candle, which is not what she wants. She forgot that Rule 3 is insufficient to handle this case, because any number is infinitely larger than 0. She never came across this situation before, because she implicitly presumed to skip past such situations. She also forgot that a body size of 2 is 200% larger than a body size of 1, again satisfying her Rule 3, which is not what she wants. She's getting too many Arrows based on her insufficient rules. That's alright, refinement is all part of algo-trading, and it's not possible for a robot or developer to read her mind. She orders an enhancement to add additional rules:
Add additional rules in addition to the current ones:
- The candle prior to the signal candle must not have a 0-size body, and
- The signal candle's body must be at least 20 Points in size.
Sarah's enhancement request is very simplistic. And she did the right thing by making the enhancement only as the need arose, keeping increments lean. We quote USD$22 for the enhancement, and provide her more strategic value by giving her an input to vary 20
. We decide to complimentarily provide a True/False switch for Rule 4.
Sarah is now beginning to multiply her strategy trajectories, due to the combinatorial multiplicative value of switches, and maximizing future discovery potential for testing switches in the Optimizer.
What's more, Sarah now has 2 different full versions of software. If she crammed the enhancement points into the initial request, she'd have ended up with one piece of software for around the same price. If her requests are structured carefully, she could create feature-tiers of products this way. Again, Sarah has inadvertently received more hidden value by simply ordering incrementally.
Sarah performs a trading action when she finds a Candle of Interest
. She's ready for action-automation by ordering an Expert Advisor
.
Pricing Example: Expert Advisor
Scenario: Sarah has clear steps that she uses to decide in real time if she should make an action.
As we know from above, Sarah is a disciplined trader and always writes down her trading actions very systematically and objectively. These are her actions:
- Entry: Once a candle closes (and therefore simultaneously another candle opens), ...
- If the Signaler Indicator displays a signal, then...
- Open a market buy order with a 100 Point Take Profit and a 50 Point Stop Loss.
- While this order is open, do not open any more orders for this chart.
Sarah would like this workflow automated for her so that she can spend time at the pool instead.
Since Sarah has very clear steps, and very clear expectations, we quote USD$38 to automate her workflow, delivering a robot (Expert
) that automates her workflow as she described. It provides a few controls: Lot size, take profit and stop loss inputs. We also provide our base infrastructure where we provide an Expert ID used to enable this robot to be used on several charts simultaneously without order management clash.
We call it an Expert ID, because in different situations, we abstract this concept to enable the high-level requirement of identifying an Expert instance, and solve the problem in sometimes different ways. Some developers call this a Magic Number, or even magic_number
with the underscore as an exposed internal variable. But Magic Number
is not a software functional specification nor a requirement; it's just a name of a variable. We develop according to purpose, not according to variable names, and present the interface this way as we believe exposing the user to internal variable names and such misnomers lacks consideration for user-friendliness and meaning in user-facing labelling. Therefore we provide a specification for how an Expert ID is used, and to achieve its purpose we use internal methods that may or may not utilize the Magic Number provision in various ways.
Sarah was thinking of adding a Trailing Stop, but after observing the results, she thinks that it's more important to control the day of the week and time that the robot can make an Entry. Again, Sarah has done the right thing by incrementally ordering based on informed need.
After discussions, we quote USD$33 to enhance the robot with a module called Entry Confirmation Filter: Session
that can be switched ON or OFF. This is called an Entry Confirmation Filter because it is a module that confirms or blocks an Entry from proceeding. Within this module, we have sub-inputs that control the day of week and start and end times in a day. The strategic result after adding this module into the strategy chain is that the original Entry will proceed only if we are now on a chosen day of week and within the daily session, and not otherwise.
Sarah has received yet again more hidden value by incrementally ordering:
- She has multiplied her strategy trajectory possibilities since she has switches. For example, 1 ON/OFF switch has 2 possibilities; 2 ON/OFF switches has 4 possibilities; 3 ON/OFF switches has 8 possibilities, 4 ON/OFF switches has 16 possibilities, and so on exponentially.
- She actually has 2 pieces of software and can create feature tiers if she is running a business.
Sarah's workflow is now automated and she's now able to spend time doing better things than babysitting the chart, like research, optimization, or spending time at the pool.
Sarah is now worried that MQL4Solutions will go out of business, and wants to obtain source code. She also has other ideas in mind, such as using the source code for business reasons, for learning programming, for extracting parts of the engine, or just because she's super paranoid and wants to see the code. That's a lot of potential value. Whatever the reason for her wanting it, we don't question it, but we provide an offer with 2 points to make:
- Sarah's trading strategy is immortal and always reproducible, because she has written her trading strategy objectively on her piece of paper. The automation of her workflow can be achieved by any robotic syntax in the future, as long as she diligently documents her trading procedure.
- Sarah has not specified how a software infrastructure works, how the data structures should be designed, how the engine should check for errors, or any other engine specifics as to how the robotic command-chain should be designed and how reliability should be programmatically achieved — these are MQL4Solutions architectures. To obtain the source code, in our business structure, we will consider the value that Sarah receives from the source code as separate and additional to the value of having her workflow automated. Indeed, we will consider the source code to be an asset of its own kind that provides many dimensions of value. Sarah attempts to describe her personal purposes for obtaining the source code, but we can only choose to make a valuation according to what we are willing to release it for as a business asset handover without any and with all assumptions made as to its future use. If bought, it is provided as-is without education or promises as to its structure, understandability or modularity.
If you'd like to read more about assets and intellectual property, a good parallel topic to research is whether or not professional photo & design studios hand over their Photoshop tools, assets, custom filters and macros after you order a photoshoot or logo. Consider if these designer's tools created by them to achieve your outcomes can be automatically considered as your intellectual property now, just because you ordered a photoshoot or one logo.
Source Code Assets
Important: In general we do not offer our source code for public acquisition. Source code handover is not part of our default service offer, and the possibility to buy source code is not guaranteed.
We will decide on a case-by-case basis and version-by-version basis whether or not you can buy the source code, as a case-by-case special business deal.
In particular, there are certain source code assets that we will not offer for acquisition, such as security, GUI, news, and hybrid generic classes in our rapid solution configuration framework.
Therefore, if you know for sure that your goal is to acquire source code, then we're not right for you! We recommend that you employ freelance devs who offer to debug and patch any code, because they will take your code, debug it, and pass it back to you.
MQL4Solutions is suitable if your main need is in automation to empower your trading day and you wish to know that a battle-tested framework and cohesive engineering powers your procedures. We have options for collaborative branding.
Any source code acquisition request unconditionally equates to source assets acquisition for business purposes and the release of MQL4Solutions intellectual property in our engine parts used in our business of helping traders reliably automate their trading process.
Assets valuation and offer pricing varies and is subject to change. Use the following calculator to perform a self-estimate.
Total the without-source prices of all project cycles that were made to reach the final product.
Enter this total here:
A quote for source assets acquisition for this product could be: $ . (Note: This is a very simplistic calculator provided only as a guide, and is not appropriate for price points outside a certain range.)
MQL4Solutions considers a range of factors in assets valuation, including metrics such as revenue generation power, MQL4Solutions engine code, GUI productions, and acquisition for business, therefore leaning towards standard methods of business acquisition valuation.
A rough guide to the figure calculated above is that we have assumed recoverable costs after a mere 2-3 sales and revenue generation using assets highly recoverable by developers or producers with only 1-2 sales per month for 3 months. A metric also factors the number of separate strategy products that the assets could generate. This raw value is then greatly dampened in order to increase accessibility.
The possibility to purchase the source code is not guaranteed.
Always request a quote.
Quotation methods are subject to change.
More on How We Quote
We can't give you a 'catalogue' of prices, because what you're buying in a bespoke service is not a passively sold 'off-the-shelf' thing; it's a human's personalized time and support for you. However, working with us still often results in lower costs than hourly contractors and you have clarity on quotes/times and market-leading reliability if we confirm that your request is within scope.
You should already have a feel for the pricing from the pricing studies above — it's possible to get a starter system for under $82 then enhance gradually for as low as $22 each time. However, we often do project cycles closer to $154-$220 due to higher complexity work on things like graphics handling, event handling, web access, concurrent position-group handling, multi-symbol trading, file handling, parsing, hidden orderbooks, solutions for robustness against outages, switchable behavioral routing, and so on. It's better not to worry about these — we'll assess your request and provide a quote.
When we quote, we generally have pricing in increments of $22. All prices in USD.
We also measure metrics of consulting overhead and may add a flat fee to the quote. This is usually zero if the trader has written a precise procedure that has clearly been manually reproduced and is not vague.
The flat fee increases marginally, for example by $22, if there is an excessive communication exchange over several days whereby MQL4Solutions has spent excessive time to assist the customer in establishing a clear and measurable trading procedure or heuristic process in order to be ready for the Development stage.
This process is usually known as Technical Business Analysis, which is separate from Development. The margin is considerably minimal and linear, and consulting hours should be valued equally to development hours in the engineering process.
If you are a technical trader and quantify your decisions, this usually should not be an issue and your requirements should pass straight into development.
In summary, always request a quote and always keep it simple and extend in cycles, and you'll get the leanest quotes and fastest deliveries (Success Rule).