Backtesting Results of Velluri's System
Here are the back testing results of Velluri System,
Download Results File Here
Methodology: Individual Back testing used on List of Nifty Future shares and Nifty index.
Position Size: For Simplicity, position size per share is restricted to Rs. 20000
Max Loss: Maximum Loss limit is set at 15%. Though this is too much. I just wanted to give the system flexibility.
Time Period: Jan 2003 to Current
Trade Delays: Set to '0'
Out of Sample: For better understanding I have given the average profit per share in the end. That is divided the total profit by number of trade. I have particularly removed one out of sample data which was giving returns beyond the range. This is done under the principle of normalized distribution to avoid distortion of results.
Commissions including all costs: 1%
Notes: System is good. Concept is also good. However, on removing the out of sample data, the system gives average profit of 24% per trade. The total number of trades is 905. On analysing and adding filters, Velluri can indeed take the average profits higher. Some of the filters which I would suggest are seasonality or low historical volatility ratio.
Formula Used -
Here are the back testing results of Velluri System,
Download Results File Here
Methodology: Individual Back testing used on List of Nifty Future shares and Nifty index.
Position Size: For Simplicity, position size per share is restricted to Rs. 20000
Max Loss: Maximum Loss limit is set at 15%. Though this is too much. I just wanted to give the system flexibility.
Time Period: Jan 2003 to Current
Trade Delays: Set to '0'
Out of Sample: For better understanding I have given the average profit per share in the end. That is divided the total profit by number of trade. I have particularly removed one out of sample data which was giving returns beyond the range. This is done under the principle of normalized distribution to avoid distortion of results.
Commissions including all costs: 1%
Notes: System is good. Concept is also good. However, on removing the out of sample data, the system gives average profit of 24% per trade. The total number of trades is 905. On analysing and adding filters, Velluri can indeed take the average profits higher. Some of the filters which I would suggest are seasonality or low historical volatility ratio.
Formula Used -
Code:
CON1=Cross( MA( Close, 5 ), MA( Close, 10 ) ) AND BarsSince( MA( Close, 13 ) <= MA( Close, 50 ) ) >= 10 AND MA(Close, 50)<High-Close*0.02 AND BarsSince (Close<MA(Close,15))>=5;
CON1A=Cross( BBandBot( Close, 20, 2 ), Close );
_SECTION_BEGIN("vel");
EnableScript("vbscript");
<%
function jMA(jH,jL,A2,A2m,k)
dim result()
redim result(UBound(jH))
for i=k to UBound(jH)
n=i+1
if A2(i)<= A2m(i) then
do until n=0
n=n-1
if A2(n)>= A2m(i) then exit do
Loop
result(i)=jH(n)
else
do until n=0
n=n-1
if A2(n)<= A2m(i) then exit do
Loop
result(i)=jL(n)
end if
next
jMA=result
end function
%>
script=GetScriptObject();
n=15;
Graph0=script.jMA(H,L,AccDist(),EMA(AccDist(),n),n );
Graph1=C;
Graph1Style=128;
Graph2=IIf(C<MA(C,n),MA(H,n),MA(L,n));Graph2Style= 1;
_SECTION_END();
CON2=Graph1 > Graph0;
CON3=Cross( MA( Close, 10 ), MA( Close, 5 ) ) AND BarsSince( MA( Close, 50 ) <= MA( Close, 13 ) ) >= 10 AND MA(Close, 50)>Low+Close*0.02 AND BarsSince (Close>MA(Close,15))>=5;
CON4=Graph1 < Graph0;
Buy = CON1 AND CON2;
Sell= CON3 AND CON4;
QTY=High*.15;
QTY1=920/QTY;
CAP=High*QTY1;
Short=CON3 AND CON4;
Cover=CON1 AND CON2;
Filter = Buy ;
AddColumn( High, " Buy " );
AddColumn( QTY1, " QTY " );
AddColumn( CAP, " CAP " );
AddColumn( High-High*.15, "stop loss " );
AddColumn( High+High*.04, "Tgt 1 " );
AddColumn( High+High*.08, "Tgt 2 " );
AddColumn( High+High*.12, "Tgt 3 " );
AddColumn( High+High*.15, "Tgt 4 " );