Renko charts

Discussions about the testing and simulation of mechanical trading systems using historical data and other methods. Trading Blox Customers should post Trading Blox specific questions in the Customer Support forum.
Post Reply
Tomaso
Roundtable Knight
Roundtable Knight
Posts: 165
Joined: Wed May 19, 2010 7:00 am
Location: Madrid, Spain

Renko charts

Post by Tomaso »

I was shown Renko charts http://www.investopedia.com/terms/r/renkochart.asp by a trader who uses them as a counter trend entry into a trend.
Ignoring the time element in a chart ( like point and figure) and focusing only on price direction instinctively makes sense as a tool to have in a trend following arsenal.
I would like to investigate its effectiveness via the beautiful power of TB but I lack the programming skills to translate the CSI price data into a Renko signal.
I have found a dead Renko thread on the forum which might mean there has been little interest.
I have found the Tradestation easy language code for Renko and am wondering if anyone of you have had any interest / experience with it and if you would know how to translate it to TB.

Easy language code
{Renko-Adaptive signal (based on ATR)
Written by konkop 07.03.2002.
*********************
Attention: set MaxBarsBack (f.e. =30) in this study according with
MaxBarsBack value in the Renko_Adaptive indicator
for correct step-by-step calculations of the buy/sell levels
*********************}

Inputs: K(1),
Smooth(10),
Bricksize(0.40);

vars: Brick(0) ,DN(0), UP(0), BricksUp(0), BricksDn(0);

{Value1 = AvgTrueRange(Smooth);}

If BarNumber = 1 Then Begin
Up = H;
Dn = L;
Brick = K*(H-L);
End;

If BarNumber > 1 then begin
If C > UP + Brick Then begin
BricksUp = IFF(Brick = 0, 0, Floor((C - Up)/Brick)*Brick);
UP = Up + BricksUp;
Brick = Bricksize;
DN = Up - Brick;
BricksDn = 0;
End;
If C < Dn - Brick Then begin
BricksDn = IFF(Brick = 0, 0, Floor((Dn - C)/Brick)*Brick);
Dn = Dn - BricksDn;
Brick = Bricksize;
Up = Dn + Brick;
BricksUp = 0;
End;


{If Up > Up[1] then buy this bar at C;
If Dn < Dn[1] {and Dn[1] < Dn[2] } then sell this bar at C;}

If up > up[1] then buy to cover this bar at C;
If dn < dn[1] then sell short this bar at C;

End;
indigoatlantic
Full Member
Full Member
Posts: 24
Joined: Fri Nov 02, 2012 4:20 am

Post by indigoatlantic »

I am not TB expert at all but I highly doubt CSI's daily data can be used to create sensible Renko Bars. unless renko bar size you want to create are large magnitude times bigger than typical daily bar size.

AFAIK, renko bars should be created with as granular data as possible (tick or min bars)

Now about RENKO bar based backtesting - I think you have to very very careful while backtesting strategies on RENKO bars. Lot of seemingly good looking strategies fail miserably in live trading on RENKO bars as RENKO bars "filter" out some price data.
Post Reply