The RenkoFillType published by Jam with FillOnClose work normaly only with RePlay- or Live-Data!
And then its work only correct, if the based RenkoBarType use a single Add function call for create the "virtual" RenkoOpen with set the close to the correct price...
Many renko bar types do this with two steps "Add(Open,ZeroVolume)" "Update(Close,Volume)" or poor with RemoveBar on Open... with this bar type can the RenkoFillType by JAM not correctly work !
I think its give only one correct way for IDENTICAL & COMPERABLE results with backtest,reload,replay and live data:
Using a syncronized additional 1TickDataSeries in the strategy and use this 1TickSeries for all orders with a delay of !2! Ticks, then the NinjaTrader7 can correct handle all BarTypes with a little "time slippage" and a realistic open with full possibile intrabar fills will by work correctly.
I need only a little bit more time for complete my comperable and published t4tCum??? tickbased working indicators... then i give a sample for using this internal 1tick concept for with any bar types working and backtestable strategies with using the LOM by NJAMC for the correct fills
The following 3 users say Thank You to TimeTrade for this post:
I don't know enough about the inner workings of the Renko style charts. I don't think it is an issue, I think the Median Renko likes certain even/odd type of bar length due to the calculation, but uncertain. I think the best person that can answer this question would be @aslan. Hopefully he can shed some light on the answer.
There is no reason for Renko to work better or worse with odd or even numbers. There is nothing special about renko other than the fact that it is completley independent of time. Just like Range bars.
Something to consider when setting the bar size is how granular you want to look at the market. If you want the Renko to filter much of the noise, then set the bars accordingly. e.g. if the instrument you are trading has a typical range of movement for a given period, you might want to set the bars large enough so that the constant, small random price fluctuation (noise) doesn't trigger a bunch of sideways renko reversal bars and make the chart useless.
Also, consider the fact that the market changes often enough that any bar setting you select may work better at some times than others. A 5 Renko may be 'perfect' for a morning session, but you may find that a 3 or 8 renko setting may have worked better for the afternoon. If you find a size that seems to get the charts to look the way you want it, then start working on how you want to trade. Don't become a slave to the idea that a perfect chart is your starting point. No chart or setting is perfect. A common mistake made by many new traders and one that I certainly made, was the over-optimization of charts and indicators. There are probably many discussions here about optimization and curve fitting of strategies that would be helpful. The good news is that as you play around with different chart settings, you begin to see the nature of how the market moves (and perhaps more importantly, how you can rely on the fact that it won't move the same way all the time) begin to get ideas on how you might like to trade. For many people, I think Renko is a great way to learn how the market can move.
The following user says Thank You to billr for this post:
I just noticed a post by @NJAMC and had not considered a special calculation for some of the third party renko calculations. I would be surprised that any of the more popular renko types would have a built in bias of this sort. If in fact they use an elaborate method to calcuate something, then I suppose there could be an issue with rounding or irrational numbers perhaps.
If that were the case, personally I would avoid using any chart or indicator that had a functionality bias affected by user defined settings.
If it worries you, just stick with even numbers. It won't matter to your trading and may even help you by reducing the number of backtests you are tempted to try
The reason you may have seen that, is some of the other Renko types out there have their internal calculations based on the average of two prices, so when they divide by 2, they get some nasty rounding issues when trying to build bars. So, to get around that they have to be even numbers so the total size of the brick is an even number.
Generally, using even numbers works fine, but depending what you are trying to do an odd number can be nice. For example, for CL a 5 tick box is nice because it lines the boxes up on .05 increments, which can be handy.
The following 2 users say Thank You to aslan for this post:
Not sure, as I have not recently looked at what the Ninja engine is doing. If you are entering on the next bar at open, it really depends what that first tick is. Is it a gap to the high of the next bar? Then the high would be better. Does it gap multiple boxes (zero volume bars), then it should not fill until you have volume. Another nasty case, is a reversal bar. The next true open is way away from the open shown, and the close is likely even worse.
NT can not handle zero volume bars anymore (used to), and the current BR may have issues because it does use zero volume bars.
The following 2 users say Thank You to aslan for this post:
There are several NT issues working against backtesting Renko with NT. Unfortunately, using the open of the bar does not solve the problem. This is because the unique nature of renko: the open and close occur simultaneously. You don't know where the open is until it is closed due to the possibility of a reversal. So if you tried to set a trade at the open of the next bar, it would be at a historic price level one renko bar distance from the close (this is true even if it is NOT a reversal bar). So it wouldn't work because the backtest would probably assume you could enter at the open price level when the price has actually moved to at least a renko bar distance away before you get the signal. (the time machine effect) It looks back. In essence a variation of what it does by assuming close=open. It gets even trickier when a reversal is followed by another reversal. In backtesting, the correct calculation should be close with a renko type that provides this.
Another major problem with NT is the fact that it smoothes the charts when building a renko chart with historic data (my guess is using computing efficiency short cuts). *this also happens with range charts to a lesser degree.
These two problems are the major issues as far as I am concerned. As you mention, the zero volume (gaps) fill-in of bars is a challenge. But that can be mitigated to a large extent by manually checking for the obvious times for those conditions to occur and eliminating those trades. Or, you could trade active market hours only.
For most of the strategies and instruments I have tested, this is not the most critical issue.
Finally, NT drops the price movement that occurs while bars are forming. For the most part, this affects stops the most. NT may allow price action to pass over a stop and hit a profit target, again giving false positive results. Most renko bars that solve the close=open problem also solve the lost price action (wicks) too.
Hope this helps
The following 4 users say Thank You to billr for this post: