Description:
This algorithm is a custom performance index for the Default or Genetic optimization methods in NinjaTrader 7. Optimization with this index maximizes the 20th percentile of noise-injected bootstrapped expectancy. This metric is designed for robustness against worst case conditions. Note that due to the mathematics, the solution is not deterministic (run it multiple times, and you will get slightly different solutions each time).
Installation:
Add this file to your ...\NinjaTrader 7\bin\Custom\Type\ directory, open any indicator or strategy, and compile.
Details (this math is in here):
1. For a given series of trades of length N, the top 10% are removed, creating a modified series of trades of length N*0.9.
2. This modified series of trades is sampled *with replacement* for 10*N*0.9 samples. This series becomes the bootstrapped trade series.
3. Gaussian noise is a given mean and standard deviation is added to each bootstrapped sample.
4. Expectancy for this bootstrapped + noise series is calculated.
5. Steps 2 through 4 are done 5000 times, with different sampling from the Gaussian noise. This creates a distribution of expectancy.
6. Finally, the performance index returns the 20th percentile of these 5000 runs (so, the 1000th worst expectancy) to the NT optimizer.
Discussion:
Removal of the 10% best performing trades is an attempt to be pessimistic by assuming that the best 10% trades observed in the past will never repeat. We do not want total system performance to hang a few high-yielding trades.
Injecting noise to the bootstrapped sample accomplishes two things. First, it adds uncertainty to each bootstrapped series, thereby simulating diversity in the bootstrapped series (hopefully the diversity we would measure in a much larger sample). Secondly, it makes each bootstrap series unique. This means that we way calculate a distribution from the ensemble of bootstrapped series.
Any percentile may be returned. We could return the mean. By returning a value to the left of the mean, the 20th percentile, we are maximizing 80% of the distribution.
Note: Because we are injecting randomly sampled noise to the bootstrapped series, the solution from this performance index is not deterministic!
Suggestions:
If you use this, you should be comfortable changing the parameters found at the top of the algorithm. Adjusting the value of the standard deviation of the noise may make or break the robustness and success of this algorithm.
I've got mixed feelings about these since these indicators are really eld files for Tradestation. But since I am providing screenshots that shows them working on MultiCharts I decided to place them in this section.
Big Mike, let me know if this is okay.
Thanks to Blu-Ray at Traders Lab who posed these and these are his comments concerning these indicators:
The attached indicators are:
"BR_CCi : Which is basically a smoothed CCi.
BR_RSI : Which again is a smoothed RSi.
BR_Momentum : Again a smoothed Momentum ( Can't believe people would actually charge for these )
BR_PaintBars : MA based trend bars.
BR_2FastMa's : Self explanatory.
BR_Squeeze : Partly based on the original squeeze ( as we all know it ), but the histogram is defined to show clearer divergences. Also includes CounterTrend and an alternative midline.
BR_HeatMeter : Can you take the heat ! ( well actually it's just a 50 period CCi )"
If you want to see the real thing then go to paintbarfactory.com. If you would like to learn more about these indicators and would like to buy the real thing then go by paintbarfactory.com!
This is a bar type for NinjaTrader, based on the superb BetterRenko by Aslan. (I only changed the size of the reversal brick, the name and set the PeriodType to Custom9)
It simply paints evenly sized bricks/bars if the price fills the specified range of ticks up or down from the last close.
Instead of only creating ladders (like a regular Renko does) one also gets sideways movement if the market is flat or oscillating. I creates a bit more noise but also helps to identify possible turning points when the market hesitates.
Because these bars are drawn from real ticks, there are some times shorter bars or even small gaps. In my experience it does not influence the correct alignment of the bars.
The BricksBars should be as reliable in backtesting as are the original BetterRenko.
Check, whether you have any other PeriodType registered as Custom9 before importing the script. (If so, you can easily change the number in Notepad.)
If you have any suggestions how to improve the code, feel free to contact me.
June 15th, 2013
Size: 2.30 KB
Downloaded: 847 times
1421
soren
01/25/2011 Revised Code....added "O" indication flag for OutSide Bars... modified defaults to give better results.
Exported from NinjaTrader 7.0.1000.2
This indicator can be used to help learn the Al Brooks "bar system".
H/L Bars:
Finds and labels "H" and "L" bars with a text letter above the candle.
(does not count them...you'll have to do your own counting for L1 L2...H1 H2 etc.)
Inside Bars:
Finds and flags "Inside Bars"....
(brackets the candle with Up triangle and Down triangle).
Outside Bars:
Finds and flags "outside Bars"....default prints both H and L on the bar....change the setting and the indicator will decide on H or L, depending on prior candle.
Color of text and triangle flags is completely configurable, as is the Font size/type, and 'offset spacing from the candle.
October 21st, 2009
Size: 7.02 MB
Downloaded: 824 times
165
websouth
This plots the cumulative of price for any symbol, from several optional starting points. Default symbol $TICK gives the CTick plot, but you can use $TIKRL or any other symbol.
July 30th, 2020 03:04 PM Prototyper The BR_Squeeze indicator failed to import. MC says there is nothing in the file, even though windows shows the BR_Squee
ze.ELD file is 63kb after unrar-ing it. Please re-upload corrected version.
January 2nd, 2020 05:02 PM pphrdt very nice, is BR_Trend Bars indicator available?