Reducing Broker Dependency: Is Dithering the Answer ?

Many months ago an Asirikuy member approached me with the interesting idea to use dithering on our trading systems. The original idea this person had didn’t yield substantially profitable results and in fact dramatically reduced the profitability of the systems where it was tested due to the nature of the overall implementation. After almost a year passed by I have decided to revisit the concept of dithering with a few changes, being able to find a very real possibility to reduce overall broker dependency and increase the reliability of our trading strategies. Within the following few paragraphs I will explain to you what dithering is, where it is usually used and how it can be used in trading to decrease the level of broker dependency of any given trading strategy.

When the digital age started to materialize and people began to do audio and image processing using digital media they soon noticed that systematic errors due to the computations started to arise as a consequence of the digital processing scheme. The result was that images and sounds were distorted due to the introduction of artifacts caused by the computations carried out in the processing of signals. The solution to the problem of this systematic errors was found through the implementation of “dithering algorithms”. When using dithering a simple procedure is applied to a signal in which random variations are introduced to eliminate systematic errors and replace them with “random noise” which is more acceptable than a large artifact that can significantly affect the quality of the final product.

What dithering does is – in simple words – a small randomization of outcomes in order to cover any sort of systematic error with a low level of “noise”. This increases the overall quality of the digital signal being processed as errors tend to be capped to low thresholds and the impact on the signal’s final result is much less than the impact that would be attained if the systematic errors introduced by computations were allowed to stay.

In trading we have a similar problem where our “signal” is our trading results and our systematic errors are introduced by differences between brokers. Initially the Asirikuy member who approached me suggested a dithering approach where a trade would be split in X different trades which had an offset entry by X pips with their SL and TP offset by this same value. However I quickly found out that this approach doesn’t work because you need to hit those new price levels to enter trades and this means that entries will not always be the same and overall profits and losses will be dramatically affected in the long term.

After thinking a while about the problem it seems that dithering the overall entry isn’t necessary. What I decided to do was simply to enter three different trades at the exact same price level, each trade with 1/3rd the lot size of the original trade varying the SL and TP of each trade such that they would be separated by a few pips. The initial results of this technique show overall results that match those of the original trading strategy with the advantage that on different brokers the SL/TP levels are now dithered and therefore the overall probabilities to “hit them” becomes much larger. In essence what we are doing here is replacing the overall determinant broker dependency by a level of “noise” which is bound to be more acceptable than a sharp dependency between different brokers.

Another idea – which came later on – involves the dithering of the entry and exit criteria to further reduce broker dependency. If a system – for example – has a criteria to enter a position when the last candle closes with an RSI level below 28 then we would introduce a “buffer zone” where half the positions are entered. The strategy would enter the regular position size if the value falls below 28 but if the value falls between 28 and 29 the strategy would enter two of the three dithered positions and if its was between 29 and 30 the strategy would open only one of these positions. Overall the concept of entry/exit criteria dithering reduces overall broker dependency because if a trade is triggered due to a slight broker difference at least a portion of the trade will get triggered amongst brokers where the strict entry criterion wasn’t reached.

Most of the time dithering does cause a small sacrifice in the overall profit and draw down characteristics of a strategy and a certain increase in error handling and execution complexity but such a sacrifice is a small price to pay in order to dramatically reduced the overall dependency we see systems have between different brokers. During the next few weeks I will continue to test my dithering hypothesis over different brokers and – if everything goes well – I will implement dithering functions on all Asirikuy systems in order to greatly reduce the broker dependency we continuously see around our different trading strategies. Certainly this might be a challenge for systems with more complex entry-exit criteria, but very worth doing if I do confirm a strong reduction in dependency between different brokers.

If you would like to learn more about my work in automated trading and how you too can design systems with realistic profit and draw down targets please consider joining Asirikuy.com, a website filled with educational videos, trading systems, development and a sound, honest and transparent approach towards automated trading in general . I hope you enjoyed this article ! :o)

Print Friendly, PDF & Email
You can leave a response, or trackback from your own site.

6 Responses to “Reducing Broker Dependency: Is Dithering the Answer ?”

  1. Maxim says:

    Daniel,

    Your approach is indeed amazing!
    I wonder whether increasing trading costs is worth.
    As you’ve shown in one in your videos, a small increae in spread has a substantial impact on profitability.

    Maxim

    • admin says:

      Hello Maxim,

      Thank you for your comment :o) There is actually no increase in trading costs as you simply enter 3 positions with one third the lot size (therefore the total spread cost is the same). There can be however some added costs in slippage and such, which can affect long term profitability overall. As I have said there is a price to pay for this reduction in broker dependency and we need to answer the question of whether or not this might be worth doing before we proceed to implement it on Asirikuy systems (this is what I am currently trying to find out). Thanks again for your comment ! :o)

      Best Regards,

      Daniel

  2. mikko says:

    hi Daniel

    I personally think sacrificing some profit for reduced broker dependency and increased generic robustness is well worth it. In fact I’ve often thought about starting to do this through running multiple instances of an EA with slightly varied settings (and correspondingly reduced risk on each individual EA) – not so much to combat broker dependency but to improve robustness. Haven’t got around to actually doing it yet though, as this of course mustn’t be done carelessly but only after full analysis

  3. Maxim says:

    Daniel,

    I’ve found an additional non-technical issue, related to the topic: NFA compatiblity.

    Maxim

    • admin says:

      Hello Maxim,

      Thank you for your comment :o) NFA Compatibility wouldn’t be a problem as positions would always be opened in the same direction and closed according to FIFO (First-In-First-Out). Thanks again for your comment,

      Best Regards,

      Daniel

  4. McDuck says:

    This sounds like a very good idea. A practical problem might arise in the splitting of the lot size. For small account sizes often the lot traded is the minimum 0.01, so split it is not possible. This might arise the requirements of invested capital. Anyway it looks a very good development.

Leave a Reply

Subscribe to RSS Feed Follow me on Twitter!
Show Buttons
Hide Buttons